Download presentation
Presentation is loading. Please wait.
Published byEvelyn Stephen Carr Modified over 9 years ago
1
Rational Unified Process Fundamentals Module 3: Core Workflows I - Concepts Rational Unified Process Fundamentals Module 3: Core Workflows I - Concepts
2
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 2 Where Are We? Core Workflows - I Introduction Project Management Requirements Analysis & Design
3
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 3 Objectives Understand the elements of a Core Workflow Explain the purpose of Core Workflows Understand how models result from Core Workflows Explain important concepts for Project Management Requirements Analysis & Design
4
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 4 Core Workflows
5
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 5 Core Workflows are Associated with Models
6
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 6 Elements of the Core Workflow Introduction Concepts Workflow Details Activity Overview Artifact Overview Guidelines Overview
7
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 7 Where Are We? Core Workflows - I Introduction Project Management Requirements Analysis & Design
8
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 8 Core Workflow: Project Management Purpose: Provide a framework for managing software- intensive projects. Provide practical guidelines for planning, staffing, executing, and monitoring projects. Provide a framework for managing risk.
9
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 9 Key Concept: Incremental Planning Current iteration Next iteration Phases and major milestones What and when Project planPhase plan Iterations for each phase Number of iterations Objectives Duration Fine-grained Plans Coarse-grained Plan “Road-map”
10
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 10 Use Cases as a Basis for Iteration Planning Use-Case Model Iteration Plan Fine-grained plan for a single iteration Supplementary Specification Project Management Constraints
11
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 11 time InceptionElaborationConstructionTransition InceptionElaborationConstructionTransition Inception Elab... Beyond Transition: Development Cycles A development cycle includes one execution of all four phases and produces a software generation Most software systems require multiple cycles Cycles may be sequential, but more commonly overlap
12
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 12 Incremental (1) Evolutionary (2) Incremental delivery (3) “Grand design” (4) Strategies for Iterative Development
13
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 13 Architecture Concerns in Project Management Consistent architecture and development guidelines Relationship between the architecture and organizational structures Separation of development concerns (which will provide a basis for separation of work) Stability of the technical infrastructures Adherence to standards Required skills
14
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 14 Key Concept: Risk A risk is whatever may stand in our way to success, and is currently unknown or uncertain. Success is meeting the entire set of all requirements and constraints, and satisfying stakeholder expectations.
15
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 15 Risk Terms Direct risk - the project has a large degree of control Indirect risk - the project has little or no control Risk attributes: Probability of occurrence Impact on the project (severity) Risk - whatever may stand in the way of our success
16
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 16 Risk Management Strategies: Risk avoidance Risk transfer Risk acceptance Risk mitigation Confront risks Plan for contingencies Monitor risks Maintain a risk list
17
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 17 Some Sample Risks Resource risks People, skills, funding,... Business risks Competition, ROI, supplier interfaces,... Technical risks Unproven technology, uncertain scope,... Schedule risks Only 24 hours in a day,...
18
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 18 Risk Reduction Drives the Iterative Lifecycle Early iterations address the highest risks Risk assessment is a continuous process; risks change over time Risk profile by phase Inception - based on unknowns and risks Elaboration - based on risk and critical scenarios Construction - based on use case, features, and subsystems completion Transition - based on quality indicators
19
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 19 Where Are We? Core Workflows - I Introduction Project Management Requirements Analysis & Design
20
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 20 Core Workflow: Requirements Purpose: produce requirements artifacts Stakeholders needs Vision document Use case model All functional requirements Some non functional requirements Supplementary specification Other non functional requirements User interface prototype (optional) Traceability
21
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 21 Supplementary Specification Primary Requirements Artifacts RequirementFunctionalNon-Functional (URPS) Use-Cases
22
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 22 What Is in a Use-Case Model? Actors and their descriptions Use-Case diagrams showing relationships For each use case Name and brief description Flow of events Preconditions and postconditions (optional) Special requirements Other diagrams, such as activity or state diagrams
23
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 23 The Purpose of a Use-Case Use cases capture requirements, especially functional requirements They are usable by many stakeholders They drive many activities in the process They trace to several models: design model, test model
24
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 24 Major concepts in the Use-Case Model Actor Use Case An actor represents anything that interacts with the system. A use case (instance) defines a sequence of actions a system performs that yields a result of observable value to an actor.
25
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 25 Actor System Actor Actors are not part of the system, they represent roles a user of the system can play. An actor can actively interchange information with the system. An actor can be a passive recipient of information. An actor can be a giver of information. An actor can represent a human, a machine or another system.
26
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 26 Charlieas depotstaff Charlieasdepot manager Charlie DepotStaff DepotManager A User Can Act as Several Actors
27
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 27 Use Case A use case models a dialogue between an actor and the system. A use case is initiated by an actor to invoke a certain functionality in the system. A use case is a complete and meaningful flow of events. Taken together, all use cases constitute all possible ways of using the system.
28
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 28 Register for Courses Student Course Catalog A Scenario - One Path Through a Use Case A use case can have many instances. A scenario is a described use-case instance: a specific sequence of actions that illustrates behaviors of the system.
29
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 29 A Sample UML Diagram: Use Cases A University Course Registration System Professor Select Courses to Teach Student Course Catalog Register for Courses Maintain Student Information Maintain Professor Information Registrar Billing System Close Registration
30
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 30 The Use Case Model Relates to Other Models verification realization Use-Case Model (requirements) Implementation Model (source code) Test Model (test cases and procedures) influence Design Model (classes and objects)
31
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 31 Use CasesAnalysis Classes Source Code ExecDesign Classes From Use Cases to Executables
32
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 32 Traceability Links Support Impact Assessment Trace product requirements (features) into detailed requirements Trace requirements into design Trace requirements into test procedures Trace requirements into user documentation and training materials Design ModelTest ModelEnd-User Documentation Materials and Training Materials 1 2 4 3 1 2 3 4 Vision Use-Case Model Supplementary Specification Stakeholder Needs
33
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 33 Where Are We? Core Workflows - I Introduction Project Management Requirements Analysis & Design
34
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 34 Core Workflow: Analysis and Design Purpose: To transform the requirements into a design of the system to-be. To evolve a robust architecture for the system. To adapt the design to match the implementation environment. Modeling, using OO techniques & UML Design model Process view (concurrency) Deployment view (distribution)
35
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 35 Core Workflow: Analysis & Design (cont.) Transform requirements into classes and subsystems Adhere to constraints of nonfunctional requirements implementation environment Database design Mapping the design model to a data model Component identification Subsystems and interfaces
36
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 36 What is a Design Model? An object model describing the realization of use cases Serves as an abstraction of the implementation model and its source code Used as essential input to activities in implementation and test.
37
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 37 Use Cases Drive Analysis & Design Supplementary Specifications Use-Case Model Design Model Data Model Architecture Document Analysis and Design Analysis Model (optional)
38
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 38 Use Case Realization in Analysis & Design Use Case (Use-Case Model) Use-Case Realization (Design Model) > Class Diagrams Sequence Diagrams Collaboration Diagrams Use Case
39
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 39 Use-Case Analysis and Design The complete behavior of a use case is allocated to collaborating classes
40
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 40 A Sample UML Diagram: Classes A University Course Registration System MainForm // select maintain schedule() > MaintainScheduleForm + // open() + // select 4 primary and 2 alternate offerings() > 1 0..1 1 CourseCatalogSystem // get course offerings() > 10..* RegistrationController // add courses to schedule() // get course offerings () > 1 1 Schedule // create with offerings() > 1 0..1
41
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 41 Architecture What is architecture? Purpose Definition Architecture representation Architectural views = slices through models UML Prototyping Architecture milestone Elaboration phase Lifecycle architecture milestone
42
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 42 Purpose of Architecture Intellectual control Manage complexity Maintain integrity Basis for reuse Component reuse Architecture reuse Line-of-product Basis for project management Planning Staffing Delivery
43
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 43 Significant Decisions About Software Architecture the organization of a software system the structural elements and interfaces which compose the system, the behavior seen in the collaboration of these elements the composition of these elements into progressively larger subsystems the architectural style that guides the organization, composition, and collaboration of elements and their interfaces
44
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 44 Architecture Includes a System in Its Environment In addition to structure and behavior, software architecture is concerned with usage functionality performance resilience reuse comprehensibility aesthetics economic and technological constraints and tradeoffs
45
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 45 Many stakeholders, many views Architecture is many things to many different interested parties end-user customer project manager system engineer developer architect Multidimensional reality Multiple stakeholders multiple views, multiple blueprints
46
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 46 Architectural View An architectural view is a simplified description (an abstraction) of a system from a particular perspective or vantage point, covering particular concerns, and omitting entities that are not relevant to this perspective
47
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 47 Architecturally significant elements Not all design is architecture Main “business” classes Important mechanisms Processors and processes Layers and subsystems Architectural views = slices through models
48
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 48 Architecture Views Conceptual Physical 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
49
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 49 Where is Architecture in the Process? Primarily from Analysis & Design Architecture in phases and iterations Drives the risk mitigation of iterations Architecture baseline is an exit criterion for Elaboration
50
Rational Unified Process Fundamentals, v. 2000.02.10 Copyright © 2000 Rational Software, all rights reserved 50 Summary: Core Workflows How often do you go through a Core Workflow? How does the focus on individual Core Workflows change across the Lifecycle? What is the role of risk in the iterative Lifecycle? What is the purpose of the Use Case Model? What is the purpose of the Analysis and Design workflow?
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.