<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">Experience Report: A Comparison between Commercial and Open Source Reference Implementations for the Rugby Process Model</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Sajjad</forename><surname>Taheritanjani</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">Technische Universität München</orgName>
								<address>
									<country key="DE">Germany</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Stephan</forename><surname>Krusche</surname></persName>
							<email>krusche@in.tum.de</email>
							<affiliation key="aff0">
								<orgName type="institution">Technische Universität München</orgName>
								<address>
									<country key="DE">Germany</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Bernd</forename><surname>Bruegge</surname></persName>
							<email>bruegge@in.tum.de</email>
							<affiliation key="aff0">
								<orgName type="institution">Technische Universität München</orgName>
								<address>
									<country key="DE">Germany</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">Experience Report: A Comparison between Commercial and Open Source Reference Implementations for the Rugby Process Model</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">EE268B6CAA898CEBACDE2178DF17B0C4</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-25T01:13+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>Rugby is a process model for continuous software engineering which allows developers to continuously deliver prototypes and obtain feedback supporting software evolution. There is a reference implementation of Rugby with commercial enterprise tools used in university capstone courses. However, since these tools are expensive, there is a need to study less expensive alternatives which are available on the market to evaluate whether they can be used in Rugby. In this paper, we compare a second reference implementation with the existing one, focusing on the core use cases and non-functional requirements of Rugby.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1">Introduction</head><p>Increasingly dynamic environments lead to shorter development cycles <ref type="bibr" target="#b0">[FS14]</ref>. Continuous software engineering (CSE) refers to the organizational capability to develop, release, and learn from software in rapid cycles <ref type="bibr" target="#b1">[Bo14]</ref> providing the capability for software evolution <ref type="bibr" target="#b3">[HF10]</ref>. Rugby is a process model that proposes a development lifecycle for CSE [KAB + 14]. It combines elements of Scrum <ref type="bibr" target="#b2">[Sc04]</ref> and the Unified Process [JBR + 99] with additional workflows to support CSE and software evolution: review management, release management and feedback management [KAB + 14]. Developers work in a project-based organization with multiple projects to deliver executable prototypes and to obtain feedback. Bruegge et al. developed a reference implementation of Rugby that is applied in university capstone courses using commercial enterprise tools: JIRA, Bitbucket Server, Bamboo and HockeyApp <ref type="bibr" target="#b6">[BKA15]</ref>.</p><p>However, Rugby is not limited to these commercial tools. Expensive tools cannot easily be used by individuals and organizations, e.g. open source projects or young startups. The existing reference implementation also poses challenges, e.g. in terms of usability, because the tools have a high learning curve. Therefore, we investigate Rugby's use cases for its three additional workflows and one Scrum core workflows: issue management. We conducted a research <ref type="bibr" target="#b15">[TKB15]</ref> which shows for each of these workflows, there are many popular options available: Bugzilla, Redmine, Trac, GitHub Issues and Mantis as the Issue Tracker, GitHub, SourceForge, GitLab, Klin, CodePlex and Codeplan as the version control system (VCS), Jenkins, TeamCity, Travis, Hudson, Wercker, Team Foundation Server and GitLab CI as the continuous integration (CI) server, and Appaloosa, Crashlytics, GoCD and HockeyKit as the continuous delivery (CD). Considering the tight collaboration between these categories in Rugby, we decided to choose the GitHub Issues as the Issue Tracker, GitHub as the VCS and Travis as the CI solution, all from GitHub to ensure their efficient integration. We also chose Jenkins as the CI server, because it is open source and used in many projects. Both, GitHub and Travis are cloud-based platforms, that can be used for free in open source projects. Since there is no open source alternative for CD in mobile platforms, we chose Crashlytics, which made all its services free after its acquisition by Twitter. As knowledge management using a Wiki is not included in Rugby's continuous workflow (see section 2), we decided to exclude it from our comparison list.</p><p>In this paper, we created example projects with these tools to be able to compare them in each category <ref type="bibr" target="#b15">[TKB15]</ref> with respect to the most important Rugby use cases for developers, managers, users and also with regards to configurability and flexibility. At the end, using GitHub tools, Jenkins and Crashlytics, which all target on the open source projects, we create a second reference implementation and use it in different example projects to compare and evaluate the differences of how the main use cases are implemented. We also give recommendations about which reference implementation can be used.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2">Rugby Process Model</head><p>Rugby is a process model that includes workflows for CD. It allows part timers to work in a project-based organization with multiple projects for the rapid delivery of prototypes and products. Using CD improves the development process in two ways: First, Rugby improves the interaction between developers and customers with a continuous feedback mechanism. Second, Rugby improves coordination and communication with stakeholders and across multiple teams in project-based organizations with event based releases [KAB + 14]. Figure <ref type="figure" target="#fig_0">1</ref> shows the integrated continuous workflow with abstract tools and transitions. The workflow starts each time a developer commits source code to the version control server, leading to a new build on the continuous integration server. If the build was built successfully and if it passed all test stages, the team can decide to upload it to the delivery server, which then notifies users about a new release. Each release includes re-S. Taheritanjani, S. Krusche, B. Bruegge: Comparison of Rugby Process Model Implementations lease notes, which are collected automatically by the continuous integration server and can be edited in the manual release step if necessary. The user can download the release and recognize easily, which features and bugs were resolved in that. He can use an embedded mechanism to give feedback in a structured way. This feedback is collected on the delivery server and forwarded to the issue tracker <ref type="bibr" target="#b8">[KA14]</ref>. Rugby is a customizable process model that can be adapted and refined to the team's needs [KAB + 14]. It supports CSE and software evolution with one Scrum core workflow together with three additional workflows: (1) issue management needs an issue tracker, (2) review management needs a VCS, (3) release management needs a CI and a CD server, (4) feedback management needs a CD server and an issue tracker [KAB + 14]. These workflows are also customizable and can be included in other agile processes, in particular Scrum and Kanban [KAB + 14].</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">Comparison between Different Tools in each Workflow</head><p>For each of these workflows, we select alternatives and compare them with the corresponding commercial tools in the existing reference implementation with respect to the most important core use cases and non-functional requirements in each workflow. At the end of each section, there is a comparison table which shows scores for each feature of the tool (combination). Scores range from 1 (very poor quality or support) to 5 (excellent quality or support). In case a tool does not support a feature, a dash sign is shown (-).</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.1">Issue Management Workflow</head><p>Issue tracking is a software tool that enables the developers to record and track the status of all issues associated with each configuration object in the project <ref type="bibr" target="#b7">[Pr05]</ref>. In this section, we compare JIRA by Atlassian and GitHub Issues for issue management.</p><p>JIRA has a customizable workflow for issues which makes it easy to tailor based on different needs in each project. The issue workflow consists of statuses and transitions that an issue goes through during its lifecycle modeled as a finite state automaton. The workflow can be edited or a new one can be created from scratch. JIRA supports sprint planning and sprint reviewing as defined in Scrum.</p><p>On the other hand, GitHub Issues, does not have customizable workflows for issues. However, a list of milestones can be configured with a corresponding due date. A milestone shows the last edit date, percentage of completed tasks, the number of open and closed issues and merge requests, which can give a general overview of the project progress. With some configurations, GitHub Issues can support agile project management. Using milestones and labels, it is possible to simulate sprint backlogs and versions which are not available by default <ref type="bibr" target="#b9">[Ke15]</ref>.</p><p>Therefore, the main advantages of JIRA in comparison with GitHub Issues are its customizable workflows for issues and support for variety of issue types as well as different reports and charts. GitHub Issues main advantage is its usability which is very simple and easy to work in comparison with JIRA.</p><p>S. <ref type="bibr">Taheritanjani</ref> </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.2">Review Management Workflow</head><p>VCS is a system that keeps track of files and their history and have a model for concurrent access <ref type="bibr" target="#b10">[Ot09]</ref>. In this section, we compare Bitbucket Server, formerly known as Stash, by Atlassian and GitHub for review management.</p><p>Both Bitbucket and GitHub use Git as a distributed VCS to control the source code versions. Features like merge requests (a.k.a. pull request), branch management and merge management are the most important functions <ref type="bibr" target="#b11">[CS14]</ref>. Therefore, Bitbucket and GitHub function similarly in their core features. Bitbucket only supports sharing code files as snippets (known as Gists) with additional plugins. Its web interface lacks inline editing unless additional plugins are used.</p><p>In contrast to GitHub, Bitbucket's web interface does not show tags. However, this does not affect its functionalities, since it supports all the GitHub's features without needing to use labels. In terms of usability, GitHub is slightly better than Bitbucket. It is simple and everything is easy to find in the menus. One important difference between Bitbucket and GitHub is that they use different mechanism to show compare view (diff) <ref type="bibr" target="#b12">[Pe15]</ref>. Although Bitbucket's approach is more complex and has an overhead, it provides more accurate and useful merge request diff. </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Relevant features for</head></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.3">Release Management Workflow</head><p>CI is a software development practice where developers integrate their work frequently, which leads to multiple integrations per day. Each integration is verified by an automated build, including test, to detect integration errors as quickly as possible <ref type="bibr" target="#b13">[FF06]</ref>.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>S. Taheritanjani, S. Krusche, B. Bruegge: Comparison of Rugby Process Model Implementations</head><p>In other words, CI is the process of automatically building running tests whenever a change is committed. On the other hand, CD is a software engineering approach in which teams keep producing software in short cycles and ensure that the software can be reliably released at any time <ref type="bibr" target="#b14">[Ch15]</ref>. Rugby uses an enterprise app store as the CD server, a web portal through which end users can access, download, install approved software applications, send feedback about the application and report crashes. In this section, we compare three combinations of CI and CD, Bamboo and HockeyApp, Travis and Crashlytics, and Jenkins and Crashlytics.</p><p>Travis is a maintenance free CI server, since it is a hosted service and all the installations and updates are performed server side. Although Jenkins can be a hosted service as well, it is usually use on premise, needing administration effort for installations and updates. Bamboo can be used as a cloud service or as an on premise solution. Jenkins does not use a database for storage which makes it flexible and portable. Only by copying the configuration, Jenkins jobs can be easily migrated across multiple instances which is not possible in Bamboo. Therefore, maintainability in Jenkins is easier.</p><p>Additional build agents are needed to scale CI servers horizontally. Bamboo licenses are priced per agents that need to be installed and configured. In Jenkins, unlimited amount of build agents is available and configuration of build agents is very easy. The build agents are configured via Jenkins UI and all of the tools can be installed automatically. Therefore, Jenkins is easier to scale than Bamboo.</p><p>A deployment project in Bamboo is a container for holding the software project which is deployed. Besides, plan branches represent a build for a branch in the version control system. When the plan branch build succeeds, it can be automatically or manually merged back into master. Bamboo deployments allow a plan branch to be deployed to a test environment and the feature source code can be tested and evaluated in a real server environment before the code is merged back to master. In Jenkins, there are available plugins to support deployment and branches as well, while in Travis they are supported by Travis' configuration file. Concluding, all tools support deployment and branches. However, in Bamboo, when build jobs call deployments, it is not possible to go back to the build job to perform some post-deployment tasks. In addition, inability to provide input parameters, especially for deployment jobs, is a problem in Bamboo as well.</p><p>Each release includes release notes, which describe features and resolved bugs. The release notes are collected by the CI server and can be edited in the manual release step if necessary. Non of the CI solutions can create release notes automatically.</p><p>Code testing is the process of automatically building and running tests whenever a change is committed. Code integration is the process of automatically integrating the code after a committed change. All three CI tools support testing and integration.</p><p>It is not possible to get crash logs in Travis, without setting up scripts to upload them to a third-party service after completion of a build. In Bamboo and Jenkins, there are a lot of useful information regarding crash logs in test output display. Bamboo has an easy to use UI, Travis' UI is even more simple. However, Jenkins' UI looks out of date. Both HockeyApp and Crashlytics, notify the users about new releases and support feedback notification as well. They enable the CI server to automatically upload a new build and support the download of releases, new versions, push notifications and publication configurations. </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Relevant features for Rugby</head></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Bamboo + HockeyApp</head></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Travis + Crashlytics</head></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Jenkins</head></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.4">Feedback Management Workflow</head><p>In Section 3.3, we mentioned that Rugby uses an enterprise app store as the CD server. In this section we compare the combinations of HockeyApp and JIRA, and Crashlytics and GitHub Issues. Both Crashlytics and HockeyApp store crash reports and errors as issues. However, since GitHub Issues does not support multiple issue types, it is not possible to convert issues to appropriate work items like bugs or improvements.</p><p>In Crashlytics, different user groups can be defined and different users can be added to them. HockeyApp supports five user roles: owner, manager, developer, member and tester. HockeyApp supports more feedback management features in comparison with Crashlytics; while the user can reply to the developer's questions and his feedback records usage context, developer can pull them and reply to them.</p><p>Therefore, the main differences between HockeyApp and Crashlytics are the multiple mobile platforms support, user device registration, developer device management and voting mechanism to prioritize feedback requests. While HockeyApp supports different platforms, Crashlytics is only limited to iOS and Android. Although both of these tools have a good usability, HockeyApp is more simple and easier to use. While users can register their iOS and Android devices in HockeyApp, they can do so only for the iOS devices in Crashlytics. HockeyApp also supports developer device management which is not supported in Crashlytics.</p><p>Crashlytics takes into account that often a crash occurs and assigns it an impact level. It notifies when a specific crash is more critical than another one. As a particular crash is reported more and more, Crashlytics tracks that information and calls out the crashes that should be dealt with next. On the other hand, HockeyApp provides more depth and accuracy of crash logs. However, it does require more setup compared to Crashlytics. S. Taheritanjani, S. <ref type="bibr">Krusche</ref> </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4">Conclusion</head><p>In this paper, we create a second reference implementation with tools that can be used for free in open source projects, using GitHub tools, Jenkins and Crashlytics, and compare it with the commercial reference implementation. The second reference uses GitHub Issues as the Issue Tracking, GitHub as the VCS, and Crashlytics as the CD server. For CI, there are two options to choose: Travis and Jenkins. Both of these CI servers are candidates to become the CI solution. Cloud vs On Premise of the code repository is the most important factor in choosing, followed by project type. If the project is open source, Travis would be the better option, because there is no setup time and fee. If it is a company project with privacy concerns, Jenkins is a better option, because the setup time is minimal and maintaining the server is rather simple.</p><p>Since JIRA, Bitbucket and Bamboo are all Atlassian tools, they can integrate seamlessly using minimal effort and have a high overall usability as well, while the learning curve might be high for new users. On the other hand, GitHub Issues, GitHub and Travis are from GitHub and they also integrate with each other. GitHub tools are simpler and have fewer features than Atlassian tools, so they are easier for new users and can be used for free in open source projects. In addition, maintenance is not an issue while working with GitHub tools, because they are all hosted in the cloud.</p><p>Considering the price plan of different tools, the proposed reference implementation using open source tools can be used for free, especially for small startups that work on public repositories. However, if private repositories and concurrent jobs in CI are necessary, the price varies and there is not too much difference between the two reference implementations in the terms of price. Using the commercial reference implementation for middle sized companies, with around 100 persons, can be expensive. For such middle sized companies, the open source reference implementation cost is about half of the commercial one.</p><p>Therefore, both the existing commercial reference implementation, using JIRA, Bitbucket, Bamboo and HockeyApp, and the proposed open source implementation, using GitHub Issues, GitHub, Travis/Jenkins and Crashlytics, cover most of Rugby's important use cases. The commercial solution is a better choice when security and privacy S. Taheritanjani, S. Krusche, B. Bruegge: Comparison of Rugby Process Model Implementations are important and repositories should be private. On the other when the project can be public, the open source solution should be preferred. Rugby can be implemented with different tools, either for commercial projects or open source projects. However, there is always a tradeoff between the tools quality and their price. It remains to compare other tools for their use in Rugby projects in the future works.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head>Figure 1 :</head><label>1</label><figDesc>Figure 1: Rugby's continuous workflow with abstract tools and transitions [KAB + 14]</figDesc><graphic coords="2,140.40,474.48,314.64,136.32" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_0"><head>Table 1 :</head><label>1</label><figDesc>, S. Krusche, B. Bruegge: Comparison of Rugby Process Model Implementations Issue management workflow comparison<ref type="bibr" target="#b15">[TKB15]</ref> </figDesc><table><row><cell>Relevant features for Rugby</cell><cell>JIRA</cell><cell>GitHub</cell></row><row><cell>Customizable issue states and</cell><cell>5</cell><cell>1</cell></row><row><cell>Configuration possibilities</cell><cell>5</cell><cell>1</cell></row><row><cell>Taskboard support</cell><cell>5</cell><cell>3</cell></row><row><cell>Versions support</cell><cell>5</cell><cell>4 (using Labels)</cell></row><row><cell>Backlogs support</cell><cell>5</cell><cell>3 (using Milestones)</cell></row><row><cell>Sprint planning/review support</cell><cell>5</cell><cell>3</cell></row><row><cell>Usability</cell><cell>3</cell><cell>5</cell></row></table></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_1"><head>Table 2 :</head><label>2</label><figDesc>Review management workflow comparison<ref type="bibr" target="#b15">[TKB15]</ref> </figDesc><table><row><cell>Rugby</cell><cell>Bitbucket Server</cell><cell>GitHub</cell></row><row><cell>Merge requests</cell><cell>5</cell><cell>5</cell></row><row><cell>Inline code commenting</cell><cell>5</cell><cell>4</cell></row><row><cell>Web inline editing</cell><cell>4 (using plugins)</cell><cell>5</cell></row><row><cell>Sharing code files and snippets support</cell><cell>4 (using plugins)</cell><cell>5</cell></row><row><cell>Commit comments</cell><cell>5</cell><cell>5</cell></row><row><cell>Accurate compare views</cell><cell>5</cell><cell>4</cell></row><row><cell>Branch/merge management</cell><cell>5</cell><cell>5</cell></row><row><cell>Collaborative code review</cell><cell>5</cell><cell>5</cell></row><row><cell>Usability</cell><cell>4</cell><cell>5</cell></row></table></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_2"><head>Table 3 :</head><label>3</label><figDesc>Release management workflow comparison<ref type="bibr" target="#b15">[TKB15]</ref> </figDesc><table><row><cell>Crashlytics</cell></row></table></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_3"><head>Table 4 :</head><label>4</label><figDesc>, B. Bruegge: Comparison of Rugby Process Model Implementations Feedback Management Workflow Comparison [TKB15]</figDesc><table><row><cell>Relevant features for Rugby</cell><cell>HockeyApp + JIRA</cell><cell>Crashlytics +</cell></row><row><cell></cell><cell></cell><cell>GitHub Issues</cell></row><row><cell>User device</cell><cell>4 (iOS and Android)</cell><cell>3 (iOS)</cell></row><row><cell>User feedback upload</cell><cell>5</cell><cell>5</cell></row><row><cell>User reply to developer question</cell><cell>5</cell><cell>5</cell></row><row><cell>User attach media</cell><cell>5</cell><cell>5</cell></row><row><cell>Developer device management</cell><cell>5</cell><cell>3</cell></row><row><cell>Developer feedback pull</cell><cell>5</cell><cell>5</cell></row><row><cell>Voting mechanism</cell><cell>5</cell><cell>-</cell></row><row><cell>Usage context record</cell><cell>5</cell><cell>5</cell></row><row><cell>Feedbacks and analytics for developer</cell><cell>5</cell><cell>5</cell></row><row><cell>Store crash reports and errors as issues</cell><cell>5</cell><cell>5</cell></row><row><cell>Issue conversion to appropriate work item (issue)</cell><cell>5</cell><cell>1</cell></row></table></figure>
		</body>
		<back>
			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<analytic>
		<title level="a" type="main">Continuous software engineering and beyond: trends and challenges</title>
		<author>
			<persName><forename type="first">B</forename><surname>Fitzgerald</surname></persName>
		</author>
		<author>
			<persName><forename type="first">K</forename><forename type="middle">J</forename><surname>Stol</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of the 1 st International Workshop on Rapid Continuous Software Engineering</title>
				<meeting>the 1 st International Workshop on Rapid Continuous Software Engineering</meeting>
		<imprint>
			<publisher>ACM</publisher>
			<date type="published" when="2014">2014</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<analytic>
		<title level="a" type="main">Continuous software engineering: An introduction</title>
		<author>
			<persName><forename type="first">J</forename><surname>Bosch</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Continuous Software Engineering</title>
				<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2014">2014</date>
			<biblScope unit="page" from="3" to="13" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<analytic>
		<title level="a" type="main">Agile project management with Scrum</title>
		<author>
			<persName><forename type="first">K</forename><surname>Schwaber ; Jacobson</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><surname>Booch</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Rumbaugh</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Rumbaugh</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><surname>Booch</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">The unified software development process</title>
				<imprint>
			<publisher>Addison-wesley</publisher>
			<date type="published" when="1999">2004. 1999</date>
			<biblScope unit="page">92</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<monogr>
		<title level="m" type="main">Continuous delivery: reliable software releases through build, test, and deployment automation</title>
		<author>
			<persName><forename type="first">J</forename><surname>Humble</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Farley</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2010">2010</date>
			<publisher>Pearson Education</publisher>
			<biblScope unit="page" from="24" to="29" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<analytic>
		<title level="a" type="main">Rugby: An Agile Process Model Based on Continuous Delivery</title>
		<author>
			<persName><forename type="first">;</forename><forename type="middle">S</forename><surname>Kab</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Krusche</surname></persName>
		</author>
		<author>
			<persName><forename type="first">B</forename><surname>Alperowitz</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><forename type="middle">O</forename><surname>Bruegge</surname></persName>
		</author>
		<author>
			<persName><surname>Wagner</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of the 1 st International Workshop on Rapid Continuous Software Engineering</title>
				<meeting>the 1 st International Workshop on Rapid Continuous Software Engineering</meeting>
		<imprint>
			<publisher>ACM</publisher>
			<date type="published" when="2014">2014</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<monogr>
		<author>
			<persName><forename type="first">;</forename><forename type="middle">S</forename><surname>Kkp</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Klepper</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Krusche</surname></persName>
		</author>
		<author>
			<persName><forename type="first">B</forename><surname>Peters</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Bruegge</surname></persName>
		</author>
		<author>
			<persName><surname>Alperowitz</surname></persName>
		</author>
		<title level="m">Introducing Continuous Delivery of Mobile Apps in a Corporate Environment: A Case Study</title>
				<imprint>
			<date type="published" when="2015">2015</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b6">
	<analytic>
		<title level="a" type="main">Alperowitz: Software Engineering Project Courses with Industrial Clients</title>
		<author>
			<persName><forename type="first">B</forename><surname>Bruegge</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Krusche</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">ACM Transactions on Computing Education</title>
		<imprint>
			<date type="published" when="2015">2015</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<monogr>
		<title level="m" type="main">Software engineering: a practitioner&apos;s approach (7 th Edition)</title>
		<author>
			<persName><forename type="first">R</forename><forename type="middle">S</forename><surname>Pressman</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2010">2010</date>
			<publisher>Palgrave Macmillan</publisher>
			<biblScope unit="page">595</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b8">
	<analytic>
		<title level="a" type="main">Alperowitz: Introduction of Continuous Delivery in Multi-Customer Project Courses</title>
		<author>
			<persName><forename type="first">S</forename><surname>Krusche</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of the 36 th International Conference on Software Engineering</title>
				<meeting>the 36 th International Conference on Software Engineering</meeting>
		<imprint>
			<date type="published" when="2014">2014</date>
			<biblScope unit="page" from="2" to="3" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b9">
	<monogr>
		<title level="m" type="main">Using Github for Lightweight Software Project Management</title>
		<author>
			<persName><forename type="first">H</forename><surname>Kellaway</surname></persName>
		</author>
		<idno>Retrieved 06</idno>
		<ptr target="http://harlankellaway.com/blog/2015/04/02/using-github-issues-for-software-project-management/" />
		<imprint>
			<date type="published" when="2015-10">2015. October-2015</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b10">
	<monogr>
		<title level="m" type="main">Version Control Systems</title>
		<author>
			<persName><forename type="first">S</forename><surname>Otte</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2009">2009</date>
			<pubPlace>Berlin, Germany</pubPlace>
		</imprint>
		<respStmt>
			<orgName>Computer Systems and Telematics ; Institute of Computer Science, Freie Universität</orgName>
		</respStmt>
	</monogr>
