32
Page 1 V T T E L E C T R O N I C S Tua Rahikkala October 23, 1998 Tua Rahikkala VTT Electronics [email protected] Software Configuration Management Process Improvement within a Distributed Environment BLANKO ‘98 October 22-23, 1998

Tua Rahikkala VTT Electronics [email protected]

  • Upload
    kamil

  • View
    34

  • Download
    1

Embed Size (px)

DESCRIPTION

Software Configuration Management Process Improvement within a Distributed Environment BLANKO ‘98 October 22-23, 1998. Tua Rahikkala VTT Electronics [email protected]. Background VISCOUNT. EU/Esprit project 25754 1.9.1997-31.12.1999 - PowerPoint PPT Presentation

Citation preview

Page 1: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 1V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

Tua RahikkalaVTT Electronics

[email protected]

Software Configuration Management Process Improvement within a

Distributed Environment BLANKO ‘98

October 22-23, 1998

Page 2: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 2V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

BackgroundBackgroundVISCOUNTVISCOUNT

EU/Esprit project 25754 1.9.1997-31.12.1999 The objective of the VISCOUNT project is to develop a SCM tool

and SCM methods for use in a geographically distributed environment

More VISCOUNT information:– http://www.baesema.co.uk/stg/viscount/index.htm– http://www.ele.vtt.fi/projects/viscount/vischome.html

Page 3: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 3V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

Background Background SCM QuestionnaireSCM Questionnaire

Made during 09-10/98 Objective was to investigate software development distribution and

SCM improvement areas of industrial organisations 38 answers (13.10.1998) Questions:

industrial sector, company size, number of SW professionals software development and distribution SCM tools SCM development areas (28 areas, score 1-5)

Page 4: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 4V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

SCM Questionnaire SCM Questionnaire Industrial sectorsIndustrial sectors

22 %

12 %

15 %

10 %

27 %

12 %

2 %

telecommunication electronic instruments

consumer electronics machine automationprocess automation software production

other

Page 5: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 5V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

SCM Questionnaire SCM Questionnaire Number of personnelNumber of personnel

Company size/personnel5 %

22 %

19 %

54 %

1 - 2020 - 50 50 - 250> 250

Number of software professionals

40 %

30 %

15 %

15 %

1 - 2020 - 5050 - 250> 250

Page 6: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 6V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

SCM Questionnaire SCM Questionnaire SW distributionSW distribution

Distribution including company offices, daughter companies and sub-contractors:

48 %

24 %

17 %

7 %4 %

Finland Europe USA other no distribution

Page 7: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 7V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

SCM Questionnaire SCM Questionnaire Software task distributionSoftware task distribution

If software development has been distributed, what sub-tasks are most distributed?

Prestudy/Idea PhaseRequirements specificationTechnical designImplementationModule/unit testingIntegration testingSystem testingDocumentationProject ManagementQuality Assurance

05

1015202530

Page 8: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 8V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

SCM Questionnaire SCM Questionnaire Use of SCM toolsUse of SCM tools

18 %

7 %

33 %

20 %

2 %

20 %Clear CaseContinuus PCMS/PVCS Visual SourceSafeother nothing

Page 9: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 9V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

SCM Questionnaire SCM Questionnaire Main development areasMain development areas

0

5

10

15

20

25

quality assurance andaudits

release/version building communication SCM processimprovement

12345

Page 10: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 10V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

SCM Questionnaire SCM Questionnaire Main development areas/Main development areas/

SCM toolSCM tool

ClearCase, Continuus: quality assurance and audits communication SCM process improvement product conformity management

PCMS/PVCS, Visual SourceSafe, others: SCM process improvement communication quality assurance and audits release/version building

No SCM tool: SCM process improvement product conformity management module version management documentation version management

Page 11: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 11V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

Improvement FrameworkImprovement Framework

