Unit-VII(Part-2)

advertisement
Chapter 14- tailoring the
process
4/13/2015
1
Overview


Introductory Remarks
14.1
14.1.1
14.1.2
14.1.3
14.1.4
14.1.5
14.1.6
14.2
4/13/2015
Process Discriminants
Scale
Stakeholder cohesion or contention
Process Flexibility or rigor
Process Maturity
Architectural Risk
Domain Experience
Example: Small Scale Vs Large Scale project
2
Introductory Remarks

The process framework must be configured to the specific
characteristics of the project

The Scale of the project (Team size ) drives the process
configuration more than any other factor

Other key factors include Stakeholder relationship, Process
flexibility, Process maturity, Architectural risk & domain experience.

While specific process implementations will vary but the spirit
underlying the process is the same
4/13/2015
3
Process Discriminants
In tailoring the management process to a specific
domain or project there are two dimensions of discrimination factors


Technical Complexity
Management complexity
4/13/2015
4
Higher technical Complexity
• Embedded,real-time,Distributed, FaultTolerant
• High-performance,Portable
Average software Project
• Unprecedented, architecture re-engineering
5 to 10 people
10 to 12 Months
3 to 5 external interfaces
Some unknown riks
Lower management Complexity
• Smaller scale
Higher management Complexity
• Large scale
• Contractual
• Informal
• Many stakeholders
• Few stakeholders
• Projects
•Products
Lower technical Complexity
• Straightforward automation, Single thread
• Interactive performance, Single platform
• Many precedent system, application re-engineering
The two primary dimensions of process variability
4/13/2015
5
Higher technical Complexity
• More domain experience required
• Longer inception & elaboration phase
• More iterations for risk management
• Less predictable costs & schedules
Lower management Complexity
• Less emphasis on risk management
Higher management Complexity
• More emphasis on risk management
• More process formality
• Less process formality
• More emphasis on teamwork
• More emphasis on individual skills
• Longer Inception & elaboration phases
• Longer production & transition phases
Lower technical Complexity
• More Emphasis on existing assets
• Shorter inception & elaboration phase
• fewer iterations for risk management
• More predictable costs & schedules
Priorities for tailoring the process framework
4/13/2015
6
Process Discriminants






A Project framework is not a project-specific process
implementation with a well-defined recipe for success
Methods, techniques, culture, formality & organization must be
tailored to the specific domain to achieve a process implementation that can
be succeed.
All the six parameters that effect the process exponent should be
considered when tailoring a process framework th create a practical process
implementation.
The six parameters are
Scale
Stakeholder cohesion or contention
Process flexibility or rigor
Process maturity
Architectural risk
Domain experience
4/13/2015
7
Process Discriminants
I Scale




The single most important factor in tailoring a software process
framework to the specific needs of a project is total scale of the software
application
The scale factor can be measured by
Source lines of code( SLOC )
Number of function points
Number of use cases
Number of dollars
From a process tailoring perspective the primary measure of the scale
is the size of the team. As the headcount increases the importance of
consistent interpersonal communication becomes paramount
4/13/2015
8
Process Discriminants
I Scale





Projects are categorized into
Trivial-sized projects( 1 people )requires almost no management overhead
Small projects ( 5 people )require very little management overhead but
team leadership toward a common objective is crucial
Moderate-sized projects( 25 people )require moderate management
overhead
Large projects( 125 people ) require substantial management overhead
Huge projects( 625 people )require management overhead
4/13/2015
9
Process Primitive
Life cycle phases
Smaller Team
Weak boundaries between
phases
Larger Team
Well-defined phases transitions to
synchronize progress among
concurrent Activities
Artifacts
Focus on technical artifacts
Change management of technical
Few discrete baselines
artifacts which may result in
Very few management
numerous baselines
artifacts required
Management artifacts important
Work effort
More need for generalists,
Higher percentage of specialists
allocations
people who performs roles
More people & teams focused on
in multiple workflows
a specific workflow
Many informal events for
A few formal events
maintaining technical
Synchronization among teams
consistency
which can take days
Checkpoints
No schedule description
Management
Informal planning, project
Formal planning, project control,
discipline
control, & organization
& organization
Automation
Most ad-hoc environment,
Infrastructure to ensure consistent
discipline
managed by individuals
Additional tool integration to support
4/13/2015
project control & change control
10
Process Discriminants
II Stakeholder contention & contention
The degree of cooperation & coordination among stakeholders
can significantly drive the specifics of how a process is defined
This process parameter can range from cohesive to adversarial
Cohesive teams have common goals, complementary skills & close
communications
Adversarial teams have conflicting goals, competing of incomplete
skills & less-than-open communications
4/13/2015
11
Process Primitive
Life cycle phases
Few Stakeholders,
Cohesive Teams
Multiple Stakeholders,
Adversarial Teams
Weak boundaries between
phases
Well-defined phases transitions to
synchronize progress among
concurrent Activities
Artifacts
Fewer & less detailed
Management artifacts paramount,
management artifacts
especially the business case,
required
Vision & status assessment
Work effort
Less overhead in
High assessment overhead to ensure
allocations
assessment
stakeholder concurrence
Checkpoints
Many informal events
3 or 4 formal events
Many informal technical walkthroughs
Synchronization among stakeholder teams
Management
Informal planning,project
Formal planning, project control,
discipline
control, & organization
& organization
Automation
( insignificant )
on-line stakeholder environment
discipline
4/13/2015
necessary
12
Process Discriminants
III Process flexibility or rigor
The degree of rigor formality & change freedom inherent in a specific
project’s contract will have a substantial impact on the implementation of
the project’s process.
For a loose contracts such as building a commercial product within a
business unit of a software company, management complexity will be
minimal
On the other hand, for a very rigorous contract it could take months
to authorize a change in a release schedule
4/13/2015
13
Process Primitive
Life cycle phases
Artifacts
Work effort
Flexible Process
Tolerant of cavalier phase
More credible basis required for
communications
inception phase commitments
Changeable business case
Carefully controlled changes
& vision
to business case & vision
( insignificant )
increased levels of management
allocations
Checkpoints
Management
& assessment workflow
Many informal events for
3 or 4 formal events
maintaining technical
Synchronization among stakeholder
consistency
teams
( insignificant)
More fidelity required for planning
discipline
Automation
Inflexible process
& project control
( insignificant)
( insignificant)
discipline
Process discriminators that result from differences in process flexibility
4/13/2015
14
Process Discriminants
IV Process maturity
The process maturity level of the development organization is
another key driver of management complexity.
Managing a mature process ( level 3 or higher ) is far simpler
than managing an immature process( level1 & 2).
Organizations with a mature process typically have a high level
of precedent experience in developing software & high level existing
process collateral that enables predictable planning & execution of
the process
4/13/2015
15
Process Primitive
Life cycle phases
Mature level 3 or 4
Well-establish criteria for
Level 1 Organization
( insignificant)
phase transition
Artifacts
Well-establish format,
Free-form
content & production
methods
Work effort
Well-establish basis
No basis
Well-defined combination
( insignificant)
allocations
Checkpoints
of formal & informal events
Management
Predictable planning
Informal planning & project
discipline
Objective status
control
Automation
Requires high levels of
discipline
automation for round-trip
engineering, change
Little automation or disconnect
islands of automation
management & process
instrumentation
Process discriminators that result from differences in process maturity
4/13/2015
16
Process Discriminants
V. Architectural Risk



