Presentation is loading. Please wait.

Presentation is loading. Please wait.

Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 1 R Introduction to Rational Unified Process.

Similar presentations


Presentation on theme: "Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 1 R Introduction to Rational Unified Process."— Presentation transcript:

1 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 1 R Introduction to Rational Unified Process

2 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 2 R Objectives: Rational Unified Process  Describe the Unified Modeling Language (UML)  Define what a software development process is  Describe the Rational Unified Process  Explain the four phases of the Rational Unified Process and their associated milestones  Define iterations and their relation to phases  Explain the relations between:  Models and workflows  Phases, iterations, and workflows  Define artifact, worker, and activity  State the importance of automated tool support

3 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 3 R Team-Based Development Modeling Language Building a System - A Language Is Not Enough Process

4 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 4 R What Is the UML?  The Unified Modeling Language (UML) is a language for Specifying Visualizing Constructing Documenting the artifacts of a software-intensive system

5 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 5 R UML History

6 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 6 R Inputs to UML Fusion Operation descriptions, Message numbering Meyer Before and after conditions Harel State charts Wirfs-Brock Responsibilities Embley Singleton classes, High-level view Odell Classification Shlaer - Mellor Object Lifecycles Gamma, et.al Frameworks, patterns, notes Booch Jacobson Rumbaugh

7 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 7 R The UML Provides Standardized Diagrams Deployment Diagram Deployment Diagram Use Case Diagrams Use Case Diagrams Use Case Diagrams Use Case Diagrams Use Case Diagrams Use Case Diagrams Scenario Diagrams Scenario Diagrams Scenario Diagrams Scenario Diagrams Sequence Diagrams Sequence Diagrams State Diagrams State Diagrams State Diagrams State Diagrams State Diagrams State Diagrams Component Diagrams Component Diagrams Component Diagrams Component Diagrams Component Diagrams Component Diagrams Model State Diagrams State Diagrams State Diagrams State Diagrams Object Diagrams Object Diagrams Scenario Diagrams Scenario Diagrams Scenario Diagrams Scenario Diagrams Collaboration Diagrams Collaboration Diagrams Use Case Diagrams Use Case Diagrams Use Case Diagrams Use Case Diagrams Activity Diagrams Activity Diagrams State Diagrams State Diagrams State Diagrams State Diagrams Class Diagrams Class Diagrams

8 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 8 R A Sample UML Diagram: Use Cases A University Course Registration System Submit Grades Professor View Report Card Select Courses to Teach Student Course Catalog Register for Courses Maintain Student Information Maintain Professor Information Registrar Billing System Close Registration Login

9 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 9 R 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

10 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 10 R UML Diagrams Are Key System Artifacts Actor A Use Case 1 Use Case 2 Actor B Document FileManager GraphicFile File Repository DocumentList FileList Customer name addr withdraw() fetch() send() receive() > Forward Engineering(Code Generation) and Reverse Engineering Executable System User Interface Definition Domain Expert Use Case 3 Source Code edit, compile, debug, link Use-Case Diagram Class Diagram Collaboration Diagram Sequence Diagram Component Diagram State Diagram Package Diagram Deployment Diagram Class

11 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 11 R New or changed requirements New or changed system Software Engineering Process What Is a Process? A process defines Who is doing What, When and How to reach a certain goal. In software engineering the goal is to build a software product or to enhance an existing one

12 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 12 R An Effective Process...  Provides guidelines for efficient development of quality software  Reduces risk and increases predictability  Captures and presents best practices  Learn from other’s experiences  Mentor on your desktop  Extension of training material  Promotes common vision and culture  Provides roadmap for applying tools  Delivers information on-line, at your finger tips

13 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 13 R Rational Unified Process Delivers Best Practices Rational Unified Process describes how to effectively implement the six best practices for software development Control Changes Manage Requirements Use Component Architectures DevelopIteratively ModelVisually VerifyQuality

14 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 14 R Rational Unified Process Is Use-Case Driven Withdraw Money Client An actor is someone or something outside the system that interacts with the system A use case is a sequence of actions a system performs that yields an observable result of value to a particular actor Check Balance Use Cases for a Cash Machine