</biblStruct>

<biblStruct xml:id="b11">
	<monogr>
		<title level="m" type="main">Pro Git (2 nd Edition)</title>
		<author>
			<persName><forename type="first">S</forename><surname>Chacon</surname></persName>
		</author>
		<author>
			<persName><forename type="first">B</forename><surname>Straub</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2014">2014</date>
			<publisher>Apress</publisher>
			<biblScope unit="page" from="89" to="98" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b12">
	<monogr>
		<title level="m" type="main">A better pull request</title>
		<author>
			<persName><forename type="first">T</forename><surname>Petterson</surname></persName>
		</author>
		<idno>Retrieved 13-</idno>
		<ptr target="https://developer.atlassian.com/blog/2015/01/a-better-pull-request/" />
		<imprint>
			<date type="published" when="2015-09">2015. September-2015</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b13">
	<monogr>
		<author>
			<persName><forename type="first">M</forename><surname>Fowler</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Foemmel</surname></persName>
		</author>
		<ptr target="http://www.thoughtworks.com/ContinuousIntegration.Pdf" />
		<title level="m">Continuous integration</title>
				<imprint>
			<date type="published" when="2006">2006</date>
		</imprint>
	</monogr>
	<note>Thought-Works</note>
</biblStruct>

<biblStruct xml:id="b14">
	<monogr>
		<title level="m" type="main">Continuous Delivery: Huge Benefits, but Challenges Too</title>
		<author>
			<persName><forename type="first">L</forename><surname>Chen</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2015">2015</date>
			<publisher>IEEE</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b15">
	<monogr>
		<author>
			<persName><forename type="first">S</forename><surname>Taheritanjani</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Krusche</surname></persName>
		</author>
		<author>
			<persName><forename type="first">B</forename><surname>Bruegge</surname></persName>
		</author>
		<title level="m">A Comparison between Commercial and Open Source Reference Implementations for the Rugby Process Model</title>
				<imprint>
			<date type="published" when="2016">2016</date>
		</imprint>
		<respStmt>
			<orgName>A University Research Report</orgName>
		</respStmt>
	</monogr>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