Pr2imer (Practical Process Improvement for Embedded Real-Time Software) is an approach to process improvement and measurement developed at VTT Electronics. (http://www.ele.vtt.fi/projects/primer/primer.htm)

In this work, the focus of the Pr2imer approach is on SCM. Therefore, we call our approach SCM- Pr2imer

GQM (Goal/Question/Metric) used as a part of SCM-Pr2imer MetriFlame

Page 12: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 12V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

SCM-PrSCM-Pr22imerimer

ANALYSIS OFTHE

CURRENT SCMPRACTICES

DEFINITION OFGOALS

FORNEW SCM

PRACTICES

PLAN FORSCM IM-PROVEMENT

STEPS

1.

2.3.

4.

SOFTWAREDEVELOPMENT AND

MAINTENANCE

PILOTOPERATION

ANDCOMMISSIONING

Page 13: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 13V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

SCM-PrSCM-Pr22imer Phase 1:imer Phase 1:Analysis of the current SCM practicesAnalysis of the current SCM practices

Q u al ita tiv ean a ly sis

Q u an titativ ean alysis

BootstrapSPICE

ANALYSIS OFCURRENT SCM

PRACTICESInterviews

CMMMetrics

Analysisframework

MATURITY LEVEL OFSCM IN

SOFTWARE PRODUCTION

DESCRIPTIONS OF THECURRENT SCM PROCESS- strengths- improvement areas

P R O S E S S IM A L L ISCM PROCESS MODEL

Page 14: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 14V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

SCM Process SCM Process

ConfigurationAuditing

Software ConfigurationManagement

(SCM)

ConfigurationIdentification

ConfigurationStatus Accounting

Change Control

Releasemanufacturing and

management

SCM-Teamwork

SCM-Planning

Page 15: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 15V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

SCM Current State SCM Current State Analysis at VATAnalysis at VAT

VAT = Valmet Automation Oy Pilot projects in the SCM-Pri2mer program:

– 1 Maintenance project– 1 Development project– Logistics department

Analysis steps– Analysis planning– Interviews– Feedback session I– Quantitative assessment (SCM-Pr2imer question list, BOOTSTRAP)– Feedback session II and planning of further work

Page 16: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 16V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

Main Results from Main Results from Current State Current State Analysis/VATAnalysis/VAT

Version manufacturing process is not effective When working in distributed environment, VAT’s information

sharing between project participants is not effective in all cases, and the practices vary depending on projects and individuals

Changes are not always documented, and the documentation practices are not clear

The special requirements and properties of SCM within VAT’s distributed environment are not really known or identified.

Page 17: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 17V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

SCM-PrSCM-Pr22imer Phase 2:imer Phase 2:Definition of Goals for New SCM PracticesDefinition of Goals for New SCM Practices

Goal

Definition ofSCM goals

Definition ofuse cases

Description ofSCM methods

and tools

DEFINITION OFGOALS FORIMPROVED

SCM PRACTICES

for SCMtarget state

GQM

Interviews

Team-work

Brainstorming

Goal

GOALS FOR SCMIMPROVEMENT

DESCRIPTIONS OFTHE NEW SCM

PROCESS, METHODSAND TOOLS

USE CASE MODELSOF THE NEW SCM

PROCESS

Page 18: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 18V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

SCM-PrSCM-Pr22imer: Phase 2imer: Phase 2TasksTasks

Identify improvement objectives and goals for the SCM process Evaluate and select methods and tools for the improved SCM

process Identify and model the target state of the SCM process (Use case

approach) Definition of new methods and practices (SCM requirements)

Page 19: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 19V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

Goal-oriented SCM Goal-oriented SCM process improvementprocess improvement

Q3 Q4 . . . . .

Use case

SummaryFrequencyParticipants/RolesPreconditionsExceptionsIllustrationsPostconditionsDescription

Use case

SummaryFrequencyParticipants/RolesPreconditionsExceptionsIllustrationsPostconditionsDescription

Implicit models of the target sta

te

M1 M2 M3 M4 M5 M6 M7 . . . . .

Variationfactors

Metrics

Environment

Goal

Object

Purpose

QualityfocusViewpoint

Q1 Q2

Page 20: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 20V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

Examples of SCM goalsExamples of SCM goals

Goal 1: Analyse the version building process for the purpose of improving it with respect to effectiveness from the project team point of view in the context of distributed environment

Goal 2: Analyse the change control process for the purpose of improving it with respect to traceability of changes from the project team point of view in the context of distributed environment

Goal 3: Analyse the SCM training and support material for the purpose of improving and developing it with respect to learning from the project team point of view in the context of distributed environment

Page 21: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 21V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

Example of GQM template Example of GQM template

Object purpose quality focus viewpoint environment Name: XXXX

Version buildprocess

improving effectiveness project team distributedenvironment

Date: 29.01.1998

Quality Focus

Number of the failures after version building Number of the rebuilding activities Spent time for version reporting activity The work time for version building etc.

Variation Factors

All elements that belong to a release are checked inbefore version building The dependence between changed elements and

control scripts can be checked automatically. The information whether the change belong to a

release or not can be checked easily. The information process of changes (e.g. changes

to libraries or interface programs) is described andtaken in use.

The version information is updated by developersafter the change have been made and the linkbetween the failure database and the version database are

created at the same time. The release CD can be checked before it is sent to

logistics group The check list for version building is made etc.

Baseline hypothesis Failures are found in every release after version building Releases have to be built again at least once every time Version reporting can take 0.5-1 person workday Version building process can take 3-4 person work day etc.

Impact on baseline hypothesis The number of failures diminish Release versions are built once Version reporting takes 2 hours Version building process takes 1 person work day etc.

Page 22: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 22V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

Use Case DescriptionUse Case Description

Use case

SummaryFrequencyParticipants/RolesPreconditionsExceptionsIllustrationsPostconditionsDescription

Role2Developer

Role1Project manager

Role3Test team

Role netc.

Use case description

Use case description

Use case description

Use case description

Use case description

Use Case Description and Roles

Page 23: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 23V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

GQM-planningGQM-planning

Goals and use cases were refined to measurable questions and metrics by interviewing all involved persons for retrieving the required information

Examples:– What is the number of building errors?

• M_1.1: Number of times a release has to be built again/customer release

• M_1.2: Number of new source files/release– Why a release has to be built again?

• M_2.1: Number of changed source files/release• M_2.2: Number of revisions of code rows/labelled file version

– etc. Feedback sessions!

Page 24: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 24V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

Next stepsNext stepsSCM-PrSCM-Pr22imer: Phases 3-4imer: Phases 3-4

Plan for Data Collection• Manually collected metrics• Automatically collected metrics (e.g. ClearCase - MetriFlame

interface)• Templates for data collection

Tool Support for Metrics Collection• MetriFlame (http://www.ele.vtt.fi) for SCM data collection and

measurement process • Calculation templates (rules for metrics calculation)

Result analysis and feedback sessions

Page 25: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 25V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

Tool Support for Metrics Tool Support for Metrics CollectionCollection

MetriFlame* Metrics definition (GQM),* Metrics lists,* Metrics collection,* Result analysis.

MetriFlame database

* metrics definitions* metrics data* metrics results* metrics history.

Data

colle

ction

and

conv

ersion

Data

conv

ersion

SCM tool (LIFESPAN,Clear Case)

Specific databaseapplications

* hours reporting* defects reporting

Manually collectedmetrics

* excel forms* text fi les

7 %13 %

20 %

27 %

33 %

0 100

1

3

5

Fatal

Major

Minor

Results analysis

Page 26: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 26V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

Measurement processMeasurement process

MetriFlame• Data Importing

•Metrics definition

ClearCase•SCM Data

Convert the SCM

measurement datawith converter

MetriFlame• Result

presentation

Calculate the metrics with MetriFlame

(based on the measurement

data)

Metrics analysis during the

feedback sessions (based on the

analysis material)

Graphs/analysis material

( based on the calculated

metrics)

Data collection was planned to be done by using a specialised conversion tool and Clear Case scriptsGeneric format for data import both the scripts and the converter could be reused in the future improvement cycles

Page 27: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 27V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

Example of a MetriFlame Example of a MetriFlame graphgraph

Page 28: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 28V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

Conclusions 1/3Conclusions 1/3

SCM process improvement within a distributed environment is an important development area– 1. SCM Process improvement– 2. Communication– 3. Quality assurance and audits– 4. Release/version building

Systematic SCM process improvement methods are needed

ANALYSIS OFTHE

CURRENT SCMPRACTICES

DEFINITION OFGOALS

FORNEW SCM

PRACTICES

PLAN FORSCM IM-PROVEMENT

STEPS

1.

2.3.

4.

SOFTWAREDEVELOPMENT AND

MAINTENANCE

PILOTOPERATION

ANDCOMMISSIONING

Page 29: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 29V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

Conclusions 2/3Conclusions 2/3

Process improvement should be based on the goals of the organisation and projects (commitment, resources, real-world problems)

Experiences from use cases are encouraging: – Increase understanding of specific process area (SCM)– tool for communication– test and education material– requirements analysis via use cases

Feedback sessions and commenting rounds are essential

Page 30: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 30V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

Conclusions 3/3Conclusions 3/3

Tool support for metrics collection is important Measurements increase visibility of the process and thus make

process improvement more achievable and justified. The awareness of SCM and its influence on process and product

quality increases inside the organisation due to the improvement activities.

Page 31: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 31V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

Questions?Questions?

Page 32: Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Page 32V T T E L E C T R O N I C STua Rahikkala

October 23, 1998

SCM ConceptsSCM Concepts

Used in this presentation…

Software Configuration Management (SCM) is a discipline for establishing and maintaining the integrity of the products of the software projects throughout the project’s lifecycle

The basic concept of SCM is a Software Configuration Item (SCI), which can be a unit or a collection of lower-level items (source code, documentation, test data, executable code, specifications, etc.)

During software development and maintenance SCIs undergo changes i.e. series of versions.

A release is a particular version of a SCI that is made available for a specific purpose such as a customer delivery.