Software Development 2
Niveau
Master's program
Learning outcomes of the courses/module
The participants:
• can apply advanced concepts of software development (e.g. pipelines, testing, etc.) that are frequently used in the field of data science
• can describe the use of the concepts they have learned in software development environments commonly used in data analysis (e.g. in Python)
• can design advanced applications in order to automate basic functionalities
• can implement the applications they have designed independently
• can apply advanced concepts of software development (e.g. pipelines, testing, etc.) that are frequently used in the field of data science
• can describe the use of the concepts they have learned in software development environments commonly used in data analysis (e.g. in Python)
• can design advanced applications in order to automate basic functionalities
• can implement the applications they have designed independently
Prerequisites for the course
1st semester: Students have prior knowledge in the field of information technology amounting to 6 ECTS and are therefore familiar with the concept of the relational database and can read simple SQL queries. / 1st semester: Students have prior knowledge in the field of information technology amounting to 6 ECTS and are therefore familiar with simple programming concepts (e.g. variables, branches, loops) as well as typical programming approaches (e.g. functional programming). / 2nd semester: Module examination SDDE.A1 (Software Development 1)
Course content
The following topics are discussed in the course:
- Architecture models for data-driven software development and systems.
- Integration models and paradigms for implementing complex, process-oriented software ecosystems for analytical and data-driven systems
- Application of proven design patterns for data-driven applications
- Design and implementation of efficient and scalable software systems for data-driven applications
- Testing of software applications (e.g. unit tests, integration tests, etc.)
- Architecture models for data-driven software development and systems.
- Integration models and paradigms for implementing complex, process-oriented software ecosystems for analytical and data-driven systems
- Application of proven design patterns for data-driven applications
- Design and implementation of efficient and scalable software systems for data-driven applications
- Testing of software applications (e.g. unit tests, integration tests, etc.)
Recommended specialist literature
- Lutz, M (2025): Learning Python, O'Reilly (ISBN: 978-1098171308)
- Sommerville, I. (2015): Software Engineering, Global Edition (Ed. 10), Pearson Education, London (ISBN: 978-1292096131)
- Williams, L.; Zimmermann, T. (2016): Perspectives on Data Science for Software Engineering (Ed. 1), Morgan Kaufmann, Burlington (ISBN: 978-0128042069)
- Sommerville, I. (2015): Software Engineering, Global Edition (Ed. 10), Pearson Education, London (ISBN: 978-1292096131)
- Williams, L.; Zimmermann, T. (2016): Perspectives on Data Science for Software Engineering (Ed. 1), Morgan Kaufmann, Burlington (ISBN: 978-0128042069)
Assessment methods and criteria
Written exam
Language
German
Number of ECTS credits awarded
6
Semester hours per week
Planned teaching and learning method
The following methods are used:
- Lecture with discussion
- Working through practice exercises
- Interactive workshop
- Lecture with discussion
- Working through practice exercises
- Interactive workshop
Semester/trimester in which the course/module is offered
2