Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/2591062.2591163acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
Article

Introduction of continuous delivery in multi-customer project courses

Published: 31 May 2014 Publication History

Abstract

Continuous delivery is a set of practices and principles to release software faster and more frequently. While it helps to bridge the gap between developers and operations for software in production, it can also improve the communication between developers and customers in the development phase, i.e. before software is in production. It shortens the feedback cycle and developers ideally use it right from the beginning of a software development project. In this paper we describe the implementation of a customized continuous delivery workflow and its benefits in a multi-customer project course in summer 2013. Our workflow focuses on the ability to deliver software with only a few clicks to the customer in order to obtain feedback as early as possible. This helps developers to validate their understanding about requirements, which is especially helpful in agile projects where requirements might change often. We describe how we integrated this workflow and the role of the release manager into our project-based organization and how we introduced it using different teaching methods. Within three months 90 students worked in 10 different projects with real customers from industry and delivered 490 releases. After the project course we evaluated our approach in an online questionnaire and in personal interviews. Our findings and observations show that participating students understood and applied the concepts and are convinced about the benefits of continuous delivery.

References

[1]
Atlassian. Atlassian blog, 2012. http://blogs.atlassian.com/2012/01/ continuous-delivery-with-bamboo-stages.
[2]
Atlassian. Atlassian software suite, 2013. http://www.atlassian.com/software.
[3]
Bit Stadium GmbH. Hockeyapp, 2013. http://www.hockeyapp.net.
[4]
B. Bruegge and A. H. Dutoit. Object Oriented Software Engineering Using UML, Patterns, and Java (Third Edition). Prentice Hall International, 2009.
[5]
B. Bruegge, S. Krusche, and M. Wagner. iOS Praktikum, 2012. http://www1.in.tum.de/ios12.
[6]
B. Bruegge, S. Krusche, and M. Wagner. Teaching Tornado: from communication models to releases. In Proceedings of the 8th edition of the Educators’ Symposium, pages 5–12. ACM, 2012.
[7]
B. Bruegge, S. Krusche, and M. Wagner. iOS Praktikum, 2013. http://www1.in.tum.de/ios13.
[8]
V. Driessen. A successful git branching model, 2010. http://nvie.com/posts/ a-successful-git-branching-model.
[9]
P. M. Duvall, S. Matyas, and A. Glover. Continuous integration: improving software quality and reducing risk. Pearson Education, 2007.
[10]
M. Fowler. Continuous Integration, 2006. http://martinfowler.com/articles/ continuousIntegration.html.
[11]
P. Gfader. Use scrum and continuous delivery to build the right thing, 2013. https://www.scrum.org/ Portals/0/Documents/Communityum.orgWhitepaper_ ContinuousDelivery.pdf.
[12]
J. Humble. Devops: A software revolution in the making? Cutter IT Journal, 24(8), 2011.
[13]
J. Humble and D. Farley. Continuous delivery: reliable software releases through build, test, and deployment automation. Pearson Education, 2010.
[14]
J. Humble and J. Molesky. Why enterprises must adopt devops to enable continuous delivery. Cutter IT Journal, 24(8):6, 2011.
[15]
D. A. Kolb et al. Experiential learning: Experience as the source of learning and development, volume 1. Prentice-Hall Englewood Cliffs, NJ, 1984.
[16]
W. Maalej, H.-J. Happel, and A. Rashid. When users become collaborators: towards continuous and context-aware user input. In OOPSLA, 2009.
[17]
D. Pagano and B. Bruegge. User involvement in software evolution practice: a case study. In Proceedings of the 2013 ICSE, pages 953–962. IEEE Press, 2013.
[18]
K. Schwaber and M. Beedle. Agile software development with Scrum. Prentice Hall PTR, 2002.
[19]
P. Swartout. Continuous Delivery and DevOps: A Quickstart Guide. Packt Publishing Ltd, 2012.
[20]
L. Torvalds. Git, 2013. http://www.git-scm.com.

Cited By

