CSC340 Information Systems Analysis and Design page 1 8 Faculty of Arts and Science University of Toronto Midterm Test Department Instructor Date and Time Computer Science Steve Easterbrook 9 10am Friday November 5 2004 Conditions Duration Closed Book 50 minutes This test counts for 20 of your final grade Name Please underline last name Student Number Question Marks 1 20 2 20 3 30 4 30 Total 100 CSC340 Information Systems Analysis and Design page 2 8 1 Short Questions 20 marks total a Software Lifecycles 5 marks Name two alternatives to the waterfall model What are the advantages and disadvantages of each model when used to plan a software development project Spiral model Advantages allows for iterative development with prototyping and risk management built in to the process Disadvantages Might be expensive and slower to do lots of iterations Not clear what happens if there are unexpected changes in business priorities Incremental development Advantages don t need to understand all the requirements before developing the first version Lessons from early versions feed into later versions Disadvantages hard to plan for versions beyond the first Lessons from early versions might be learnt too late Might mislead customer if first version doesn t match many of their requirements Notes Other possible lifecycles models include Incremental development prototyping V model agile development XP etc Must have both advantages and disadvantages for two different models to get full marks b Professional Ethics 5 marks Describe in your own words two different guidelines that you might expect to find in a professional code of ethics for software engineers In what way are these elements important in Requirements Engineering Sample answer 1 Software Engineers should always act consistently with the public interest 2 Software Engineers should ensure that their products and related modifications meet the highest professional standards possible In requirements engineering 1 suggests that the requirements engineer should take into account the needs of the general public as a stakeholder in any systems analysis For example if a proposed system might cause harm to people the environment or might disadvantage certain groups in society this should be described fully in the analysis 2 suggests that requirements engineers should make sure they use industry standards and adopt state of the art methods and tools wherever these are shown to be superior Notes give credit for any other reasonable guidelines Must give clear description of how both the stated guidelines apply in RE to get full marks CSC340 Information Systems Analysis and Design page 3 8 c Systems Theory 5 marks In systems thinking the principle of complementarity suggests that different stakeholders are likely to tell you different things about a system they observe Explain the principle and state the circumstances to which it applies Why is it hard to eliminate complementarity Two descriptions of a system are said to be complementary if they overlap in some respects but neither can be entirely explained in terms of the other The principle of complementarity says that this is likely to occur whenever we have different stakeholders giving us partial views of a complex system Complementarity disappears if the views are not partial ie if each stakeholder describes everything that it is possible to observe about a system However this is hard to achieve in practice with complex systems because it is impossible for anyone to observe and describe the system fully Each person s view is filtered by their own interests and values d Use Case Diagrams 5 marks Draw a Use Case Diagram for a voting machine on which voters can see a list of candidates and select one to vote for The machine should check that each voter is eligible to vote The electoral registrar will also want to print a summary of the total votes for each candidate and separately a list of the voters who have voted and a list of those who haven t In case of a dispute the machine should also list a complete record of who voted for whom but only a judge can use this function Electoral Registrar Voter See list of candidates Print vote summary Vote uses Judge List who voted See complete Vote record extends List who didn t vote Check eligibility Notes The extends link from the judge s use case isn t obvious so don t penalize if they missed it CSC340 Information Systems Analysis and Design page 4 8 2 Entity Relationship Models 20 marks The following two alternative EntityRelationship models have been proposed as the basis for a database to hold information about elected presidents and senators in US elections Person 0 2 President Candidate 0 n Party state Year elected member From year Senator held To year 0 1 0 1 0 100 Party Office a 8 marks An instance of a relationship is a tuple of entity instances and attribute values where applicable Write down one example instance for each of the four relationships shown above Make up some names if you don t know any American politicians President George W Bush Republican Party 2004 Senator Charles E Schumer Democratic Party 2004 New York Held William J Clinton President 1992 2000 Member John F Kerry Democratic Party b 4 marks Give an example of a situation that can be represented in the first model but not the second and an example of a situation that can be represented in the second model but not the first The first model allows for the case where a politician changes party between elected offices because party is a part of each elected relationship The second model can t capture this The second model copes well with unusual length electoral terms because the end of the elected period is explicitly represented E g if an elected office was vacant for a year it would show up as a gap in the data in the second model but not in the first The second model can also accommodate a candidate who is a member of more than one party at once c 8 marks Add multiplicities to both diagrams to show the following constraints If a constraint cannot be expressed using multiplicities on one or both models say so below i A person candidate is either a member of a single party or is an independent Cannot be expressed on the first model 0 1 between candidate and member on second ii A person candidate can be elected president only twice but a senator can be elected many times 0 2 and 0 n at Person on first model Cannot be expressed on the second iii In any given year up to 100 senators
View Full Document
Unlocking...