You are on page 1of 4

UNIVERSITY OF MAURITIUS

C-SAC SCHOOL OF ADVANCED COMPUTING

DECEMBER 2011 EXAMINATIONS

BSc (Hons) Business Informatics Upgrade - (L3S2)


PROGRAMME
BSc (Hons) Information Technology Full Time – (L2S1)

MODULE NAME Software Engineering

DATE Friday
9 December 2011 MODULE CODE DAC 2107

TIME 9:30 – 11:30 hrs DURATION 2 Hours

NO. OF 4 NO. OF QUESTIONS 4


QUESTIONS SET TO BE ATTEMPTED

INSTRUCTIONS TO CANDIDATES

Answer ALL Questions.

All Questions carry equal marks. (25 marks)


SOFTWARE ENGINEERING – DAC 2107

Question 1

a) Discuss whether professional software engineers should be certified in the same


way as doctors or lawyers. (You should discuss at least 10 points)
[10 marks]

b) Apart from the challenges of heterogeneity, business, social change, trust and
security, identify FIVE other challenges that software engineering is likely to
face in the 21st century (hint: think about the environment ).
[5 marks]

c) Based on the type of system being developed, suggest the most appropriate
generic software process model that might be used for the following systems:
 A system to control anti-lock braking in a car
 A virtual reality system to support software maintenance
 A university accounting system that replaces an existing system
 An interactive travel planning system that helps users plan journeys
with the lowest environmental impact.
[8 marks]

d) Identify TWO (2) fundamental types of software product?


[2 marks]

[Total 25 marks]

Question 2

a) List the FIVE (5) principles of agile methods.


[5 marks]

b) Briefly describe THREE (3) advantages of pair programming.


[3 marks]

c) Extreme programming expresses user requirements as stories where each story


is written on a card. Discuss TWO (2) advantages and TWO (2) disadvantages of
this approach to requirements description.
[4 marks]

d) Suggest using appropriate example how software engineer is responsible for


drawing up a system requirements specification to keep track of the
relationships between functional and non-functional requirements.
[5 marks]
e) Develop a sequence diagram showing the interactions involved when a student
registers for a course in a university. Courses may have limited enrolment, so the
registration process must checks that places are available. Assume that the
student accesses an electronic course catalog to find out about available courses.
[8 marks]

[Total 25 marks]

Page 1 of 3
SOFTWARE ENGINEERING – DAC 2107

Question 3

a) Using the UML graphical notation for object and classes, design the following
object classes, identifying attributes and operations. Use your knowledge acquire
in class to decide on the attributes and operations that should be associated with
these objects.
• a telephone
• a printer for a personal computer
• a personal stereo system
• a bank account
• a library catalogue
[10 marks]

b) When describing a system, explain why you may have to design the system
architecture before the requirements specification is complete.
[2 marks]

c) What is regression testing? Explain how the use of automated tests and a testing
framework such as JUnit simplifies regression testing.
[3 marks]

d) Briefly summarize the test-driven development process.


[5 marks]

e) As a software project manager in a company that specializes in the development


of software for the offshore oil industry, you have been given the task of
discovering the factors that affect the maintainability of the systems developed
by your company. Suggest how you might set up a program to analyze the
maintenance process and determine appropriate maintainability metrics for the
company.
[5 marks]

[Total 25 marks]

Page 2 of 3
SOFTWARE ENGINEERING – DAC 2107

Question 4

a) Suggest FIVE (5) risks that may threaten the success of a software project?
[5 marks]
b) Figure 1.1 sets out a number of tasks, their durations and their dependencies.
Draw a bar chart showing the project schedule.
[10 marks]
Task Duration Dependencies
T1 10
T2 15 T1
T3 10 T1, T2
T4 20
T5 10
T6 15 T3, T4
T7 20 T3
T8 35 T7
T9 15 T6
T10 5 T5, T9
T11 10 T9
T12 20 T10
T13 35 T3, T4
T14 10 T8, T9
T15 20 T12, T14
T16 10 T15
Figure 1.1: Scheduling

c) Explain why program inspections are an effective technique for discovering


errors in a program. What types of error are unlikely to be discovered through
inspections?
[4 marks]
d) Give TWO (2) advantages and TWO (2) disadvantages of the approach to
process assessment and improvement that is embodied in the process
improvement frameworks such as the Capability Maturity Model Integration
(CMMI).
[4 marks]
e) List down what is shown in a process model.
[2 marks]
[Total 25 marks]

END OF QUESTION PAPER


Page 3 of 3

You might also like