Track: Information Systems Development

The information systems development track deals with methodologies and processes to design and develop information systems in an enterprise context. Architecting software that is for example scalable, resilient, modular, and maintainable is a complex endeavour, especially considering the interconnections between old and new systems within a company and with external systems. In this track, you will learn to explain and apply advanced theoretical concepts for planning, developing, and deploying software artefacts and solutions to data integration challenges. You will hands-on integrate data and application logic from different sources, apply logic for solving hard search problems, and implement your own domain-specific language to automate repetitive programming tasks.

The lectures

  • Logic Specification and Programming (Winter Term)

    This lecture provides the theoretical foundations for the formal specification of systems. Topics of the curriculum include (temporal) logics, constraint solving, deductive databases, and model checking. Practical exercises also introduce the concepts of logic programming with Prolog and Business Rules Management Systems with Drools.

  • Data Integration (Winter Term)

    Data Integration relates to the combination of multiple heterogeneous data sources into an integrated system, which is a frequently encountered challenge in numerous domains. This course enables students to explain the problems, issues, techniques, tools, and solutions relating to data integration. In the context of a group project, students will build a recommender system and thereby learn how to apply and use relevant data integration techniques and tools.

  • Advanced Concepts of Software Engineering (Summer Term)

    Deepening the concepts taught in the Bachelor’s program, the course focuses on methods and tools to build and deploy scalable software in teams. This comprises web applications (using JSF and EJB) , web services, microservices and container virtualization (using Docker) as well as enterprise application integration techniques. Furthermore, concepts of model-driven software development are taught, dealing with domain-specific languages and model transformations.