You are on page 1of 6

Examination CD5360 Software Engineering course (Examination 4 course points) Date: 2007-03-26, 8:30- 13:30 Contact person: Rikard

Land, 021-107035, 0735-636260 Responsible: Rikard Land Yue Lu Kristian Sandstrm Aneta Vulgarakis

All written material is allowed, e.g. text books, printouts of lecture slides, earlier exams (and solutions), and all own notes Max points: 40 Approved: Minimum 20 points Final Course Marks will be combined from the examination and the project: (40 points from examination + 40 points from the project) /2 Grade 5: 34 40p Grade 4: 28 33p Grade 3: 20 27p Observe, please: Write your name and personal number on every sheet Write on one side of the sheet only. Assumptions must be made when there is not enough information provided to solve an assignment, and all assumptions must be specified and explained in order to achieve full point.

Page 1(6)

Examination CD5360 Software Engineering course (Examination 4 course points) Date: 2007-03-26, 8:30- 13:30

Assignment 1. Requirements/Use Case modelling (6p)


In this assignment, you should model an aircraft boarding system by using UML UseCase diagram. The following are the requirements on the system. 45 minutes before take-off, one channel is opened in the boarding gate for the business / 1st class passengers. These passengers are informed by broadcasting by both airport TV and radio 30 minutes before take-off, an economy class channel is opened. and notify the boarding message to the economy class passengers by using both airport TV and radio. Meanwhile, keep the business / 1st class channel open If all of the business / 1st class passengers, who have already checked in their luggage, finish the boarding, that channel should be opened for the economy class passengers as well The passengers tickets and passports should be controlled, both in 1st / business class channel and economy class channel. If there is something wrong, the problem should be solved without stopping boarding for the other passengers The number of passengers should never exceed the capacity of aircraft It is allowed to disembarking during the boarding Before the gate is closed and the aircraft takes off, passengers who have already checked in the luggage but not shown up at the boarding gate 15 minutes before take-off should be called for by broadcasting by both airport TV and radio The boarding gate should be closed 10 minutes before take-off. There are no set numbers; passengers are allowed aboard on a first-come-firstserved basis.

Your task is to create a use case diagram with at least two actors (passenger, airways staff) and six scenarios. Please note that many use cases are probably not supported by a computerized system, you just need to describe who does what. No text description is needed, only a use case diagram (with descriptive names of the use cases).

Page 2(6)

Examination CD5360 Software Engineering course (Examination 4 course points) Date: 2007-03-26, 8:30- 13:30

Assignment 2. Project Management (10p)


You work in a project that will develop software for a series of washing machines. You have, together with your customer (the dishwasher manufacturer) defined the overall system requirements. You have agreed what buttons and displays there will be on the front of the washing machine, and you have defined a hardware abstraction layer is also defined to ensure portability to new hardware in the future (only one layer will need to be modified if the hardware is replaced). See the figure. There are three people (including yourself) working full-time in the project. Everyone can do any task in the project. Up to today (March 26th) you and your team have spent four weeks on agreeing on the system requirements with the customer, and you have estimated the development time for each part as follows is described in the notes in the figure.
User Interface Internal design: 8 manweeks Implementation: 8 manweeks Test & Verification: 8 manweeks

Control System

Internal design: 8 manweeks Implementation: 8 manweeks Test & Verification: 8 manweeks

Hardware Abstraction Layer

Internal design: 8 manweeks Implementation: 8 manweeks Test & Verification: 8 manweeks

You now have the option of selecting a development model for the rest of the project. For each of the following development models, define milestones and deliverables (with dates). Also describe briefly how each development model influence project risks and affects the ways you can collaborate with the customer. a) iterative (5p) b) incremental (5p) (Please note that no Gantt chart or resource allocation diagram is required, only lists of milestones and deliverables, plus discussions of risks and customer contact.) Hint for full points: also assume reasonable time estimates for other tasks not listed!

Page 3(6)

Examination CD5360 Software Engineering course (Examination 4 course points) Date: 2007-03-26, 8:30- 13:30

Assignment 3. Statechart Modelling & Safety Analysis (8p)


In this assignment, you will model the behavior of the control system that lowers and raises the gate where a road crosses a railway.

CT

CT

Road

Far

Near

Near

Far

Train Passed

Train Passed

There are two sensors, e.g. Sensor One (left) and Sensor Two (right) respectively, telling the gate that a train is passed. This is a classical example of a real-time system, which we will only model very coarsely here, assuming that there is only a single track with only one train at a time and one gate in this assignment. However, a train could go in either direction. There are some specifications of the scenario following. When a sensor detects that a train passes, it will emit the signal Train Passed to the gate controller system, in order to make the gate start moving to the opposite direction to the previous one, e.g. from state up to state down We assume that the gate needs between 20 and 30 seconds to be lowered (to go from the state up to the state down) or be raised (to go from the state down to the state up) or to come down The gate cannot be moved when the train is passing. Otherwise, it will lead to tragedy Your task is to: a) model the system behavior by using UML State chart diagram. (4p) b) construct a fault-tree and use it to point out weaknesses of the system, and describe how the system could be improved to be more safe. (4p)

Page 4(6)

Examination CD5360 Software Engineering course (Examination 4 course points) Date: 2007-03-26, 8:30- 13:30

Assignment 4. Testing (8p)


You are given a program that accepts 3 numbers as input (length of sides of triangle). The program output is taken from the set {Equilateral, Isosceles, Scalene, Invalid}. The program is supposed to choose the most specific descriptor. (i.e 2,2,2 should return Equilateral and 2,2,1 should return Isosceles.) You do not have the source code for this program. a) Is this a white box or black box testing? Explain. (2p) b) Name at least two advantages and two disadvantages of each approach. (4p) c) Why are both approaches necessary? (2p)

Page 5(6)

Examination CD5360 Software Engineering course (Examination 4 course points) Date: 2007-03-26, 8:30- 13:30

Assignment 5. Real-Time System Design (8p)


Most real-time systems control physical systems by observing (sampling) the system, calculating an appropriate response and output that response to the system (actuate). The resulting control performance will partly depend on the precision of the timing of sampling and actuation. Hence, timing is an important property is these systems. Consider the following questions regarding timing in real-time systems. a) Why it is necessary to consider timing variations in sampling and actuation respectively? Specify details about why and how control performance is affected by timing variations in sampling and actuation respectively. (4p) b) What in a computer system can cause these variations? Give three examples. (2p) c) What can be done to deal with variations in sampling and actuation? Do not repeat the answer to question b), but give details about how to actually make improvements. (2p)

Page 6(6)

You might also like