Re: OOP/OOD Philosophy



Robert C. Martin wrote:
> On Mon, 4 Jul 2005 13:10:22 -0700, "Nick Malik [Microsoft]"
> <nickmalik@xxxxxxxxxxxxxxxxxx> wrote:
>
> >Note: I did not say that "Agile" is incompatible with "design." I believe
> >it is incompatible with "Big Design."
>
> Not quite. Agile methods involve much more design than "Big Design"
> methods. However, the design is done on a different schedule. Design
> is taking place all the way through the project, at every iteration.
> This design is no less rigorous than a big design up front. Indeed,
> it is *more* rigorous, because each design decisions is documented by
> a series of unit tests and acceptance tests that must be written
> *before* the code that makes them pass.

We know, Bob, we know. We've heard this tune many times. The OP asked
about OOD. This is a perfect example of what it isn't.

What you are describing is bottom up, seat-of-the-pants programming
with perfunctory salutes to an unwitting user all of whom pretend they
have immunity from reality. And as long as the inmates are in charge
they're very happy subscribing to this stuff. *You mean, NO BOSSES?*

Look, OOD is about designing theoretical systems that may get
implemented based on analysis, testing, cost, and security factors.
That's rigor!

The fact that programmers sweat to bolt one whimsical idea to the next
is not rigor.

Rube Goldberg software development was not invented by XP but it is
given certification status thanks to XP. Even Rube Goldberg
contraptions are -cough- *designed*, documented, measured, and
quantified - yes, they are. And that makes them real - just as real as
real systems.

-snip-

.



Relevant Pages

  • Re: how many bugs do you find and correct during TDD?
    ... Code size + development time!= significantly complex. ... Was your system developed from the start using agile methods? ... >> significant design artifacts left over to help maintenance coders. ... In the example of a financial modeling system, ...
    (comp.object)
  • Re: OOP/OOD Philosophy
    ... Agile methods involve much more design than "Big Design" ... THESE are the folks who remind ME of TV ...
    (comp.object)
  • RE: ADA Popularity Discussion Request
    ... test-driven development is an odd name, because it's as much about design ... As you said, even wit agile methods, there is still an up-front design to ... Refactoring may let's people thinks that starting almost without design is ...
    (comp.lang.ada)
  • Re: ADA Popularity Discussion Request
    ... LD> Refactoring may let's people thinks that starting almost without design is ... LD> less risky with Agile methods, ... continuous refactoring would work on a 2 million LOC soft real time ... distributed RDBMS. ...
    (comp.lang.ada)
  • Re: OOP/OOD Philosophy
    ... >Robert C. Martin wrote: ... the design is done on a different schedule. ... >> a series of unit tests and acceptance tests that must be written ... That's a strange definition of rigor. ...
    (comp.object)