DOC PREVIEW
Toronto CSC 302 - CSC 302 Exam

This preview shows page 1-2-3 out of 10 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 10 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 10 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 10 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 10 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

CSC302 Engineering Large Software Systems page 1/10 University of Toronto Faculty of Arts and Science Dept of Computer Science CSC302F – Engineering Large Software Systems December 2008 Instructor: Steve Easterbrook No Aids Allowed Duration: 2 hours Answer all questions. Make sure your examination booklet has 10 pages (including this one). Write your answers in the space provided. This examination counts for 35% of your final grade. Name:_______________________________________________________ (Please underline last name) Student Number: ______________________________________________ Question Marks 1 ______________/20 2 ______________/20 3 ______________/20 4 ______________/20 5 ______________/20 Total___________/100CSC302 Engineering Large Software Systems page 2/10 1. [Short Questions; 20 marks total] (a) [Verification and Validation – 5 marks] Explain the difference between verification and validation. Give an example of a technique that can be used for each. (b) [Software Aging – 5 marks] What are the causes and symptoms of software aging? What steps can be taken to reduce the problems associated with software aging?CSC302 Engineering Large Software Systems page 3/10 (c) [Requirements Analysis – 5 marks] It has been suggested that UML models can be used in software engineering as either sketches, blueprints, or as a high-level programming language. Explain each of these different ways of using UML, and describe the limitations of each. (d) [Program Comprehension – 5 marks] What are the factors that make program comprehension so difficult? What kinds of tools can help overcome these difficulties?CSC302 Engineering Large Software Systems page 4/10 2. [Black Box Testing – 20 marks] You have been asked to test a web page intended to set up secure access to a banking system. The web page consists of a form that requests the user’s date of birth, 9-digit social security number and an answer to a secret question, and stores these in a database. How would you design a thorough test suite for this web page, including black box, white box, and stress testing strategies? Be sure to indicate what coverage criteria you would apply, and give example tests for each strategy.CSC302 Engineering Large Software Systems page 5/10 3. [Domain Modeling – 20 marks] Draw a UML Class Diagram representing the following elements from the problem domain for digital music players: An artist is either a band or a musician, where a band consists of two or more musicians. Each song has an artist who wrote it, and an artist who performed it, and a title. Assume a “song” means a recording of a piece of music, so that if a piece of music is recorded more than once (say, by different artists), we treat them as different songs. Therefore, each song is performed by exactly one artist, and written by exactly one artist. An album is composed of a number of tracks, each of which contains exactly one song. A song can be used in any number of tracks, because it could appear on more than one album (or even more than once on the same album!). A track has a bitrate and a duration. Because the order of the tracks on an album is important, the system will need to know, for any given track, what the next track is, and what the previous track is (if there is one). Draw a class diagram for this information, and be sure to label all the associations with appropriate multiplicities.CSC302 Engineering Large Software Systems page 6/10 4. [Project Management – 20 marks] Describe three different tools that a manager can use to plan and/or track the progress of a project, and discuss the strengths and weaknesses of each. Explain the actions a manager could take if each of these tools indicates the project is not running according to plan.CSC302 Engineering Large Software Systems page 7/10 5. [Process models – 20 marks] A process model provides a detailed prescription of the sequence of activities needed to develop software, giving guidance about when each activity should be used, and what each activity should produce. Describe an example of one software engineering process model that you used on your course project this term, and one that you did not use. For the first process model, explain how you applied the process, and how well it applied to your project. For the second process model, describe the factors that caused you not to use it. Your answer should take into account whether each process model was suitable for the type of software you were building, and whether you had the right expertise to use it properly.CSC302 Engineering Large Software Systems page 8/10 [scratch paper]CSC302 Engineering Large Software Systems page 9/10 [scratch paper]CSC302 Engineering Large Software Systems page 10/10 [scratch


View Full Document

Toronto CSC 302 - CSC 302 Exam

Documents in this Course
Load more
Download CSC 302 Exam
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view CSC 302 Exam and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view CSC 302 Exam 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?