Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

UNIVERSITY OF MAURITIUS

FACULTY OF ENGINEERING

PAPER NO EXAMINATION DATE

Second Semester 2002/2003

BECSE/02S/11 BEng (Hons) Computer Saturday


Science & Engineering 10 May 2003
Level 4

BSc/CSE/02S/11 BSc (Hons) Computer Science


& Engineering
Level 2

BscIS/02S/9 BSc (Hons) Information


systems
Level 2

BScCSM/02S/6 BSc (Hons) Computer Science


with Multimedia
Level 2

BEECE/02S/10 BEng (Hons) Electrical &


Electronic / Communications
Engineering
Level 2

BEM/02S/10 BEng (Hons) Mechatronics


Level 2

SERIES PAPER TIME

May 2003 Software Engineering 9.30 – 11.30


(CSE 2212 / CSE 3110 / CSE 4101)

This paper contains FIVE (5) Questions. Candidates are requested to answer
FOUR (4) Questions.
Question 1

(a) A microprocessor-based home security system is to be developed that


will monitor undesirable situation through a number of sensors. It will
be programmable by users as follows:

?? User must observe the control panel of the system to determine if the
system is ready for input. If the system is not ready, the user must
physically close the units (doors/windows) sensed so that the ready
indicator is present. (A non-ready indicator implies that a sensor is
open).
?? User uses the keypad on the control panel to key in a four-digit
password. The password is compared with the valid password stored
in the system. If the password is incorrect, the control panel will beep
once and reset itself for additional input. If the password is correct, the
control panel awaits further action.
?? The user selects and keys in stay or away to activate the system. Stay
activates only perimeter sensors (inside motion detecting sensors are
deactivated). Away activates all sensors.
?? When activation occurs, a red alarm light is observed.

(i) Use a state transition diagram to represent the above scenario.


[7 marks]
(ii) Draw a sequence diagram to model the home security system.
[7 marks]
(iii) Draw the use case diagram of the home security system.
[6 marks]
(iv) The total lines of codes for all the functions is estimated to be 100
KLOC. Assuming that programmers work 450 LOC/day at a
labour rate of Rs 750 per person-day, estimate the effort and cost
required to develop the home security software.
[5 marks]

Question 2

(a) Classify the following aspects of an airline reservation system into


functional requirements, non-functional requirements or design issues.

(1) Information about flights, passengers and bookings should be


entered directly into the system.
(2) FlightNo, SeatNo, time of flight and price should appear on
tickets and reports.
(3) The system must be available at all times. Only two minutes
downtime a week is to be permitted.
(4) The system should be designed so that it can be extended to
handle a frequent flyer plan.

Page 1 of 5
(Continued on next page)
Question 2 (Continued)

(5) Flight Information should be stored in shared database that


travel agents can easily accessed.
(6) A merge sort algorithm must be used to sort the flights by
department time.
(7) The system must use no more than 12 MB of RAM.
[7 marks]

(b) The following table shows the quality levels achieved by various
software architectures:

Software Maintain- Memory CPU Bandwidth Portable


Architecture ability required speed Required to which
required platform
A High 20 MB 500 MHz 35 Kbps Unix,
needed Windows
B High 14 MB 250 MHz 1 Mbps Unix,
needed Windows
C High 8 MB 1 GHz 2 Kbps Windows,
needed Macintosh
D Medium 20 MB 500 MHz 30 Kbps Unix only
needed

Determine which architecture to choose if you had the following objectives


and priorities. Justify your answer.

(i) Objectives: runs on Windows; work on a 30 Kbps connection or


faster; works on a 500 MHz machine or faster; requires no more
than 25 MB memory. General priorities, starting with first:
bandwidth efficiency; CPU efficiency; portability; memory
efficiency; maintainability.
[4 marks]
(ii) Same as (a) except bandwidth drops to fourth priority.
[4 marks]
(iii) Objectives: runs on Unix; works on 1 Mbps connection or faster;
works on 250 MHz machine or faster; requires no more than 40
MB memory. General priorities, starting with first:
maintainability, portability, bandwidth, CPU speed, memory.
[4 marks]

(c) Briefly explain the different stages of the SEI capability maturity
model.
[6 marks]

Page 2 of 5
Question 3

(a) A software engineer wishes to use an incremental development


method for developing a particular software project. Describe fully
this methodology and state its advantages and limitations.
[10 marks]

(b) What is evolutionary prototyping and when would it be used as part of


the software analysis process.
[5 marks]

(c) You have developed a throw-away prototype system for a client who is
very happy with it. However, he suggests that there is no need to
develop another system but that you should deliver the prototype and
offers an excellent price for the system. You know that there may be
future problems with maintaining the system. Discuss how you might
respond to this customer.
[10 marks]

Question 4

(a) List the four design models required for a complete specification of a
design and explain how each is created.
[8 marks]

(b) Cohesion is a natural extension of information hiding concept. Explain


the difference between coincidental and procedural cohesion.
[4 marks]
(c) Given the following code section

cin>>a >>b >>c;


if (a > 10)
{
cout<<"hello";
if (b < a)
{
cout<<"part1";
if (c > a)
cout<<"part2";
}
else
cout<<"part3";
}
cout<<"exiting";

Page 3 of 5
(i) Draw a control flow graph for the above.
[6 marks]
(ii) Find the cyclomatic complexity.
[3 marks]
(iii) List all the independent paths.
[4 marks]

Question 5

(a) Briefly describe types of plan in addition to the software project plan
that a software project manager have to draw up. [4 marks]

(b) Briefly explain why the process of project planning is iterative and why
a plan must be continually reviewed during a software project.
[3 marks]

(c) Use the task durations and dependencies for a software project shown
in Table 1 below to do the following:

(i) Illustrate the dependencies between the different tasks with an


activity network diagra m. [7 marks]

(ii) Explain what is meant by a critical path. Highlight the critical


path in (c)(i) above.
[2 marks]

Task Duration Dependencies


T1 30
T2 14 T3,T6
T3 16 T4
T4 14
T5 10 T2,T7
T6 20 T4
T7 17 T1,T3
T8 30 T4
T9 9 T2,T8
T10 56
Table 1

(d) (i) Briefly describe three categories of software risk. [3 marks]

(ii) Consider the software project risks shown below. For each risk
identify a possible risk category based on (d) (i) above. Briefly
describe possible risk management strategy for each risk.
(Continued on next page)

Page 4 of 5
Question 5 (Continued)

I. Changes to requirements, which require major design rework,


are proposed.
II. Software components which should be reused contain defects
which limit their functionality
III. Time required to develop the software is underestimated
[6 marks]

END OF QUESTION PAPER

Page 5 of 5

You might also like