(ref.doc)fundamentals

Next inh-cont Up: spn28/9

pp 13-14
Object Oriented Programming: The Fundamentals
by Richie Bielak
(Reprinted from The Sun Observer)

The essential difficulty with software is its malleability - software
development is hard because it is "soft".

Would an architect consider adding another elevator to the Empire
State Building a reasonable change?

Mind you, much progress have been made since the discipline of
programming was invented.

As the hardware improves, our software systems become more ambitious
and more difficult to build.

Software developers have used structured analysis, design and
programming with fair success. Yet the software crisis remains,
exposing the shortcomings of this method.

In theory, with precise specifications in hand a programmer can apply
structured methods to build a system. However, a direct consequence of
using the top-down approach is that each component is specific to the
system - it is a hand-crafted, custom-built part. But anything built
from such parts is difficult to change. In particular a small change
in the specifications can cause an upheaval in the entire system.

In practice, specifications change constantly - they are often vague,
stated only verbally, or not stated at all but guessed. It is not
surprizing then that a method which presupposes a clear specification
does not work well.

The conclusion is clear. Why do we need a new method? Because the
current one does not work.


The beauty of inheritance is that it makes "programming by
differences" possible.


That's why there is so much excitement surrounding object oriented
technology - the object oriented method attacks the problem at the
heart of the software crisis.


automatically generated by info2www version 1.2.2.8