A Systematic Literature Review on relationship between agile methods and Open Source Software Development methodology
---
paper_title: Agile software development: the business of innovation

paper_content:

The rise and fall of the dotcom-driven Internet economy shouldn't distract us from seeing that the business environment continues to change at a dramatically increasing pace. To thrive in this turbulent environment, we must confront the business need for relentless innovation and forge the future workforce culture. Agile software development approaches, such as extreme programming, Crystal methods, lean development, Scrum, adaptive software development (ASD) and others, view change from a perspective that mirrors today's turbulent business and technology environment.
---
paper_title: How the FBI Learned to Catch Bad Guys One Iteration at a Time

paper_content:

Because the Federal Bureau of Investigation (FBI) never stops evolving, High Performance Technologies, Inc. (HPTi) found itself struggling to keep up with the changes while maintaining its CMMI III certification. Developers were complaining, clients were getting anxious, software releases were slipping. But what was the problem? Was it CMMI? Was it the environment? Was it HPTi? Through a disciplined approach to agile development, HPTi was able to successfully deliver above expectations. This experience report outlines HPTi’s successful journey through a CMMI III certification on an FBI software development project and the even more successful transition into agile development.
---
paper_title: Agile methods for open source safety-critical software

paper_content:

The introduction of software technology in a life-dependent environment requires the development team to execute a process that ensures a high level of software reliability and correctness. Despite their popularity, agile methods are generally assumed to be inappropriate as a process family in these environments due to their lack of emphasis on documentation, traceability, and other formal techniques. Agile methods, notably Scrum, favor empirical process control, or small constant adjustments in a tight feedback loop. This paper challenges the assumption that agile methods are inappropriate for safety-critical software development. Agile methods are flexible enough to encourage the rightamount of ceremony; therefore if safety-critical systems require greater emphasis on activities like formal specification and requirements management, then an agile process will include these as necessary activities. Furthermore, agile methods focus more on continuous process management and code-level quality than classic software engineering process models. We present our experiences on the image-guided surgical toolkit (IGSTK) project as a backdrop. IGSTK is an open source software project employing agile practices since 2004. We started with the assumption that a lighter process is better, focused on evolving code, and only adding process elements as the need arose. IGSTK has been adopted by teaching hospitals and research labs, and used for clinical trials. Agile methods have matured since the academic community suggested they are not suitable for safety-critical systems almost a decade ago, we present our experiences as a case study for renewing the discussion.
---
paper_title: Agile Principles and Open Source Software Development: A Theoretical and Empirical Discussion

paper_content:

In the last years, two movements have been widely discussed in the software development community: Agile and open source development. Both have faced some of the same criticism, and both claim some of the same benefits. This paper poses the question whether open source software development is in accordance with agile software development principles and therefore well within the planning spectrum. To this end, the general principles of both movements are detailed and compared, and some empirical data from open source software development projects is given on any similarities and dissimilarities uncovered.
---
paper_title: Scrum and CMMI Level 5: The Magic Potion for Code Warriors

paper_content:

Projects combining agile methods with CMMI1 are more successful in producing higher quality software that more effectively meets customer needs at a faster pace. Systematic Software Engineering works at CMMI level 5 and uses lean Software Development as a driver for optimizing software processes. Early pilot projects at Systematic showed productivity on Scrum teams almost twice that of traditional teams. Other projects demonstrated a story based test driven approach to software development reduced defects found during final test by 40%. We assert that Scrum and CMMI together bring a more powerful combination of adaptability and predictability than either one alone and suggest how other companies can combine them.
---
paper_title: How is open source affecting software development?

paper_content:

The open source movement is affecting software development products and processes. Software products benefit from reusable elements' increased availability and flexibility but might suffer from tighter coupling and more complex dependencies between reused components. The software development process is gaining from the widespread availability and use of sophisticated open source development platforms and tools, and the adoption of corresponding development and coding practices by the programmer community. In addition, code as literature is helping the meaningful education of programmers. However, process integration and the coevolution of multiple open source and proprietary projects are still open problems.
---
paper_title: The best of adaptive and predictive methodologies: open source software development, a balance between agility and discipline

paper_content:

Open source software development (OSSD) is a promising alternative for synthesising agile and plan-driven (e.g., waterfall) software development methodologies that retains most benefits of the two approaches. We contrast the traditional systems development life cycle approach, more recent agile software development methods, and OSSD. We compare the first two approaches with OSSD, highlighting its synthesis of benefits from both, with unique benefits of its own, offering solutions to areas where the other methodologies continue to face difficulties. OSSD is highly responsive to user needs, and potentially draws talent from a global team of developers. OSSD is a relatively low-risk methodology with potentially high return on investment. While not appropriate for all applications, especially those where the needed applications are extremely idiosyncratic to one company, it is nonetheless a valuable asset in an organisation|s portfolio of software development solutions.
---
paper_title: Open source software in an agile world

paper_content:

Open Source Software (contrasted with proprietary or “closed” software) has become a more widely accepted enterprise solution not withstanding some issues related to intellectual property rights and issues of liability and indemnification. Open Source Software (OSS) takes collaborative software development to a global extreme – OSS also provides a mechanism for decreasing time-to-market, improved quality, and reduced development costs. This panel will serve as a catalyst to discuss strategies, tools, and communities focused on the development and application of open source software.
---
paper_title: Reconciling software development models: A quasi-systematic review

paper_content:

Purpose: The purpose of this paper is to characterize reconciliation among the plan-driven, agile, and free/open source software models of software development. Design/methodology/approach: An automated quasi-systematic review identified 42 papers, which were then analyzed. Findings: The main findings are: there exist distinct - organization, group and process - levels of reconciliation; few studies deal with reconciliation among the three models of development; a significant amount of work addresses reconciliation between plan-driven and agile development; several large organizations (such as Microsoft, Motorola, and Philips) are interested in trying to combine these models; and reconciliation among software development models is still an open issue, since it is an emerging area and research on most proposals is at an early stage. Research limitations: Automated searches may not capture relevant papers in publications that are not indexed. Other data sources not amenable to execution of the protocol were not used. Data extraction was performed by only one researcher, which may increase the risk of threats to internal validity. Implications: This characterization is important for practitioners wanting to be current with the state of research. This review will also assist the scientific community working with software development processes to build a common understanding of the challenges that must be faced, and to identify areas where research is lacking. Finally, the results will be useful to software industry that is calling for solutions in this area. Originality/value: There is no other systematic review on this subject, and reconciliation among software development models is an emerging area. This study helps to identify and consolidate the work done so far and to guide future research. The conclusions are an important step towards expanding the body of knowledge in the field.
---
paper_title: An agile approach for integration of an open source health information system

paper_content:

In this paper we examine the close relationship that can be established between Agile methodologies and the FLOSS (Free-Libre Open Source Software) development model, by integrating a Health Information System (HIS) into the IT environment of an Italian hospital (a so-called software verticalization). We followed XP approach during development of new features. This approach allowed us not only to contribute to the original Open Source project, helping it to become increasingly mature, but also to evaluate in a quantitative manner the effort devoted to the international project, to the national context and to the specific health care organization.
---
paper_title: The best of adaptive and predictive methodologies: open source software development, a balance between agility and discipline

paper_content:

Open source software development (OSSD) is a promising alternative for synthesising agile and plan-driven (e.g., waterfall) software development methodologies that retains most benefits of the two approaches. We contrast the traditional systems development life cycle approach, more recent agile software development methods, and OSSD. We compare the first two approaches with OSSD, highlighting its synthesis of benefits from both, with unique benefits of its own, offering solutions to areas where the other methodologies continue to face difficulties. OSSD is highly responsive to user needs, and potentially draws talent from a global team of developers. OSSD is a relatively low-risk methodology with potentially high return on investment. While not appropriate for all applications, especially those where the needed applications are extremely idiosyncratic to one company, it is nonetheless a valuable asset in an organisation|s portfolio of software development solutions.
---
paper_title: Sprint driven development: agile methodologies in a distributed open source project (pypy)

paper_content:

