CSC302Engineering Large Software Systemspage 1/10University of TorontoFaculty of Arts and ScienceDept of Computer ScienceCSC302S – Engineering Large Software SystemsApril 2008Instructor:Steve EasterbrookNo Aids AllowedDuration: 2 hoursAnswer all questions.Make sure your examination booklet has 10 pages (including thisone). Write your answers in the space provided.This examination counts for 35% of your final grade.Name: ______________________________________________________(Please underline last name)Student Number:______________________________________________Question Marks1______________ /202______________ /203______________ /204______________ /205______________ /20Total __________ /100
CSC302Engineering Large Software Systemspage 2/101.[Short Questions; 20 marks total](a) [Software Quality – 5 marks]What does “quality” mean with respect to software, and how wouldyou measure it? Why is it difficult to predict the quality of software before you have finished building it?(b) [Verification Strategies – 5 marks]What is the difference between testing and static analysis?What are the advantages and disadvantages of each of these approaches to verification?
CSC302Engineering Large Software Systemspage 3/10(c) [Requirements Analysis – 5 marks]Why is it useful to write down the requirements for asoftware project before attempting to design a solution? Why is it hard to do this well?(d) [Agile Development Practices – 5 marks]Agile practices are often considered to be appropriateonly for small teams (e.g. less than 10 people). Which aspects of agile development can still be usedeffectively with larger teams, and which aspects fail to scale up?