1 / 32

Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

Software Configuration Management Process Improvement within a Distributed Environment BLANKO ‘98 October 22-23, 1998. Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi. Background VISCOUNT. EU/Esprit project 25754 1.9.1997-31.12.1999

kamil
Download Presentation

Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Software Configuration Management Process Improvement within a Distributed Environment BLANKO ‘98October 22-23, 1998 Tua Rahikkala VTT Electronics tua.rahikkala@vtt.fi

  2. BackgroundVISCOUNT • 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

  3. Background SCM 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)

  4. SCM Questionnaire Industrial sectors

  5. SCM Questionnaire Number of personnel

  6. SCM Questionnaire SW distribution • Distribution including company offices, daughter companies and sub-contractors:

  7. SCM Questionnaire Software task distribution If software development has been distributed, what sub-tasks are most distributed? Prestudy/Idea Phase Requirements specification Technical design Implementation Module/unit testing Integration testing System testing Documentation Project Management Quality Assurance

  8. SCM Questionnaire Use of SCM tools

  9. SCM Questionnaire Main development areas

  10. SCM Questionnaire Main development areas/SCM 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

  11. Improvement 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

  12. SCM-Pr2imer

  13. SCM-Pr2imer Phase 1:Analysis of the current SCM practices

  14. SCM Process

  15. SCM Current State Analysis 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

  16. Main Results from Current State Analysis/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.

  17. SCM-Pr2imer Phase 2:Definition of Goals for New SCM Practices

  18. SCM-Pr2imer: Phase 2Tasks • 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)

  19. Goal-oriented SCM process improvement

  20. Examples of SCM goals • Goal 1: Analyse theversion building processfor the purpose ofimproving itwith respect toeffectivenessfrom theproject teampoint of viewin the context ofdistributed environment • Goal 2: Analyse thechange control processfor the purpose ofimproving itwith respect totraceability of changesfrom theproject teampoint of view in the context ofdistributed environment • Goal 3: Analyse theSCM training and support materialfor the purpose ofimproving and developing itwith respect tolearningfrom theproject teampoint of view in the context ofdistributed environment

  21. Example of GQM template

  22. Use Case Description

  23. GQM-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!

  24. Next stepsSCM-Pr2imer: 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

  25. Tool Support for Metrics Collection

  26. Measurement process • Data collection was planned to be done by using a specialised conversion tool and Clear Case scripts • Generic format for data import both the scripts and the converter could be reused in the future improvement cycles Convert the SCM measurement data with converter Calculate the metrics with MetriFlame (based on the measurement data) MetriFlame • Result presentation Graphs/ analysis material ( based on the calculated metrics) Metrics analysis during the feedback sessions (based on the analysis material) ClearCase • SCM Data MetriFlame • Data Importing • Metrics definition

  27. Example of a MetriFlame graph

  28. Conclusions 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

  29. Conclusions 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

  30. Conclusions 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.

  31. Questions?

  32. SCM 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.

More Related