21.08.2013 Views

Software Engineering for Students A Programming Approach

Software Engineering for Students A Programming Approach

Software Engineering for Students A Programming Approach

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

320 Chapter 24 ■ Incremental development<br />

Summary<br />

The aim of incremental development is easier bug detection. The mechanism is<br />

incorporation of components one by one. Incremental methods include:<br />

■ top-down<br />

■ bottom-up<br />

■ middle-out<br />

■ use case based.<br />

Use case based development provides early and frequent functionality. This in turn<br />

means:<br />

■ improved confidence by the client and the developer<br />

■ the opportunity <strong>for</strong> the user to change their requirements<br />

■ the opportunity <strong>for</strong> the user to decide what should be implemented next.<br />

Use case based development also reduces the work of creating test drivers and<br />

stubs.<br />

• Exercises<br />

24.1 Draw up an incremental process model <strong>for</strong> preparing a meal, including buying the<br />

ingredients and washing up afterwards. Don’t <strong>for</strong>get to identify the product at each<br />

stage.<br />

24.2 Draw up an incremental process model <strong>for</strong> writing a student assignment. The assignment<br />

is to write an essay reviewing the process models that are explained in this book.<br />

The non-incremental approach is:<br />

Step 1 read and digest all the relevant chapters<br />

Step 2 write the review.<br />

24.3 Draw up an incremental process model <strong>for</strong> a large civil engineering project, such as<br />

building a road bridge across the channel between England and France. Identify<br />

similarities and differences between this project and a large software development<br />

project.<br />

24.4 Create an outline plan <strong>for</strong> developing each of the systems in Appendix A, using an<br />

incremental approach.<br />

24.5 Compare and contrast the following approaches to development:<br />

■ top-down<br />

■ bottom-up

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!