Professional Documents
Culture Documents
RUPpr
RUPpr
RUPpr
Tarkvara-arendus raamistik
Tarkvara-arendus
Tarkvara-arendus
protsess
Mude lid:
ISO/IEC 15504,
CMM-SW, jt.
RUP process
Tarkvara-arendus
vahendid
Tarkvara vahendid:
MS Project,
Rational Rose, jt.
RUP product
Tarkvara-arendus
metoodika
Me e todid:
Spiral,
Waterfall, jt.
RUP approach
RUP Approach
Essential Principles:
Attack major risks early and continuously
Ensure that you deliver value to your customer
Stay focused on executable software
Accommodate change early in the project
Baseline an executable architecture early on
Build your system with components
Work together as one team
Make quality a way of life, not an afterthought
RUP Approach
RUP vs Waterfall
Waterfall development approach
Development phases are in a strict sequence
Leaves key team members idle for extended period of
time
Leaves testing to the end of the project lifecycle
RUP approach
Iterative: a sequence of incremental steps or iterations
Each iteration includes most development disciplines
Each successive iteration builds on the work of previous
iterations
Early iterations focus on requirements, later iterations
on implementation and testing
RUP Approach
Iterative approach
Iterative is superior to waterfall:
carefully planned
Tasks and responsibilities of participants need to be defined
RUP Approach
RUP Process
A well-defined software engineering process
The process has two structures:
Dynamic structure: shows how the process, expressed
in terms of cycles, phases, iterations, and milestones,
unfolds over the lifecycle of a project. Represents the
time dimension.
Static structure: shows how process elements
activities, disciplines, artifacts and roles are logically
grouped into core process disciplines (workflows).
RUP Process
Elaboration phase:
Mitigate major technical risks
Create a baseline architecture
Understand what it takes to build the system
Construction phase:
Build the first operation version of the product
Transition phase:
Build the final version of the product and deliver it to the customer
RUP Process
RUP Process
RUP Product
RUP product constitutes a complete process
Best practices
Process delivery tools
Configuration tools
Process authoring tools
Community/Marketplace
RUP Product
it in elaboration phase
Attack risks constantly
software
Artifacts other than the actual software are
supporting artifacts
Minimise the number of artifacts produced to
reduce overhead
implementation
Cost of change to the scope
Change management
a functioning architecture
Architecture comprises of software systems most
important building blocks and their interfaces
Architecture provides a sceleton structure of the
system 10-20% of final amount of code
Accurate assessments of resource and time estimates of
the project
New members are easily introduced to the project
Ready-made solutions to common problems
extent possible
business environments
Respond to changes that occur during the process
Iterative development with strong focus on
executable software
Minimising the ceremony surrounding software
development
Increasingly complex projects require more
ceremony than a small project
approaches:
Complex systems
Distributed teams
Cost of maintenance is low
Cost of development is high
Time to market slower than for low-ceremony
approaches
RUP configurations:
Light RUP configurations with low ceremony
Average RUP configurations with an average
level of ceremony
Large, more formal RUP configurations with
high ceremony
1.
Examine
organisations
needs
Software process
improvement request
Institutionalised
improvements
Identified
scope and
priorities
8.
Monitor
performance
Improvement
initiation
Validated
improvement
results
7.
Sustain
improvement
gains
6.
Confirm
improvements
Re-assessment
request
Analysed
re-assessment
results
2.
Initiate process
improvement
Preliminary process
improvement
programme
plan
3.
Prepare and
conduct process
assessment
Assessment
request
(Parts 3 and 4)
current assessed
capability
4.
Analyse results
Assessment
and derive
action plan
results
Industrial benchmarks
Practice descriptions from
the assessment model
Approved
action plan
Implemented
improvements
5.
Implement
improvements
(Part 2)
Software Process
Models and Standards
ISO/IEC 15504 Information Technology:
Process Assessment
CMM-SW Capability Maturity Model for
Software
CMMI staged and continuous representation
ISO 9001 Quality systems-Model for quality
assurance in design, development, production,
installation and servicing
BOOTSTRAP model and methodology
ISO/IEC 12207 International Standard of
Software Life-cycle Processes
Definitions
Process: a set of interrelated activities, which transform inputs into
outputs
Practice: a software engineering or management activity that
contributes to the creation of the output (work products) of a process
or enhances the capability of a process
Process assessment: a disciplined evaluation of an organisations
software processes against a model compatible with the reference
model
Process improvement: action taken to change an organisations
processes so that they meet the organisations business needs and
achieve its business goals more effectively
Process capability: the ability of a process to achieve a required goal
Process performance: the extent to which the execution of a process
achieves its purpose
Marion Lepmets
Tallinna Tehnikalikool
Arvutitehnika instituut
Raja 15, Tallinn 12617
Telefon: +372 6202 260
Email: marion.lepmets@ttu.ee
www: http://www.pori.tut.fi/~marion