Abstract— In our complicated technological
evolution, multidisciplinary teams are developing an enormous number of
projects which helps in producing large amount of documents based on views and
different perspectives of the development system. The documents such as
requirement documents, scope, detailed designs, test scenarios etc. are
strongly interconnected with each other to define the system with the help of
collected information. The system changes are therefore based on the complete knowledge
of the current state of the system; all technical activities have a common need
that approves the documents describing the system. Computer system requires
configuration. Therefore, Software Configuration Management (SCM) has plays a
vital role in Software Engineering. The main problem is that our software must
run on different operating systems and different machines. As multiple people have to work on software
that is being modifying, more than one version of software has to be supported.
This research in particular will help SCM practitioners and IT experts in
general by providing better understanding of SCM Process in agile environment.
Keywords—Software Configuration Management, information, system,
INTRODUCTION Software configuration management is defined
as a set of management disciplines within the software engineering process to
develop a baseline. Software Configuration Management includes the skills and
methods dealing with systematic modification of software products during and after
the software development life cycle.
systems are continuously changing the environment, therefore a process of
changing the correspondence information artifact is necessary. SCM has
an objective to make technical and management activities more operational.
Software Configuration Management can be managed in multiple ways such as a
single software configuration management team for the whole organization, a
separate configuration management team for each project or SCM allocated among
the members of project.
improvement of a flexible software
configuration management process that supports the
simultaneity of Agile and SCM practices is the basic aim of this research. This
study will help to describe the process of alignment and implementation of
Software Configuration Management in the agile software development
Software configuration management has gained worldwide
attention and has had a major influence on software development. Many large
companies have adopted Software configuration management. The objective of SCM
is to guarantee an efficient and traceable software development process in
which all variations are specifically managed. Roger Pressman says that SCM is
rules of activities designed to control modification by finding out the work
products that are required to change, establishing the relationship between
them and helps in controlling the variations imposed and reporting on the
change status of product.
Moreover, Wayne Babich defines Software Configuration
Management as the art of identification, organizing and controlling the changes
to the software which is being built by software developers. Another Software
Institute describes SCM as a very necessary procedure which helps to build and
maintain the reliability of the software projects and company products
throughout software lifecycle. SCM enhances the ability to keep maintenance. The development of a software project can be found out
from Software Configuration Management which tells us how to control the effect
of changes in any product.
The tasks of Software
Configuration Management shows how effectiveness, affordability, teachability,
practical usage and research potentials are linked with Team, Components,
Structure, Construction and Deployment of any software project Lifecycle as
shown in fig.1 .
Configuration management process
III. ADVANTAGES OF USING A SCM
Software Configuration Management system has so many
advantages. Some of them are as follows:
It helps to build and maintain the consistency
of a software system or a software product through life time.
SCM helps to save or maintain a product through
the tools and techniques which are the important part of Configuration
SCM provides us the specific technique for the
document to have easier access for all users.
With the help of Configuration Management tools,
we can pick the layers without having the complete system.
AccuRev OS: All
is a commercial Software Configuration Management (SCM) solution developed by
to manage the development processes in an organization rather than on
old-style revision control.
is a modification control, SCM Tools and
With the help of various
tools, we can get the idea of how company practices for managing modifications
to its software processes. CM tools helps in
automation of application that is required for configuration state. These tools
are designed to solve many problems in certain ways. We are listing down the tools that helps in software
SDLC software application, designed by
Starbase Corporation which is established by Borland in January 2003.
Application of client-server backed by a
Keeps all modifications made to a plan during
Microsoft SQL Server and Oracle database are
maintained database servers.
Managing the software development life cycle
(SDLC) through its combined data framework.
Enables association between physically
circulated teams and disciplines to deliver higher visibility and
productivity and compliance.
Offers incomparable progression flexibility
and supports manifold process outlines and methodologies such as CMMI and
CVS stands for Concurrent Version
Supports multiple users at a time.
Changes in the source code including bugs are
done by CVS.
may be more suitable for small development projects than some of the more
Manages multiple amendments of files.
Automates the storage, retrieval,
identification, logging, and merging of revisions.
Beneficial for writing that is revised
regularly, counting source code, programs, documentation etc. papers,
graphics, and form letters.
Improves performance by storing an entire copy
of the most recent version.
Rational ClearCase’s SCM tools for review
control are developed by the Rational Software division of IBM.
Useful for all level of businesses and
Can grip projects with thousands and hundreds
A global solution.
Modify, formed and discharged management
One of the fastest growing SCM tool.
The goal of this tool is to build a source
control tool that fixed many CVS limitations.
A version control system and
source-code-control of a system.
Feasible to work with remote storehouses over
A united collaboration tool server for Visual
Studio Team System.
Combines software build management, software
development procedure, version control, and business intelligence into a
? Manages and
coordinates all actions and articles linked with software development
including Requirements Management SCM Tools
Defect Management, Test
Management, Change Management, System
Design, Release Management and Portfolio
Allows better team
collaboration in an effort to ensure better quality software.
Can be very
mystifying though Microsoft has published much about it, Many questions
V. CONFIGURATION MANAGEMENT TASKS
Configuration manager is the one who performs
configuration management tasks. The tasks of configuration manager includes
Configuration Item Identification, Configuration Control, Configuration Status
Accounting, Configuration Audits and Reviews Interface Control. Configuration
control defines us that how to classify the need for modification, whether
approve or disapprove a request, verification, analysis of a change, and
implementation & deployment of change.
following the IEEE standards
A combination of software, hardware or both selected for
configuration management works as a single entity in the configuration
management process. That single entity is considered as Configuration Item.
Software configuration items includes all types of documents as well as source
files. Configuration item is a very basic structural unit of software
configuration management system. The main task for configuration manager is to
define configuration items. There are two main issues while defining configuration
items. One is the selection of configuration Items, like we don’t know what
actually is under configuration control. The selection of right configuration
item is one of the biggest task. The other question is when we need to place
entities under configuration control.
Dynamic Model. The subsystems
includes database and user interface such as code, data, unit testing etc.
while these documents can be RAD, ODD etc.
The general change management
in software configuration management process depends upon few specific
If the change request is
accepted, it is assigned to developer for further implementation. And then the
implemented change will be audited.
controlling changes are of two types.
One is Promotion and other is
release. Promotion: Depends upon the
changing the inner functionality of software.
Release: A modified software
system which is made noticeable outside the organization. Such as business
requirements, Errors in development and Standard violations. Second is
Requested changes such as additional features, un-implementable requirements
Software Configuration management cycle consists of four
main characters; Customer, Project Manager, Development Team and Configuration
Customer generates a change request to project manager. Project Manager assigns
change request to software engineer. Software Engineer checks out necessary
configuration object and completes necessary changes and passes it to customer.
Customer approves changes. Software Engineer checks in modified configuration
objects and notifies Configuration Manager. Then, Configuration manager creates
new system baseline and prepares new system release for operation if necessary.
This is how Configuration Management cycle works. The output of software
configuration items is: computer programs i.e. both source level and executable
form, Documents that describe these computer programs and data within the
program or external to it.
This section presents the research
method used for gathering data from the examinee and secondary technique used
to evaluate the current condition of software organization in America. In this
research, identification of the examinee was a challenge. As agile methodology
is still a developing approach which took attention only in last six to seven
years. In market, only few software companies are adapting proper agile
software development processes along with software configuration management.
Therefore, it was a challenge to find out such examinee that would succeed to
respond to our questionnaire.
After an extensive research, the “linked In”
online community was selected for data gathering process. This is because, most
of the software engineers use linked in and it was easy to identify software
professionals who have worked and currently working with Agile Software
development and using Software configuration management as well. It took two
months for collecting data.
the validation and verification of this online survey, questionnaires were
posted to 116 practitioners selected via personal references, mostly from
different organizations, Only 46 practitioners responded well on time, but we
excluded around 20 responses n as they were not using agile methodology neither
Software configuration management. And, 50 practitioners have not responded to
our online survey.
In order to understand
perspective of different organization for adapting agile methodology and
Software Configuration Management processes and why every other software
company is using these both processes, we tried to find several organizational
constraints such as number of employees in organization, location of company,
domain of projects etc.
SCM is an advanced discipline. It is a well-organized
approach in practice, therefore it has been successfully used. And for research
perspective, it is quite mature. The two areas of research are considered best
for having high potential. One of them is automation in change integration and
other one is issues in deployment.
has also helped to ensure that these software development companies are a
platform to encourage software development environment that enhance the
development of dynamic skills such as development of creative business
practices. In general, Regardless of the size of the organization or the
size of the development team all the members of organizations considered
technology and selection of tools as most important part for their software
I would like to thank Virtual University, particularly my
department head, and my dean for making it possible for me to prepare this work
at this Institute. My professors and family made sure I had the resources and
inspiration to complete the work.
Other than that, I attended various workshops
to learn about Software Configuration Management. Those workshops were very
beneficial and I got to know the strength and usefulness of using software
configuration management system.
C. S. d. P. L. Claudia Cappelli and Flavia Maria Santoro, “Reflections on
the modularity of business process models,” Julio Cesar Sampaio do Prado Leite, vol. 4, pp. 662-687, 2010.
E. Tomayko, “Software Configuration Management SEI Curriculum Module
SEI-CM-41.4,” Carnegie Mellon University, U.S., 1990.
DART, “Concepts in configuration management,” In Feiler, p. 1–18.
A. C. WESTFECHTEL, “Software configuration management and engineering data
in data management:Differences and similarities,” In Magnusson, vol. 20, no. 95-106.
D, “Methods and tools for Software Configuration Management,” John
Wiley & Sons, Chichester UK, 1991.
T. W.F., “Configuration Management,” John Wiley & Sons,
Chichester UK, 1994.
M. S. Shukor Sanim Mohd Fauzi, “Software
Management in Global Software
Development: A systematic
Conference: 17th Asia Pacific Software
Engineering Conference, APSEC 2010,
Sydney, Australia, November 30 – December 3, 2010, 2010.
J. R. a. J. L. Usman K. Durrani, Adaptable Software
Management:An investigation on Australian agile software development
Ben-Menachem, Software Configuration Guidebook, Berkshire, UK, 1994.
10 K. FRUHAUF,
“Hygiene in software works- Software configuration management,” in Second European Conference on Software
Quality, Oslo, 1990.
11 H. A. W.
D., A Post-deployment configuration management, Somerville .
12 P. F. Ed,
“3rd International Workshop on Software Configuration Management,”
13 A.-S. R.S.,
“Business process modelling: review and framework,” International Journal of Production
Economics, Vols. 129-149, 2004.