190 likes | 235 Views
Craig Larman’s Applying UML and Patterns : Hands-on Mastery of OOA/D Patterns Requirements. Coach Background. Coached thousands since 1986 in OOA/D www.craiglarman.com. introduction iterative UP iterative requirements use cases. Introduction.
E N D
Craig Larman’sApplying UML and Patterns:Hands-on Mastery ofOOA/DPatternsRequirements
Coach Background • Coached thousands since 1986 in OOA/D • www.craiglarman.com 2 introductioniterative UP iterative requirements use cases
Introduction 3 introductioniterative UP iterative requirements use cases
“Think in Objects” Analyze requirements with use cases Create domain models Apply an iterative & agile Unified Process (UP) Relate analysis and design artifacts Read & write high-frequency UML Practice Apply agile modeling Design object solutions Assign responsibilities to objects Design collaborations Design with patterns Design with architectural layers Understand OOP (e.g., Java) mapping issues Objectives 4 introductioniterative UP iterative requirements use cases
Priority • 1. Assign responsibilities to objects • The GRASP patterns are the key learning aid • After that. . . ? 5 introductioniterative UP iterative requirements use cases
Learning • We will spend most time “at the whiteboard” 6 introductioniterative UP iterative requirements use cases
Learning Aids • This presentation is terse. • The details are in… • Carefully study—valuable. 7 introductioniterative UP iterative requirements use cases
Analysis investigation what best qualified… Requirements analysis Domain analysis Architectural analysis Design solution how best qualified… Object design Database design UI design Analysis and Design? 8 introductioniterative UP iterative requirements use cases
Object-Oriented Analysis Important domain concepts or objects? Vocabulary? Visualized in the UP Domain Model Object-Oriented Design Design of software objects Responsibilities Collaborations Design patterns Visualized in the UP Design Model Object-Oriented Analysis and Design? 9 introductioniterative UP iterative requirements use cases
Development Method • OOA/D needs explanation in a method context. • Thus, an agile UP • Common, popular • Just a sample • Our focus is method-independent core skills, not UP • Responsibility assignment, design patterns, … 10 introductioniterative UP iterative requirements use cases
Unified Modeling Language (UML) Just a diagramming notation standard. Trivial and relatively unimportant. Not a method, process, or design guide. 11 introductioniterative UP iterative requirements use cases
UML: What’s Important? 12 introductioniterative UP iterative requirements use cases
UML: What’s Important? Harmful is knowing how to read and draw UML diagrams, but not being an expert in design and patterns. Important is object and architectural design skills, not UML diagrams, drawing, or CASE tools. 13 introductioniterative UP iterative requirements use cases
Skills self assessment. Examples: Swallow a sword? Relatively skilled master dead Relatively skilled master dead Relatively skilled master dead 14 introductioniterative UP iterative requirements use cases
Objectives Skills self assessment: “Think in objects” Analyze requirements with use cases Create domain models Relatively skilled master new-ish Relatively skilled master new-ish Relatively skilled master new-ish 15 introductioniterative UP iterative requirements use cases
Objectives Skills self assessment: Apply an iterative & agile process Relate analysis and design artifacts Read and write UML Relatively skilled master new-ish Relatively skilled master new-ish Relatively skilled master new-ish 16 introductioniterative UP iterative requirements use cases
Objectives Skills self assessment: Assign responsibilities to objects Design collaborations Design with patterns Relatively skilled master new-ish Relatively skilled master new-ish Relatively skilled master new-ish 17 introductioniterative UP iterative requirements use cases
Objectives Skills self assessment: Design with architectural layers Relatively skilled master new-ish 18 introductioniterative UP iterative requirements use cases
Individually memorize the objectives. • Tell a partner, without looking at notes. • Reverse. 19 introductioniterative UP iterative requirements use cases