software process improvement robin b. hunter, ph.d. vol 2., p. 363-382 presented by: andrew wheeler

19
Software Process Software Process Improvement Improvement Robin B. Hunter, Ph.D. Robin B. Hunter, Ph.D. Vol 2., p. 363-382 Vol 2., p. 363-382 Presented by: Andrew Wheeler Presented by: Andrew Wheeler

Upload: maria-lamb

Post on 17-Dec-2015

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Software Process Improvement Robin B. Hunter, Ph.D. Vol 2., p. 363-382 Presented by: Andrew Wheeler

Software Process Software Process ImprovementImprovement

Robin B. Hunter, Ph.D.Robin B. Hunter, Ph.D.Vol 2., p. 363-382Vol 2., p. 363-382

Presented by: Andrew WheelerPresented by: Andrew Wheeler

Page 2: Software Process Improvement Robin B. Hunter, Ph.D. Vol 2., p. 363-382 Presented by: Andrew Wheeler

OverviewOverview

IntroductionIntroduction BackgroundBackground Models for Software Process Models for Software Process

ImprovementImprovement Capability DeterminationCapability Determination Software Process ImprovementSoftware Process Improvement StandardsStandards ConclusionsConclusions

Page 3: Software Process Improvement Robin B. Hunter, Ph.D. Vol 2., p. 363-382 Presented by: Andrew Wheeler

IntroductionIntroduction The quality of the software system is The quality of the software system is

governed by the quality of the process governed by the quality of the process used to develop and maintain it.used to develop and maintain it.– Good SE -> Good Development -> Good Good SE -> Good Development -> Good

productproduct Software process is improved via Software process is improved via

improvement modelsimprovement models– SW-CMM and ISO9001SW-CMM and ISO9001

Other standards help with process Other standards help with process assessment, capability determination, and assessment, capability determination, and process improvementprocess improvement– SPICE, ISO/IEC 15504 and ISO/IEC 12207SPICE, ISO/IEC 15504 and ISO/IEC 12207

Page 4: Software Process Improvement Robin B. Hunter, Ph.D. Vol 2., p. 363-382 Presented by: Andrew Wheeler

BackgroundBackground

Software EngineeringSoftware Engineering– Uses structured analysis and designUses structured analysis and design– Object oriented approachObject oriented approach– Software measurement as applied Software measurement as applied

sciencescience Process and Product approachProcess and Product approach

– Focus on modeling the software Focus on modeling the software development and maintenancedevelopment and maintenance

– Focus on testing for accuracy and Focus on testing for accuracy and completenesscompleteness

Page 5: Software Process Improvement Robin B. Hunter, Ph.D. Vol 2., p. 363-382 Presented by: Andrew Wheeler

Background (cont)Background (cont)

Software Process AssessmentSoftware Process Assessment– Framework that serves as a roadmap Framework that serves as a roadmap

and a gaugeand a gauge Capability determinationCapability determination

– Can a company produce a quality Can a company produce a quality product and meet the demands of their product and meet the demands of their customer?customer?

Need for process improvementNeed for process improvement– Control, predictability, and effectiveness Control, predictability, and effectiveness

all improveall improve

Page 6: Software Process Improvement Robin B. Hunter, Ph.D. Vol 2., p. 363-382 Presented by: Andrew Wheeler

Models for Software Process Models for Software Process Improvement – SW-CMMImprovement – SW-CMM

5 Maturity Levels5 Maturity Levels– Initial – …Few processes are defined and Initial – …Few processes are defined and

success depends on individual effort…success depends on individual effort…– Repeatable - … management process Repeatable - … management process

are established to track cost, schedule are established to track cost, schedule and functionality…repeat earlier successand functionality…repeat earlier success

– Defined – Management and engineering Defined – Management and engineering activities well documented… All projects activities well documented… All projects used a tailored version of standard used a tailored version of standard software process for development and software process for development and maintenancemaintenance

Page 7: Software Process Improvement Robin B. Hunter, Ph.D. Vol 2., p. 363-382 Presented by: Andrew Wheeler

Models for Software Process Models for Software Process Improvement – SW-CMM (cont)Improvement – SW-CMM (cont) 5 Maturity Levels5 Maturity Levels

