Please enable JavaScript.
Coggle requires JavaScript to display documents.
Open Unified Process OPENUP (Open UP Disciplines (ACDPRT) (collection of…
Open Unified Process
OPENUP
What?
Part of Eclipse
Process Framework (EPF)
open source framework
a process that (EMC)
Extensible
architecture
can be used as a foundation on
which process content can be added or tailored
complete
can be manifested as an entire
process to build a system
minimal
only fundamental content is included
with set of tools for
software process
engineering
method and process authoring
library management
configuring and publishing
a process
supports
iterative, agile, and
incremental development
preserves the essential
characteristics of
RUP/Unified Process
usecase/scenario driven dev
risk mgnt
archi centric
iterative & incremental
Team Collobration
Agile + UP
Agile Practices
Test-First Design
Continuous Integration
Agile Estimation
Daily Standup, Iteration Assessment, Iteration
Retrospective
Self-organizing teams
UP
iterative, incremental
lifecycle
Definition
An iterative software development process that is
minimal, complete, and extensible
Key Mutually Supporting
Core Principles (BCEF)
Collaborate
to align interests and share
understanding
common understanding
high-trust environment
Share responsibility
Learn continuously
Organize around the architecture
Individuals and interactions over
process and tools(Agile)
Balance
competing priorities
to maximize stakeholder value
Separate the problem from the solution
Use
scenarios and use cases
to capture requirements
Establish and maintain
agreement on priorities
Make trade-offs to maximize value
Manage
scope
Create a
shared understanding
of the
domain by having a common language
Customer collaboration over
contract negotiation (Agile)
Focus
on the architecture early to minimize risks
and organize developmen
Organize the architecture into
loosely coupled, highly
cohesive
components
Reuse
existing assets
Cope with complexity by raising the level of
abstraction
Good architecture facilitates collaboration by
communicating
the “big-picture”
and
enabling parallelism
in development
Working software over
comprehensive documentation(Agile)
Evolve
to continuously obtain feedback and
improve
Use
time-boxed iterations
that deliver incremental value and
provide frequent feedback
Manage risks
Adapt to changes
Measure progress objectively>
Deliver working software
, get daily status, and use metrics
Continuously re-evaluate>
process retrospectives
Responding to change over
following a plan(Agile)
Governance Model
three-tiered governance model
to plan, execute, and monitor progress
Iteration-lifecycle
(team focus)
Planned time-box intervals
typically measured in weeks
4 Phases composed further to iterations
Each Iteration>
Has own lifecycle
Planning
Stable Increment
Iteration Review
Retrospective Review
(any other better way to do it)
Micro-increments
(personal focus)
Short unit of work that produce steady
measurable outputs in hours/days
collaboration among committed self organized
teams
small enough to be completed in a day or
two
Identify Stakeholders
Determine Technical Approach
Develop Solution Increment
Micro-increments are defined and tracked via the
work items list
Project – lifecycle
(stakeholder focus)
visibility of the project to all team
members
Facilitate to take decisions
at appropriate time
4 phases (Inception, Elaboration,
Construction and Transition)
with Milestones (to exit the phase)
Inception:
To understand the problem.
Objective Milestone
Elaboration:
To validate the solution architecture.
Architecture Milestone
Construction:
To build and verify the solution in increments.
Initial Operational Capability Milestone
Transition: To transition the solution to the operational
environment and validate the solution.
Product Release Milestone
Application of this life cycle directly addresses
first core principle> Evolve
Open UP Disciplines
(ACDPRT)
collection of tasks
Within the lifecycle, tasks are
performed concurrently across
several disciplines
Architecture
Architect
Architecture Notebook
Refine the Architecture
Envision the Architecture
Config & Change
Management
Any Role
Developer
None
None
Development
Developer
Build
Design
Developer Test
Implementation
Design the Solution
Implement Developer Tests
Implement Solution
Run Developer Tests
Integrate and Create Build
Project Management
PM
Iteration Plan
Project Plan
Risk List
Work Items List
Plan iteration
Plan Project
Assess Results
Manage Iteration
Request Change
Requirements
Analyst
Glossary
Supporting Req Speci
Use Case
Use-Case Model
Vision
Identify and Outline Requirements
Detail Use-Case Scenarios
Detail System-Wide Requirements
Develop Technical Vision
Test
Tester
Test Case
Test Log
Test Script
Create Test Cases
Implement Tests
Run Tests
Tasks (18)>Work Products (17)>Role>Discipline
Primary> executors
Secondary> provide info/support primary
Task has
Concept
Guideline
Checklist
SCRUM VS OPEN UP
Similarities
Collaboration
Daily progress
Time-boxed & sprints
Incremental build at end of iteration
Differences
Open up 4 phases
Open Up has no backlogs
Different team roles
17 artifacts to capture product and project
related information in Open UP
OpenUP describes
the
minimal
set of
roles
,
tasks
(organized by disciplines)
artifacts
(organized by work product domains)
Basic Elements of
a process
Role
: who performs the work
Stakeholder
Analyst
Architect
Developer
Tester
PM
Any role
(general or clerical task members)
Work product
: what is produced
Task
: how to perform the work
Process
: used to define
work breakdown and
workflow
Guidance
:
templates, checklists, examples,
guidelines, concepts, and so on
Practices
Management Practices
Iterative Development
Risk-Value Lifecycle
Release Planning
Whole Team
Team Change Management
Technical Practices
Concurrent Testing
Continuous Integration
Evolutionary Architecture
Evolutionary Design
Shared Vision
Test Driven Development
Use Case Driven Development