making software process improvements happen jimmie johansson richard berntsson-svensson kashif ahmed...
Post on 20-Dec-2015
215 views
TRANSCRIPT
Making Software Process Improvements Happen
Jimmie Johansson
Richard Berntsson-Svensson
Kashif Ahmed Kahn
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Agenda
Launching Software Process Improvement
Implementing Software Process Improvement
Measuring the Benefits of Software Process Improvement
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
The Stages for Software Process Improvement
Launching
Implementing
Institutionalizing
Measuring
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Launching Software Process Improvement
The Vision Phase
The Strategy Phase
The Alignment Phase
The Motivation Phase
The Implementation Phase
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
The Vision
The vision of the business – Often long term
Senior Management and the vision
SPI:s vision must be inline with the business vision
SPI:s vision must be clear and tell how it will support the vision of the business
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
The Strategy
Strategy is how to achieve the vision
Strategy consider what is feasible and what is not
Short, mid and long term to achieve vision
How to secure Senior Management Sponsorship
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Alignment With Organization
Important for SPI to be successful
SPI program should reflect the priorities and interdependencies between organizations objectives
SPI program should fit within the organizations context
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Motivation
Motivate why the improvement work is important
Different stakeholders are in need of different motivation
Prove that effort of changes gives positive result
Monitoring improvements to show result
(Selling to senior and middle management)
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Planning Implementation (1/6)
Analyzing the organizational context
Supporters and Non-supporters of the changes
Potential champions
Are organization ready for changes? When?
Make a strategy for goals, changes and process improvement
Levels of organizational context
Corporate context
Department or project or team context
Personal or software engineering context
Corporate levelWhole organization
Project/Team
Personal/Individual
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Planning Implementation (2/6)
Corporate level
Financial and budgeting issues
Business condition – Growth of organization
How teams should fit best in an organization
Geographical widespread of teams
External restrictions – Customer, partners or suppliers
The culture of the corporation
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Planning Implementation (3/6)
Department or project or team level
Managerial style
Reward systems
Technological environment
Network infrastructure
Development standards
Development methodologies
Engineering tools
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Planning Implementation (4/6)
Personal or software engineering level
Experience and background of staff
Education and training
Knowledge of staff
Acceptable of changes
Process awareness
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Planning Implementation (5/6)
Define organizational and process boundaries for SPI
Stakeholders identifying
Focus for SPI will be on targeted areas
Management sponsors identifying
Roles and responsibilities for continues activities for SPI identifying
Implications of changes identifying – Managing of changes
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Planning Implementation (6/6)
Business strategy and goals alignment
Win all stakeholders
Support from management
Dedicated resources for handle the implementation
Coordination of activities in process improvement
Handle organization context
Change management
Action prioritization
Create infrastructure for support
Monitoring result of SPI
Gain knowledge from feedback
Ingredients in an implementation model
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Implementation and institutionalization phase
Before implementation phase
Launch and planning for SPI should be completed
Software process assessment resulted in recommendations for improvement
Stages of implementing and institutionalizing SPI
Creating SPI action plan
Allocating responsibilities for SPI
Implementing SPI actions
Institutionalizing SPI
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Principles for implementing and institutionalizing SPI (1/2)
Introducing and managing the change
Change model and plan to make change happen
Managing change, key to effective process improvement
SPI is a journey
SPI not a one-off exercise
First an assessment
Improvement based on status of the current process
Process behaviour needs to be embedded into the organization
Senior management support and commitment is important
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Principles for implementing and institutionalizing SPI (1/2)
Dedicated resources
Addition to software process improvement team
Management and staff commitment
SPI activities cost time and resources
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Implementing SPI actions and managing the change (1/4)
Software Process Improvement Teams
Has responsibility for SPI project
Implements the SPI actions
Process design/redesign
Identify components of key process areas
Purpose and goal plus five common features
Commitment
Abilities
Activities
Measurement
Verification
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Implementing SPI actions and managing the change (2/4)
Purpose and goals Summarize key practices and process areas
The SMART criteria
Activities Involves performing the work, plans and procedures
Eliminating NVAs, redundancy and duplication
Commitment Actions the organization must take
Ability Involves resources, training and organizational structures.
Software PIT responsible for defining what training or awareness
Measurement Describes basic measurement practices
Used to control and improve the process
Specifying the process measurement and analysis
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Implementing SPI actions and managing the change (3/4)
Verification
Reviews and audits
External verification procedures
Managing the change
Important for success
Cultural changes
Behavioral changes
Organizational changes
Technological changes
Environmental changes
Potential sources of resistance to change
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Implementing SPI actions and managing the change (4/4)
Failure of implementing SPI Culture
Assuming that changing the culture is a trivial matter
Resistance to change
Not involve people that is affected
Ignore feedback
Sponsorship
Short-term commitment
Unrealistic expectations
Implementing organizational change Military
Reliance on brute force – people cannot relax
Put pressure – force met by force
Engineering
If job is changed, people will be forced to change – can break up good team and people do not like to be treated like a machine.
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Institutionalizing SPI
‘Institutionalization: The building of infrastructure and culture that support methods, practices, and procedures so that they are the ongoing way of doing business, even after those who originally defined them are gone’
Organizational policies
Rewards for process achievements
Penalties for not following the process
Process training and retraining
Management practices
Process talk is the natural way of communication
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
IDEAL model (1/2)
Initiating Starting the improvement program
Set context and establish sponsorship
Establish improvement infrastructure
Diagnosing Assessing the current state of practice
Develop recommendations and document result
Establishing Setting the implementation strategy and action plans for the improvement
program
Set strategy and priorities
Plan actions (SPI action plan)
Establish action teams
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
IDEAL model (2/2)
Acting
Executing the plans and recommended improvements
Define the process and measures (design/redesign)
Plan and execute pilots
Plan, execute and track installation
Leveraging
Analyzing the lessons learned and the results of the improvement effort
Document and analyze lessons
Revise organizational approach
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Measuring Software Process Performance
Major obstacles to the adoption of software process improvement (SPI):
Reluctance of business management to invest in SPI
No convincing evidence of the return on investment
Lack of reliable information
People don’t like to measure
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Why measure Software Process Performance?
Measurement is necessary to managers to monitor performance and efficiency of staff.
Provides a feedback loop necessary for any system to improve
Feedback loop is necessary for any system to stabilize and adjust with its environment
In software process environment, feedback loop helps in reaching state of continuous process improvement
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
What to measure?
Chaos cannot be measured.
Measuring the performance of a chaotic process will lead to inconsistent results.
Measuring product quality and process performance are both important.
Need for a balance in choosing the measurement indicators.
Process measurement should be related to process goals.
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Principles of Software Process Measurement
Define clear objectives of measurement programme.
The measurement programme must have management support.
Measurement roles and responsibilities must be allocated.
Measurement should cover both the process and the product.
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Issues with Software Process Measurement
People believe it is difficult to conduct experiments in a difficult discipline of software engineering.
There is difficulty in measuring software process and comparing results consistently across organizations.
Quantifying the return on investment from investing in SPI is a challenging task.
Effective and meaningful measurements could only happen in a disciplined process environment.
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
An Example of Software Process Measurement Method
October 1990, consortium of European Companies (nine from Six European States)
Comprised of experts in software measurement and users applying quantitative approaches to the management of their project.
Result: “application of metrics in industry (ami) project”
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
ami Approach
ami approach adopts “goal-oriented measurement (GOM)”.
Application of GOM requires a structured method.
Each organization constructs its own measurement framework.
ami approach provides a commonsense framework for quantifying software projects.
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
ami Activities
Method itself consists of a 12-step sequence
Main activities are:
1. Assessment of the project environment.
2. Analysis of assessment conclusions and primary goals.
3. Metrication by implementing measurement plan
4. Improvement based on the measurement data and implementation actions
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
ami Metrics
ami methodology distinguishes metric from primitive metric as:
A metric is a measurable attribute of an entity, e.g. attribute ‘projecteffort’ is a measure (metric) of project size. To calculate this metric, time-sheet bookings are needed.
A primitive metric is a raw data item that is used to calculate a metric. Time-sheet bookings are the primitive metric.
A primitive metric is typically a metric that exists in a database but is not interpreted in isolation.
Each metric is made up of one or more collected primitive metrics.
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
ami Measurement Roles and Responsibilities
Roles defined in the ami method could be mapped to the roles and responsibilities involved in SPI.
Guidelines
Managers must be involved.
Measurement tasks must be clearly allocated and budgeted.
Metrics promoter must be present to write and implement the measurement plan, organize the presentation and distribute the information.
Work environment must be feasible for goal-oriented measurement.
Staff must be trained to overcome the resistance.