Skip to content

Applying UML and Patterns An Introduction to Object-Oriented Analysis and Design and the Unified Process

Best in textbook rentals since 2012!

ISBN-10: 0130925691

ISBN-13: 9780130925695

Edition: 2nd 2002

Authors: Craig Larman

List price: $52.00
Blue ribbon 30 day, 100% satisfaction guarantee!
what's this?
Rush Rewards U
Members Receive:
Carrot Coin icon
XP icon
You have reached 400 XP and carrot coins. That is the daily max!

Description:

An update to the bestselling UML classic, this title has been revised to cover the unified process and Rational Software's processes. Larman also shows developers how to make practical use of the most significant recent developments in object-oriented analysis and design.
Customers also bought

Book details

List price: $52.00
Edition: 2nd
Copyright year: 2002
Publisher: Prentice Hall PTR
Publication date: 7/13/2001
Binding: Hardcover
Pages: 656
Size: 8.00" wide x 10.00" long x 1.25" tall
Weight: 2.992
Language: English

Foreword
Preface
Introduction
Object-Oriented Analysis and Design
Applying UML and Patterns in OOA/D
Assigning Responsibilities
What Is Analysis and Design?
What Is Object-Oriented Analysis and Design?
An Example
The UML
Further Readings
Iterative Development and the Unified Process
The Most Important UP Idea: Iterative Development
Additional UP Best Practices and Concepts
The UP Phases and Schedule-Oriented Terms
The UP Disciplines (was Workflows)
Process Customization and the Development Case
The Agile UP.
The Sequential “Waterfall” Lifecycle
You Know You Didn''t Understand the UP When…
Further Readings
Case Study
The NextGen POS System
The NextGen POS System
Architectural Layers and Case Study Emphasis
The Book''s Strategy: Iterative Learning and Development
Inception
Inception
Inception: An Analogy
Inception May Be Very Brief
What Artifacts May Start in Inception?
You Know You Didn''t Understand Inception When…
Understanding Requirements
Types of Requirements
Further Readings
Use-Case Model
Writing Requirements in Context
Goals and Stories
Background
Use Cases and Adding Value
Use Cases and Functional Requirements
Use Case Types and Formats
Fully Dressed Example: Process Sale
Explaining the Sections
Goals and Scope of a Use Case
Finding Primary Actors, Goals, and Use Cases
Congratulations: Use Cases Have Been Written, and Are Imperfect
Write Use Cases in an Essential UI-Free Style
Actors
Use Case Diagrams
Requirements in Context and Low-Level Feature Lists
Use Cases Are Not Object-Oriented
Use Cases Within the UP
Case Study: Use Cases in the NextGen Inception Phase
Further Readings
UP Artifacts and Process Context
Identifying Other Requirements
NextGen POS Examples
NextGen Example: (Partial) Supplementary Specification
Commentary: Supplementary Specification
NextGen Example: (Partial) Vision
Commentary: Vision
NextGen Example: A (Partial) Glossary
Commentary: Glossary (Data Dictionary)
Reliable Specifications: An Oxymoron?
Online Artifacts at the Project Website
Not Much UML During Inception?
Other Requirement Artifacts Within the UP
Further Readings
UP Artifacts and Process Context
From Inception to Elaboration
Checkpoint: What Happened in Inception?
On to Elaboration
Planning the Next Iteration
Iteration 1 Requirements and Emphasis: Fundamental OOA/D Skills
What Artifacts May Start in Elaboration?
You Know You Didn''t Understand Elaboration When…
Elaboration Iteration
Use-Case Model
Drawing System Sequence Diagrams
System Behavior
System Sequence Diagrams
Example of an SSD
Inter-System SSDs
SSDs and Use Cases
System Events and the System Boundary
Naming System Events and Operations
Showing Use Case Text
SSDs and the Glossary
SSDs Within the UP
Further Readings
UP Artifacts
Domain Model
Visualizing Concepts
Domain Models
Conceptual Class Identification
Candidate Conceptual Classes for the Sales Domain
Domain Modeling Guidelines
Resolving Similar Conceptual Classes-Register vs. “POST”
Modeling the Unreal World
Specification or Description Conceptual Classes
UML Notation, Models, and Methods: Multiple Perspectives
Lowering the Representational Gap
Example: The NextGen POS Domain Model
Domain Models Within the UP
Further Readings
UP Artifacts
Domain Model
Adding Associations
Associations
The UML Association Notation
Finding Associations-Common Associations List
Association Guidelines
Roles
How Detailed Should Associations Be?
Naming Associations
Multiple Associations Between Two Types
Associations and Implementation
NextGen POS Domain Model Associations
NextGen POS Domain Model
Domain Model
Adding Attributes
Attributes
UML Attribute Notation
Valid Attribute Types
Non-primitive Data Type Classes
Design Creep: No Attributes as Foreign Keys
Modeling Attribute Quantities and Units
Attributes in the NextGen Domain Model
Multiplicity From SalesLineItem to Item
Domain Model Conclusion
Use-Case Model
Adding Detail with Operation Contracts
Contracts
Example Contract: enterItem
Contract Sections
Postconditions
Discussion-enterItem Postconditions
Writing Contracts Leads to Domain Model Updates
When Are Contracts Useful?
Contracts vs. Use Cases?
Guidelines: Contracts
NextGen POS Example: Contracts
Changes to the Domain Model
Contracts, Operations, and the UML
Operation Contracts Within the UP
Further Readings
From Requirements to Design in this Iteration
Iteratively Do the Right Thing, Do the Thing Right
Didn''t That Take Weeks To Do?
No, Not Exactly
On to Object Design
Interaction Diagram Notation
Sequence and Collaboration Diagrams
Example Collaboration Diagram: make Payment
Example Sequence Diagram: make Payment
Interaction Diagrams Are Valuable
Common Interaction Diagram Notation
Basic Collaboration Diagram Notation
Basic Sequence Diagram Notation
GRASP
Designing Objects with Responsibilities
Responsibilities and Methods
Responsibilities and Interaction Diagrams
Patterns
GRASP: Patterns of General Principles in Assigning Responsibilities
The UML Class Diagram Notation
Information Expert (or Expert)
Creator
Low Coupling
High Cohesion
Controller
Object Design and CRC Cards
Further Readings
Design Model
Use-Case Realizations with GRASP Patterns
Use-Case Realizations
Artifact Comments
Use-Case Realizations for the NextGen Iteration
Object Design: make NewSale
Object Design: enter Item
Object Design: end Sale
Object Design: make Payment
Object Design: start Up
Connecting the UI Layer to the Domain Layer
Use-Case Realizations Within the UP
Summary
Design Model
Determining Visibility
Visibility Between Objects
Visibility
Illustrating Visibility in the UML
Design Model
Creating Design Class Diagrams
When to Create DCDs
Example DCD
DCD and UP Terminology
Domain Model vs. Design Model Classes
Creating a NextGen POS DCD
Notation for Member Details
DCDs, Drawing, and CASE Tools
DCDs Within the UP
UP Artifacts
Implementation Model
Mapping Designs to Code
Programming and the Development Process
Mapping Designs to Code
Creating Class Definitions from DCDs
Creating Methods from Interaction Diagrams
Container/Collection Classes in Code
Exceptions and Error Handling
Defining the Sale—makeLineItem Method
Order of Implementation
Test-First Programming
Summary of Mapping Designs to Code
Introduction