Information Systems Analysis and Design Overview of OOAD, UML, and RUP
Overview of RUP Lunch and Learn. Overview of RUP © 2008 Cardinal Solutions Group 2 Welcome ...
-
Upload
dwayne-white -
Category
Documents
-
view
229 -
download
0
Transcript of Overview of RUP Lunch and Learn. Overview of RUP © 2008 Cardinal Solutions Group 2 Welcome ...
Overview of RUP
Lunch and Learn
Overview of RUP
© 2008 Cardinal Solutions Group
2
Welcome Introductions
What is your experience with RUPWhat is your goal for this Lunch and LearnAre you interested in getting your RUP
certification
Break RoomFacilitiesCell Phones
Overview of RUP
© 2008 Cardinal Solutions Group
3
AgendaWhat is a ProcessBenefits of the RUPThe RUP frameworkRUP’s Four PhasesRUP’s DisciplinesRUP’s Processes & ToolsCommon Errors
Overview of RUP
© 2008 Cardinal Solutions Group
4
What is a Process?
What is a “process”?A series of actions, changes or functions that
bring about a result.It should define:
WHO is doing WHATWHEN they are going to do itHOW they are going to do it
The “IT” being the ultimate goal
Overview of RUP
© 2008 Cardinal Solutions Group
5
What is a Process?What is the RUP?
IBM’s Rational Unified Process, AKA “The RUP”, is a process framework for iterative-incremental software development.
Overview of RUP
© 2008 Cardinal Solutions Group
6
What is a Process? The Iterative Process vs. the Waterfall Process
Overview of RUP
© 2008 Cardinal Solutions Group
7
What is a Process? The Iterative Process vs. the Waterfall Process
Overview of RUP
© 2008 Cardinal Solutions Group
8
AgendaWhat is a processBenefits of the RUPThe RUP frameworkRUP’s Four PhasesRUP’s DisciplinesRUP’s Processes & ToolsCommon Errors
Overview of RUP
© 2008 Cardinal Solutions Group
9
Benefits of the RUPThe RUP process provides organizations
with a number of benefits that include:Complexity Reduction Increased EfficiencyAutomation with ToolsReduction of Costs and Time
Overview of RUP
© 2008 Cardinal Solutions Group
10
AgendaWhat is a processBenefits of the RUPThe RUP frameworkRUP’s Four PhasesRUP’s DisciplinesRUP’s Processes & ToolsCommon Errors
Overview of RUP
© 2008 Cardinal Solutions Group
11
The RUP FrameworkRUP’s Framework consists of:
Key principals for business driven development
An underlying method and process definition language
Reusable method content framework and process building blocks
An adaptable process; a guide to be tailored by the organization
Overview of RUP
© 2008 Cardinal Solutions Group
12
The RUP FrameworkWhat are the Key Principles?
Adapt the process.Balance stakeholder prioritiesCollaborate across teamsDemonstrate value iterativelyElevate the level of abstractionFocus continuously on quality
Overview of RUP
© 2008 Cardinal Solutions Group
13
AgendaWhat is a processBenefits of the RUPThe RUP frameworkRUP’s Four PhasesRUP’s DisciplinesRUP’s Processes & ToolsCommon Errors
Overview of RUP
© 2008 Cardinal Solutions Group
14
The Four Phases of RUP The RUP project lifecycle organizes the tasks into
phases and iterations. Each phase contains one or more iterations that will
focus on producing deliverables that are required to achieve the business objective of that phase.
There are four phases in the standard RUP configuration:
InceptionElaborationConstructionTransition
Overview of RUP
© 2008 Cardinal Solutions Group
15
The Four Phases of RUP Inception
Main Goal – Achieve agreement among stakeholders on the project’s lifecycle objectives
Primary Objectives: Understand what to build Establish project scope and boundary Identify key system functionality and critical use cases Exhibit and demonstrate one possible architecture/ solution Estimate overall cost, schedule, and risks Produced detailed estimate for Elaboration phase Estimate potential risks Prepare support environment
Concludes with the Lifecycle Objective Milestone
Overview of RUP
© 2008 Cardinal Solutions Group
16
The Four Phases of RUP Elaboration
Main Goal – Baseline the system architecture to provide stability for the bulk of design and implementation efforts in Construction
Primary Objectives: Gain a more detailed understanding of the requirements Stabilize and validate the architecture & respective plans Sufficiently mitigate risk to determine cost & schedule Address all architecturally significant risks Establish baselined architecture and demonstrate it will support required
system Produce an evolutionary prototype of production quality components as well
as any exploratory throw-away prototypes Refine the development case Establish a development environment
Concludes with the Lifecycle Architecture Milestone
Overview of RUP
© 2008 Cardinal Solutions Group
17
The Four Phases of RUP Construction
Main Goal – Clarify remaining requirements and complete system development based upon baselined architecture
Primary Objectives: Minimize development cost by achieving a degree of parallelism in the work
of the team Achieve adequate quality and useful executable versions as quickly as
practically possible Complete analysis, design, development and testing of all required
functionality Iteratively and incrementally develop product that is ready to transition to the
user community Determine if software sites and users are ready for deployment
Concludes with the Initial Operational Capability Milestone
Overview of RUP
© 2008 Cardinal Solutions Group
18
The Four Phases of RUP Transition
Main Goal – Ensure software is available for its users and prepared for roll-out
Primary Objectives: Validate that user expectations have been met through conducting a
beta test Train users and maintainers Gain concurrence from stakeholders that deployment is complete Prepare packaging, production, and marketing rollout material Enhance future team performance through lessons learned
Concludes with the Product Release Milestone
Overview of RUP
© 2008 Cardinal Solutions Group
19
AgendaWhat is a processBenefits of the RUPThe RUP frameworkRUP’s Four PhasesRUP’s Disciplines & RolesRUP’s Processes & ToolsCommon Errors
Overview of RUP
© 2008 Cardinal Solutions Group
20
The RUP Disciplines There are nine disciplines in a standard RUP configuration.
The disciplines are categorized into categories of process and support.
There are six core process disciplines – Business Modeling, Requirements, Analysis & Design, Implementation, Testing and Deployment
There are three core supporting disciplines – Project Management, Configuration & Change Management and Environment
Overview of RUP
© 2008 Cardinal Solutions Group
21
The RUP Disciplines
Overview of RUP
© 2008 Cardinal Solutions Group
22
The RUP Disciplines Business Modeling
o Creates a better understanding and means of communication between business and software engineering.
Requirementso Elicits, organizes and documents required functionality (what the
system should do) and to promotes agreement between the developers and customers on that description.
Analysis & Design o Demonstrates how the system will be realized once
implemented.
Overview of RUP
© 2008 Cardinal Solutions Group
23
The RUP Disciplines Implementation
o Defines the code’s organization, implements in terms of components, tests those components and integrates the results.
Testingo Verifies the interaction between objects, the integration of
components, that requirements have been met and identifies and addresses any defects prior to deployment.
Deployment o Successfully creates and delivers a product release to the end
user.
Overview of RUP
© 2008 Cardinal Solutions Group
24
The RUP Disciplines Project Management
o Focuses on risk management, iterative project planning and monitoring the project’s progress via metrics.
Change and Configuration Managemento Focuses on identifying configuration items, restricting and
auditing changes made to those items and also defining and managing configurations of those items.
Environment o Focuses on the activities necessary to configure the process for
a project, the guidelines required to support a project and to provide the tools and processes to support the development team.
Overview of RUP
© 2008 Cardinal Solutions Group
25
The RUP Roles Some roles recommended for RUP. These
define “who” does “what.” Business Architect - Identifies and documents architecturally
significant pieces of the system. Needs to make decisions and gain agreement from main stakeholders.
Change Control Manager - Defines and oversees the change control process. Must understand configuration management principles and estimating cost & schedule impacts.
Project Manager - Plans, manages, and allocates resources, shapes priorities, coordinates interactions with customers and users, and keeps the project team focused. Also establishes a set of practices that ensures the integrity and quality of project work products.
Overview of RUP
© 2008 Cardinal Solutions Group
26
The RUP Roles Some roles recommended for RUP. These
define “who” does “what.” Stakeholder - Represents an interest group whose needs must
be satisfied by the project and who will be affected by the outcome of the project.
Systems Analyst - Leads and coordinates requirements gathering by outlining the system's functionality. Needs to be an expert in identifying and understanding problems and opportunities.
Test Analyst - Responsible for identifying and defining the required tasks, monitoring detailed testing progress and results in each test cycle, and evaluating the overall quality. Also represents stakeholders.
Overview of RUP
© 2008 Cardinal Solutions Group
27
AgendaWhat is a processBenefits of the RUPThe RUP frameworkRUP’s Four PhasesRUP’s Disciplines & RolesRUP’s Processes & ToolsCommon Errors
Overview of RUP
© 2008 Cardinal Solutions Group
28
Processes and ToolsRational Method Composer
Part of the RUP process framework Includes a process content library, out of the box
delivery processes and capability patterns It has two main purposes:
Providing a content management system to provide a common management structure
Providing the capability of selecting, tailoring and quickly assembling processes for development projects
Overview of RUP
© 2008 Cardinal Solutions Group
29
Processes and Tools
Overview of RUP
© 2008 Cardinal Solutions Group
30
AgendaWhat is a processBenefits of the RUPThe RUP frameworkRUP’s Four PhasesRUP’s Disciplines & RolesRUP’s Processes & ToolsCommon Errors
Overview of RUP
© 2008 Cardinal Solutions Group
31
Common Errors There are common mistakes that are made
when managing a project using RUP. Not right-sizing the process for the projectHaving a functional, specialized organizationNot setting the right stakeholder expectationsUsing an old fashioned acquisition modelHaving too many developers at the project’s startSolving the easy stuff firstHaving an extended initial iterationHaving overlapping iterations
Overview of RUP
© 2008 Cardinal Solutions Group
32
Common ErrorsAllowing too many changes too late in the projectCreating too many use casesAnalysis Paralysis Including design decisions in requirementsNot having stakeholder buy-in on requirements “Not invented here” mentalityEnding Elaboration before the architecture is
sufficiently stableFocusing on inspections instead of executable
software
Overview of RUP
© 2008 Cardinal Solutions Group
Questions?