UNIVERSITY EXAMINATIONS: 2019/2020
EXAMINATION FOR THE DEGREE OF BACHELOR OF SCIENCE IN
INFORMATION TECHNOLOGY
BIT 2106: SOFTWARE ENGINEERING PRINCIPLES
BCT 2104: PRINCIPLES OF SOFTWARE ENGINEERING
FULL TIME/PART TIME/DISTANCE LEARNING
DATE: APRIL, 2019 TIME: 2 HOURS
INSTRUCTIONS: Answer Question One & ANY OTHER TWO questions.
QUESTION ONE
a) Distinguish between systems engineering and software engineering (2 Marks)
b) Define a software process and state FOUR key stages (6 Marks)
c) Describe FOUR ethical issues in software engineering (8 Marks)
d) Explain the need for managing risks in software engineering (4 Marks)
e) State the challenges faced by a software engineer in managing software projects
(6Marks)
f) What is a critical system and give THREE examples (4 Marks)
QUESTION TWO
a) What is the difference between software validation and software verification
(2 Marks)
b) Using a suitable illustration describe the spiral model (10 Marks)
c) State some of the challenges that a software engineer faces in the 21st century
(8 Marks)
QUESTION THREE
a) Explain the importance of software evolution and the activities involved (6 Marks)
b) Describe non-functional requirements and give THREE examples (5 Marks)
c) State FOUR problems in incremental development (4 Marks)
d) What are the benefits of software prototyping (5 Marks)
QUESTION FOUR
a) Why do we need to inspect and test systems? (4 Marks)
b) Project planning is essential in software engineering. What are the types of plans that
should form part of the documentation (7 Marks)
c) Describe FIVE architectural design consideration decisions (5 Marks)
d) State FOUR characteristics in object orientated design (4 Marks)
QUESTION FIVE
a) State THREE advantages and THREE disadvantages of software reuse (6 Marks)
b) What is your understanding of the following
i) Change management (4 Marks)
ii) Configuration management (4 Marks)
c) What has contributed mainly to software projects failure in the last 10 years
(6 Marks)