Analysis Patterns

Analysis Patterns: Reusable Object Models by MartinFowler. Published by Addison-Wesley Longman, 1997.

ISBN 0-201-89542-0 While not really a catalog in the same sense as the DesignPatterns book, this book describes a large number of analysis patterns, grouped by subject. The subjects are Accountability, Observations and Measurements, Referring to Objects, Inventory and Accounting, Planning, and Trading. There are also lower-level patterns for associations and for layering.


I first picked up this book a couple of years ago after attending an excellent introduction on patterns by the author. It is still one of the better books for applying patterns at the more abstract or conceptual level, as opposed to the design level. No sign yet (Xmas 2001) of the revision, which I have been waiting for. -- ClaudeMuncey


This book also happens to contain the clearest exposition of the main reason why we need middle tier technologies like app servers. In case you're wondering it's to provide a home for our DomainObjects since neither the client nor the database server are up to the job. -- AdewaleOshineye


Best thing this book did for me was clarify the difference between analysis and design. The two are too often used in the same phrase, but actually serve very different purposes. It is particular useful in object modelling to distinguish between an analysis model and a design model (see IvarJacobson's book "ObjectOrientedSoftwareEngineeringaUseCaseDrivenApproach"). The analysis model is how you would build the system assuming it was a fluffy cloud of nothing but objects, simply to satisfy functional requirements; ignore non-functional stuff. The design model is how you translate the analysis model into a real implementation given a number of non-functional constraints (concurrency, distribution, persistence, performance, resilience, scalability, etc.). Keeping these views of the system makes it much easier to understand a complex architecture, by leaving out all the non-functional stuff.


CategoryBook CategoryPlanning


EditText of this page (last edited December 3, 2007) or FindPage with title or text search