December 1998
SE203: SOFTWARE ENGINEERING

QUESTION 2

Total Marks: 20 Marks

Click here to access other questions

Click to access
SUGGESTED SOLUTIONS
for Question 2

 

(a) The following statement has been given as a definition of software engineering: "The establishment and use of sound engineering principles in order to develop software that is functional, reliable, and economical."

For each of the three underlined words, describe what you understand each word to mean in relation to software.

 

[3]
(b) Two skills which are essential for software engineers to perform adequately their roles in software development are software skills and project management skills. In your own words, describe briefly each of these two skills.

 

[2]
(c) Three examples of software developments methods are: the classic life-cycle; prototyping; and 4th generation techniques. In addition, it is possible to combine the major advantages of each of these three methods, at the same time eliminating their respective weakness, and producing a fourth possible method, usually termed the combination life-cycle.
(i) Describe one major advantage and one major disadvantage of each of the three methods: classic; prototyping; and 4th generation techniques.

 

[6]
(ii) Based on your list of advantages and disadvantages, analyse and describe how one advantage from one method can eliminate or circumvent the disadvantage faced in some other method. Do this for all three of the methods.

 

[3]
(iii) Draw a diagram of the combination life-cycle, and ensure that you demonstrate clearly how the individual advantages of the three methods have been combined. Describe the different steps that you have included in your diagram.

 

[6]