Professional Documents
Culture Documents
Assignment 1
Question one
a) Distinguish between programming and software engineering [4]
b) Describe four advantages and four disadvantages of a waterfall model [8]
c) Explain four situations when it is desirable to use the waterfall model in software
engineering [8]
Question two
a) Identify and explain four essential characteristics of a well-designed software
[12]
b) Distinguish throw away prototyping and evolutionary prototyping. Explain two
situations when each can be used [8]
Question three
Identify the four categories of software maintenance and explain why each type of
maintenance is necessary, giving appropriate examples [20]
Question four
a) Explain the difference between software re-engineering and software reverse
engineering citing examples where each can be applied [8]
b) What is the goal of requirements analysis phase? Give reasons why the requirements
analysis phase is a difficult one [12]
Question five
a) How are the concepts coupling and software portability related? Provide examples
to support your discussion [8]
b) Discuss about COCOMO model for software estimation [8]
c) Identify and explain two risks associated with software development [4]