How to introduce maturity in software change management $

Size: px
Start display at page:

Download "How to introduce maturity in software change management $"

Transcription

1 How to introduce maturity in software change management $ Lars Bendix Department of Computer Science Fredrik Bajers Vej 7E Aalborg University Denmark bendix@cs.auc.dk Abstract: In this paper we want to suggest a structure for analysing and measuring the Change Management capability of software development organisations. Although Change Management is one of the fundamental tasks of software development, it is still exercised with little discipline and rigor by both industry and academia. With the aid of the proposed model is will be possible, in a structured way, to analyse an organisation to see how well it performs on each of the specific functions of Change Management. The model can also be used to design tools or plan methods for Change Management or even to teach its concepts in a gradual and structured way. We discuss general principles for structuring the model into key areas and features and apply them to Change Management functions. Furthermore, we discuss the general guidelines for dividing the practice of the features into levels of increasing sophistication. We then go on to apply these principles and guidelines and in turn describe each of the key areas: Configuration Control, Build Management, Version Control, Group Support, Accounting Management, Management Support. Finally, we discuss alternative ways of organising our model and indicate areas where future work has to be done to further develop and perfect the model. $ This work was supported, in part, by the Danish Research Council, grants no and

2 1 Introduction We want to suggest a structure for measuring the maturity of the Change Management (CM) capability of software development organisations. The purpose of this structure is to work as a maturity framework, which will aid software developers and students in improving their abilities to handle software configuration and versioning problems. Versioning of components and composition of systems is a major problem to overcome in order to obtain quality software. Quality of the product and consistency in the process is the main focus in today s companies as reflected in the increasing interest in standards like the ISO9000. Such standards do mention software configuration management as an important component, but are rather vague as to the contents and practice of it as they give no details. This leaves both educators and companies without much help with respect to improving this specific capability. In this paper, we develop a model that will detail the software change management capability. The model is intended to be useful both in education and for practical application in companies. Software Change Management, or Configuration Management as it is often called, is one of the most important tasks which has to be mastered in software development projects. In his seminal book on the Mythical Man-Month [Brooks75], Frederick Brooks calls it an indispensable technology. In a later paper [Brooks87], which has also become a classic, it is stated that changeability is one of the essential things for which there is no silver bullet. Some of its activities used to be taken care of by a person called the project librarian. This person was central in the effort to co-ordinate and synchronise different parts of big projects and to keep them consistent. Recent models dealing with measuring the maturity of software development organisations consider Configuration Management to be a central aspect. In the Capability Maturity Model [PC*93], it is found at level 2, and mastering it is one of the prerequisites for an organisation to progress from the Initial level 1 where anarchy and disaster often reign. In the ISO9000 system, it is one of the activities that has to be implemented and documented if an organisation is to obtain certification. There exist many books on software configuration management [BHS80], [Buckley93] to mention but a few. There is also an annual international conference entirely dedicated to the subject, besides several national conferences and interest groups. So, why is there a need for a maturity model? Because people, mainly from industry, are still complaining that there is no or little help to find for them [Adams95]. Neither for finding out how to evaluate tools, nor for finding out exactly what is needed in your organisation. 2

3 Furthermore, it is a problem that most tools are not able to evolve and grow with the organisation. Therefore, we feel that there is the need for a framework, which can be used as help for analysing organisations, evaluating tools before buying one, and for constructing tools, which are more flexible and versatile. It is also our personal experience that within academia a similar need for such a framework exists. It would be very helpful for structuring the teaching of the fundamental concepts. It could be used to focus academic discussions and provide a framework for comparisons between research. Finally, it could be used to guide future research into Change Management besides being an object of research itself. The ultimate goal of this work is to promote a better understanding of the process of Change Management. Through a better understanding, we should see a better practice of the process and it should increase productivity, improve quality, facilitate reuse, and, most importantly, enhance the maintainability of products. The latter is a major gain as more than 2/3 of the total lifetime costs of a product is spent during the maintenance phase [Sommerville96]. At least in part, lack of or wrong application of Change Management, causes some of the bugs found in software. What this model can be used for is to select a set of key areas and features that are important to your specific context. And then analyse and evaluate an organisation s capability with respect to this set. 2 The context of change management Software is usually developed following a specific method that has some defined phases, which it goes through. Most methods have phases for analysis, design, implementation and test; after which the product is released and enters the final phase of maintenance. The maintenance phase can be thought of as mini cycles of the main development cycle where a new requirement (or a bug) requires a little additional analysis, a small change to the design, modifications to the implementation and updated test cases. All the products of the main cycle (specifications, designs, code, test-cases) are affected by changes in the maintenance phase and it is, therefore, important both that products are made with maintainability in mind and that Change Management is able to follow changes through all the phases. It is important that Change Management is planned before development starts and not just put on as an afterthought in the maintenance phase. This allows the Change Management method the possibility to influence the development discipline in a positive way. More importantly, it also permits us to gather information about the project right from the start. One of the major benefits of Change Management is that it serves as a central collection of all information. 3

4 This information can then be queried to obtain development histories or it can be extracted to be used as input data for various metrics. This aspect of Change Management as an information repository is very central. Programmers spend more time interacting with other people than working alone [Sommerville96], and most of this interaction is exchange of information. The use of good and powerful Change Management methods and tools can greatly reduce the need for this interaction, as the information is readily available. One of the greatest dangers in software development is that this information is not documented but remains in the heads of the programmers. There are many general texts on software development, which places Change Management as one of the activities in the development and covers it in varying degrees. However, even if some books give a more in-depth treatment of Change Management than the others do, they do not cover all the possible ways of implementing Change Management and can only serve as one example of how it can be practised. Standards and models for how to perform and manage the development process in general, like ISO9000 and the Capability Maturity Model, do specifically mention Change Management (or configuration management) as an important and basic component. They mention some concepts and principles that have to be in place in an organisation for it to be certified or to advance to the next level (but no advice on how to get there). They are, however, not very detailed and are not specific on what are the possible best practices. The most serious shortcoming in both textbooks and standards is that their approach is not levelled. Change Management is described as something that is performed in just one standard way and alternatives are seldom touched upon. It is our belief that this is not true. Both a small project-group at university developing an experimental prototype and a telecommunications project with more than thousand programmers and several MLOC of production code can benefit from exercising Change Management. It should, though, be obvious that the university project would get nowhere if it implemented the same Change Management procedures as the telecommunications project should be using. Moreover, the telecommunications project would soon end up in chaos if it used the Change Management methods that would suit the university project. Too little and too much Change Management is bad for your project s health. The objective of this work is to provide a model that is levelled and can be used to make sure that a project has the right amount and sort of Change Management. Neither more, nor less. We propose to seek this goal of improving the quality of the Change Management capability through a two- 4

