Presentation is loading. Please wait.

Presentation is loading. Please wait.

Rational Unified Process Fundamentals Module 3: Core Workflows I - Concepts Rational Unified Process Fundamentals Module 3: Core Workflows I - Concepts.

Similar presentations


Presentation on theme: "Rational Unified Process Fundamentals Module 3: Core Workflows I - Concepts Rational Unified Process Fundamentals Module 3: Core Workflows I - Concepts."— Presentation transcript:

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?


Download ppt "Rational Unified Process Fundamentals Module 3: Core Workflows I - Concepts Rational Unified Process Fundamentals Module 3: Core Workflows I - Concepts."

Similar presentations


Ads by Google