– Managed – Measures are put in place… Managed – Measures are put in place… process and products are controlledprocess and products are controlled

– Optimizing – Continuous process Optimizing – Continuous process improvement from quantitative feebackimprovement from quantitative feeback

Page 8: Software Process Improvement Robin B. Hunter, Ph.D. Vol 2., p. 363-382 Presented by: Andrew Wheeler

Models for Software Process Models for Software Process Improvement – SW-CMM (cont)Improvement – SW-CMM (cont) MaturationMaturation

– Occurs when key process areas satisfy the Occurs when key process areas satisfy the goals of the current levelgoals of the current level

– Key Process AreaKey Process Area Reqs management, Software project planning, Reqs management, Software project planning,

Software subcontract management, etc.Software subcontract management, etc.– Common FeatureCommon Feature

Commitment to perform, ability to perform, activities Commitment to perform, ability to perform, activities performed, etc.performed, etc.

– CF(KPA) -> Key PracticeCF(KPA) -> Key Practice Ability to perform( Software Project tracking and Ability to perform( Software Project tracking and

oversight ) -> Metrics are collected against cost and oversight ) -> Metrics are collected against cost and effort predictions and reviewed for improvementeffort predictions and reviewed for improvement

Page 9: Software Process Improvement Robin B. Hunter, Ph.D. Vol 2., p. 363-382 Presented by: Andrew Wheeler

Models for Software Process Models for Software Process Improvement – SW-CMM (cont)Improvement – SW-CMM (cont) Training and assessment teams are available.Training and assessment teams are available. Software process changeSoftware process change

– Must start with senior leadershipMust start with senior leadership– Team effort is a mustTeam effort is a must– ContinuousContinuous– Requires investmentRequires investment

BenefitsBenefits– Increased response to change, reduction in project Increased response to change, reduction in project

investigation time, accelerated spread of best investigation time, accelerated spread of best practicespractices

Page 10: Software Process Improvement Robin B. Hunter, Ph.D. Vol 2., p. 363-382 Presented by: Andrew Wheeler

Models for Software Process Models for Software Process Improvement – SW-CMM (cont)Improvement – SW-CMM (cont) SpinoffsSpinoffs

– BOOTSTRAPBOOTSTRAP Preparation -> Assessment -> Action Plan derivationPreparation -> Assessment -> Action Plan derivation In line with ISO/IEC 12207 and ISO/IEC 15504In line with ISO/IEC 12207 and ISO/IEC 15504

– TRILLIUMTRILLIUM Customer focused benchmarkCustomer focused benchmark

– Assessment of supplier’s development processAssessment of supplier’s development process– Internal process improvementInternal process improvement

– PSP/TSPPSP/TSP Personal Software Process - Personal tracking of Personal Software Process - Personal tracking of

performanceperformance Team Software Process – Team working practices to Team Software Process – Team working practices to

establish goals, etc.establish goals, etc.

Page 11: Software Process Improvement Robin B. Hunter, Ph.D. Vol 2., p. 363-382 Presented by: Andrew Wheeler

Models for Software Process Models for Software Process Improvement – ISO9000Improvement – ISO9000

A series of standards and generic practices A series of standards and generic practices that can be applied to many fieldsthat can be applied to many fields

1988 (U.K.) – Applying ISO9000 is cost 1988 (U.K.) – Applying ISO9000 is cost effective (TickIt)effective (TickIt)– Certificates are awarded to accomplished Certificates are awarded to accomplished

companiescompanies– Certificates have to be renewedCertificates have to be renewed

ISO90001 applies to software development ISO90001 applies to software development Rule of thumbRule of thumb

– An ISO9001 compliant organization would An ISO9001 compliant organization would relate to a SW-CMM level 2 to 3relate to a SW-CMM level 2 to 3

Page 12: Software Process Improvement Robin B. Hunter, Ph.D. Vol 2., p. 363-382 Presented by: Andrew Wheeler

Models for Software Process Models for Software Process Improvement – SPICEImprovement – SPICE

International standardizationInternational standardization– Being pilot tested in U.S.Being pilot tested in U.S.

Promotion of SPICE approachPromotion of SPICE approach Identify weaknesses in model and Identify weaknesses in model and

documentationdocumentation