5 sided strategy. First empirical data is gathered, then the model is extended to include also the industrial dimension based on this data and it is put to a careful test in practice and adjusted according to the experiences gained. In the following, we will first describe the general structure of the model and the principles that has led to this structure. Then we will go into details with the contents with the model at its present state. The current model is based on our previous experiences in an academic setting [ABC90] and [Bendix93], enhanced with information gained from interviews with a dozen companies in order to enforce the industrial aspects of the model [Bendix98]. 3 Model structure The inspiration for our model has been work on maturity models for software development in general [Humphrey87]. This work does not carry over directly as is deals with the whole software development process and we are only dealing with one capability in this process. However, the general guidelines for establishing the model can be used, as we too have to distinguish key areas and levelled features within these key areas. In working with the general concepts and methods for change management we have distinguished six different categories in which we have been able to assign these concepts. Each category is treating an orthogonal task that has to be carried out in exercising the change management capability. The traditional sub-division of tasks fits into this new categorisation which is actually larger than the previous ones, as it covers aspects that are not covered in those. The six categories are: version control, build management, configuration control, accounting management, group support and management support. The first four categories cover most of what is traditionally considered to be part of software configuration management. The group support category focuses on the co-ordination and collaboration aspects of groups when they have to work towards a common goal. This aspect is traditionally covered at a very formal level, but in recent years much new research has been carried out in collaborative work and the results from this has been included in this category. Finally, the management support category has been added as a result of interviews with companies. Through asking practitioners and managers how change management is carried out we realised that there is often a big discrepancy between reality and they way it is thought to be carried out. In order to structure each category into increasing levels of maturity we have used a series of mechanisms that have served as guidelines when features have to be placed at a specific level. They are covering aspects like: the number of people going from individual aspects to organisational matters, the methodology used in the development ranging from informal to formal 5

6 models, the size of the system supported measured in lines of code or equivalent ways, the life-time of the system supported ranging from no support prototypes to guarantees of support for an almost unlimited number of years, the complexity of the system family dealing with the number of more or less similar variants of the same system, the computer support the degree to which work is manual or has been automated. 4 Model contents We now move from the overall structure of our model to the details of the contents. Each of the key areas will be characterised, giving examples of increasing levels of maturity using the levelling mechanisms described above. Version control This key areas deals with support for the fact that more versions of artefacts exist. The change management system should be able to handle gradually more sophisticated versioning structures such that it can progress with the user s needs. It has to give overview of these structures and to provide for easy identification and retrieval of past versions. This includes aspects such at capturing various kinds of information as attributes and the use of such attributes for selection of a specific version. Build management This key area deals with support for putting artefacts together to form systems. This covers the ability to describe the structure of the system from its constituent parts. Furthermore, varying degrees of automation in the creation of the system can be useful in different occasions. Finally, there is also the need to consider ways of optimising the construction process in terms of elapsed time. Configuration Control This key areas treats the support for handling systems as artefacts and the fact that systems are not composed from a homogeneous set of artefact. This covers also the concept of advanced system models that can describe generic systems, which can then be instantiated using selection rules. However, the most important aspect of configuration control at higher maturity levels is the aspect of traceability. To be able to relate different types of artefacts to each other and the capacity to group changes in logical units. Group support This key area is dealing with the support for the collaboration between people in a group effort. Locking, merging and other mechanisms for synchronising 6

7 the work of more people are part of this key area. Likewise are aspects that support the awareness of other people s efforts and the co-ordination and assignment of tasks. Finally, a mature system should be able to handle problems that derive from the fact that groups may work in a physically distributed fashion at remote places. Accounting management This key area deals with collecting and using information to be used for various purposes. A lot of information is or could be present in all change management systems. Organisations need to use information to guide and control development and for administrative purposes. Metrics have to be produced in order to be able to estimate future projects. Time information is needed for billing purposes and in order to be able to check whether the project meets its milestones. The degree to which it is possible to represent the needed information and to state it as an integrated part of the change management system is an important aspect. Management support This key area treats the more political aspects of introducing and promoting change management into an organisation. This covers the actual commitment of top management and the involvement of developers in the decision processes. Furthermore, the allocation of proper resources for introducing and carrying out the decided change management policies is an important aspect. Who is the driving force in establishing and enforcing company policies and in finding and introducing guidelines and tools. 5 Discussion The model that we have just described is organised in two dimensions. One dimension that covers the six categories and another that covers the different levels of maturity. However, in working with the model in practice we have discovered that this simple way of organisation may not reveal the whole truth about the interrelation between the different key areas. In the simple model, they appear to be distinct and completely orthogonal. This does not reflect the reality we have encountered in companies and which has also emerged from our teaching. It seems that the mastering of some key areas are pre-requisites for being able to master other key areas. For instance it makes little sense to apply advanced mechanisms for configuration control if there is no notion of version control and build management. 7

8 Management Support Version control Configuration control Group support Build management Accounting management This seems to indicate that the model should actually be organised in three dimensions, as shown in the figure above. The first two dimensions now describe six key areas and their interrelations, and the third dimension is then the levels of maturity for each key area. This gives rise to a more complex model and a model where key areas are no longer completely independent. It is, however, also a model that is richer and closer to reality. It is not obvious from our experiences so far which model is the better one. It might even be that both views of the model are able to co-exist. The simple model is definitely easier to apply for analysing organisations, while the more complex model seems more adequate for guiding research and structuring teaching. More research into this aspect is needed and we intend to investigate this too. Related work on improving the maturity of the change management capability does exist. It is, however, more focused on teaching the basic concepts and problems to be solved [Dart98] or giving advice and best practices as guidelines to follow [CW98]. The underlying model is never made clear and this makes it difficult to structure the concepts and guidelines, and to apply them in a consistent way to a given organisation. Furthermore, no effort is made to grade the concepts and guidelines such that they can be introduced and taught in a proper and natural way. Finally, it is difficult to use them to establish the right level of capabilities that an organisation needs at any given moment. 6 Conclusions We have presented a levelled framework for establishing the maturity of the change management capability of software development organisations. The model has proved itself for teaching and guiding research in an academic setting and has obtained industrial aspects through interviews with a dozen companies. We still need some experiences and guidelines in how to progress from one level to the next. In the maturity models that have inspired this model, it is 8

