IntellAgile www.craiglarman.com Copyright © 2002 Craig Larman. All rights reserved. Craig Larman’s Applying UML and Patterns: Hands-on Mastery of OOA/D.

Slides:



Advertisements
Similar presentations
Object-Oriented Analysis and Design Introduction 1.
Advertisements

Chap 1 UML vs Thinking in Objects! – Visual modeling Learning UML – Look at the book examples – Alan Holub’s UML reference card – Use library resources.
Writing Use Cases: Requirements in Context
Object-Oriented Analysis and Design
Chapter 1 Object Oriented Analysis and Design. UML, Patterns, and Object-Oriented Analysis and Design  The essential skills for the creation of well-designed,
SOEN 343 Software Design Section H Fall 2006 Dr Greg Butler
Object Oriented Analysis and Design
NJIT Requirements To Design--Iteratively Chapter 12 Applying UML and Patterns Craig Larman Presented By :Satish Khanna.
Introduction to UML Visual modeling Models and its importance
Object Oriented Analysis and Design Chapter 1 Applying UML and Patterns -Craig Larman.
COMP 350: Object Oriented Analysis and Design Lecture 2
Week 3 Iteration 1 Domain Models System Sequence Diagrams.
Copyright © Craig Larman All Rights Reserved Requirements.
COMP 6471 Software Design Methodologies Winter 2006 Dr Greg Butler
Chapter 7 GRASP patterns Dr Seham Mostefai CAP 252.
Software Engineering 1 Object-oriented Analysis and Design Applying UML and Patterns An Introduction to Object-oriented Analysis and Design and Iterative.
IntellAgile Copyright © 2002 Craig Larman. All rights reserved. Visualizing Concepts with a Domain Model.
Mapping Designs to Code Larman, Chapter 20 CSE432 Object Oriented Software Engineering.
Object-Oriented Analysis and Design OVERVIEW. Objectives  Describe Information Systems  Explain the role of a systems analyst  Introduce object-oriented.
SOEN 6011 Software Engineering Processes Section SS Fall 2007 Dr Greg Butler
Chapter 1 Object-Oriented Analysis and Design. Disclaimer Slides come from a variety of sources: –Craig Larman-developed slides; author of this classic.
1 SYS366 Lecture Visual Modeling and Business Use Case Diagrams.
Requirements To Design--Iteratively Chapter 12 Applying UML and Patterns Craig Larman.
Chapter 6: Structured Vs. Object Oriented Analysis and Design.
Object-Oriented Analysis and Design An Introduction.
SOEN 343 Software Design Section H Fall 2006 Dr Greg Butler
Object-Oriented Analysis and Design Lecture 1 Instructor: John Cole 1Object-Oriented Analysis and Design - Intro.
Course Guide IS325 Systems Analysis & Design II Ms Fatima Khan Prince Sultan University, College for Women.
IntellAgile Copyright © 2002 Craig Larman. All rights reserved. Writing Use Cases: Requirements in Context.
Chapter 7 Applying UML and Patterns Craig Larman
Copyright © Craig Larman All Rights Reserved Responsibility-Driven Design with the GRASP Patterns.
Chapter 1 Object-Oriented Analysis and Design. Disclaimer Slides come from a variety of sources: –Craig Larman-developed slides; author of this classic.
Object-Oriented Analysis and Design Fall 2009.
1 COMP 350: Object Oriented Analysis and Design Lecture 1Introduction References: Craig Larman Chapter 1.
Copyright © Craig Larman All Rights Reserved The Domain Model.
NJIT UML Class Diagrams Chapter 16 Applying UML and Patterns Craig Larman.
IntellAgile Copyright © 2002 Craig Larman. All rights reserved. Object Design and Use- Case Realizations with GRASP Patterns.
Sept Ron McFadyen1 Today Sept 16: Chapters 1, 2, 3 Introductory material Next Tuesday Sept 21: Rational Rose and Use Cases Chapter 6 - Use.
Introduction To OOP 1.0 Fundamentals Of Java Programming Language 2.0 Exception Handling 3.0 Classes, Inheritance And Polymorphism © 2011 | PN AZRINA.
What to remember from Chap 13 (Logical architecture)
Object-Oriented Analysis and Design ธนวัฒน์ แซ่ เอียบ.
Copyright ©2004 Cezary Z Janikow 1 OOAD Overview n OO language – Necessary for OO systems? – Sufficient for OO systems? Owning a hummer doesn’t make you.
TK2023 Object-Oriented Software Engineering CHAPTER 12 Introduction to Responsibility-Driven Design.
Object Oriented Analysis and Design Chapter 1 Applying UML and Patterns -Craig Larman.
Chapter 1 OBJECT-ORIENTED ANALYSIS AND DESIGN Objectives Describe the book goals and scope Define OOA/D (Object-Oriented Analysis and Design) Illustrate.
Software Design. A well-known phenomenon You will learn…. –Thinking "object oriented“ –Define requirements and analyze the problem domain. –Design of.
SOEN 343 Software Design Section H Fall 2006 Dr Greg Butler
TK2023 Object-Oriented Software Engineering CHAPTER 9 INTRODUCTION TO OBJECT DESIGN.
Ivar Jacobson, Grady Booch, and James Rumbaugh The Unified Software Development Process Addison Wesley, : James Rumbaugh's OOMD 1992: Ivar Jacobson's.
Object Oriented Analysis and Design 1 CREATED BY RUONAN RAO Object-Oriented Analysis and Design.
IntellAgile Copyright © 2002 Craig Larman. All rights reserved. Writing Use Cases: Requirements in Context.
Object Oriented Analysis & Design By Rashid Mahmood.
Copyright © Craig Larman All Rights Reserved Large-Scale System Partitioning.
1 Design Object Oriented Solutions Object Oriented Analysis & Design Lecturer: Mr. Mohammed Elhajj
Elaboration popo.
Chapter 6: Structured Vs. Object Oriented Analysis and Design.
Chapter 5: Object Oriented Analysis and Design
Chapter 1 OBJECT-ORIENTED ANALYSIS AND DESIGN
System Development Process
CS 519: Object-Oriented Analysis & Design IS 516: Selected Topics in Information Technology Instructor: Dr. Tarek Elghazaly Text Book: Craig Larman,
Apply Expert, Creator, Controller, Low Coupling, High Cohesion
COMP 350: Object Oriented Analysis and Design Lecture 2
Chapter 1 Object-Oriented Analysis and Design. Disclaimer Slides come from a variety of sources: –Craig Larman-developed slides; author of this classic.
Chap 1 UML vs Thinking in Objects! Learning UML Visual modeling
Object Oriented Analysis and Design
2D1359 & 2D1360 : Object Oriented Modeling, Programming & Analysis
Week 5.
Week 5.
CSCI 360: Software Architecture and Design
On to Object Design c. 14.
Presentation transcript:

IntellAgile Copyright © 2002 Craig Larman. All rights reserved. Craig Larman’s Applying UML and Patterns: Hands-on Mastery of OOA/D Patterns Requirements

IntellAgile 2 Coach Background  Coached thousands since 1986 in OOA/D  introductioniterative UPiterative requirementsuse cases

IntellAgile 3 Introduction introductioniterative UPiterative requirementsuse cases

IntellAgile 4 Objectives  “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 introductioniterative UPiterative requirementsuse cases

IntellAgile 5 Priority  1. Assign responsibilities to objects  The GRASP patterns are the key learning aid  After that... ? introductioniterative UPiterative requirementsuse cases

IntellAgile 6 Learning  We will spend most time “at the whiteboard” introductioniterative UPiterative requirementsuse cases

IntellAgile 7 Learning Aids  This presentation is terse.  The details are in…  Carefully study—valuable. introductioniterative UPiterative requirementsuse cases

IntellAgile 8 Analysis and Design?  Analysis  investigation  what  best qualified…  Requirements analysis  Domain analysis  Architectural analysis  Design  solution  how  best qualified…  Object design  Database design  UI design introductioniterative UPiterative requirementsuse cases

IntellAgile 9 Object-Oriented Analysis and Design?  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 introductioniterative UPiterative requirementsuse cases

IntellAgile 10 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, … introductioniterative UPiterative requirementsuse cases

IntellAgile 11 Unified Modeling Language (UML) introductioniterative UPiterative requirementsuse cases Just a diagramming notation standard. Trivial and relatively unimportant. Not a method, process, or design guide.

IntellAgile 12 UML: What’s Important? introductioniterative UPiterative requirementsuse cases

IntellAgile 13 UML: What’s Important? introductioniterative UPiterative requirementsuse cases 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.

IntellAgile 14  Skills self assessment. Examples: Swallow a sword? introductioniterative UPiterative requirementsuse cases dead Relatively skilled master dead Relatively skilled master dead Relatively skilled master

IntellAgile 15 Objectives Skills self assessment: “Think in objects” Analyze requirements with use cases Create domain models introductioniterative UPiterative requirementsuse cases new-ish Relatively skilled master new-ish Relatively skilled master new-ish Relatively skilled master

IntellAgile 16 Objectives Skills self assessment: Apply an iterative & agile process Relate analysis and design artifacts Read and write UML introductioniterative UPiterative requirementsuse cases new-ish Relatively skilled master new-ish Relatively skilled master new-ish Relatively skilled master

IntellAgile 17 Objectives Skills self assessment: Assign responsibilities to objects Design collaborations Design with patterns introductioniterative UPiterative requirementsuse cases new-ish Relatively skilled master new-ish Relatively skilled master new-ish Relatively skilled master

IntellAgile 18 Objectives Skills self assessment: Design with architectural layers introductioniterative UPiterative requirementsuse cases new-ish Relatively skilled master

IntellAgile 19  Individually memorize the objectives.  Tell a partner, without looking at notes.  Reverse. introductioniterative UPiterative requirementsuse cases