Rational Unified Process Fundamentals Module 3: Disciplines I.

Slides:



Advertisements
Similar presentations
Writing Good Use Cases - Instructor Notes
Advertisements

OOAD – Dr. A. Alghamdi Mastering Object-Oriented Analysis and Design with UML Module 3: Requirements Overview Module 3 - Requirements Overview.
The Software Project Management Discipline Succes software projects require careful planning and good use of iterative approaches. Understanding risks.
IT Requirements Capture Process. Motivation for this seminar Discovering system requirements is hard. Formally testing use case conformance is hard. We.
1 IBM Software Group ® PRJ270: Essentials of Rational Unified Process Module 3: RUP Structure and Navigation.
Learning software process with UPEDU Slide 9-1  2000 École Polytechnique de Montréal & Rational Software Project Management - Outline  Defining the Project.
INTRODUCTION Successful software projects require Careful planning
® IBM Software Group © 2006 IBM Corporation PRJ480 Mastering the Management of Iterative Development v2 Module 4: Phase Management - Elaboration.
PRJ270: Essentials of Rational Unified Process
Rational Unified Process
Use-case Modeling.
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
SE 555 Software Requirements & Specification1 Use-Case Modeling: Overview and Context.
Uml and Use Cases CS 414, Software Engineering I Mark Ardis Rose-Hulman Institute January 9, 2003.
Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 1 R Introduction to Rational Unified Process.
SwE 313 Introduction to Rational Unified Process (RUP)
Copyright  Larry Dribin, Ph.D. SE470_EngFlows_v1.ppt SE470 EngFlows - 1 Excellence in Software Engineering Repeatable Level Defined Level Manage.
Iterative development and The Unified process
Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared.
Mastering OOA/OOD with UML. Contents Introduction Requirements Overview OOAOOD.
Requirements Management Plan - Documents
® IBM Software Group © 2006 IBM Corporation PRJ480 Mastering the Management of Iterative Development v2 Module 3: Phase Management - Inception.
Principles of Object Technology Module 1: Principles of Modeling.
RUP Requirements RUP Artifacts and Deliverables
UML - Development Process 1 Software Development Process Using UML (2)
1 IBM Software Group ® PRJ270: Essentials of Rational Unified Process Module 4: RUP Content.
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
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 Project Management Introduction to Project Management.
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 06. Requirements.
-Nikhil Bhatia 28 th October What is RUP? Central Elements of RUP Project Lifecycle Phases Six Engineering Disciplines Three Supporting Disciplines.
Business Modeling : basic concepts Extracted from Rational UML Profile for business modeling.mht.
Rational Unified Process Fundamentals Module 4: Disciplines II.
Requirements Artifacts Precursor to A & D. Objectives: Requirements Overview  Understand the basic Requirements concepts and how they affect Analysis.
Yazd University, Electrical and Computer Engineering Department Course Title: Advanced Software Engineering By: Mohammad Ali Zare Chahooki The Project.
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
Requirements Capture. Four Steps of requirements capture List candidate requirements Understand system context Capture functional requirements Capture.
Rational Unified Process Fundamentals Module 5: Implementing RUP.
Rational Requirements Management with Use Cases v5.5 Copyright © Rational Software, all rights reserved 1 Requirements Management with Use Cases.
Unified Modeling Language* Keng Siau University of Nebraska-Lincoln *Adapted from “Software Architecture and the UML” by Grady Booch.
Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 1 R Introduction to Rational Unified Process Adapted by Dr. Spiegel.
® IBM Software Group © 2006 IBM Corporation Writing Good Use Cases Module 1: Introduction to Use-Case Modeling.
Faculty of Applied Engineering and Urban Planning Software Engineering Department Software Engineering Lab Use Cases Faculty of Information system Technology.
Shanghai Jiao Tong University 上海交通大学软件工程中心 Object Oriented Analysis and Design Requirements Overview.
RUP Fundamentals Instructor Notes
Use Case Diagram The purpose is to communicate the system’s functionality and behaviour to the customer or end user. Mainly used for capturing user requirements.
Rational Unified Process (RUP) Process Meta-model Inception Phase These notes adopted and slightly modified from “RUP Made Easy”, provided by the IBM Academic.
Rational Unified Process Fundamentals Module 7: Process for e-Business Development Rational Unified Process Fundamentals Module 7: Process for e-Business.
Requirements Management with Use Cases Module 10: Requirements Across the Product Lifecycle Requirements Management with Use Cases Module 10: Requirements.
J. Scott Hawker p. 1Some material © Rational Corp. Rational Unified Process Overview See and use the RUP Browser on lab machines.
CSC480 Software Engineering Lecture 8-9 September 20, 2002.
Yazd University, Electrical and Computer Engineering Department Course Title: Advanced Software Engineering By: Mohammad Ali Zare Chahooki The Rational.
Introduction to Rational Unified Process
Overview of RUP Lunch and Learn. Overview of RUP © 2008 Cardinal Solutions Group 2 Welcome  Introductions  What is your experience with RUP  What is.
Rational Unified Process Fundamentals Module 4: Core Workflows II - Concepts Rational Unified Process Fundamentals Module 4: Core Workflows II - Concepts.
Essentials of Visual Modeling w/ UML Instructor Notes
Yazd University, Electrical and Computer Engineering Department Course Title: Advanced Software Engineering By: Mohammad Ali Zare Chahooki The Project.
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.
Project Management Processes for a Project Chapter 3 PMBOK® Fourth Edition.
Requirement Discipline Spring 2006/1385 Semester 1.
Rational Unified Process Fundamentals Module 5: Implementing Rational Unified Process Rational Unified Process Fundamentals Module 5: Implementing Rational.
RUP RATIONAL UNIFIED PROCESS Behnam Akbari 06 Oct
RATIONAL UNIFIED PROCESS PROCESS FRAMEWORK OVERVIEW.
1.Introduction to Rational Unified Process (RUP)
Software Development Process Using UML Recap
UML Design for an Automated Registration System
Presentation transcript:

