Shanghai Jiao Tong University 上海交通大学 Object Oriented Analysis and Design Analysis and Design Overview 上海交通大学软件工程中心
Shanghai Jiao Tong University 上海交通大学软件工程中心 Object Oriented Analysis and Design Analysis and Design Overview
Analysis and Design in Context The purposes of Analysis and Design Phases Disciplines Inception Elaboration Construction Transition are to: Business Modeling Transform the requirements into a Requirements design of the system-to-be. Analysis Design Implementation Evolve a robust architecture for the Test system. Deployment Configuration ● Adapt the design to match the Change Mgmt Project Management implementation environment, Environment designing it for performance. Initial Elab #1 日ab2 #12 Iterations Object Oriented Analysis and Design 2
Object Oriented Analysis and Design 2 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
Analysis and Design Overview Design Model Use-Case Model Analysis and Design Architecture Document Glossary Supplementary Specification Data Model Object Oriented Analysis and Design 3
Object Oriented Analysis and Design 3 Supplementary Specification Use-Case Model Design Model Data Model Architecture Document Analysis and Design Analysis and Design Overview Glossary
Outline ★◆Key Concepts Analysis and Design Workflow Object Oriented Analysis and Design 4
Object Oriented Analysis and Design 4 Outline Key Concepts Analysis and Design Workflow
Analysis Versus Design ◆Analysis ◆Design ■Focus on ■Focus on understanding the understanding the problem solution -Idealized design Operations and ■Behavior attributes ■ System structure Performance Functional Close to real code requirements ■Object lifecycles A small model Nonfunctional requirements Alarge model Object Oriented Analysis and Design 5
Object Oriented Analysis and Design 5 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
Analysis and Design Are Not Top-Down or Bottom-Up Analysis and Design own Subsystems Use Cases Analysis Classes (Define a I Botto.n middle level) Design Classes Object Oriented Analysis and Design 6
Object Oriented Analysis and Design 6 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
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) Object Oriented Analysis and Design
Object Oriented Analysis and Design 7 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)
Architecture Constrains Design and Implementation Architecture involves a set of strategic design decisions,rules or patterns that constrain design and construction. Code Implementation Design Architecture Architecture decisions are the most fundamental decisions,and changing them will have significant effects. Object Oriented Analysis and Design 8
Object Oriented Analysis and Design 8 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
Software Architecture:The“4+1View”Model Logical View Implementation View Analysts/Designers End user Functionality Programmers Structure Software management Use-Case View Process View Deployment View System integrators System engineering Performance System topology Scalability Delivery,installation Throughput communication Object Oriented Analysis and Design 9
Object Oriented Analysis and Design 9 Process View Deployment 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
Outline ◆Key Concepts Analysis and Design Workflow Object Oriented Analysis and Design 10
Object Oriented Analysis and Design 10 Outline Key Concepts Analysis and Design Workflow