TAILIEUCHUNG - Software Engineering For Students: A Programming Approach Part 33

Software Engineering For Students: A Programming Approach Part 33. This fully revised version of Doug Bell's Software Engineering: A Programming Approach continues to use the successful formula of the previous editions. The author's approach is to present the main principles, techniques and tools used in software engineering, one by one, chapter by chapter. This book is a unique introduction to software engineering for all students of computer science and its related disciplines. It is also ideal for practitioners wishing to remain current with new developments in the area | 298 Chapter 22 The spiral model Figure The spiral model The distinctive feature of the spiral model is that it makes explicit the idea of risk. We have seen Chapter 1 that during software development there can be difficult problems to be overcome. The spiral model explicitly recognizes that there are uncertainties associated with software development and that they should be dealt with as carefully as possible. Examples of risks that are commonly experienced are the client changes some of the requirements during a long development the users requirements are neglected someone leaves the development team one of the component tasks of the development goes beyond its deadline the software performs too slowly the software occupies too much main memory a new software development tool or technology becomes available a user requirement was misunderstood the target hardware configuration changes an intransigent bug a competitor launches a rival package onto the market. Ideally any process model should make provision for these and any other pitfalls. However the spiral model makes explicit and repeated provision for dealing with areas of uncertainty like these and thereby minimizes the risk to the software project. Thus the most important phase of each cycle is the risk analysis stage. Actions can then be taken to control the project rescue the project or as happens sometimes abandon the project. Many decisions are taken during software development and for ever y decision there is a risk that something will go wrong or a mistake will be made. The later a problem is detected the more effort is needed to fix it. The spiral model approach is therefore The spiral model 299 to try to discover errors frequently - at each cycle. This means they are uncovered early. Then something can be done about them immediately. In detail the four steps of each cycle are as follows. Stage 1 - risk analysis and planning This stage is the essential ingredient of the spiral model. It .