"Design Guidelines and Documentation Paradigms for Object Oriented Programs"
Mr. Jens Andexer
What's the problem with software? Almost daily one reads about the
advances in technology and leading the way, it seems, is the computer
industry. Storage costs are dropping, processor cycles per dollar are
increasing, but nagging at the heels of these successes are stories from
the software industry reporting cost overruns and ballooning expenses.
Why is that? And what about today's crop of new software technologies?
Surely they can help solve the problems.
Object Oriented programming languages are a new technology. Some believe
this new technology can cure many of the software industries ills, that it
is a "silver bullet ".
But in order to find a cure one must understand the disease, not just treat
the symptoms. Costs are not the disease, only a symptom. But if costs are
only a symptom what are their main contributors? What is driving them up?
And can OO deliver what is hoped for?
The answers to these questions do not lay in new cutting edge of technology,
their answers lay in what happens to cutting edge technology over time.
This thesis explores what happens to software as it ages. Starting from a
basic understanding of software aging, a deeper understanding of its details
is established by analysing the most prevalent software maintenance process
in industry. This analysis uncovers what makes software maintenance so
difficult and, therefore, so expensive.
The information gained from the analysis of the software maintenance process is
used to develop design guidelines and a documentation paradigms that take
muchof the speculation out of designing sofware for maintenance. Finally, a
case study is developed that shows what the documentation for a system
developed using this thesis might look like.