An Open Educational Resource for an Agile Software Engineering Course

2021 ◽  
Author(s):  
Cengiz Günay ◽  
Anca Doloc-Mihu
Author(s):  
Petra Heck ◽  
Gerard Schouten ◽  
Luís Cruz

This chapter discusses how to build production-ready machine learning systems. There are several challenges involved in accomplishing this, each with its specific solutions regarding practices and tool support. The chapter presents those solutions and introduces MLOps (machine learning operations, also called machine learning engineering) as an overarching and integrated approach in which data engineers, data scientists, software engineers, and operations engineers integrate their activities to implement validated machine learning applications managed from initial idea to daily operation in a production environment. This approach combines agile software engineering processes with the machine learning-specific workflow. Following the principles of MLOps is paramount in building high-quality production-ready machine learning systems. The current state of MLOps is discussed in terms of best practices and tool support. The chapter ends by describing future developments that are bound to improve and extend the tool support for implementing an MLOps approach.


Author(s):  
Jörg Rech ◽  
Christian Bogner

In many agile software engineering organizations there is not enough time to follow knowledge management processes, to retrieve knowledge in complex processes, or to systematically elicit knowledge. This chapter gives an overview about the human-centered design of semantically-enabled knowledge management systems based on Wikis used in agile software engineering environments. The methodology – developed in the RISE (Reuse in Software Engineering) project – enables and supports the design of human-centered knowledge sharing platforms, such as Wikis. Furthermore, the paper specifies requirements one should keep in mind when building human-centered systems to support knowledge management. A two-phase qualitative analysis showed that the knowledge management system acts as a flexible and customizable view on the information needed during working-time which strongly relieves software engineers from time-consuming retrieval activities. Furthermore, the observations gave some hints about how the software system supports the collection of vital working experiences and how it could be subsequently formed and refined.


Author(s):  
Christian Höcht ◽  
Jörg Rech

Developing human-engineered systems is considered as a challenge that addresses a wide area of expertise; computer scientists as well as social scientists. These experts have to work together closely in teams in order to build intelligent systems to support agile software development. The methodology developed in the RISE project enables and supports the design of human-centered knowledge-sharing platforms, such as Wikis based on standards in the field of education science. The project “RISE” (Reuse In Software Engineering) is part of the research program “Software Engineering 2006” funded by the German Federal Ministry for Education and Research (BMBF). The goal was to improve the reuse of artifacts in software engineering, and brought together researchers from education science (The Department of Educational Sciences and Professional Development at the Technical University of Kaiserslautern) and computer science (Fraunhofer Institute for Experimental Software Engineering (IESE) and the German Research Center for Artificial Intelligence (DFKI)) with industrial partners (Empolis GmbH and brainbot technologies AG). This chapter gives an overview about the human-centered design of Wiki-based knowledge and learning management systems in software engineering projects, and raises several requirements one should keep in mind when building human-centered systems to support knowledge and learning management.


Sign in / Sign up

Export Citation Format

Share Document