| Overall Reading | |
|---|---|
| Brookshear: | Ch. 6.1-6.2, pp. 248-249 |
Outline:
How do you create a word processor? A computer game? A database?
The issues are how to write programs in a style to avoid mistakes? Given that some mistakes will sneak in, how do we find them and fix them quickly? How do you gain confidence in the correctness of software?
Imagine that you were at Microsoft long ago and Microsoft Word had just been written. Now the goal was to create a "spreadsheet" to be named Excel. At first glance, software for a spreadsheet has nothing to do with a word processor. But there are some commonalities! (e.g. pull-down menu's, saving files to a disk, etc.) Is it possible to use part of the word-processor source code? Will it need to be modified?
Example: Word processor Separately develop the pull-down menus, the save/open functionality, the spell-checker.
Advantages include:
Typical software life cycle involves
Development -> Use -> Modification -> Re-UseThe development phase can be further subdivided as:
Analysis -> Design -> Implementation -> Testing ->