15 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 15 R Use Cases Include a Flow of Events Flow of events for the Withdraw Money Use Case 1. The use case begins when the client inserts her ATM card. The system reads and validates information on the card. 2. The system prompts for the PIN. The system validates the PIN. 3. The system asks which operation the client wishes to perform. The client selects “Cash withdrawal.” 4. The system requests the amount. The client enters the amount. 5. The system requests the account type. The client selects checking or savings. 6. The system communicates with the ATM network...

16 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 16 R Benefits of a Use-Case Driven Process  Use cases are concise, simple, and understandable by a wide range of stakeholders  End users, developers and acquirers understand functional requirements of the system  Use cases drive numerous activities in the process:  Creation and validation of the design model  Definition of test cases and procedures of the test model  Planning of iterations  Creation of user documentation  System deployment  Use cases help synchronize the content of different models

17 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 17 R Rational Unified Process Is Architecture-Centric  Architecture is the focus of the elaboration phase  Building, validating, and baselining the architecture constitute the primary objective of elaboration  The Architectural Prototype validates the architecture and serves as the baseline for the rest of development  The Software Architecture Description is the primary artifact that documents the architecture chosen  Other artifacts derive from architecture:  Design guidelines including use of patterns and idioms  Product structure  Team structure

18 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 18 R Representing Architecture: The 4+1 View Model Process View Deployment View Logical View Implementation View Programmers Software management Performance Scalability Throughput System Integrators System topology Delivery, installation communication System Engineering Use-Case View Structure Analysts/ Designers End-user Functionality

19 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 19 R Benefits of an Architecture-Centric Process  Architecture lets you gain and retain intellectual control over a project, to manage its complexity, and to maintain system integrity  Architecture provides an effective basis for large-scale reuse  Architecture provides a basis for project management  Architecture facilitates component-based development  A component fulfills a clear function in the context of a well- defined architecture  A component conforms to and provides the physical realization of a set of interfaces  Components exist relative to a given architecture

20 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 20 R InceptionElaborationConstructionTransition Process Architecture - Lifecycle Phases The Rational Unified Process has four phases:  Inception - Define the scope of project  Elaboration - Plan project, specify features, baseline architecture  Construction - Build the product  Transition - Transition the product into end user community time

21 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 21 R InceptionElaborationConstructionTransition Phase Boundaries Mark Major Milestones Lifecycle Objective Milestone Lifecycle Architecture Milestone Initial Operational Capability Milestone Product Release time

22 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 22 R Iterations and Phases An iteration is a distinct sequence of activities with an established plan and evaluation criteria, resulting in an executable release (internal or external) PreliminaryIterationArchitect.IterationArchitect.IterationDevel.IterationDevel.IterationDevel.IterationTransitionIterationTransitionIteration InceptionElaborationConstructionTransition Minor Milestones: Releases

23 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 23 R Major Workflows Produce Models Analysis & Design Design Model Implementation Model Test Model realized by implemented by verified by Requirements Implementation Test Use-Case Model Business Modeling Business Model supported by

24 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 24 R Bringing It All Together: The Iterative Model Management Environment Business Modeling Implementation Test Analysis & Design Preliminary Iteration(s) Iter. #1 Phases Process Workflows Iterations Supporting Workflows Iter. #2 Iter. #n Iter. #n+1 Iter. #n+2 Iter. #m Iter. #m+1 Deployment Configuration Mgmt Requirements ElaborationTransitionInceptionConstruction Workflows group activities logically In an iteration, you walk through all workflows

25 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 25 R Requirements Workflow

26 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 26 R Analysis & Design Workflow

27 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 27 R Implementation Workflow

28 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 28 R Test Workflow

29 Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 29 R  The Unified Modeling Language (UML) is a language for specifying, visualizing, constructing, and documenting the artifacts of a software-intensive system  A software development process defines Who is doing What, When and How in building a software product  The Rational Unified Process has four phases: Inception, Elaboration, Construction and Transition  Each phase ends at a major milestone and contains one or more iterations  An iteration is a distinct sequence of activities with an established plan and evaluation criteria, resulting in an executable release Summary: Rational Unified Process


Download ppt "Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 1 R Introduction to Rational Unified Process."

Similar presentations


Ads by Google