From: jaffarkazi on
Hi.
I've read a lot of tutorials on OOAD and do actual design and coding
also. What I would like to have is a real world sample application
that totally illustrates OOAD as how it would be done when
implementing a production system, as a learning tool.

This sample would obviously be without any UI and database, etc. Just
the basic objects that would be used in a normal business application
illustrating total OO usage for a real app. eg. Inventory, etc.

Regards,
--Jaffar
From: H. S. Lahman on
Responding to Jaffarkazi...

> I've read a lot of tutorials on OOAD and do actual design and coding
> also. What I would like to have is a real world sample application
> that totally illustrates OOAD as how it would be done when
> implementing a production system, as a learning tool.
>
> This sample would obviously be without any UI and database, etc. Just
> the basic objects that would be used in a normal business application
> illustrating total OO usage for a real app. eg. Inventory, etc.

You might try Leon Starr's "Executable UML: A Case Study". The entire
book is a single case study. As a bonus there is a disk with a simulator
that allows you to execute the OOA model.


*************
There is nothing wrong with me that could
not be cured by a capful of Drano.

H. S. Lahman
hsl(a)pathfindermda.com
Pathfinder Solutions
http://www.pathfindermda.com
blog: http://pathfinderpeople.blogs.com/hslahman
"Model-Based Translation: The Next Step in Agile Development". Email
info(a)pathfindermda.com for your copy.
Pathfinder is hiring:
http://www.pathfindermda.com/about_us/careers_pos3.php.
(888)OOA-PATH



From: jaffarkazi on
Hi,
Thanks for this, but I'm having difficulty getting this book.

Is it possible for you to suggest something else?
Also, even if it's not a book but just some simple code, that would
also be very helpful.

Regards,
--Jaffar

H. S. Lahman wrote:
> Responding to Jaffarkazi...
>
> > I've read a lot of tutorials on OOAD and do actual design and coding
> > also. What I would like to have is a real world sample application
> > that totally illustrates OOAD as how it would be done when
> > implementing a production system, as a learning tool.
> >
> > This sample would obviously be without any UI and database, etc. Just
> > the basic objects that would be used in a normal business application
> > illustrating total OO usage for a real app. eg. Inventory, etc.
>
> You might try Leon Starr's "Executable UML: A Case Study". The entire
> book is a single case study. As a bonus there is a disk with a simulator
> that allows you to execute the OOA model.
>
>
> *************
> There is nothing wrong with me that could
> not be cured by a capful of Drano.
>
> H. S. Lahman
> hsl(a)pathfindermda.com
> Pathfinder Solutions
> http://www.pathfindermda.com
> blog: http://pathfinderpeople.blogs.com/hslahman
> "Model-Based Translation: The Next Step in Agile Development". Email
> info(a)pathfindermda.com for your copy.
> Pathfinder is hiring:
> http://www.pathfindermda.com/about_us/careers_pos3.php.
> (888)OOA-PATH
From: H. S. Lahman on
Responding to Jaffarkazi...

> Is it possible for you to suggest something else?
> Also, even if it's not a book but just some simple code, that would
> also be very helpful.

The tricky part is finding a complete application as an example. Most
authors use examples that are subsets of larger problems to illustrate
specific points. So I don't know of any offhand.

However, I can suggest two other books that should be available.

"Executable UML: How to Build Class Models" by Leon Starr. This is, far
and away, the most comprehensive book on class modeling available. There
are lots of disparate examples but Leon does a pretty good job of
discussing trade-offs and the underlying logic of Why one wants to do
things a particular way.

"Executable UML" by Balcer and Mellor. Again, disparate examples.
However, Mellor is the best modeler I know and the examples in the book
provide a lot of design insight into things like abstracting invariants
(e.g., his model of a subsystem for managing a browser UI is a classic
example of abstraction so that the subsystem can be reused across
applications with different UIs.)

[BTW, the "executable UML" is not a personal bias. Starr and Mellor are
translationists and code generators are notoriously literal minded; they
do what you say, not what you meant. They also both grew up in R-T/E,
which is a very unforgiving environment for software design. So they
both needed a very rigorous approach to design modeling. So the
"executable UML" comes from the fact that both provide models that are
complete, precise, and unambiguous -- which enables execution of the
models themselves for validation purposes. IMO, that rigor should be
applied to any OO design if one wants to avoid downstream problems, even
if one manually codes. If one has thought through the design to the
point where an R-T/E code generator can deal with it correctly, that
should be good enough for a human programmer.]


*************
There is nothing wrong with me that could
not be cured by a capful of Drano.

H. S. Lahman
hsl(a)pathfindermda.com
Pathfinder Solutions
http://www.pathfindermda.com
blog: http://pathfinderpeople.blogs.com/hslahman
"Model-Based Translation: The Next Step in Agile Development". Email
info(a)pathfindermda.com for your copy.
Pathfinder is hiring:
http://www.pathfindermda.com/about_us/careers_pos3.php.
(888)OOA-PATH



From: topmind on
On Dec 3, 6:01 am, jaffarkazi <jaffar.k...(a)gmail.com> wrote:
> Hi.
> I've read a lot of tutorials on OOAD and do actual design and coding
> also. What I would like to have is a real world sample application
> that totally illustrates OOAD as how it would be done when
> implementing a production system, as a learning tool.
>
> This sample would obviously be without any UI and database, etc. Just
> the basic objects that would be used in a normal business application
> illustrating total OO usage for a real app. eg. Inventory, etc.
>
> Regards,
> --Jaffar

A realistic and typical business app withOUT a database? You won't
find very many of those around. Databases are very useful tools. OO
fans like to wrap them away and pretend like they don't exist in order
to obtain OO purity, but if they do such, they often end up
reinventing the database wheel.

You may be interested in my take on an OO Payroll example from a
Robert Martin book:

http://www.geocities.com/tablizer/payroll2.htm

-T-