Agile Configuration Management: Practices and Challenges

Verified

Added on  2023/06/05

|18
|3967
|485
Report
AI Summary
This report investigates the role of configuration management (CM) in agile environments, highlighting its importance in ensuring the integrity and quality of software development. It emphasizes the need to adjust CM practices to align with agile principles, focusing on smaller increments, increased change rates, and the importance of collaboration. The research methodology involves a secondary analysis of existing literature, including case studies, to explore the application of CM in agile settings. Key findings reveal that CM plays a vital role in comparing project requirements with final deliverables, managing continuous builds, and supporting workspaces and merging processes. The report also addresses the challenges faced by organizations when implementing CM in agile environments, particularly in larger projects. It concludes that a well-adapted CM approach is crucial for the success of agile software development, enabling better control, reduced waste, and improved responsiveness to change. Desklib provides access to this and other solved assignments.
Document Page
1
Project Management
tabler-icon-diamond-filled.svg

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
2
Table of Contents
Introduction......................................................................................................................................3
Research Aim...............................................................................................................................3
Research Objectives.....................................................................................................................4
Research Question.......................................................................................................................4
Literature Review............................................................................................................................4
Adjusting CM for agile environment...........................................................................................4
Thinking Small............................................................................................................................5
Workspaces and Merging............................................................................................................6
Research Methodology....................................................................................................................8
Research Philosophy..................................................................................................................10
Research Approach....................................................................................................................11
Research type.............................................................................................................................11
Data collection technique..........................................................................................................11
Findings and Analysis....................................................................................................................11
Case Study (Real Life Example)...............................................................................................12
Conclusion.....................................................................................................................................14
References......................................................................................................................................16
Document Page
3
Introduction
Configuration management is defined as an engineering discipline that deals with procedures as
well as methods imperative to recognize and regulate items. This makes sure about integrity as
well as quality of the commodity under expansion. The four major principles that CM deals with
include audit, report and control (Schonwalder, Bjorklund & Shafer, 2010). The major role that
is played by CM is enabling development groups to recognize the costs that create an
application. In order to meet the pace of agile development it is imperative to tailor the CM. The
report will provide an overview based on a case study that will reflect on the real-life examples
of CM in agile environment.
Figure 1: Configuration Management
(Source: Schonwalder, Bjorklund & Shafer, 2010)
Document Page
4
Research Aim
The research report will aim on the role that is played by configuration management in agile
environment.
Research Objectives
The objective of the research is to illustrate how CM should make sure about the veracity of the
value stream, by eradicating waste and being inclined while allowing control of the changes.
Research Question
Based upon the framed research aim and objectives, the primary research question associated
with this paper is:
What is the role of configuration management in agile environment?
Literature Review
Adjusting CM for agile environment
According to Highsmith (2009), it is imperative to make sure that implementing CM will be
adjusted to the agile principles. This requires to remain intact without harming any of the CM
aspects. It requires to be kept in mind that recognizing, scheming, inspecting and reporting are
CM values that are atheist to the development methodology applied. However, CM could be
applied in diverse ways given that the CM principles remain intact. Most of the case, CM finds
itself in a company that deals with hybrid possessing some parallel phases rather than an
organization that is agile. As a result, with introduction to agile, the implementation of CM
requires to be accustomed to fit the requirement of agile growth methodology.
tabler-icon-diamond-filled.svg

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
5
Figure 2: Adjusting CM for agile environment
(Source: Ambler & Lines, 2012)
According to Cobb (2011), management of competent software configuration illustrates a real
life example that states software configuration is decisive for creating successful agile projects. It
is imperative to comprehend about agile SCM by identifying the aspects that will lead towards a
successful agile environment without breaking agility. SCM procedures require to embody the
agile principles in order to accomplish the aspects of agile development. It is imperative for
companies keep up with rapid change in mechanisms due to increased speed of agile procedures.
Thinking Small
According to Moreira (2010), the major aspect of an agile environment is to think small in terms
of increments as well as iterations at work. As a result, CM requires to have support the aptitude
to deal with smaller increase of work along with rise in the change rate. CM for agile is not
negligible CM, however CM that can deal with quick recognition and have power over
Document Page
6
maintaining the elevated rapidity of change. While simultaneously, it will also diminish the
effort in organizing the change.
Figure 3: Thinking Small
(Source: Whyte, Stasis and Lindkvist, 2016)
It is decisive for CM to remain ready to deal with smaller work chunks as an agile environment
mostly involves product management. This in turn indicates that there are additional incremental
deliveries that are both external and internal. This is accompanied with the implication of higher
requirement for adjustments as well as automation in branching. As opined by Whyte, Stasis and
Lindkvist (2016), individuals belonging to CM requires to work in collaboration to accomplish a
shared goal. This goal will help to meet business of a project successfully. CM is also measured
as a shared responsibility that is a part of daily activities carried out by team associates.
Document Page
7
Workspaces and Merging
The company that involves an agile environment requires to have their individual workspace.
However in case of pair programming, the requirement for shared workspaces increases. This
makes it easier for two individuals to share the workspace along with the changes. They will be
able to work jointly however at times they require to work separately. The agile project decides
about the number of branches that will be required and the way by which it will integrate with
other projects. According to Aiello and Sachs (2010), if the agile project is not large as well as
independent of other projects, it becomes decisive to have a private workspace however not off
the mainline. On the other hand with larger team the requirement to deal with a different layer of
integration between mainline and personal workspace are highly required. However, in order to
reduce integration effort, an individual requires to attempt to keep a small team.The probable
requirement for automated merging also takes place with the increased pace of agile. At present,
most of the CM tools come with this feature however; it without this it requires an up gradation.
This turns out to be more of a requirement when the agile project is large or when more
individuals requires to touch the similar code units.
If an organization proposes to deploy an agile environment in a big way, it is required to involve
a CM co-op environment. This will make it quick to bring agile projects online along with
immediate use of CM. In a more traditional methodology, it is required to have an agile
environment until the growth stage to get the CM environment up and running. The Cm
environment requires to be ready right with an agile methodology (Mohan, Ramesh &
Sugumaran, 2010). This requires to be ready immediately after iteration proposal that takes place
much before the development phase in regards to a more traditional method. This point, it
becomes decisive to regard a CM co-op service model. This will help to bring projects rapidly
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
8
into using CM environment. This will in turn prove to be beneficial for a company that has been
trying to bring multiple online agile projects within a particular time. The CM co-op gets rid of
the requirement for setting up the CM tools as well as introducing the infrastructure along with
establishing the procedures.
Research Methodology
The research method is very important in case of all research works. In this particular research
the importance and the role played by configuration management in an agile environment is
analysed, evaluated and conclusions have been drawn based on complete secondary research.
There are many secondary sources available for research purposes. The most effective and
reliable sources need to be identified and further applied for the research work. The articles,
journals and research papers, which had been written before and have used reliable and authentic
data must be consulted for the research. The research methodology will also include case study
analysis that will provide an in-depth analysis. In many papers it has been researched and seen
that there are many metrics of configuration management which can be applied in agile
environment and can be very effective as well. The research is mainly concentrated on the
success of the application of the configuration management in an agile environment. The CM is
playing a very important role here as the short releases are supported by it as stated by Alba,
et.al, (2014).The CM is also supporting the workspaces, the merging and their branching, the
building process, which is continuous.
Document Page
9
Figure 4: Secondary Method
(Source: Boehm&Turner, 2005)
Automation to metrics and roles of CM all are supportive towards the application of CM in an
agile environment and also gets certain benefits from it. Boehm&Turner, (2005) states that there
are many challenges which are faced by the management when they apply the configuration
management to their processes. The organizations which have a traditional development process
face more problems regarding this application of CM. The agile development of the software in
the traditional settings leads to the contradictions and the conflicts. The managers of these
traditional development organizations and the developers give their views and their issues
regarding the problem which they face while practicing CM in agile environment. There are two
types of views regarding the application of the CM in such agile environment. As stated by
Sellers, et.al, (2014) some are of the opinion that in case of the standalone and small projects the
application of configuration management leads to less problems and the burden of its application
is lesser. The CM is more synced and tuned in the small projects with the requirements of the
software development organization and the industry at a large (Lindkvist, Stasis & Whyte, 2013).
The development is taking place rapidly and to maintain the pace the CM is applied in such
settings. There are many changes taking place with which the CM is able to adjust and cope up
Document Page
10
very fast. The needs of the software industry are also very high which is again managed by the
CM. However, many other developers and managers are of the opinion that the approach of
configuration management in the agile situation leads to many problems. According to
Fuggettaand Di Nitto (2014) the hindrances of application of CM arise in case of scale and also
in scope for larger organizations. There are many issues which need prompt resolution. There are
several conflicts in development process, issues regarding business process and also conflicts or
clashes with people. In larger organizations, the problem is faced regarding the application of
CM as they create a burden on the developers and managers.
Research Philosophy
The research philosophy which has been applied here is that of interpretivism. In case of
secondary research it is believed that interpretivism philosophy is most effective as experience
fetches more reliable data for research. The research is mainly based on the perception of the
researcher.
Figure 5: Research Philosophy
(Source: Lindkvist, Stasis & Whyte, 2013)
tabler-icon-diamond-filled.svg

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
11
Research Approach
In this research, the approach is of deductive method. In deductive approach the main advantage
is that it gives a generalized interpretation first while gradually moving towards the case specific
outcome and interpretations.
Research type
The research type is very important as the source of the data is impacted by this. In this case as
we conduct only secondary research the research type is significant for choice of the source.
Data collection technique
The technique of data collection in this research is surfing the internet and finding online
sources. The articles and journals have been reviewed and researched. The secondary research
and its conclusion is completely dependent on the papers and the data used and so the researcher
needs to be very careful during the selection of sources.
Findings and Analysis
In this research it has been found that the CM plays a vital role in the comparing between the
major requirements and the final deliverables (Koppenjan,Veeneman, Van der Voort, Ten
Heuvelhof&Leijten, 2011). The inventory and the requirements of the projects are compared by
CM. There are many extra characteristics which are made a part of the projects but are not
always identified. The application of CM under such circumstances is very effective. The
additional features or the alterations to the value chain are investigated and found by the CM
(Abrahamsson, Salo, Ronkainen&Warsta, 2017). The building is done continuously but there are
times when there are defects in the process. In such cases the buildings are broken and the
recovery needs some time. This time that has been taken in the recovery of the builds that are
Document Page
12
also into consideration in case of the configuration management. There are many builds which
occur continuously and the track of the exact number of builds is taken care of by the CM. At
times extra processing is done in case of building which is kept a track of byconfiguration
management. The migration path and the processing is monitored and identified by CM (Whyte,
Stasis &Lindkvist, 2016). The downstream process is also facilitated by the CM application in
the agile environments.
Case Study (Real Life Example)
The section will provide a real life example of configuration management that has been applied
on system life cycle. According to Kaariainen (2007), product development is defined as a
procedure that helps to transform the description of an abstract system to a concrete commodity.
The stages through which systems pass are represented with the help of the system life cycle. In
this case, configuration management acts as the support procedure to initiate product
development. It helps to detain as well as manage the artefacts that are created and applied
during the product development procedure. The case study reflects on the fact that it has become
imperative to comprehend how CM maps with the software development life cycle stages to
comprehend its association with the software development activities. Kaariainen (2007) stated
that SCM has emerged as a different discipline during the 1970s. The outdated commodities that
has been composed on the basis of mechanical entities includes additional software. Software
development as a part of an engineering activity has turned out to be very complicated.
Kaariainen (2007) reflected on a real-life example that illustrates about that is related with
adapting CM for development of a software project. The development has been regarded as a
part of a larger project that deals with software. In real life the characteristics of hardware and
software co-design is both iterative as well as experimental. The software development includes
Document Page
13
multiple types of components rather than just product documents. The radio stations witness
issues related to their maintenance, as they possess enduring duration. The configuration types of
products that have been created possess diverse types of components that include text
documents, source as well as diagrams. In order to help the proposal of CM, it is imperative for a
company to include existing templates as well as procedures that includes pre-installed CM tool.
According to Kaariainen (2007), in real-life CM is used for small projects that makes us of agile
development guidelines to create a software system. This helps to manage the research data as
well as documents. The software development has mostly been organised around a single project
that works physically in a sole location. Software has been developed by the project that has
been followed by an agile-based development technique. However, this led to challenges in
terms of rapid-paced as well as iterative development. The aspect of the case study method
restricts the generalization of consequences. The aspects of the case study has been however
valuable while looking for configuration management solutions for projects functioning with an
identical contexts. Practical CM solutions have stressed for agile projects puts focus on
automation as well as simplicity in order to provide support to the rapid-paced development. ()
stated that projects makes use of diverse types of third party software that includes tools,
compilers as well as software elements. While using the third party software multiple challenges
takes place that gets related to the versions of these entities. In real-life it is imperative to make
sure that all development teams gets access to the right versions of the elements to get rid of
problems in integration. The CM activities that are simpler, comprises of a system that deals with
a single customer. On the other hand, the CM activity that involves multiple environments
examines a contemporary observable fact within its real-life scenario. In the real-life the major
responsibilities as well as procedures that are put forward by the CM planning has been mostly
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
14
described in the plan document of the CM. A generic template of the CM has mostly turned out
to be a broadly accepted basis for proposing the original CM procedures. Initially the CM
planning as become a part of the development of the complicated systems that has been usually
segmented into multiple interconnected projects (Kaariainen, 2007). The companies that did not
possess an existing policies for the CM, however the CM templates are known to provide a pre-
defined basis for the initial proposal activity. The formality of the CM in the agile environment
also differs both in large as well as small projects. In other words, in case of the small project the
CM procedures are usually less formal. The change in the operational environment of the project
necessitates the requirement for tools in order to adopt the CM practices as well as tools that will
support on the fly. A general CM template more often than not has been referenced in literature
is IEEE Std-828 (1998). In case of the small projects, less formal practices are required where
only an individual will be responsible for the coordination of the CM activities. However, in all
situations the principles of CM remain the same. In case of a traditional environment the
application of CM is different while in an agile environment it is being adjusted so that
developmental pace is maintained. The management of interfaces in the real life deals with
unmanaged interfaces that mostly leads to difficulties in the integration stage.
Conclusion
The success of any methodology of software development is dependent or at least to quite an
extent impacted by configuration management. The principles of the configuration management
as applied under an agile environment make it certain that the product, which is under the
process of development, will be integrated. The configuration management may find other ways
of implementation under such an environment. The value stream is integrated by the apt
application of the CM under the agile environment. Thus it can be said that the CM application
Document Page
15
in agile environment is effective in the smaller projects while in larger projects they need more
adjustments. In a small project, less formal practices and a simple CM tool are passable. In a
large project, procedure and clear household tasks for the CM activities are required. The basic
CM activities require to be proposed for the identical projects.
Document Page
16
References
Abrahamsson, P., Salo, O., Ronkainen, J., &Warsta, J. (2017). Agile software development
methods: Review and analysis. New Jersey, United States: McGraw Hill
Aiello, B., & Sachs, L. (2010). Configuration Management Best Practices: Practical Methods
that Work in the Real World. New Jersey, United States: Pearson Education.
Alba, A., Alatorre, G., Bolik, C., Corrao, A., Clark, T., Gopisetty, S., ... & Noll, D. (2014).
Efficient and agile storage management in software defined environments. IBM Journal
of Research and Development, 58(3), 5-1.
Ambler, S. W., & Lines, M. (2012). Disciplined agile delivery: A practitioner's guide to agile
software delivery in the enterprise. New Jersey, United States: IBM Press.
Boehm, B., & Turner, R. (2005). Management challenges to implementing agile processes in
traditional development organizations. IEEE software, 22(5), 30-39.
Cobb, C. G. (2011). Making sense of agile project management: Balancing control and
agility.New Jersey, United States: John Wiley & Sons.
Fuggetta, A., & Di Nitto, E. (2014, May). In Proceedings of the on Future of Software
Engineering. London: United Kingdom: ACM.
Highsmith, J. R. (2009). Agile project management: creating innovative products. London,
United Kingdom: Pearson Education.
Kaariainen, J. (2007). Practical Adaptation of Configuration Management: Three Case Studies.
Finland, UK: VTT publications.
tabler-icon-diamond-filled.svg

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
17
Koppenjan, J., Veeneman, W., Van der Voort, H., Ten Heuvelhof, E., &Leijten, M. (2011).
Competing management approaches in large engineering projects: The Dutch
RandstadRail project. International Journal of Project Management, 29(6), 740-750.
Lindkvist, C., Stasis, A., & Whyte, J. (2013). Configuration management in complex engineering
projects. Procedia CIRP, 11(5), 173-176.
Mohan, K., Ramesh, B., &Sugumaran, V. (2010). Integrating software product line engineering
and agile development. IEEE software, 27(3), 48-55.
Moreira, M. E. (2010). Adapting Configuration Management for Agile Teams: Balancing
Sustainability and Speed. New Jersey, United States: John Wiley & Sons.
Schonwalder, J., Bjorklund, M., & Shafer, P. (2010). Network configuration management using
Netconf and Yang. IEEE communications magazine, 48(9), 98-110.
Sellers, R. E., Guillot, J., Carter, G. H., Atkins, N. W., Pausback, N. J., Engle, M. R., ... &
Ballard, W. H. (2014). U.S. Patent No. 8,725,853. Washington, DC: U.S. Patent and
Trademark Office.
Whyte, J., Stasis, A., &Lindkvist, C. (2016). Managing change in the delivery of complex
projects: Configuration management, asset information and ‘big data’. International
Journal of Project Management, 34(2), 339-351.
Document Page
18
chevron_up_icon
1 out of 18
circle_padding
hide_on_mobile
zoom_out_icon
[object Object]