Software Project Labs

Software project labs are an important part of computer science education. In 2014, we started to run labs together with industry partners to achieve special learning objectives. Task descriptions of all labs can be found below. We thank our industry partners for supporting our students.

Our approach to teaching software project labs

We presented our approach for teaching software project labs in cooperation with industry partners at the SEED 2020, an international software engineering education workshop. You can access the publication and listen to the corresponding talk given by Christian Plewnia:

Past software project labs

Digital Twins for Energy Systems

Winter semester 2022/2023

KISTERS AG offers software solutions for various domains, e.g., energy and water management. The energy market is becoming increasingly complex and dynamic due to the growth in different renewable energies. This also impacts software solutions for monitoring and controlling energy systems. Digital twins are digital representations of physical entities such as power plants.

The lab aims to develop a tool in which physical energy systems can be modeled graphically. KISTERS AG takes on the client role, for whom a team of five students is to develop a corresponding solution. As the client repeatedly contributes their ideas during the internship, there will be technical and communicative challenges.

Cooperation partner

Kisters AG logo

Data Mining in the Banking Sector

Winter semester 2022/2023

Deutsche Apotheker- und Ärztebank (apoBank) is a cooperative bank headquartered in Düsseldorf. However, in the digital age, banks are also always technology companies. As a result, large amounts of data are generated in apoBank’s day-to-day operations. With suitable data mining techniques, this data can be used to extract knowledge from it, e.g., to optimize business processes, offer new customer solutions, or advertise marketing campaigns.

This lab aims to develop a prototype tool for analyzing business-relevant information available in PDF files. These are to be read and interpreted to present the knowledge contained in the form of a front-end application.

Cooperation partner

ApoBank logo

Timeseries Synthesizer

Winter semester 2021/2022

KISTERS AG offers IoT software solutions for different domains, e.g., energy and water management. Data validation plays a significant role here, as much sensor data is processed. The sensors are not perfect and are susceptible to errors and dropouts. In this context, KISTERS uses an automatic data validator that applies various rules to time series. These rules must first be implemented and their functionality tested before use.

The lab aims to develop a time-series synthesizer tool that can be used to design synthetic time series or modify historical time series. Possible modifications could be changes to time series properties or the addition of errors/faults. A graphical user interface with a visualized time series and listed properties of these should provide the user with appropriate feedback during use. The time series created in the process should then be exported in a format that the data validator can use.

Cooperation partner

Kisters AG logo

Software Systems for Public Transportation

Winter semester 2021/2022

Resilient engineering or resilience software design is about maximising the availability of systems and system landscapes. In contrast to traditional stability approaches, resilience does not attempt to reduce the probability of errors, but accepts errors as unavoidable and unpredictable and instead tries to react as quickly as possible, sometimes automatically, to errors that occur. To improve resilience, methods of chaos engineering can be applied. Here, chaos in the system is created in a controlled manner through experiments. Based on this, control measures can be designed and applied in the next step, if necessary.

Kisters AG offers software solutions for very different domains, e.g. for energy and water management. These systems must be highly available, they are operated both at the customer’s site and in the cloud. The aim of the spftware project lab is to develop a testing tool that checks and analyses the resilience of systems. A system is to be attacked in a controlled manner on the basis of various criteria and the concrete effects made visible. Kisters AG is taking on the role of the client, for whom a team of five students each is to develop a corresponding solution. Since the client will repeatedly bring in his ideas during the lab, there will be both technical and communicative challenges.

Cooperation partner

IVU Traffic Technolgies logo

Resilience Engineering of Software Landscapes

Winter semester 2020/2021

Resilient engineering or resilience software design is about maximising the availability of systems and system landscapes. In contrast to traditional stability approaches, resilience does not attempt to reduce the probability of errors, but accepts errors as unavoidable and unpredictable and instead tries to react as quickly as possible, sometimes automatically, to errors that occur. To improve resilience, methods of chaos engineering can be applied. Here, chaos in the system is created in a controlled manner through experiments. Based on this, control measures can be designed and applied in the next step, if necessary.

Kisters AG offers software solutions for very different domains, e.g. for energy and water management. These systems must be highly available, they are operated both at the customer’s site and in the cloud. The aim of the spftware project lab is to develop a testing tool that checks and analyses the resilience of systems. A system is to be attacked in a controlled manner on the basis of various criteria and the concrete effects made visible. Kisters AG is taking on the role of the client, for whom a team of five students each is to develop a corresponding solution. Since the client will repeatedly bring in his ideas during the lab, there will be both technical and communicative challenges.

Cooperation partner

Kisters AG logo

Many Ways to Travel – Building a Comparison Portal for Package Tours with Diverse Transportation

Summer semester 2020

IVU Traffic Technologies AG offers software solutions for the public transport sector. In addition to planning systems, these include systems for controlling and monitoring everyday bus and rail operations. This generates a whole range of data which can be used to improve service and support planning and operational activities. This includes movement profiles, traffic light control and mobile phone stability.