9 estimated that it takes two to three years at one level before the organisation is ready to proceed to the next level. In a university setting, where students are taught the concepts and principles of change management we have been able to advance much faster than that. This might, however, be caused by the small size and informal organisation of the groups. More lengthy studies are needed to see if this carries over to an industrial setting and larger and more formal organisations. References: [Adams95]: Chris Adams: Why Can t I Buy an SCM Tool?, in Proceedings of Selected Papers from the SCM-4 and SCM-5 Workshops, Lecture Notes in Computer Science, LNCS 1005, Springer Verlag, [ABC90]: Vincenzo Ambriola, Lars Bendix, Paolo Ciancarini: The Evolution of Configuration Management and Version Control, Software Engineering Journal, Volume 5, Number 6, [Bendix93]: Lars Bendix: A Taxonomy for Software Development Environments, in Proceedings of the Second Electrotechnical and Computer Science Conference, Portoroz, Slovenia, September 27-29, [Bendix98]: Lars Bendix: A Maturity Model for Software Change Management, Internal Report, Department of Computer Science, Aalborg University, Denmark, forthcoming. [BHS80]: Edward H. Bersoff, Vilas D. Henderson, Stanley G. Siegel: Software Configuration Management: An Investment in Product Integrity, Prentice-Hall, Inc., [Brooks75]: Frederick P. Brooks, Jr.: The Mythical Man-Month: Essays on Software Engineering, Addison-Wesley Publishing Company, [Brooks87]: Frederick P. Brooks, Jr.: No Silver Bullet - Essence and Accidents of Software Engineering, IEEE Computer, April [Buckley93]: Fletcher J. Buckley: Implementing Configuration Management: Hardware, Software, and Firmware, IEEE Computer Society Press, [Dart98]: Susan Dart: The Agony and Ecstasy of Configuration Management, tutorial held at the Eighth Inter-national Symposium on Systems Configuration Management, Brussels, Belgium, July 20-21, [WS98]: Laura Wingerd, Christopher Seiwald: High-Level Best Practices in Software Configuration Management, in Proceedings of the Eighth International Symposium on Systems Configuration Management, Brussels, Belgium, July 20-21, [Humphrey87]: W. S. Humphrey: Characterizing the Software Process: A Maturity Framework, Technical Report, CMU/SEI-87-TR-11, Software Engineering Institute, Pittsburgh, Pennsylvania,

10 [PC*93]: Mark C. Paulk, Bill Curtis, Mary Beth Chrissis, Charles V. Weber: Capability Maturity Model, Version 1.1, IEEE Software, July [Sommerville96]: Ian Sommerville: Software Engineering (5th edition), Addison-Wesley Publishing Company,

$'LVFLSOLQHG$SSURDFKWR&KDQJH 0DQDJHPHQW

