Module Handbook

  • Dynamischer Default-Fachbereich geändert auf INF

Module INF-82-61-M-6

Foundations of Software Techniques (M, 8.0 LP)

Module Identification

Module Number Module Name CP (Effort)
INF-82-61-M-6 Foundations of Software Techniques 8.0 CP (240 h)

Basedata

CP, Effort 8.0 CP = 240 h
Position of the semester 1 Sem. in WiSe/SuSe
Level [6] Master (General)
Language [DE/EN] German or English as required
Module Manager
Lecturers
Area of study [INF-LA] Teacher Education
Reference course of study [INF-64.79-SG] M.Ed. LaG Computer Science
Livecycle-State [NORM] Active

Notice

The module consists of the lecture "Modeling of Software Systems" and one of the two lectures "Requirements Engineering" / Foundations of Software Engineering".

Module Part #A (Obligatory, 4.0 LP)

Type/SWS Course Number Title Choice in
Module-Part
Presence-Time /
Self-Study
SL SL is
required for exa.
PL CP Sem.
2V+1U INF-02-02-K-2
Modelling of Software Systems
P 42 h 78 h
U-Schein
ja PL1 4.0 SuSe
  • About [INF-02-02-K-2]: Title: "Modelling of Software Systems"; Presence-Time: 42 h; Self-Study: 78 h
  • About [INF-02-02-K-2]: The study achievement "[U-Schein] proof of successful participation in the exercise classes (ungraded)" must be obtained.
    • It is a prerequisite for the examination for PL1.

Module Part #B (Obligatory, 4.0 LP)

Type/SWS Course Number Title Choice in
Module-Part
Presence-Time /
Self-Study
SL SL is
required for exa.
PL CP Sem.
2V+1U INF-31-55-K-6
Requirements Engineering
WP 42 h 78 h
U-Schein
ja PL2 4.0 WiSe
2V+1U INF-30-02-K-5
Foundations of Software Engineering
WP 42 h 78 h
U-Schein
ja PL2 4.0 SuSe
  • About [INF-31-55-K-6]: Title: "Requirements Engineering"; Presence-Time: 42 h; Self-Study: 78 h
  • About [INF-31-55-K-6]: The study achievement "[U-Schein] proof of successful participation in the exercise classes (ungraded)" must be obtained.
    • It is a prerequisite for the examination for PL2.
  • About [INF-30-02-K-5]: Title: "Foundations of Software Engineering"; Presence-Time: 42 h; Self-Study: 78 h
  • About [INF-30-02-K-5]: The study achievement "[U-Schein] proof of successful participation in the exercise classes (ungraded)" must be obtained.
    • It is a prerequisite for the examination for PL2.

Examination achievement PL1

  • Form of examination: written exam (Klausur) (60-90 Min.)
  • Examination Frequency: each semester

Examination achievement PL2

  • Form of examination: written exam (Klausur) (60-90 Min.)
  • Examination Frequency: each semester

Evaluation of grades

All partial module examinations have to be passed. The module grade is the arithmetic mean of all partial examination grades.


Contents

  • Software life cycle
  • Interaction of software modules and frameworks
  • Process models for the design of large software systems
  • Algorithm libraries
  • Software ergonomic standards and aspects of human-machine interaction
  • Design Patterns
  • Software test methods and program verification
  • Techniques for ensuring the accessibility of hardware and software products
Students learn basic modeling techniques about the software life cycle. The focus is on engineering techniques, such as UML modeling for object-oriented procedures and functionally decomposing models in analysis and design.
  • UML modeling in analysis and design (class and object diagrams, communication and sequence diagrams and others)
  • Functional decomposing models (Structured Analysis, Real Time Analysis, Structured Design)
  • Modeling of non-functional properties
  • Virtualization on the basis of models
  • Traditional process models of software development (waterfall, V-model, prototypes, evolutionary, incremental and concurrent models)
  • Project management models (network plan, Gantt chart, effort calculations)
  • Models in quality assurance (especially model-based testing)
  • Elicitation techniques for gathering user requirements
  • Approaches for modelling customer requirements (modeling techniques and processes)
  • Transformation of customer requirements to developer requirements (functional / non-functional requirements)
  • Negotiation and priorization of requirements
  • Variability management for requirements in a product line context
  • Scoping of requirements
  • Software engineering principles
  • Existing empirical observations and laws
  • Base knowledge (specification, architecture, verification, testing, process modelling, measurement, experimentation)
  • Process integration / traceability (UML, Java)
    • Component engineering
    • Development of large systems
    • Application engineering
  • Project management

