Object Models:
Strategies, Patterns and Applications
by Peter Coad, Mark Mayfield and David North
This new edition of a best-seller gives object programmers the latest
information on getting faster, better results with strategies and templates.
Object Models: Strategies, Patterns and Applications delivers up-to-the-minute
guidance on object modeling, from three of the world's leading experts.
This book presents 177 strategies and 31 patterns (templates) for achieving
the best possible results with object modeling in all three leading
methodologies: Coad, OMT and Unified. This new second edition includes
29 new strategies, including: using feature milestones to deliver results
more quickly; extracting useful content from data models; using patterns
to discover new features, separating definition from usage; when to
use -- or not use -- inheritance; how to decide whether you need an
attribute or something more; and why you should nearly always ask for
more than a data value. It will be invaluable to any object-oriented
programmer interested in object modeling.
Object-Oriented Design:
by Peter Coad and Edward Yourdon
Designed
as a companion volume to the acclaimed Object- Oriented Analysis, this
book focuses on the middle part of the software lifecycle: the activitiy
of design. It shows readers how to apply object-oriented design, and
how to tailor and expand the method to suit specific organization and
project needs. Readers will explore the major issues in OOD; the role
of OOD in the systems lifecycle; how to use graphical notation; strategies
for creating design; and hints for evaluating the efficiency of a design
created with OOD. For software engineers and other users undertaking
real-world systems development projects and designing overall software
architecture for systems will find this reference approach to improving
systems design indispensable.
Streamlined
Object Modeling: Patterns, Rules, and Implementation
by Jill
Nicola, Mark Mayfield and Mike Abney
*
A rigorous and practical framework for modeling business systems
* Pares object modeling down to its core concepts, making it easier
than ever.
* Twelve object collaboration patterns that address virtually any business
scenario
* Powerful techniques—not fancy notation!
The first rigorous and practical approach for modeling complex business
domains, rules, and systems.
Streamlined Object Modeling presents the first rigorous, practical framework
for object modeling complex business domains, rules, and systems. Three
world-renowned leaders in object development have pared object modeling
down to the core concepts for all business domains, business rules,
and business services. Starting from the first principles of "object
think," the authors offer a fully integrated approach to building,
validating, and critiquing object models.
Coverage includes:
* Proven principles and techniques for successfully modeling the structure
and operations of any business domain.
* Guidelines for finding objects, assembling object models, and distributing
system behavior among objects.
* Rigorous methods for discovering, organizing, and implementing business
rules around objects.
* Twelve all-encompassing "collaboration patterns"—what
they represent, how they relate, and how to apply them.
* Five kinds of business rules, three types of services
* Six categories of properties completely specify object-oriented business
requirements
From start to finish, the book makes extensive use of examples drawn
from real commercial applications. To illustrate how streamlined object
modeling flows from analysis to code, it also presents a complete case
study derived from a real-world application, and implemented in two
leading object-oriented languages-Java, and the Squeak implementation
of Smalltalk.
The accompanying CD-ROM contains all of the book's source code for both
Java and Squeak, plus the Java 2 Software Development Kit and the latest
version of Squeak—the commercial-quality, open source, cross-platform
Smalltalk integrated development environment!
Design
Patterns Explained:
A New Perspective on Object-Oriented Design
by Alan Shalloway and James R. Trott
Design Patterns Explained: A New Perspective on Object-Oriented Design
draws together the principles of object-oriented programming with the
power of design patterns to create an environment for robust and reliable
software development. Packed with practical and applicable examples,
this book teaches you to solve common programming problems with patterns--and
explains the advantages of patterns for modern software design.
Beginning with a complete overview of the fundamentals of patterns,
Design Patterns Explained stresses the importance of analysis and design.
The authors clearly demonstrate how patterns can facilitate the overall
development process. Throughout the book, key object-oriented design
principles are explained, along with the concepts and benefits behind
specific patterns. With illustrative examples in C++ and Java, the book
demystifies the "whys," "why nots," and "hows"
of patterns and explains pattern implementation.
Key topics covered include:
* New perspectives on objects, encapsulation, and inheritance
* The idea of design patterns, their origins, and how they apply in
the discipline of software design
* Pattern-based, object-oriented software development using the Unified
Modeling Language (UML)
* How to implement critical patterns--Strategy, Observer, Bridge, Decorator,
and many more
* Commonality/Variability Analysis and design patterns, and how they
aid in understanding abstract classes
From analysis to implementation, Design Patterns Explained allows you
to unleash the true potential of patterns and paves the path for improving
your overall designs. This book provides newcomers with a genuinely
accurate and helpful introduction to object-oriented design patterns.
The Practical Guide To Structured Systems Design
by Meilir Page-Jones
A practical guide that takes the theoretical concepts of structured
design and makes them applicable to real-world software development.
This practical guide takes the theoretical concepts of structured
design and makes them applicable to real-world software development.
It also integrates the approach of structured analysis with that of
structured design. The book also gives a brief outline of the tools
of structured analysis and shows how these tools are an asset not
only to the analyst, but also to the designer of a computer system.