$'LVFLSOLQHG$SSURDFKWR&KDQJH 0DQDJHPHQW $'LVFLSOLQHG$SSURDFKWR&KDQJH 0DQDJHPHQW /DUV%HQGL[ Department of Computer Science Aalborg University Fredrik Bajers Vej 7E DK-9220 Aalborg Ø. +45 9635 8080 bendix@cs.auc.dk $EVWUDFW,Q WKLV SDSHU ZH SUHVHQW

More information

Widening the Configuration Management Perspective

Widening the Configuration Management Perspective Widening the Configuration Management Perspective Lars Bendix (bendix@cs.lth.se) Department of Computer Science, Lund Institute of Technology, P. O. Box 118, S-221 00 Lund, Sweden Abstract: A metainformatics

More information

C. Wohlin, "Is Prior Knowledge of a Programming Language Important for Software Quality?", Proceedings 1st International Symposium on Empirical

C. Wohlin, Is Prior Knowledge of a Programming Language Important for Software Quality?, Proceedings 1st International Symposium on Empirical C. Wohlin, "Is Prior Knowledge of a Programming Language Important for Software Quality?", Proceedings 1st International Symposium on Empirical Software Engineering, pp. 27-36, Nara, Japan, October 2002.

More information

Lecture 10 CS5702. Requirements Engineering. Managing change optimising Value - A bit more about Agile RE. Requirements Engineering.

Lecture 10 CS5702. Requirements Engineering. Managing change optimising Value - A bit more about Agile RE. Requirements Engineering. Requirements Engineering Overview Lecture 10 CS5702 Requirements Engineering Semester 1 2009/10 Professor Kevin Ryan 1. Introduction (Week 1) 2. Elicitation of requirements (2 & 3) 3. Standards, Templates

More information

Configuration Management Models in Commercial Environments

Configuration Management Models in Commercial Environments Technical Report CMU/SEI-91-TR-7 ESD-9-TR-7 Configuration Management Models in Commercial Environments Peter H. Feiler March 1991 Technical Report CMU/SEI-91-TR-7 ESD-91-TR-7 March 1991 Configuration Management

More information

19 Configuration Management

19 Configuration Management TIMe TIMe Electronic Textbook 19 Configuration Management Introduction.......................................................2 What...................................................................2 Why

More information

Configuration Management in Software Development Life Cycle

Configuration Management in Software Development Life Cycle 13 Configuration Management in Software Development Life Cycle Tejinder Kaur Sanjay Bhatnagar Deepali StudentComputer Application Associate Prof. Computer Assistant Prof. Computer Department, GZS PTU Applications

More information

CHAPTER 7 Software Configuration Management

CHAPTER 7 Software Configuration Management CHAPTER 7 Software Configuration Management ACRONYMS CCB CM FCA MTBF PCA SCCB SCI SCM SCMP SCR SCSA SEI/CMMI SQA SRS USNRC INTRODUCTION Configuration Control Board Configuration Management Functional Configuration

More information

What Are Software Developers Facing?

What Are Software Developers Facing? Configuration Management Tuotteenhallinta ohjelmistoprojektissa 1. Objectives 2. Problems & Motivation 3. CM Concept 4. Making CM system to work 5. Present CM Standards and Terms 6. CM Benefits and Summary

More information

ISO 9000-3 OR CMM: WHICH IS MORE EXTENSIVE FOR THE QUALITY SYSTEMS IN A SOFTWARE INDUSTRY?

ISO 9000-3 OR CMM: WHICH IS MORE EXTENSIVE FOR THE QUALITY SYSTEMS IN A SOFTWARE INDUSTRY? International Journal of Advanced Research in Engineering and Applied Sciences ISSN: 2278-6252 ISO 9000-3 OR CMM: WHICH IS MORE EXTENSIVE FOR THE QUALITY SYSTEMS Monika Yadav* Kaushik Kumar** IN A SOFTWARE

More information

Family Evaluation Framework overview & introduction

Family Evaluation Framework overview & introduction A Family Evaluation Framework overview & introduction P B Frank van der Linden O Partner: Philips Medical Systems Veenpluis 4-6 5684 PC Best, the Netherlands Date: 29 August, 2005 Number: PH-0503-01 Version:

More information

Toward Quantitative Process Management With Exploratory Data Analysis

Toward Quantitative Process Management With Exploratory Data Analysis Toward Quantitative Process Management With Exploratory Data Analysis Mark C. Paulk Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 Abstract The Capability Maturity Model

More information

Universiti Teknologi MARA. The Implementation of Software Configuration Management in MSC Organizations

Universiti Teknologi MARA. The Implementation of Software Configuration Management in MSC Organizations Universiti Teknologi MARA The Implementation of Software Configuration Management in MSC Organizations Siti Mastura Bt. Sheikh Abu Bakar Thesis submitted in fulfillment of the requirements for Bachelor

More information

CHAPTER 7 SOFTWARE CONFIGURATION MANAGEMENT

CHAPTER 7 SOFTWARE CONFIGURATION MANAGEMENT CHAPTER 7 SOFTWARE CONFIGURATION MANAGEMENT John A. Scott and David Nisse Lawrence Livermore National Laboratory 7000 East Avenue P.O. Box 808, L-632 Livermore, CA 94550, USA (925) 423-7655 scott7@llnl.gov

More information

SOE. managing change in system development projects: configuration management

SOE. managing change in system development projects: configuration management SOE managing change in system development projects: configuration management 2 3 understanding the problem of change change is one of the most fundamental characteristics in any software development process

More information

SOFTWARE PROCESS IMPROVEMENT AT SYSGENIC

SOFTWARE PROCESS IMPROVEMENT AT SYSGENIC STUDIA UNIV. BABEŞ BOLYAI, INFORMATICA, Volume LIII, Number 1, 2008 SOFTWARE PROCESS IMPROVEMENT AT SYSGENIC DUMITRU RĂDOIU AND MILITON FRENŢIU Abstract. The Capability Maturity Model (CMM) was defined

More information

CS4507 Advanced Software Engineering

CS4507 Advanced Software Engineering CS4507 Advanced Software Engineering Lecturer: Adrian O Riordan Office: Room G.71 WGB Email: a.oriordan cs.ucc.ie Course Webpage: http://www.cs.ucc.ie/~adrian/cs4507.html CS4507 Overview 5 Credit course

More information

Certified Professional in Configuration Management Glossary of Terms

Certified Professional in Configuration Management Glossary of Terms Certified Professional in Configuration Management Glossary of terms used in Configuration Management Issue 2007.07 Association of the International Certified Configuration Manager e.v. Copyright 2007,

More information

A CASE STUDY ON SOFTWARE PROJECT MANAGEMENT IN INDUSTRY EXPERIENCES AND CONCLUSIONS

A CASE STUDY ON SOFTWARE PROJECT MANAGEMENT IN INDUSTRY EXPERIENCES AND CONCLUSIONS A CASE STUDY ON SOFTWARE PROJECT MANAGEMENT IN INDUSTRY EXPERIENCES AND CONCLUSIONS P. Mandl-Striegnitz 1, H. Lichter 2 1 Software Engineering Group, University of Stuttgart 2 Department of Computer Science,

More information

C. Wohlin and B. Regnell, "Achieving Industrial Relevance in Software Engineering Education", Proceedings Conference on Software Engineering

C. Wohlin and B. Regnell, Achieving Industrial Relevance in Software Engineering Education, Proceedings Conference on Software Engineering C. Wohlin and B. Regnell, "Achieving Industrial Relevance in Software Engineering Education", Proceedings Conference on Software Engineering Education & Training, pp. 16-25, New Orleans, Lousiana, USA,

More information

RAMALA: A KNOWLEDGE BASE FOR SOFTWARE PROCESS IMPROVEMENT

RAMALA: A KNOWLEDGE BASE FOR SOFTWARE PROCESS IMPROVEMENT RAMALA: A KNOWLEDGE BASE FOR SOFTWARE PROCESS IMPROVEMENT Y. Rimawi Computer Science Department, Carlos III University of Madrid, Avda. de la Universidad 30, 28911 Leganes, Madrid, Spain A. Amescua Computer

More information

A Process View on Architecture-Based Software Development

A Process View on Architecture-Based Software Development A Process View on Architecture-Based Software Development Lothar Baum, Martin Becker, Lars Geyer, Georg Molter System Software Research Group University of Kaiserslautern D-67653 Kaiserslautern, Germany

More information

AN OVERVIEW OF INDUSTRIAL SOFTWARE DOCUMENTATION PRACTICES

AN OVERVIEW OF INDUSTRIAL SOFTWARE DOCUMENTATION PRACTICES AN OVERVIEW OF INDUSTRIAL SOFTWARE DOCUMENTATION PRACTICES Marcello Visconti 1 Departamento de Informática Universidad Técnica Federico Santa María Valparaíso, CHILE visconti@inf.utfsm.cl Curtis R. Cook

More information

Unit 8: Software Process Improvement

Unit 8: Software Process Improvement Unit 8: Software Process Improvement Objectives Ð To provide a framework for software process assessment and improvement. Background A framework to help the US DoD pick software vendors more cleverly and

More information

The Role of Information Technology Studies in Software Product Quality Improvement

The Role of Information Technology Studies in Software Product Quality Improvement The Role of Information Technology Studies in Software Product Quality Improvement RUDITE CEVERE, Dr.sc.comp., Professor Faculty of Information Technologies SANDRA SPROGE, Dr.sc.ing., Head of Department

More information

Configuration management. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 29 Slide 1

Configuration management. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 29 Slide 1 Configuration management Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 29 Slide 1 Objectives To explain the importance of software configuration management (CM) To describe key CM activities

More information

9 Keys to Effectively Managing Software Projects

9 Keys to Effectively Managing Software Projects 9 Keys to Effectively Managing Software Projects Introduction Can managing software development be as simple as reading a brief to-do/not-to-do list? No. All evidence indicates that software development

More information

A Return on Investment Model for Software Configuration Management

A Return on Investment Model for Software Configuration Management Master s Thesis A Return on Investment Model for Software Configuration Management Lorenzo Borraci Erasmus Department of Computer Science Lund Institute of Technology Lund University, 2005 ISSN 1650-2884

More information

The Software Engineering Institute developed Capability Maturity Model for software (CMM)

The Software Engineering Institute developed Capability Maturity Model for software (CMM) 1 1. Introduction The Software Engineering Institute developed Capability Maturity Model for software (CMM) and International Standards Organization developed ISO 9000 series, both have a common concern

More information

A Configuration Management Model for Software Product Line

A Configuration Management Model for Software Product Line A Configuration Management Model for Software Product Line Liguo Yu 1 and Srini Ramaswamy 2 1 Computer Science and Informatics Indiana University South Bend South Bend, IN 46634, USA ligyu@iusb.edu 2 Computer

More information

Maturity, motivation and effective learning in projects - benefits from using industrial clients

Maturity, motivation and effective learning in projects - benefits from using industrial clients Maturity, motivation and effective learning in projects - benefits from using industrial clients C Johansson Ericsson Software Technology AB/University of Karlskrona/Ronneby P Molin University of Karlskrona/Ronneby,

More information

A Study of Configuration Management in Open Source Software Projects

A Study of Configuration Management in Open Source Software Projects A Study of Configuration Management in Open Source Software Projects Abstract Ulf Asklund, Lars Bendix [asklund bendix]@cs.lth.se Lund Institute of Technology, Box 118, SE-221 00 Lund Sweden Projects where

More information

Making Process Improvement Work

Making Process Improvement Work Making Process Improvement Work A Concise Action Guide for Software Managers and Practitioners Neil Potter Mary Sakry The Process Group help@processgroup.com www.processgroup.com Version 2.3 1 Session

More information

Software Configuration Management. Visiting Lecture Tero Kojo

Software Configuration Management. Visiting Lecture Tero Kojo Software Configuration Management Visiting Lecture Tero 1 About the lecturer Lectured Software Configuration Management for three years at TKK T-76.614 SCM Also a year as the course assistant Practical

More information

the state of the practice Variations in Software Development Practices

the state of the practice Variations in Software Development Practices focus the state of the practice invited article Variations in Software Development Practices Capers Jones, Software Productivity Research My colleagues and I at Software Productivity Research gathered

More information

IT3203 Fundamentals of Software Engineering (Compulsory) BIT 2 nd YEAR SEMESTER 3

IT3203 Fundamentals of Software Engineering (Compulsory) BIT 2 nd YEAR SEMESTER 3 Fundamentals of Software Engineering (Compulsory) BIT 2 nd YEAR SEMESTER 3 INTRODUCTION This course is designed to provide the students with the basic competencies required to identify requirements, document

More information

EVALUATING SOFTWARE ENGINEERING PRACTICES IN PALESTINE

EVALUATING SOFTWARE ENGINEERING PRACTICES IN PALESTINE International Journal of Soft Computing, Mathematics and Control (IJSCMC),Vol., No.1, February 1 EVALUATING SOFTWARE ENGINEERING PRACTICES IN PALESTINE Mohammed Alnajjar 1, Prof. Samy S. Abu Naser 1 Faculty

More information

Configuration Management for Open Source Software

Configuration Management for Open Source Software AALBORG UNIVERSITY Department of Computer Science Technical Report Configuration Management for Open Source Software by Ulf Asklund & Lars Bendix R-01-5005 January 2001 DEPARTMENT OF COMPUTER SCIENCE Fredrik

More information

Design with Reuse. Building software from reusable components. Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 14 Slide 1

Design with Reuse. Building software from reusable components. Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 14 Slide 1 Design with Reuse Building software from reusable components. Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 14 Slide 1 Objectives To explain the benefits of software reuse and some reuse

More information

An Overview of Challenges of Component Based Software Engineering

An Overview of Challenges of Component Based Software Engineering An Overview of Challenges of Component Based Software Engineering Shabeeh Ahmad Siddiqui Sr Lecturer, Al-Ahgaff University, Yemen Abstract Nowadays there is trend of using components in development of

More information

How to Write a Software Process Procedures and Policy Manual for YOUR COMPANY

How to Write a Software Process Procedures and Policy Manual for YOUR COMPANY How to Write a Software Process for YOUR COMPANY 1. Introduction MicroTools is proposing to assist YOUR COMPANY in improving the existing software process. The purpose of this project is to both improve

More information

Peter Mileff PhD SOFTWARE ENGINEERING. The Basics of Software Engineering. University of Miskolc Department of Information Technology

Peter Mileff PhD SOFTWARE ENGINEERING. The Basics of Software Engineering. University of Miskolc Department of Information Technology Peter Mileff PhD SOFTWARE ENGINEERING The Basics of Software Engineering University of Miskolc Department of Information Technology Introduction Péter Mileff - Department of Information Engineering Room

More information

WHITE PAPER IMPROVING FIREWALL CHANGES OVERCOME PROCESS AND COMPLEXITY CHALLENGES BY FOCUSING ON THE FIREWALL.

WHITE PAPER IMPROVING FIREWALL CHANGES OVERCOME PROCESS AND COMPLEXITY CHALLENGES BY FOCUSING ON THE FIREWALL. WHITE PAPER IMPROVING FIREWALL CHANGES OVERCOME PROCESS AND COMPLEXITY CHALLENGES BY FOCUSING ON THE FIREWALL. Table of Contents Executive Summary...3 Challenges of Firewall Changes...4 Process Limitations...4

More information

615, GSB, University of Alberta, famr,sundari,hoover,sorensong@cs.ualberta.ca. Abstract

615, GSB, University of Alberta, famr,sundari,hoover,sorensong@cs.ualberta.ca. Abstract Software Process Improvement Model for a Small Organization: An Experience Report Amr Kamel, Sundari Voruganti, H. James Hoover and Paul G. Sorenson Dept. of Computing Science, 615, GSB, University of

More information

How Rational Configuration and Change Management Products Support the Software Engineering Institute's Software Capability Maturity Model

How Rational Configuration and Change Management Products Support the Software Engineering Institute's Software Capability Maturity Model How Rational Configuration and Change Management Products Support the Software Engineering Institute's Software Capability Maturity Model by Bill Cottrell and John Viehweg Software Engineering Specialists

More information

Frédéric Tardieu, IBITEK Group, details the company s business intelligence tool and how it can be used to help decision-making from the plant up.

Frédéric Tardieu, IBITEK Group, details the company s business intelligence tool and how it can be used to help decision-making from the plant up. Frédéric Tardieu, IBITEK Group, details the company s business intelligence tool and how it can be used to help decision-making from the plant up. Introduction Information technologies have become an important

More information

Chapter 13 Configuration Management

Chapter 13 Configuration Management Object-Oriented Software Engineering Using UML, Patterns, and Java Chapter 13 Configuration Management Outline of the Lecture Purpose of Software Configuration Management (SCM)! Motivation: Why software

More information

Lecture 8 About Quality and Quality Management Systems

Lecture 8 About Quality and Quality Management Systems Lecture 8 About Quality and Quality Management Systems Kari Systä 10.03.2014 10.03.2014 TIE-21100/21106; K.Systä 1 Content of today s lecture Two weeks ago we discussed about testing and inspections, that

More information

Introduction to Software Engineering. 9. Project Management

Introduction to Software Engineering. 9. Project Management Introduction to Software Engineering 9. Project Management Roadmap > Risk management > Scoping and estimation > Planning and scheduling > Dealing with delays > Staffing, directing, teamwork 2 Literature

More information

Génie Logiciel et Gestion de Projets. Project Management

Génie Logiciel et Gestion de Projets. Project Management Génie Logiciel et Gestion de Projets Project Management 1 Roadmap Project Management: Why and what? Risk management Scoping and estimation, planning and scheduling Dealing with delays Staffing, directing,

More information

Software Engineering. Software Reuse. Based on Software Engineering, 7 th Edition by Ian Sommerville

Software Engineering. Software Reuse. Based on Software Engineering, 7 th Edition by Ian Sommerville Software Engineering Software Reuse Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To explain the benefits of software reuse and some reuse problems To discuss several different

More information

Lecture Slides for Managing and Leading Software Projects. Chapter 1: Introduction

Lecture Slides for Managing and Leading Software Projects. Chapter 1: Introduction Lecture Slides for Managing and Leading Software Projects Chapter 1: Introduction developed by Richard E. (Dick) Fairley, Ph.D. to accompany the text Managing and Leading Software Projects published by

More information

Introduction to Software Engineering. 8. Software Quality

Introduction to Software Engineering. 8. Software Quality Introduction to Software Engineering 8. Software Quality Roadmap > What is quality? > Quality Attributes > Quality Assurance: Planning and Reviewing > Quality System and Standards 2 Sources > Software

More information

Implementing Systematic Requirements Management in a Large Software Development Programme

Implementing Systematic Requirements Management in a Large Software Development Programme Implementing Systematic Requirements Management in a Large Software Development Programme Caroline Claus, Michael Freund, Michael Kaiser, Ralf Kneuper 1 Transport-, Informatik- und Logistik-Consulting

More information

Software Configuration Management, Software Product lines and Summary

Software Configuration Management, Software Product lines and Summary Software Configuration Management, Software Product lines and Summary Peter Dolog dolog [at] cs [dot] aau [dot] dk E2-201 Information Systems March 29, 2007 2 Configuration management New versions of software

More information

Business Process Management 100 Success Secrets

Business Process Management 100 Success Secrets Business Process Management 100 Success Secrets 100 most Asked Questions on BPM Process, Software, Tools and Solutions Gerard Blokdijk Business Process Management 100 Success Secrets Copyright 2008 by

More information

Chapter 13 Configuration Management

Chapter 13 Configuration Management Chapter 13 Configuration Management Using UML, Patterns, and Java Object-Oriented Software Engineering Outline of the Lecture Purpose of Software Configuration Management (SCM)! Motivation: Why software

More information

Génie Logiciel et Gestion de Projets. Project Management

Génie Logiciel et Gestion de Projets. Project Management Génie Logiciel et Gestion de Projets Project Management 1 Roadmap Project Management: Why and what? Risk management Scoping and estimation, planning and scheduling Dealing with delays Staffing, directing,

More information

Requirements Traceability. Mirka Palo

Requirements Traceability. Mirka Palo Requirements Traceability Mirka Palo Seminar Report Department of Computer Science University of Helsinki 30 th October 2003 Table of Contents 1 INTRODUCTION... 1 2 DEFINITION... 1 3 REASONS FOR REQUIREMENTS

More information

Risk Knowledge Capture in the Riskit Method

Risk Knowledge Capture in the Riskit Method Risk Knowledge Capture in the Riskit Method Jyrki Kontio and Victor R. Basili jyrki.kontio@ntc.nokia.com / basili@cs.umd.edu University of Maryland Department of Computer Science A.V.Williams Building

More information

Software Configuration Management Practices for extreme Programming Teams

Software Configuration Management Practices for extreme Programming Teams Software Configuration Management Practices for extreme Programming Teams Ulf Asklund, Lars Bendix, Torbjörn Ekman {ulf bendix torbjorn}@cs.lth.se Department of Computer Science Lund Institute of Technology

More information

SCM metrics a response.

SCM metrics a response. SCM metrics a response. Published in the CM Journal (http://www.cmcrossroads.com/cmjournal), May 2007. Lars Bendix, Lund Institute of Technology, Sweden. Dag Ehnbom and Ulf Steen, ABB, Malmö, Sweden. It

More information

Introduction to Software Configuration Management. CprE 556 Electrical and Computer Engineering Department Iowa State University

Introduction to Software Configuration Management. CprE 556 Electrical and Computer Engineering Department Iowa State University Introduction to Software Configuration Management CprE 556 Electrical and Computer Engineering Department Iowa State University 1 Example Initially, implementation is in Modula-2 on a Mac. A11 B11 A12

More information

What Is Software Configuration Management?

What Is Software Configuration Management? C H A P T E R 1 What Is Software Configuration Management? The title of this chapter asks such a simple question, the answer to which, one would think, ought to be known by anyone with any kind of record

More information

A Symptom Extraction and Classification Method for Self-Management

A Symptom Extraction and Classification Method for Self-Management LANOMS 2005-4th Latin American Network Operations and Management Symposium 201 A Symptom Extraction and Classification Method for Self-Management Marcelo Perazolo Autonomic Computing Architecture IBM Corporation

More information

Software Process Improvement in Small Organizations Using Gradual Evaluation Schema

Software Process Improvement in Small Organizations Using Gradual Evaluation Schema Software Process Improvement in Small Organizations Using Gradual Evaluation Schema Naji Habra Eustache Niyitugabira, Anne-Catherine Lamblin and Alain Renault Institut d Informatique Technology Transfer

More information

Session R1D Laboratory at Home: Actual Circuit Design and Testing Experiences in Massive Digital Design Courses

Session R1D Laboratory at Home: Actual Circuit Design and Testing Experiences in Massive Digital Design Courses Laboratory at Home: Actual Circuit Design and Testing Experiences in Massive Digital Design Courses Fiorella Haim, Sebastián Fernández, Javier Rodríguez, Lyl Ciganda, Pablo Rolando, Juan P. Oliver Instituto

More information

CHAPTER 01 THE SCOPE OF SOFTWARE ENGINEERING

CHAPTER 01 THE SCOPE OF SOFTWARE ENGINEERING Lecture Software Engineering CHAPTER 01 THE SCOPE OF SOFTWARE ENGINEERING Lecture Software Engineering Topics Introduction Historical Aspects Economic Aspects Requirements, Analysis, and Design Aspects

More information

Configuration Management for Reusable Software

Configuration Management for Reusable Software Configuration Management for Reusable Software William B. Frakes Computer Science Department Virginia Tech wfrakes@vt.edu Abstract This paper discusses the configuration management of reusable software,

More information

A Framework for Software Product Line Engineering

A Framework for Software Product Line Engineering Günter Böckle Klaus Pohl Frank van der Linden 2 A Framework for Software Product Line Engineering In this chapter you will learn: o The principles of software product line subsumed by our software product

More information

CHALLENGES AND WEAKNESSES OF AGILE METHOD IN ENTERPRISE ARCHITECTURE

CHALLENGES AND WEAKNESSES OF AGILE METHOD IN ENTERPRISE ARCHITECTURE CHALLENGES AND WEAKNESSES OF AGILE METHOD IN ENTERPRISE ARCHITECTURE Zahra Askarinejad Amiri 1 1 Department of Computer Engineering, Staffordshire University ABSTRACT zahra.askarinejad@gmail.com As Information

More information

Configuration Management

Configuration Management 83 Chapter 6 Configuration Management Published as: Configuration Management in Component Based Product Populations, Rob van Ommering, 10th International Workshop on Software Configuration Management,

More information

Page 1. Outline of the Lecture. What is Software Configuration Management? Why Software Configuration Management?

Page 1. Outline of the Lecture. What is Software Configuration Management? Why Software Configuration Management? Books: Software Configuration Management 1. B. Bruegge and A. H. Dutoit, Object-Oriented Software Engineering: Using UML, Patterns, and Java (Chapter 13) Outline of the Lecture Purpose of Software Configuration

More information

True Cost of Developing Software

True Cost of Developing Software A CresSoft, Inc. White Paper True Cost of Developing Software CresSoft, Inc. 6025 S. Quebec Street, Suite 310 Englewood, CO 80111-4551 Ph: 303-488-2126 www.cressoft.com Executive Summary This document

More information

Software Configuration Management Issues with Industrial Opensourcing

Software Configuration Management Issues with Industrial Opensourcing Software Configuration Management Issues with Industrial Opensourcing Lars Bendix Department of Computer Science Lund University, Sweden bendix@cs.lth.se Tero Kojo Nokia Helsinki, Finland tero.kojo@nokia.com

More information

Product Line Development - Seite 8/42 Strategy

Product Line Development - Seite 8/42 Strategy Controlling Software Product Line Evolution An infrastructure on top of configuration management Michalis Anastasopoulos michalis.anastasopoulos@iese.fraunhofer.de Outline Foundations Problem Statement

More information

Software Change Management Chapter 27 Homework 10 Points

Software Change Management Chapter 27 Homework 10 Points SE-27-Software-Change-Management-HW.doc 1 CSCI 3321 Initials Written homework will be assigned regularly throughout the semester. Since there is little or no serious programming involved in the homework,

More information

A Quagmire of Terminology: Verification & Validation, Testing, and Evaluation*

A Quagmire of Terminology: Verification & Validation, Testing, and Evaluation* From: FLAIRS-01 Proceedings. Copyright 2001, AAAI (www.aaai.org). All rights reserved. A Quagmire of Terminology: Verification & Validation, Testing, and Evaluation* Valerie Barr Department of Computer

More information

Simulating Software Projects An Approach for Teaching Project Management

Simulating Software Projects An Approach for Teaching Project Management Simulating Software Projects An Approach for Teaching Project Management P. Mandl-Striegnitz 1, A. Drappa 1, H. Lichter 2 1 University of Stuttgart, Stuttgart, Germany 2 Aachen University of Technology,

More information

4. Software Project Management

4. Software Project Management 4. Software Subject/Topic/Focus: Management of Systems Engineering Projects Summary: Influences on projects and potential risks Software systems engineering and project management Activity network and

More information

Processing Requirements by Software Configuration Management

Processing Requirements by Software Configuration Management Processing Requirements by Software Configuration Management Ivica Crnkovic 1, Peter Funk 1, Magnus Larsson 2 1 Mälardalen University, Department of Computer Engineering, S-721 23 Västerås, Sweden {ivica.crnkovic,

More information

Analyze and Design of Information Systems Using OODPM for Small Scale Businesses

Analyze and Design of Information Systems Using OODPM for Small Scale Businesses Analyze and Design of Information Systems Using OODPM for Small Scale Businesses Pavel Petkun Offer Drori The Hebrew University of Jerusalem E-mail: pashka, offerd {@cs.huji.ac.il} Abstract In the modern

More information

The 7 Attributes of a Good Software Configuration Management System

The 7 Attributes of a Good Software Configuration Management System Software Development Best Practices The 7 Attributes of a Good Software Configuration Management System Robert Kennedy IBM Rational software Benefits of Business Driven Development GOVERNANCE DASHBOARD

More information

Software Development Under Stringent Hardware Constraints: Do Agile Methods Have a Chance?

Software Development Under Stringent Hardware Constraints: Do Agile Methods Have a Chance? Software Development Under Stringent Hardware Constraints: Do Agile Methods Have a Chance? Jussi Ronkainen, Pekka Abrahamsson VTT Technical Research Centre of Finland P.O. Box 1100 FIN-90570 Oulu, Finland

More information

Strategies for Industrial Relevance in Software Engineering Education

Strategies for Industrial Relevance in Software Engineering Education Strategies for Industrial Relevance in Software Engineering Education Claes Wohlin and Björn Regnell Dept. of Communication Systems Lund Institute of Technology, Lund University P.O. Box 118, SE-221 00

More information

SOFTWARE CONFIGURATION MANAGEMENT GUIDEBOOK

SOFTWARE CONFIGURATION MANAGEMENT GUIDEBOOK Office of Safety and Mission Assurance NASA-GB-9503 SOFTWARE CONFIGURATION MANAGEMENT GUIDEBOOK AUGUST 1995 National Aeronautics and Space Administration Washington, D.C. 20546 PREFACE The growth in cost

More information

An Integrated Quality Assurance Framework for Specifying Business Information Systems

An Integrated Quality Assurance Framework for Specifying Business Information Systems An Integrated Quality Assurance Framework for Specifying Business Information Systems Frank Salger 1, Stefan Sauer 2, Gregor Engels 1,2 1 Capgemini sd&m AG, Carl-Wery-Str. 42, D-81739 München, Germany

More information

Evaluation and Integration of Risk Management in CMMI and ISO/IEC 15504

Evaluation and Integration of Risk Management in CMMI and ISO/IEC 15504 Evaluation and Integration of Risk Management in CMMI and ISO/IEC 15504 Dipak Surie, Email : ens03dse@cs.umu.se Computing Science Department Umea University, Umea, Sweden Abstract. During software development,

More information

Requirements for Software Deployment Languages and Schema

Requirements for Software Deployment Languages and Schema Requirements for Software Deployment Languages and Schema Richard S. Hall, Dennis Heimbigner, Alexander L. Wolf Software Engineering Research Laboratory Department of Computer Science University of Colorado

More information

Software Configuration Management. Wingsze Seaman COMP250SA February 27, 2008

Software Configuration Management. Wingsze Seaman COMP250SA February 27, 2008 Software Configuration Management Wingsze Seaman COMP250SA February 27, 2008 Outline CM and SCM Definitions SCM History CMMI and SCM SCM Tools SCM/Dynamic Systems SCM/Software Architecture Resources 2

More information

White Paper Accessing Big Data

White Paper Accessing Big Data White Paper Accessing Big Data We are surrounded by vast and steadily increasing amounts of data, be it in industrial or personal contexts. In order to maintain a leading position in industry, one soon

More information

IV. Software Lifecycles

IV. Software Lifecycles IV. Software Lifecycles Software processes and lifecycles Relative costs of lifecycle phases Examples of lifecycles and processes Process maturity scale Information system development lifecycle Lifecycle

More information

Software Development Best Practices

Software Development Best Practices Software Development Best Practices Artifact Reuse Supported by Modern Team Communication Tools and Patterns Andrew Bose Principal (979) 777-1431 andrew.bose@parivedasolutions.com Pariveda Solutions, Inc.

More information

Software Engineering 1

Software Engineering 1 THE BCS PROFESSIONAL EXAMINATIONS Diploma April 2006 EXAMINERS REPORT Software Engineering 1 General Comments Most of the scripts produced by candidates this year were well structured and readable, showing

More information

Configuration Management. Software Configuration Management. Example of System Families. Configuration Management

Configuration Management. Software Configuration Management. Example of System Families. Configuration Management Configuration Management Software Configuration Management New versions of software systems are created as they change: For different machines/os; Offering different functionality; Tailored for particular

More information

A Pattern-based Framework of Change Operators for Ontology Evolution

A Pattern-based Framework of Change Operators for Ontology Evolution A Pattern-based Framework of Change Operators for Ontology Evolution Muhammad Javed 1, Yalemisew M. Abgaz 2, Claus Pahl 3 Centre for Next Generation Localization (CNGL), School of Computing, Dublin City

More information

Utilization of Statistical Process Control in Defined Level Software Companies to Manage Processes Using Control Charts with Three Sigma

Utilization of Statistical Process Control in Defined Level Software Companies to Manage Processes Using Control Charts with Three Sigma Proceedings of the World Congress on Engineering and Computer Science 00 Vol I WCECS 00, October 0-, 00, San Francisco, USA Utilization of Statistical Process Control in Defined Level Software Companies

More information

(Refer Slide Time: 01:52)

(Refer Slide Time: 01:52) Software Engineering Prof. N. L. Sarda Computer Science & Engineering Indian Institute of Technology, Bombay Lecture - 2 Introduction to Software Engineering Challenges, Process Models etc (Part 2) This

More information

Teaching cloud computing: a software engineering perspective

Teaching cloud computing: a software engineering perspective Teaching cloud computing: a software engineering perspective Ian Sommerville, School of Computer Science, St Andrews University, Scotland. When a new area of a discipline emerges, university teachers are

More information