In the early days of web programming there was the Java Pet Shop application which was used as a reference type of example application.

Currently I am looking for a similar reference but with the emphasis on systems =design=. I.e. what aspects of his / her design should an architect / systems-designer put on paper and communicate thoroughly with developers and client ( management ).

I am looking for an actual and complete example or reference, not a list of properties of good design, etc. ( Possibly of a hypothetical system. )


Craig Larman's Applying UML and Patterns covers an extended case study designing a "point of sale" system for retailers. It goes from requirements analysis, through object-oriented design, to implementation and testing. There are lots of diagrams (UML, obviously) at incremental points in the design stage illustrating how to communicate system design in various ways.

This was the case study I followed in college learning software design. It's the most thorough example I've seen anywhere.

  • 1
    Looks good, and the book is already in its third edition, I see. Have you adopted the methods in your work practice? Dec 20 '11 at 20:42
  • To an extent. We're an agile shop, so we don't do much formal design and diagramming to that level of detail, but in the larger sense of OO design and requirements analysis, absolutely. Dec 22 '11 at 16:13

You can reverse engineer a similar project to yours. I mean you usually you get jar files but it is possible to reverse them into a single UML model and then generate the skeleton of this application into java.

There is no copyright on project architecture but only on the code therefore you have the right to copy the skeleton of an existing software as long as you don't copy the code.

  • Do you mean reverse-engineering code? Dec 20 '11 at 20:34

Not the answer you're looking for? Browse other questions tagged or ask your own question.