Automating software design
Peter Freeman · Computer · 1974
To anyone who has had the slightest connection with the design and construction of large programs for digital computers, it is obvious that this is no trivial task. Many times the design of such programs is woefully inadequate, and the effort required to get them right is tremendous. The sometimes ruinous cost of such inadequate design is well-known.