This paper describes the practices created, adopted and evolved in a Distributed Open Source Project (PyPy) project. PyPy is a hybrid project, combining the different aspects of Agile and Distributed Development within the context of an Open Source community. The project is partially funded by the European Commission through the 6th Framework Program. Influences and adoptions of techniques such as "sprinting" has been a core balancing act for the project since its inception. “Sprints” in the Python community differs from the Scrum version of sprints and in this paper we will present how this evolved agile method acts as a primary method of quality assuring the aspects of distributed and dispersed work style of the PyPy project and insures an ongoing interaction with the Open Source aspects of the project.
---
paper_title: Introducing TDD on a free libre open source software project: a simulation experiment

paper_content:

This paper describes a simulation model that represents the first step to modeling open source software development processes. The model has been tuned using data from a real FLOSS project: Apache. The goal of our research is to show the effects of adopting TDD (Test Driven Development) on our open source simulation model. In order to introduce the TDD practice, we have only changed some parameter values in the FLOSS simulation model. In particular, the average time required to write a line of production code increases because now automated tests are also coded, the number of defects injected during coding decreases as does the debugging time to fix a single defect. The two FLOSS development models (nonTDD and TDD) have been compared, the one incorporating the agile practice of Test Driven Development yielding better results in terms of code quality (defects/Kloc).
---
paper_title: Agility index of automatic production systems: Reconfigurable logic and open source as agility enablers

paper_content:

Production agility becomes a measurable quantity when its scope is limited to those agility enablers that are demonstrated to positively influence the operation of a company. Strategic and tactical planning, along with flexible production, communication and cooperation infrastructures, were empirically demonstrated, in prior independent research, as significant predictors of financial performance. This paper introduces an index for measuring the ability of a company to timely and profitably exploit windows of upcoming commercial opportunity and a model for calculating the long-term cost of software in agile production environments. The evaluation focuses on the effects of the production infrastructure on the strategic and tactical ability of the company. Through the introduced index and software cost model, the impact of software on the agility of automatic production systems is explained, along with the benefits from reconfigurable production control software build upon open standards.
---
paper_title: Agile methods for open source safety-critical software

paper_content:

The introduction of software technology in a life-dependent environment requires the development team to execute a process that ensures a high level of software reliability and correctness. Despite their popularity, agile methods are generally assumed to be inappropriate as a process family in these environments due to their lack of emphasis on documentation, traceability, and other formal techniques. Agile methods, notably Scrum, favor empirical process control, or small constant adjustments in a tight feedback loop. This paper challenges the assumption that agile methods are inappropriate for safety-critical software development. Agile methods are flexible enough to encourage the rightamount of ceremony; therefore if safety-critical systems require greater emphasis on activities like formal specification and requirements management, then an agile process will include these as necessary activities. Furthermore, agile methods focus more on continuous process management and code-level quality than classic software engineering process models. We present our experiences on the image-guided surgical toolkit (IGSTK) project as a backdrop. IGSTK is an open source software project employing agile practices since 2004. We started with the assumption that a lighter process is better, focused on evolving code, and only adding process elements as the need arose. IGSTK has been adopted by teaching hospitals and research labs, and used for clinical trials. Agile methods have matured since the academic community suggested they are not suitable for safety-critical systems almost a decade ago, we present our experiences as a case study for renewing the discussion.
---
paper_title: Trouble in paradise: the open source project PyPy, EU-funding and agile practices

paper_content:

PyPy is an open source project, partly funded by the European Union, employing agile techniques evolved within the Python Community such as "sprint-driven development". The project started as a grass-root F/OSS effort in late 2002 and received EU-funding from December 2004 until November 2006. In this paper we present the various influencing factors that creates the hybrid project process that is PyPy. These influencing factors are the F/OSS Python Community (climate of the community from which PyPy grew from), agile practices (such as the Python community evolved technique of "sprinting") and the EU funding practices (resource tracking and reporting) impacting the project. These influencing factors laid the foundation for the custom-made project process that makes this unique hybrid project work. The main factor for driving this process is the skills of the team of core developers instigating the project. PyPy, with its open and transparent communication and collaborative work style, is again a proof that the best agile practice is the people factor.
---
paper_title: Detecting Agility of Open Source Projects Through Developer Engagement

paper_content:

The principles behind the agile development methods and common practise within the Open Source community are vastly different. In recent years there has been a rise of interest in these, in order to detect and inform on areas of compatible shared practises. This paper argues that it is possible to quantify the level of agility displayed by Open Source projects. An indicator of agility, the Mean Developer Engagement (MDE) metric is introduced and tested through the analysis of public project data. Projects sampled from two repositories (KDE and SourceForge) are studied and a hypothesis is formulated: projects from the two samples display a similar level of MDE.
---
paper_title: Modeling and simulation of open source development using an agile practice

paper_content:

The goal of this work is to study the effects of the adoption of agile practices on open source development. In particular, we started to evaluate the effects of TDD (Test Driven Development) since it is easer to apply in a distributed environment than most other agile practices. In order to reach this goal we used the simulation modeling approach. We developed a simulation model of open source software development process. The model was tuned using data from a real FLOSS project: Apache HTTP Server. To introduce the TDD practice in our FLOSS simulation model, we made some assumptions based on empirical results. The two FLOSS development models (nonTDD and TDD) were compared. The one incorporating the agile practice yields better results in terms of code quality.
---
paper_title: Sprinting toward Open Source Development

paper_content:

The PyPy project's development approach combines the distributed paradigm prevalent in free and open source software development with sprints, which are usually associated with agile development and extreme programming. However, broader acceptance of such a hybrid approach might also mean that the software development community will need to reconsider siloed definitions of development methodologies
---
paper_title: Identification of Success and Failure Factors of Two Agile Software Development Teams in an Open Source Organization

paper_content:

Agile Software Development Methods and Free/Libre Open Source Development have been two embracing movements in the software industry for more than a decade. However, little is known about the composition of both while today a variety of studies provide us with key characteristics of each one. The study extracts the similarities and differences of both topics by means of an extensive literature review focusing on teams as research unit. Furthermore this study investigates two agile software development teams in an open source organization based on an explorative research design. The focus is on the empirical identi?cation of success and failure in the application of agile methods in teams with open source background, structure and characteristics and in comparison with the literature ?ndings. This study is still in progress, however ?rst results as well as the methodology will be presented hereafter.
---
paper_title: The best of adaptive and predictive methodologies: open source software development, a balance between agility and discipline

paper_content:

Open source software development (OSSD) is a promising alternative for synthesising agile and plan-driven (e.g., waterfall) software development methodologies that retains most benefits of the two approaches. We contrast the traditional systems development life cycle approach, more recent agile software development methods, and OSSD. We compare the first two approaches with OSSD, highlighting its synthesis of benefits from both, with unique benefits of its own, offering solutions to areas where the other methodologies continue to face difficulties. OSSD is highly responsive to user needs, and potentially draws talent from a global team of developers. OSSD is a relatively low-risk methodology with potentially high return on investment. While not appropriate for all applications, especially those where the needed applications are extremely idiosyncratic to one company, it is nonetheless a valuable asset in an organisation|s portfolio of software development solutions.
---
paper_title: OJAX: a case study in agile Web 2.0 open source development

paper_content:

Purpose – The purpose of this paper is to describe a case study of the development, features and evaluation of a rich internet application for libraries. It aims to demonstrate best practice in the use of software standards, development processes and evaluation.Design/methodology/approach – Web 2.0, open source design methods and usability testing were used within an agile framework.Findings – The adoption of agile software development methods, coupled with usability testing, would enable the library community to take full advantage of the techniques and principles inherent in Web 2.0 open source software.Research limitations/implications – A major component of the evaluation of OJAX was a series of usability tests. As is the nature of most usability studies, the results are not generalisable.Originality/value – Aspects of agile software development methods, such as usability testing and iterative design, are recognised in the literature as contributing to the usability of library software. However, explo...
---
paper_title: In Search of the Sweet Spot: Agile Open Collaborative Corporate Software Development

paper_content:

Corporate software developers are faced with many difficulties. Development windows are decreasing; scale and complexity are increasing; business requirements are vague and changing; and the underlying technology moves ever on. Agile methods have emerged as leading contenders to tame these challenges. Small teams, face-to-face communication, an emphasis on simplicity and a selection of development best practices contribute to software development which is relevant, yet fast and flexible. At the same time, Open Source Software is increasingly providing infrastructure, tools and components to companies. Progressive development teams are beginning to work in more open, collaborative, and distributed ways. In some respects these practices are similar to agile practices, but in important ways, very different. Yet, both are important and offer unique benefits. This paper discusses the prospects of combining the two in the context of corporate software development, and the approach we suggest to do this.
---
paper_title: Agile methods for open source safety-critical software

