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. Thanks to our industry partners to support our lab students.

2020 – Data Analytics in the FinTech environment

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 internship, algorithms and methods of data analytics will be tested in the apoBank environment in terms of proof-of-concepts.

2020 – Resilience engineering of software landscapes

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.

2020 – Many ways to travel – Building a comparison portal for package tours with diverse transportation

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 internship. 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 internship, 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.

Amadeus logo

2020 – Data that moves us – Data visualisation to improve public transport

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 internship. 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 internship, 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.

2019 – Asynchronous Search for Travel Offers

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 internship 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 internship. The internship is rounded off by the final presentation, where you will present your prototype to your customer.

Amadeus logo

2018 – Travel Smart – Building a system enhancing cross selling potentials for travel bookings

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 internship 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.

Amadeus logo

2018 – Report Smart – Developing an adaptive system for enhanced reporting capabilities

This software project lab focuses on the design and implementation of a software platform for delivering dedicated enterprise architecture management reports. The internship 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.

2017 – Building Software for Smart Public Transport

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 internship 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.

2017 – Web-based test data management for a life insurance

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.

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

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.

2016Digital Playgrounds – Providing corporate data & services for everyone

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.

2015 –  Monitoring Communication Processes for the Energy Sector 

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.

2014 – CheckIn BeOut

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.

More information are available on the CheckIn-BeOut project page