Competencies / intended learning achievements

The students
  • know basic modeling concepts;
  • can model, design and implement software modules and evaluate the quality of the results;
  • are able to describe larger software systems.

Literature

  • T. Ottmann, P. Widmayer: Algorithmen und Datenstrukturen.
  • Mehlhorn K., Datenstrukturen und effiziente Algorithmen. Band 1 Sortieren und Suchen. Teubner, 1988.
  • G. Goos: Vorlesung über Informatik. Band 1 und 2.
  • M. Broy: Informatik. Eine grundlegende Einführung.
  • Poetzsch-Heffter: Konzepte objektorientierter Programmierung.
  • G. Krüger: Handbuch der Java-Programmierung.
  • Liskov: Program Development in Java.
  • E. Gamma, R. Helm, R. Johnson, J. Vlissides: Design Pattern: Elements of Reusable Object-Oriented Software.
  • W. Zuser, S. Biffl, T. Grechenig, M. Köhle: Software Engineering mit UML und dem Unified Process.
  • Züllighoven H., Object-Oriented Construction Handbook, dpunkt-Verlag 2005.
  • Booch G., Rumbaugh J., Jacobson I., The Unified Modeling Language User Guide, Addison-Wesley 1998.
  • DeMarco T., Structured Analysis and System Specification, Englewood Cliffs: Prentice Hall, 1985.
  • Liggesmeyer P., Software-Qualität, Spektrum-Verlag Heidelberg, 2002.
  • Cockburn. Writing Effective Use Cases, Addison-Wesley, 2001.
  • S. Robertson, J. Robertson, Mastering the Requirements Process, Addison-Wesley, 2002.
  • S. Lauesen: Software Requirements, Addison-Wesley, 2002.
  • Sommerville: "Software Engineering", 9th Edition, Person Studium, 2010.
  • H. Balzert: Lehrbuch der Software-Technik 1/2. Spektrum Akademischer Verlag, 2000.
  • P. Jalote: "A Concise Introduction to Software Engineering", Springer, 2008.
  • W. Zuser, T. Grechenig, M. Köhle: Software Engineering mit UML und dem Unified Process, Pearson Studium, 2004.
  • Peter Rösler, Maud Schlich, Ralf Kneuper: Reviews in der System- und Softwareentwicklung, dpunkt Verlag, 2013.
  • M. Jeckle, C. Rupp, J. Hahn, B. Zengler, S. Queins: UML 2 Glasklar; Carl Hanser Verlag; 2003.
  • Peter Liggesmeyer: Software-Qualität; Spektrum Akademischer Verlag, 2002.
  • further literature will be announced in the lecture.

Requirements for attendance of the module (informal)

Modules:

Requirements for attendance of the module (formal)

None

References to Module / Module Number [INF-82-61-M-6]

Course of Study Section Choice/Obligation
[INF-64.79-SG] M.Ed. LaG Computer Science [Compulsory Modules] Master's study program [P] Compulsory
[INF-58.79-SG] M.Ed. LaRSP Computer Science [Compulsory Modules] Master's study program [P] Compulsory
[INF-66.79-SG] M.Ed. LaBBS Computer Science [Compulsory Modules] Master's study program [P] Compulsory
[INF-66.C59-SG] M.Ed. LaBBS Computer Science (Informationstechnik/Informatik) [Compulsory Modules] Master's study program [P] Compulsory