The aim of the software project lab is to develop a web tool for the visualisation and analysis of these data. For this purpose, data must be combined, analysed and meaningfully visualised during the software project lab. IVU Traffic Technologies AG is taking on the role of the client, for whom a team of five students each is to develop a corresponding solution. Since the client will be bringing in his ideas again and again during the software project lab, there will be both technical and communicative challenges. Learning objectives

During the lab, students should learn and practice various skills in the field of software engineering. Organisational and interpersonal skills are to be trained on the one hand by independently carrying out a software project in a team over several months and on the other hand by communicating with a client. The professional competences are to be learned and deepened through the technical implementation of the requirements with current methods, concepts, tools and technologies. Modern frameworks such as the Spring Framework and Angular are used for implementation.

Cooperation partner

Amadeus Leisure IT logo

Data That Moves Us – Data Visualisation to Improve Public Transport

Summer semester 2020

IVU Traffic Technologies AG offers software solutions for the public transport sector. In addition to planning systems, these include systems for controlling and monitoring everyday bus and rail operations. This generates a whole range of data which can be used to improve service and support planning and operational activities. This includes movement profiles, traffic light control and mobile phone stability.

The aim of the software project lab is to develop a web tool for the visualisation and analysis of these data. For this purpose, data must be combined, analysed and meaningfully visualised during the software project lab. IVU Traffic Technologies AG is taking on the role of the client, for whom a team of five students each is to develop a corresponding solution. Since the client will be bringing in his ideas again and again during the software project lab, there will be both technical and communicative challenges. Learning objectives

During the lab, students should learn and practice various skills in the field of software engineering. Organisational and interpersonal skills are to be trained on the one hand by independently carrying out a software project in a team over several months and on the other hand by communicating with a client. The professional competences are to be learned and deepened through the technical implementation of the requirements with current methods, concepts, tools and technologies. Modern frameworks such as the Spring Framework and Angular are used for implementation.

Cooperation partner

IVU Traffic Technolgies logo

Data Analytics in the FinTech Environment

Winter semester 2020/2021

The Deutsche Apotheker- und Ärztebank (apoBank) is a cooperative bank with its head office in Düsseldorf. As a financial technology company (FinTech) that addresses a narrowly defined clientele, it offers financial services that are specially tailored to the interests and problems of health professionals. However, banks in the digital age are not only banks in the classical sense, but also technology companies. Therefore, the apoBank offers many of its services via online services and applications. In doing so, many data coincide, which in turn provide important conclusions and insights in order to further improve the services offered in a targeted manner and to better support planning and operational activities.

Processes and methodologies for extracting and examining data from various data sources are summarised under the term data analytics. Within the scope of this software project lab, algorithms and methods of data analytics will be tested in the apoBank environment in terms of proof-of-concepts.

Cooperation partner

ApoBank logo

Asynchronous Search for Travel Offers

Summer semester 2019

In the multi-billion euro package holiday market, tour operators sell holidaymakers ready-made packages of flights and hotel rooms. There is a large number of different tour operators, which differ in many aspects, such as the number of trips offered or the destinations. If one wants to develop a search website for travel that works across different tour operators, it becomes clear that their IT systems and search interfaces differ. The challenge is not only to collect the data from the different search interfaces and then display it in an integrated way, but also to deal with different response times of the individual interfaces.

In general, users should receive search results as quickly as possible. However, if individual interfaces in the background have long response times or even no response at all, a compromise must be found to meet the users’ needs. Often the way is chosen to consider only answers that have been delivered by interfaces within a fixed time. Although this approach is a comparatively simple solution, it can be disadvantageous for the user if the search result with the highest relevance does not appear.

During the software project lab, you will develop an alternative approach in a team where results that arrive later are presented to the user. How you realize this is up to your creativity. One possibility could be to point out new results to the user at the edge of a result list and display them on request. During your software project lab you will be in contact with Amadeus Leisure IT (formerly Traveltainment), who will play the customer for whom you are developing the software during your software project lab. The software project lab is rounded off by the final presentation, where you will present your prototype to your customer.

Cooperation partner

Amadeus Leisure IT logo

Travel Smart – Building a System Enhancing Cross-selling Potentials for Travel Bookings

Summer semester 2018

In the multi-billion euro package holiday market, tour operators sell holidaymakers ready-made packages of flights and hotel rooms. Holidaymakers usually have to search for and book other third-party offers that are suitable for their trip, such as a rental car or tours, themselves. There is therefore great interest in the industry to integrate such third-party products in order to be able to offer them directly to holidaymakers when they book their package tour.

During the software projectr lab you will develop a prototype for booking third-party products. The aim of the software project lab is to learn and deepen skills in the field of software engineering. This includes your organisational, interpersonal and technical skills. In a team of five students you will plan and execute your project, practice customer contact with the support of Amadeus, one of our industry partners, and deal with topics such as agile software development, micro-service architectures, REST services, continuous integration/deployment and DevOps.

Cooperation partner

Amadeus Leisure IT logo

Report Smart – Developing an Adaptive System for Enhanced Reporting Capabilities

