April 2000
SE203 : SOFTWARE ENGINEERING

QUESTION 1 (Compulsory)

Total Marks: 30 Marks

Click here to access other questions

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

(a)Identify any four features in fourth generation language tools.[4 marks ]
Do not award half marks. Alternative correct answers should be given credit, unless otherwise indicated in the marking scheme.
• Database Query
• Report Generation
• Data manipulation
• Screen interaction
• Code generation
• Graphics/spreadsheets
Award one mark per feature; maximum four marks.

(b)The preliminary meeting or interview is a technique designed to counter the
communication problems faced in requirements analysis.Describe briefly the sets of questions asked in this meeting.[3 marks ]

• First set: questions leading to a basic understanding of the problem. (1 mark)
• Second set: Enable the analyst to gain a better picture of the problem. (1 mark)
• Third set: focuses on the effectiveness of the meeting itself. (1 mark)

(c)Explain what is meant by the psychological and engineering characteristics of
Psychological characteristics: describes the relationship between a human person and the programming language.(1 mark)
Engineering characteristics: describes the relationship between the life-cycle and the programming language.(1 mark)

(d)Write down the seven steps involved in transaction analysis .[7marks]
Seven steps are:(1 mark for each step each)
• Step 1:Review the fundamental system model.
• Step 2:Review and refine DFD for the software
• Step 3:Determine whether the DFD has transform or transaction flow
characteristics.
• Step 4:Identify the transaction centre and the flow characteristics along each of the action paths.
• Step 5:Map the DFD in a program structure amenable to transaction processing.
• Step 6:Factor and refine the transaction structure of each action path.
• Step 7:Refine the “First-Cut ”program structure using design heuristic for
improved software quality.

(e)The following are statements commonly made about software engineering;for each statement,comment and explain in some detail how such a statement may be true:
(i)Fourth generation languages frequently encourage end-user development.[2

(ii)Second generation languages have been superseded (or surpassed in usability)
by third generation languages.[2 marks ]

(iii)Assembly languages are difficult to set.[2 marks ]
(iv)Analysts need communication skills.[2 marks ]

Some of the possible answersare as follows:
Fourth generation techniques allows for creation of systems and programs without the requisite of advanced programming skills …(substantiate with examples and evidence)
Earlier generation languages do not make full use of features found in more modern processors …(evidence)
Assembly language requires the understanding of usually non-natural mnemonics or other cryptic symbols …
Communication skills are required as proper fact-finding depends greatly on completeness and accuracy of information gathered from users during the requirements determination phase …
0 marks for a simple iteration without understanding.
1 mark for a reasonable attempt to explain the statement, but the answer provided is not conclusive. 2 marks for a good answer.

(f)The following is a diagram demonstrating program flow for a simple program.

Copy down this diagram,and calculate the value of V (G) using the regions method, clearly indicating where your regions are.Write down the basis set of test paths.[4 marks ]
Candidates are required to show their working by indicating where the regions are. Award one mark for clearly showing the regions.

A total of three distinct paths must be shown (1 mark each).
• Path 1-2-4-6-7
• Path 1-2-5-6-7
• Path 1-3-7

(g)Distinguish what is meant by alpha testing and beta testing .[2marks ]
• Is typically conducted at the developer ’s site by a customer.
• The developer would supervise the testing, hence “controlled environment ”.
1 mark for either point
Beta Testing:
• Tyically conducted at one or more customer sites by the end user of the software.
• Developer not present, hence “live environment ”. 1 mark for either point