August 1999
SE203 : SOFTWARE ENGINEERING

QUESTION 3

Total Marks: 20 Marks

Click here to access other questions

SUGGESTED SOLUTIONS
Solutions and allocated marks are indicated in green.
Return to
Question 3

(a) What is software design? [2]
The translation of customer requirements into design/software representations.

 

(b) One of the many design concepts is "control hierarchy:, i.e. the representation of the organization of modules or components of a program.

 

[8]
(i) Firstly, define each of the following terms as used in the representation of structure :
  • fan-in
  • fan-out
  • depth
  • width
  • subordinate
  • superordinate
[6]
(ii) Next, illustrate your understanding of each term by making use of the diagram below to give an example of the use of each of the six terms. (Hint: for example, what is the fan-in for module B.)

pic1.gif (14475 bytes)

 

[6]
(i)
  • Fan-out : number of modules that are directly controlled by another module.
  • Fan-in : number of modules directly controlling a given module.
  • Depth : number of levels of control.
  • Width : overall span of control.
  • Superordinate : a module that controls another module.
  • Subordinate : a module that is controlled at its widest point.

(ii) There are lots of possible answers for each part, but one example of each is :

  • Fan-out for module B is 3
  • Fan-in for module I is 3
  • Superordinate module of C is A
  • Subordinate module of F is I
  • Depth  : 3 levels of detail
  • Width for module A : overall span of modules at its widest point.

 

(c) Some of the factors that can be taken into consideration when choosing a programming language to develop a program are as follows:

General application area

Knowledge of staff

Algorithmic and computational complexity

Cost of acquiring/using the language

Describe each of these factors in your own words. Based on your understanding, also comment on which of these factors would you treat as the most significant consideration. Justify your opinion.

[6]
Any suitable solutions accepted.