Mastering Object-Oriented Analysis and Design with UML Module 4: Analysis and Design Overview.

Slides:



Advertisements
Similar presentations
Objectives Explain the purpose and various phases of the traditional systems development life cycle (SDLC) Explain when to use an adaptive approach to.
Advertisements

Practical Business Modeling in the Unified Process Tom Morgan Software Architect, Fidelity National Information Services
Object-Oriented Analysis and Design
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
The Unified Software Development Process - Workflows Ivar Jacobson, Grady Booch, James Rumbaugh Addison Wesley, 1999.
SE 555 Software Requirements & Specification1 Use-Case Modeling: Overview and Context.
Recall The Team Skills 1. Analyzing the Problem (with 5 steps) 2. Understanding User and Stakeholder Needs 3. Defining the System 4. Managing Scope 5.
Site Skin Structure Services Space plan Stuff Software Architecture and Software Architecture Patterns (1)
Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 1 R Introduction to Rational Unified Process.
Unified Modeling (Part I) Overview of UML & Modeling
Rational Worldwide Software Symposium
Copyright  Larry Dribin, Ph.D. SE470_EngFlows_v1.ppt SE470 EngFlows - 1 Excellence in Software Engineering Repeatable Level Defined Level Manage.
Mastering OOA/OOD with UML. Contents Introduction Requirements Overview OOAOOD.
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
Object Oriented Analysis and Design Using the UML
Principles of Object Technology Module 1: Principles of Modeling.
UML - Development Process 1 Software Development Process Using UML (2)
RUP Fundamentals - Instructor Notes
1 IBM Software Group ® Mastering Object-Oriented Analysis and Design with UML 2.0 Module 1: Best Practices of Software Engineering.
Software Engineering 1 Object-oriented Analysis and Design Applying UML and Patterns An Introduction to Object-oriented Analysis and Design and Iterative.
Rational Unified Process Fundamentals Module 4: Disciplines II.
An Introduction to Software Architecture
RUP Design RUP Artifacts and Deliverables
Unified Modeling Language, Version 2.0
Role-Based Guide to the RUP Architect. 2 Mission of an Architect A software architect leads and coordinates technical activities and artifacts throughout.
Software Architecture and Design Dr. Aldo Dagnino ABB, Inc. US Corporate Research Center October 23 rd, 2003.
Requirements Analysis Going from “what” to “how”.
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
Chapter 10 Analysis and Design Discipline. 2 Purpose The purpose is to translate the requirements into a specification that describes how to implement.
Notes of Rational Related cyt. 2 Outline 3 Capturing business requirements using use cases Practical principles  Find the right boundaries for your.
Object Oriented Analysis and Design using the UML CIS 520 Advanced Object-Oriented Design.
Unified Modeling Language* Keng Siau University of Nebraska-Lincoln *Adapted from “Software Architecture and the UML” by Grady Booch.
1 COMP 350: Object Oriented Analysis and Design Lecture 1Introduction References: Craig Larman Chapter 1.
L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
CEN5011, Fall CEN5011 Software Engineering Dr. Yi Deng ECS359, (305)
2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:
RUP Life Cycle Software Engineering Learning Programme Software Engineering Foundation.
Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods?  OO methods provide a set of techniques for analyzing, decomposing,
Unified Modelling Language (UML) Software Engineering Lab. Sharif University of Technology.
Introduction to OOAD & Rational Rose cyt. 2 Outline RUP OOAD Rational Rose.
1 IBM Software Group ® Mastering Object-Oriented Analysis and Design with UML 2.0 Module 9: Describe the Run-time Architecture.
Analysis and Design Overview 12/14/ Objectives Review the key Analysis and Design terms and concepts Introduce the Analysis and Design process,
Shanghai Jiao Tong University 上海交通大学软件工程中心 Object Oriented Analysis and Design Architectural Analysis.
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
UML Diagrams for Caradon developers Daniel DG Moth Core Development Group, Research Student University of Brighton, MSc Object Oriented Software Technology.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
The principles of an object oriented software development process Week 04 1.
Introduction to Rational Unified Process
1 Unified Modeling Language, Version 2.0 Chapter 2.
Rational Unified Process Fundamentals Module 3: Core Workflows I - Concepts Rational Unified Process Fundamentals Module 3: Core Workflows I - Concepts.
Rational Unified Process Fundamentals Best Practices of Software Engineering Rational Unified Process Fundamentals Best Practices of Software Engineering.
1 IBM Software Group ® Mastering Object-Oriented Analysis and Design with UML 2.0 Module 4: Analysis and Design Overview.
From Use Cases to Implementation 1. Structural and Behavioral Aspects of Collaborations  Two aspects of Collaborations Structural – specifies the static.
1 Architectural Blueprints—The “4+1” View Model of Software Architecture (
OOAD Using the UML - Describe Concurrency, v 4.0 Copyright  Rational Software, all rights reserved 1 R Thread Process X Thread Process ZProcess.
Basic Characteristics of Object-Oriented Systems
Quality Consulting Module 7 Solution Development.
From Use Cases to Implementation 1. Mapping Requirements Directly to Design and Code  For many, if not most, of our requirements it is relatively easy.
UML: Unified modeling language
Recall The Team Skills Analyzing the Problem (with 5 steps)
Rational Worldwide Software Symposium
Rational Unified Process
Rational Worldwide Software Symposium
Object Oriented Analysis and Design Using the UML
4+1 View Model of Software Architecture
Object Oriented Analysis and Design Using the UML
4+1 View Model of Software Architecture
Rational Worldwide Software Symposium
Software Development Process Using UML Recap
From Use Cases to Implementation
Presentation transcript:

Mastering Object-Oriented Analysis and Design with UML Module 4: Analysis and Design Overview

OOAD – Dr. A. Alghamdi 2 Objectives: Analysis and Design Overview  Review the key Analysis and Design terms and concepts  Introduce the Analysis and Design process, including roles, artifacts and workflow  Explain the difference between Analysis and Design

OOAD – Dr. A. Alghamdi 3 Analysis and Design in Context The purposes of Analysis and Design are to:  Transform the requirements into a design of the system-to-be.  Evolve a robust architecture for the system.  Adapt the design to match the implementation environment, designing it for performance. The purposes of Analysis and Design are to:  Transform the requirements into a design of the system-to-be.  Evolve a robust architecture for the system.  Adapt the design to match the implementation environment, designing it for performance.

OOAD – Dr. A. Alghamdi 4 Supplementary Specification Use-Case Model Design ModelData Model Architecture Document Analysis and Design Analysis and Design Overview Glossary

OOAD – Dr. A. Alghamdi 5 Analysis & Design Overview Topics  Key Concepts  Analysis and Design Workflow

OOAD – Dr. A. Alghamdi 6 Analysis Versus Design  Analysis  Focus on understanding the problem  Idealized design  Behavior  System structure  Functional requirements  A small model  Design  Focus on understanding the solution  Operations and attributes  Performance  Close to real code  Object lifecycles  Nonfunctional requirements  A large model

OOAD – Dr. A. Alghamdi 7 Design Classes Subsystems Use Cases Analysis and Design Are Not Top-Down or Bottom-Up Analysis Classes Bottom Up Top Down (Define a middle level) Analysis and Design

OOAD – Dr. A. Alghamdi 8 What Is Architecture?  Software architecture encompasses a set of significant decisions about the organization of a software system.  Selection of the structural elements and their interfaces by which a system is composed  Behavior as specified in collaborations among those elements  Composition of these structural and behavioral elements into larger subsystems  Architectural style that guides this organization Grady Booch, Philippe Kruchten, Rich Reitman, Kurt Bittner; Rational (derived from Mary Shaw)

OOAD – Dr. A. Alghamdi 9 Architecture Constrains Design and Implementation  Architecture involves a set of strategic design decisions, rules or patterns that constrain design and construction. Architecture decisions are the most fundamental decisions, and changing them will have significant effects. Architecture Design Implementation Code

OOAD – Dr. A. Alghamdi 10 Process ViewDeployment View Logical View Use-Case View Implementation View End-user Functionality Programmers Software management Performance Scalability Throughput System integrators System topology Delivery, installation communication System engineering Analysts/Designers Structure Software Architecture: The “4+1 View” Model

OOAD – Dr. A. Alghamdi 11 Analysis & Design Overview Topics  Key Concepts  Analysis and Design Workflow

OOAD – Dr. A. Alghamdi 12 Analysis and Design Workflow Analysis Design [Early Elaboration Iteration] [Inception Iteration (Optional)] Define a Candidate Architecture Perform Architectural Synthesis Analyze Behavior Refine the Architecture Define Components Design the Database (Optional)

OOAD – Dr. A. Alghamdi 13 Analysis and Design Activity Overview Architect Designer

OOAD – Dr. A. Alghamdi 14 Software Architect’s Responsibilities Architect Software Architecture Document  The Software Architect leads and coordinates technical activities and artifacts. Reference Architecture Analysis ModelDesign ModelDeployment Model

OOAD – Dr. A. Alghamdi 15 Designer’s Responsibilities Designer Use-Case Realization Package/ Subsystem Class  The designer must know use-case modeling techniques, system requirements, and software design techniques.

OOAD – Dr. A. Alghamdi 16 Review: Analysis and Design Is Use-Case Driven  Use cases defined for a system are the basis for the entire development process.  Benefits of use cases:  Concise, simple, and understandable by a wide range of stakeholders.  Help synchronize the content of different models. Withdraw MoneyCheck Balance Customer

OOAD – Dr. A. Alghamdi 17 What Is a Use-Case Realization? Class Diagrams Use Case Collaboration Diagrams Use-Case ModelDesign Model Use CaseUse-Case Realization Sequence Diagrams

OOAD – Dr. A. Alghamdi 18 Analysis and Design in an Iterative Process Iteration n Iteration n + 1 Use Case A Scenarios 1 & 2 Use-Case Realization A Start of iteration End of iteration Use Case B Scenario 1 Use-Case Realization A Use Case A Scenario 3 Use-Case Realization B

OOAD – Dr. A. Alghamdi 19 Review: Analysis and Design Overview  What is the purpose of the Analysis and Design Discipline?  What are the input and output artifacts?  Name and briefly describe the 4+1 Views of Architecture.  What is the difference between Analysis and Design?  What is architecture?

OOAD – Dr. A. Alghamdi 20