View all
  • (2023)Overcoming Challenges in DevOps Education through Teaching Method2023 IEEE/ACM 45th International Conference on Software Engineering: Software Engineering Education and Training (ICSE-SEET)10.1109/ICSE-SEET58685.2023.00022(166-178)Online publication date: May-2023
  • (2022)Global software engineering in a global classroomProceedings of the ACM/IEEE 44th International Conference on Software Engineering: Software Engineering Education and Training10.1145/3510456.3514163(113-121)Online publication date: 21-May-2022
  • (2022)Global Software Engineering in a Global Classroom2022 IEEE/ACM 44th International Conference on Software Engineering: Software Engineering Education and Training (ICSE-SEET)10.1109/ICSE-SEET55299.2022.9794211(113-121)Online publication date: May-2022
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ICSE Companion 2014: Companion Proceedings of the 36th International Conference on Software Engineering
May 2014
741 pages
ISBN:9781450327688
DOI:10.1145/2591062
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Sponsors

In-Cooperation

  • TCSE: IEEE Computer Society's Tech. Council on Software Engin.

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 31 May 2014

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Continuous Delivery
  2. Continuous Integration
  3. DevOps
  4. Executable Prototypes
  5. Feedback
  6. Release Management
  7. User Involvement
  8. Version Control System

Qualifiers

  • Article

Conference

ICSE '14
Sponsor:

Acceptance Rates

Overall Acceptance Rate 276 of 1,856 submissions, 15%

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)19
  • Downloads (Last 6 weeks)0
Reflects downloads up to 20 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2023)Overcoming Challenges in DevOps Education through Teaching Method2023 IEEE/ACM 45th International Conference on Software Engineering: Software Engineering Education and Training (ICSE-SEET)10.1109/ICSE-SEET58685.2023.00022(166-178)Online publication date: May-2023
  • (2022)Global software engineering in a global classroomProceedings of the ACM/IEEE 44th International Conference on Software Engineering: Software Engineering Education and Training10.1145/3510456.3514163(113-121)Online publication date: 21-May-2022
  • (2022)Global Software Engineering in a Global Classroom2022 IEEE/ACM 44th International Conference on Software Engineering: Software Engineering Education and Training (ICSE-SEET)10.1109/ICSE-SEET55299.2022.9794211(113-121)Online publication date: May-2022
  • (2022)An Empirical Study on Continuous Feature Delivery and Conventional Methods2022 IEEE Conference on Interdisciplinary Approaches in Technology and Management for Social Innovation (IATMSI)10.1109/IATMSI56455.2022.10119246(1-6)Online publication date: 21-Dec-2022
  • (2021)The application of continuous practices in higher computer science education - A systematic literature review2021 44th International Convention on Information, Communication and Electronic Technology (MIPRO)10.23919/MIPRO52101.2021.9597101(1618-1623)Online publication date: 27-Sep-2021
  • (2021)Analyzing DevOps Teaching Strategies: An Initial StudyProceedings of the XXXV Brazilian Symposium on Software Engineering10.1145/3474624.3477071(180-185)Online publication date: 27-Sep-2021
  • (2021)An evaluation of continuous integration and delivery frameworks for classroom useProceedings of the 2021 ACM Southeast Conference10.1145/3409334.3452085(204-208)Online publication date: 15-Apr-2021
  • (2020)Introducing DevOps Techniques in a Software Construction Class2020 IEEE 32nd Conference on Software Engineering Education and Training (CSEE&T)10.1109/CSEET49119.2020.9206183(1-5)Online publication date: Nov-2020
  • (2019)Mit Opti4Apps Nutzerfeedback zur Optimierung der Qualität mobiler Applikationen in agilen Entwicklungsprozessen bereitstellenDigitale Dienstleistungsinnovationen10.1007/978-3-662-59517-6_6(107-121)Online publication date: 28-Aug-2019
  • (2018)One size does not fit all: an empirical study of containerized continuous deployment workflowsProceedings of the 2018 26th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3236024.3236033(295-306)Online publication date: 26-Oct-2018
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media