– Standardization via technical reportsStandardization via technical reports Items -> Drafts -> StandardsItems -> Drafts -> Standards

Page 13: Software Process Improvement Robin B. Hunter, Ph.D. Vol 2., p. 363-382 Presented by: Andrew Wheeler

Capability DeterminationCapability Determination

Systematic assessment and analysis Systematic assessment and analysis of select software processes to of select software processes to reveal strengths, weaknesses, and reveal strengths, weaknesses, and risks associated with deploying risks associated with deploying process to satisfy requirementsprocess to satisfy requirements

Related to procurementRelated to procurement Birth of SA-CMMBirth of SA-CMM

Page 14: Software Process Improvement Robin B. Hunter, Ph.D. Vol 2., p. 363-382 Presented by: Andrew Wheeler

Software Process Software Process ImprovementImprovement

8 steps8 steps– Examine needsExamine needs– InitiateInitiate– Conduct assessmentConduct assessment– Analyze results and form action planAnalyze results and form action plan– ImproveImprove– ConfirmConfirm– SustainSustain– MonitorMonitor

Page 15: Software Process Improvement Robin B. Hunter, Ph.D. Vol 2., p. 363-382 Presented by: Andrew Wheeler

Software Process Software Process Improvement (cont)Improvement (cont)

BenefitsBenefits– QualitativeQualitative

Increased staff moraleIncreased staff morale Increased customer satisfaction via product Increased customer satisfaction via product

quality and productivityquality and productivity

– QuantitativeQuantitative Hard to measureHard to measure Relationship to qualitativeRelationship to qualitative

– Higher morale -> less staff turnovers -> less Higher morale -> less staff turnovers -> less training coststraining costs

Page 16: Software Process Improvement Robin B. Hunter, Ph.D. Vol 2., p. 363-382 Presented by: Andrew Wheeler

StandardsStandards

ISO/IEC 12207ISO/IEC 12207– Focus on lifecycle objectives, recording Focus on lifecycle objectives, recording

data and additions to lifecycle practicesdata and additions to lifecycle practices– Main processesMain processes

PrimaryPrimary– Acquisition, supply, etc.Acquisition, supply, etc.

SupportingSupporting– Documentation, configuration management, etc.Documentation, configuration management, etc.

OrganizationOrganization– Management, improvement, trainingManagement, improvement, training

Page 17: Software Process Improvement Robin B. Hunter, Ph.D. Vol 2., p. 363-382 Presented by: Andrew Wheeler

Standards (cont)Standards (cont)

ISO/IEC 15504ISO/IEC 15504– Processes are identical and split into 5 Processes are identical and split into 5

categoriescategories Primary process relates to customer supplier and Primary process relates to customer supplier and

engineer categoriesengineer categories Supporting process relates to support categoriesSupporting process relates to support categories Organizational relates to management and Organizational relates to management and

organization categoriesorganization categories

– Continuous modelContinuous model– Possible rearchitecting of ISO 12207 and 15504 Possible rearchitecting of ISO 12207 and 15504

to be more compatible with each other may to be more compatible with each other may result from hearingsresult from hearings

Page 18: Software Process Improvement Robin B. Hunter, Ph.D. Vol 2., p. 363-382 Presented by: Andrew Wheeler

ConclusionsConclusions

SW-CMM and ISO9001SW-CMM and ISO9001– Both are designed for capability Both are designed for capability

determination as well as process determination as well as process improvementimprovement

Many other standards exist to help Many other standards exist to help guide companies to improve processguide companies to improve process– ISO 15504 and SPICEISO 15504 and SPICE

Benefits from abiding by these Benefits from abiding by these standards are still in qualitative form standards are still in qualitative form but are leading to quantitative formbut are leading to quantitative form

Page 19: Software Process Improvement Robin B. Hunter, Ph.D. Vol 2., p. 363-382 Presented by: Andrew Wheeler

My thoughtsMy thoughts

Very well structuredVery well structured All concepts presented are pretty All concepts presented are pretty

modernmodern One major issueOne major issue

– How much feedback is truly given from How much feedback is truly given from the implementers of the quality processthe implementers of the quality process

Streamlining the process would Streamlining the process would drastically improve usabilitydrastically improve usability