Software Development for Data Science 1
level of course unit
Learning outcomes of course unit
Graduates are familiar with software development concepts that are frequently used in data science. Furthermore, they are familiar with the deployment of these concepts in frequently used software development environments in the area of data analysis (e.g. in Python, MathLab or R). Students are also aware of the tools and software systems that are necessary for software development.
prerequisites and co-requisites
The course deals with the software development process while important aspects of software engineering are addressed in an overview (e.g. requirements acquisition and documentation). The core aspect is the usage of software systems in data-intensive application contexts. The topical field is observed at the concept level (e.g. procedural, object-oriented and functional programming paradigms) as well as in various programming languages with respect to concept characteristics (e.g. Python, MathLab and R). Deployed software ecosystems are illustrated in an overview and their application is demonstrated in detail.
Special focus is on the usage of effective and efficient data structures and their im-plementation.
The teaching content encompasses the following topics:
-The process of software engineering and project management for data-intensive applications
-Programming paradigms for usage in the area of data science
-Comparative illustration of suitable programming languages within the context of data-intensive applications
-Effective and efficient data structures for data-intensive applications
-Tools and software ecosystems for the development and testing of data-intensive software systems
recommended or required reading
- Häberlein, T. (2016) Informatik: Eine praktische Einführung mit Bash und Python. 2. Auflage, De Gruyter Oldenbourg, Berlin (ISBN: 978-3110496864).
- Sommerville, I. (2015) Software Engineering, Global Edition. 10. Auflage, Pearson Education, London (ISBN: 978-1292096131).
- Williams, L.; Zimmermann, T. (2016) Perspectives on Data Science for Software Engineering. 1. Auflage, Morgan Kaufmann, Burlington (ISBN: 978-0128042069).
- Crawley, M. J. (2007) The R Book. 1. Auflage, John Wiley & Sons Ltd, Chichester (ISBN: 978-0-470-51024-7).
- Bowles, M. (2015) Machine Learning in Python: Essential Techniques for Predictive Analysis. 1. Auflage, John Wiley & Sons Ltd, Chichester (ISBN: 978-1118961742).
- Lutz, M (2013) Learning Python. 1. Auflage, O'Reilly Media, Farnham.
assessment methods and criteria
language of instruction
number of ECTS credits allocated
planned learning activities and teaching methods
-Lecture with discussion
semester/trimester when the course unit is delivered
name of lecturer(s)
Huber Stefan , MA
year of study
recommended optional program components
course unit code
type of course unit
mode of delivery