Rational Unified Process Fundamentals Module 3: Disciplines I

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 2 Objectives  Understand how models result from Disciplines  Understand discipline concepts for:  Business Modeling  Environment  Project Management  Requirements

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 3 Disciplines

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 4 Discipline: Environment  Purpose: Support the development organization, both with process and tools  Process configuration Adapt RUP to organization  Process implementation Train and mentor RUP users  Process improvement  Managing organizational change  Development environment Tool selection and acquisition Tool instillation and configuration

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 5 Discipline: Environment  The primary roll in the Environment Discipline is the Process Engineer.  The primary artifact produced by the Process Engineer is the Development Case.  The Development Case describes, for each process discipline, how the project will apply the process.

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 6 Development Case  Describes the development process that you have chosen to follow in your project  Contained in Environment discipline  Created early in Inception  Updated during project Development Case Select from RUP knowledge base Minimize cost of process definition

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 7 Development Case Example Brief Outline: 1.Introduction: Purpose, Scope, Definitions, References, Overview 2.Overview of the Development Case: Lifecycle Model, Discipline Configuration, Artifact Classification, Review Procedures, Sample Iteration Plans 3.Disciplines: Describes artifacts used for each discipline 4.Roles: Describes any changes in Role Sets Example below shows Requirements artifacts to be used as defined in the Development Case

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 8 Discipline: 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

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 9 Discipline: Project Management  Questions that must be addressed by the project manager:  How many iterations are needed?  How long should each iteration be?  How are the contents and objectives of an iteration determined?  How is the progress of an iteration tracked?

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 10 Discipline: Project Management  Project planning takes place at two levels 1.Phase Plan Level Dates of major milestones: end of each phase and its objectives Staffing profiles: which resources are required over time. Dates of minor milestones: end of each iteration and its objectives 2.Iteration Plan Level  Current iteration plan  Next iteration plan (built toward end of current iteration)

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 11 Coarse-Grained and Fine-Grained Planning Single coarse-grained plan (the phase plan) PreliminaryIterationArchitect.IterationArchitect.IterationDevel.IterationDevel.IterationDevel.IterationTransitionIterationTransitionIteration Series of fine-grained plans (the iteration plans) InceptionElaborationConstructionTransition

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 12 Incremental (1) Evolutionary (2) Incremental delivery (3) “Grand design” (4) Strategies for Iterative Development

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 13 Planning for Iterative Development Iteration Plan (next) Iteration Plan (current) 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 “Roadmap”

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 14 Concerns in Project Management  Significant concerns for iterative development are:  Architecture  Risk

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 15 Architecture Concerns in Project Management  Early elimination of architectural risk in the project.  Other concerns:  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

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 16 Definition of Risk  Success is meeting the entire set of all requirements and constraints, and satisfying stakeholder expectations. A risk is whatever may stand in the way of our success or in the way of achieving major milestones.

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 17 Risk Reduction Drives the Iterative Lifecycle  Early iterations address the highest risks  Risk assessment is a continuous process; risks change over time

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 18 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)

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 19 Risk Management Strategies  Risk avoidance  Reorganize project so that it cannot be affected by risk  Risk transfer  Reorganize project so that risk is passed off onto some other stakeholder  Risk acceptance  Live with the risk and hope that it never materializes  Risk mitigation (deal with risk head-on)  Confront risks  Plan for contingencies  Monitor risks

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 20 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

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 21 Discipline: Requirements  Purpose:  Establish and maintain agreement with the customers and other stakeholders on what the system should do.  Provide system developers with a better understanding of the system requirements.  Define the boundaries of (delimit) the system.  Provide a basis for planning the technical contents of iterations.  Provide a basis for estimating cost and time to develop the system.  Define a user-interface for the system, focusing on the needs and goals of the users.

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 22 Supplementary Specification Primary Requirements Artifacts RequirementFunctionalNonFunctional (URPS) Use-Case Model

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 23 Major Concepts in the Use-Case Model Actor Use Case An actor represents a person or another system that interacts with the system. A use case defines a sequence of actions a system performs that yields a result of observable value to an actor.

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 24 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.

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 25 Charlieas depotstaff Charlieasdepot manager Charlie DepotStaff DepotManager A User Can Act as Several Actors

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 26 Use Case  A use case specifies 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.

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 27 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.

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 28 A Sample UML Diagram: Use Cases A University Course Registration System Professor Select Courses to Teach StudentCourse Catalog Register for Courses Maintain Student Information Maintain Professor Information Registrar Billing System Close Registration

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 29 What Is in a Use-Case Model?  Actors and their descriptions  Use-case diagrams showing relationships  For each use case:  Name and brief description  Textual specification of: Flow of events Preconditions and postconditions (optional) Special requirements Other diagrams, such as activity or state diagrams

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 30 Use Cases in the Development Process:  Drive many activities in the process.  Trace to several models.

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 31 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

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 32 Use Cases as a Basis for System Modeling (1) verification realizatio n Use-Case Model (requirements) Implementation Model (source code) Test Scripts influence Design Model (classes and objects)

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 33 Use CasesAnalysis Classes Source Code ExecDesign Classes Use Cases as a Basis for System Modeling (2)

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 34 Use Cases as a Basis for Test Planning The complete behavior of a use case is tested using Test Scripts and Test Suites. Test Suite Test Script Test Suite

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 35 Requirements Traceability 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 SuiteEnd-User Documentation Materials and Training Materials Vision Use-Case Model Supplementary Specification Stakeholder Needs

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 36 Discipline: Business Modeling  Purpose  Understand structure and dynamics of organization in which system is to be deployed  Understand problems in target organization and identify improvement potentials  Ensure customer/end user common understanding of target organization  Derive system requirements to support target organization

Rational Unified Process Fundamentals Copyright © Rational Software, all rights reserved 37 Two business models What a Business Model Shows  Customers  Business processes  Organizational structure  Roles and responsibilities  Products  Internal deliverables  Events Business Object Model Business Use-Case Model