paper_content:

The introduction of software technology in a life-dependent environment requires the development team to execute a process that ensures a high level of software reliability and correctness. Despite their popularity, agile methods are generally assumed to be inappropriate as a process family in these environments due to their lack of emphasis on documentation, traceability, and other formal techniques. Agile methods, notably Scrum, favor empirical process control, or small constant adjustments in a tight feedback loop. This paper challenges the assumption that agile methods are inappropriate for safety-critical software development. Agile methods are flexible enough to encourage the rightamount of ceremony; therefore if safety-critical systems require greater emphasis on activities like formal specification and requirements management, then an agile process will include these as necessary activities. Furthermore, agile methods focus more on continuous process management and code-level quality than classic software engineering process models. We present our experiences on the image-guided surgical toolkit (IGSTK) project as a backdrop. IGSTK is an open source software project employing agile practices since 2004. We started with the assumption that a lighter process is better, focused on evolving code, and only adding process elements as the need arose. IGSTK has been adopted by teaching hospitals and research labs, and used for clinical trials. Agile methods have matured since the academic community suggested they are not suitable for safety-critical systems almost a decade ago, we present our experiences as a case study for renewing the discussion.
---
paper_title: Continuous Integration in Open Source Software Development

paper_content:

Commercial software firms are increasingly using and contributing to open source software. Thus, they need to understand and work with open source software development processes. This paper investigates whether the practice of continuous integration of agile software development methods has had an impact on open source software projects. Using fine-granular data from more than 5000 active open source software projects we analyze the size of code contributions over a project’s life-span. Code contribution size has stayed flat. We interpret this to mean that open source software development has not changed its code integration practices. In particular, within the limits of this study, we claim that the practice of continuous integration has not yet significantly influenced the behavior of open source software developers.
---
paper_title: Applying SCRUM in an OSS Development Process: An Empirical Evaluation

paper_content:

Open Source Software development often resembles Agile models. In this paper, we report about our experience in using SCRUM for the development of an Open Source Software Java tool. With this work, we aim at answering the following research questions: 1) is it possible to switch successfully to the SCRUM methodology in an ongoing Open Source Software development process? 2) is it possible to apply SCRUM when the developers are geographically distributed? 3) does SCRUM help improve the quality of the product and the productivity of the process? We answer to these questions by identifying a set of measures and by comparing the data we collected before and after the introduction of SCRUM. The results seem to show that SCRUM can be introduced and used in an ongoing geographically distributed Open Source Software process and that it helps control the development process better.
---

Title: A Systematic Literature Review on Relationship Between Agile Methods and Open Source Software Development Methodology

Section 1: Introduction
Description 1: Provide an introduction to Agile Software Development (ASD) and Open Source Software Development (OSSD), and discuss the aim of this systematic literature review.

Section 2: Method
Description 2: Describe the methodology used to conduct the systematic literature review, including the research questions, research process, inclusion and exclusion criteria, quality assessment, data collection, and data analysis.

Section 3: Research Questions
Description 3: List and explain the research questions addressed in the study.

Section 4: Research Process
Description 4: Detail the search process for the literature review and the databases used.

Section 5: Inclusion and Exclusion Criteria
Description 5: Discuss the criteria for including or excluding papers in the review.

Section 6: Quality Assessment
Description 6: Explain how the quality of the studies was assessed.

Section 7: Data Collection
Description 7: Describe the data collection process and the information extracted from each article.

Section 8: Data Analysis
Description 8: Provide details on how the collected data was analyzed to address the research questions.

Section 9: Results
Description 9: Present the results of the systematic literature review, including the selection procedure and quality evaluation of the studies.

Section 10: Discussion
Description 10: Discuss the findings of the study, including the relationship between ASD and OSSD, support practices, and the potential for integration of the two methodologies.

Section 11: Conclusion
Description 11: Summarize the conclusions drawn from the study and the implications for the relationship between ASD and OSSD.