Summer semester 2018

This software project lab focuses on the design and implementation of a software platform for delivering dedicated enterprise architecture management reports. The software project lab will be carried out in cooperation with an industrial partner, ITERGO GmbH, who will act as a customer in this project. The architecture department manages its data in the tool LeanIX, which is provided as a SaaS solution. The participants should implement an essay on the SaaS solution that consumes the REST interface and presents the data in a user-friendly way. Attention should be paid to the fact that the consuming interface can easily be adapted to changes. The students will be given freedom in the realisation of the reports. For example, there will be the possibility to optimise the reports for mobile use, to design a toolbox to leave the generation of reports to the end user, or to integrate other potentially interesting data sources.

Cooperation partner

ITERGO logo

Web-based Test Data Management for a Life Insurance

Summer semester 2017

In this software project lab the focus is on the design and implementation of software systems in the context of smart insurance solutions. In addition to the use of Java and other modern web technologies such as HTML5, AngularJS and NoSQL in application development, the participants will get to know the development platform Eclipse and the implementation of software in groups. At the same time, current methods and techniques of software engineering such as Test-Driven-Development, Continuous Delivery and Scrum will be considered and applied. The necessary knowledge is conveyed during the lab.

Cooperation partner

Generali Informatik Services logo

Building Software for Smart Public Transport

Summer semester 2017

This software project lab focuses on the design and implementation of software systems in the field of public transport. IVU Traffic Technologies AG as a cooperation partner will present the task to be solved and support the software project lab participants during their work with its expertise.

Technologically, the participants will work in the environment of modern web applications, whereby both front- and back-end systems will be implemented using state-of-the-art technology. At the same time, current methods and techniques of software engineering, such as Test-Driven-Development, Continuous Delivery and Scrum, are also considered and applied in the lab.

Cooperation partner

IVU Traffic Technolgies logo

Flying High – Using Cloud- and PaaS-solutions in an Industrial Context

Summer semester 2016

KISTERS AG offers of broad portfolio of software solutions for company in the energy sector.. In this software lab the focus was the design and implementation of software components using the cloud for the german energy sector. KISTERS provided a problem regarding the management and processing of communication between the participants in the energy market.

In addition of the use of Java and other modern web technologies such as HTML5, AngularJS and NoSQL in application development, the students will get to know new cloud related technologies like Docker and OpenShift.

Using this TechStack the needed solution will receive, process and validate incoming communication events based on a predefined process model. As the process change and evolve over time new architectural style like microservices should be used.

Cooperation partner

Kisters AG logo

Digital Playgrounds – Providing Corporate Data & Services for Everyone

Summer semester 2016

In this software lab the focus is on the design and implementation of an ecosystem for software infrastructures. The participants will develop an offer of RESTful services, which provide different data. These data come from the direct context of the insurance industry as well as from publicly available sources. For this purpose, ITERGO will provide data pools that are modelled on those of the productive data. In connection with the services, the technical and functional design of services will be trained in particular.

It should be possible to compile the range of services as required and they should be provided in the form of a sandbox in the Amazon cloud. For this purpose, students are to develop a solution with which developers can efficiently assemble an environment for themselves with the services they require. This environment is then to be provided automatically via provisioning processes.

In order to demonstrate the functionality of their platform, the students will develop an application that consumes the web services offered in the provided environment. Possible applications are e.g. mobile applications for end customer consulting, connections to cyberphysical systems of major customers, big data analysis or links to the smart home.

Cooperation partner

ITERGO logo

Monitoring Communication Processes for the Energy Sector

Summer semester 2015

KISTERS AG offers of broad portfolio of software solutions for company in the energy sector. The problem suggested by KISTERS AG was to monitor the accounting of energy deliveries of participating companies. The market in Germany is deregulated and a complex process is implemented to ensure the correct management and accounting.

The process depends much on exchanging messages between the participants in the market. The task for our students is to create a Software-Dashboard to monitor the status of current communication processes. The process modelled using BPM and executed using a BPM-Engine provided by KISTERS. Additionally, the whole communication should be simulated using historic communication and event data provided by KISTERS.

The resulting system should consist of three major components:

  • Dasboard: Web-Application using AngularJS
  • Middleware: Service integrating process and historic data
  • Simulator: Service which uses history messages to simulate a year of data in 15 minutes.

The whole lab was organized as an agile software project.

Cooperation partner

Kisters AG logo

CheckIn BeOut

Summer semester 2014

CheckIn and BeOut is an electronic ticket system for public transport, especially buses, with a focus on automatic exit detection. The project vision includes a system that allows passengers to purchase a ticket (CheckIn) via a mobile app when they start their journey. The billing of the trips is digital and is optimized according to the needs of the passenger. In order to make it as easy as possible for the passenger to use the system, the exit should be automatically recognized (BeOut), i.e. apart from selecting the trip, the CheckIn, no further interaction by the passenger is necessary to successfully complete a trip.

Cooperation partner

IVU Traffic Technolgies logo