The degree of technical feasibility demonstrated before
commitment to full-scale-production is an important dimension of
defining a specific project’s process
There are many sources of architecture risk such as
System performance
Robustness
System reliability
The degree to which these risks can be eliminated before
construction begins can have dramatic ramifications in the process
tailoring
4/13/2015
17
Process Primitive
Life cycle phases
Artifacts
Complete Architecture
Feasibility
demonstration
No architecture
Feasibility
demonstration
More inception & elaboration
Fewer early iterations
phase iteration
More construction iterations
Earlier breadth & depth
( insignificant )
across technical artifacts
Work effort
allocations
Higher level of design effort
Lower levels of
Higher levels of implementation to deal with increased
implementation & assessment
scrap & rework
More emphasis on executable
More emphasis on briefings,
demonstration
documents & simulation
( insignificant )
( insignificant )
Automation
More environment resources
Less environment demand
discipline
required earlier in the life cycle
early in the life cycle
Checkpoints
Management
discipline
Process discriminators that result from differences in architecture risk
4/13/2015
18
Process Discriminants
VI. Domain Experience
The development organization’s domain experience governs its
ability to converge on an acceptable architecture in a minimum
number of iterations.
Generally a skilled software organization building it’s first radar
application may require 4 or 5 prototype releases before converging
on an adequate baseline.
4/13/2015
19
Process Primitive
Experienced Team
Inexperienced tean
Life cycle phases
shorter engineering stage
Longer engineering stage
Artifacts
Less scrap & rework in
More scrap & rework in
requirement & design sets
requirement & design sets
Work effort
Lower levels of requirement
Higher levels of requirement
allocations
& design
& design
Checkpoints
( insignificant )
( insignificant )
Management
Less emphasis on risk
More-frequent status assess-
discipline
management
ment required
Less frequent status
assessments needed
Automation
( insignificant )
( insignificant )
discipline
Process discriminators that result from differences in domain experience
4/13/2015
20
Small scale Vs large-scale project
Engineering
Domain
Inception
Small
Elaboration
Production
Construction
Transition
10%
20%
50%
20%
15%
30%
40%
15%
Commercial
Project
Large,Complex
project
4/13/2015
21
Small scale Vs large-scale project
Differences in workflow priorities between small & large projects
Rank
Small commercial project
Large, complex project
1
Design
Management
2
Implementation
Design
3
Deployment
Requirements
4
Requirements
Assessment
5
Assessment
Environment
6
Management
Implementation
7
Environment
Deployment
4/13/2015
22
Artifacts
Small Commercial project
Large,Complex project
Work breakdown
1-page spreadsheet with 2
Financial management system with
structure
levels of WBS elements
5 or 6 levels of WBS elements
Business case
Spreadsheet & short memo
3-volume proposal including
technical volume, cost volume,
& related experience
Vision statement
10-page concept paper
200-page subsystem specification
Development plan
10-page plan
200-page development plan
Release specification
3 interim release
8 to 10 interim release
& No of release
specification
specification
Architecture
5 critical use case, 50 UML
25 critical use case,200 UML
description
diagram, 20 pages of text,
diagrams,100 pages of text,
other graphics
other graphics
Software
50,000 lines of VB code
300,000 lines of C++ code
Release description
10-page release notes
100-page summary
Deployment
use training course
sales rollout kit
Transition plan
Installation plan
User manual
On-line help & 100-page
200-page user manual
user manual
Status Assessment
Quarterly project reviews
Monthly project management
reviews
Difference in artifacts between small & large projects
4/13/2015
23
Download