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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Summary<br />

The ideal characteristics of a requirements specification are that it is:<br />

■ implementation free<br />

■ complete<br />

■ consistent<br />

■ unambiguous<br />

■ concise<br />

■ minimal<br />

■ understandable<br />

■ achievable<br />

■ testable.<br />

Exercises 47<br />

A number of notations and approaches are available to carry out requirement specification.<br />

The notations range from in<strong>for</strong>mal (use case diagrams) through semi-<strong>for</strong>mal<br />

(e.g. use cases) to <strong>for</strong>mal (mathematics).<br />

A useful checklist <strong>for</strong> the ingredients of a specification is:<br />

1. functional requirements<br />

2. data requirements<br />

3. per<strong>for</strong>mance requirements<br />

4. constraints<br />

5. guidelines.<br />

A major vehicle <strong>for</strong> describing functional requirements are use cases and UML use<br />

case diagrams. A use case is a textual description of a small, but complete user task.<br />

A use case diagram shows all the actors and all the use cases <strong>for</strong> a system.<br />

The main issue with specifications is good communication, both in discussions and<br />

in writing.<br />

•<br />

Exercises<br />

4.1 Appendix A gives specifications <strong>for</strong> several systems. For each specification identify<br />

the functional, data and per<strong>for</strong>mance components of the specification. Use the guidelines<br />

and checklists given above to rewrite and thereby improve the specification.<br />

4.2 Appendix A gives specifications <strong>for</strong> several systems. For each specification identify and<br />

write the use cases. Draw a use case diagram.

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

Saved successfully!

Ooh no, something went wrong!