htw saar Piktogramm
Back to Main Page Choose Module Version:
XML-Code

flag


Software Engineering

Module name (EN):
Name of module in study programme. It should be precise and clear.
Software Engineering
Degree programme:
Study Programme with validity of corresponding study regulations containing this module.
Applied Informatics, Bachelor, ASPO 01.10.2017
Module code: PIB-SWT
SAP-Submodule-No.:
The exam administration creates a SAP-Submodule-No for every exam type in every module. The SAP-Submodule-No is equal for the same module in different study programs.
P221-0004
Hours per semester week / Teaching method:
The count of hours per week is a combination of lecture (V for German Vorlesung), exercise (U for Übung), practice (P) oder project (PA). For example a course of the form 2V+2U has 2 hours of lecture and 2 hours of exercise per week.
4V (4 hours per week)
ECTS credits:
European Credit Transfer System. Points for successful completion of a course. Each ECTS point represents a workload of 30 hours.
5
Semester: 3
Mandatory course: yes
Language of instruction:
German
Assessment:
Oral examination

[updated 19.02.2018]
Applicability / Curricular relevance:
All study programs (with year of the version of study regulations) containing the course.

KIB-SWT (P221-0004) Computer Science and Communication Systems, Bachelor, ASPO 01.10.2017 , semester 3, mandatory course
PIB-SWT (P221-0004) Applied Informatics, Bachelor, ASPO 01.10.2017 , semester 3, mandatory course
Workload:
Workload of student for successfully completing the course. Each ECTS credit represents 30 working hours. These are the combined effort of face-to-face time, post-processing the subject of the lecture, exercises and preparation for the exam.

The total workload is distributed on the semester (01.04.-30.09. during the summer term, 01.10.-31.03. during the winter term).
60 class hours (= 45 clock hours) over a 15-week period.
The total student study time is 150 hours (equivalent to 5 ECTS credits).
There are therefore 105 hours available for class preparation and follow-up work and exam preparation.
Recommended prerequisites (modules):
PIB-PR1 Programming 1
PIB-PR2 Programming 2


[updated 27.07.2018]
Recommended as prerequisite for:
PIB-PA Project work
PIB-PRA Work Experience Phase
PIB-RGD


[updated 26.04.2021]
Module coordinator:
Prof. Dr. Helmut Folz
Lecturer:
Prof. Dr. Helmut Folz


[updated 27.07.2018]
Learning outcomes:
After successfully completing this module, students will:
_ be familiar with the most important current process models in software development and will be able to explain their particularities and differences.
_ be familiar with the problems in requirements analysis and, as a team, be able to create requirement specifications when given simple to medium fuzzy problem descriptions.
_ be proficient in the basic concepts of object-oriented analysis and can analyze and structure simple to medium-sized software development problems and model solutions using UML diagrams.
_ be familiar with some of the most important architectural and design patterns in software development and be able to explain them in detail.
_ be able to analyze tasks in teamwork and create solutions with the skills and tools learned.


[updated 26.02.2018]
Module content:
Students will be given an overview of sub-areas in software technology. They will get to know both classical and object-oriented process models in software development. The lecture will focus on object-oriented analysis and design. The most important diagrams from the Unified Modeling Language UML) will be applied and practiced with the help of practice-oriented examples, exercises and an OOA/D tool.
  
1. Introduction to and overview of software engineering
2. Process models
2.1. Waterfall model
2.2. V-Modell 97 and XT
2.3. Iterative incremental software development
2.3. Spiral model
2.4. Rational Unified Process
2.5. Agile process models
  
3. Details of process models
3.1 Feasibility study/functional specifications
3.2 Requirement analysis/technical specifications
3.3 Cost estimation
  
4. Static concepts of object-oriented analysis
4.1. Basic OO concepts
4.2. Static concepts
4.3. Class diagrams
  
5. Dynamic concepts of object-oriented analysis
5.1. Use cases and use case diagrams
5.2. Activity diagrams
5.3. Scenarios and sequence diagrams
5.4. State machines
5.5. Procedure for an analysis process
5.6. Analysis patterns
 
6. Design phase
6.1. Introduction to object-oriented design
6.2. Introduction and overview
6.3. Essential GoF patterns
  
7. Introduction to Software Quality Management
7.1. Introduction and overview
7.2. Software tests


[updated 19.02.2018]
Teaching methods/Media:
Transparencies, projector, lecture-specific homepage

[updated 19.02.2018]
Recommended or required reading:
Ludewig, Jochen; Lichter, Horst: Software Engineering. Grundlagen, Menschen, Prozesse, Techniken; dpunkt.verlag
Balzert, Heide: Lehrbuch der Objektmodellierung: Analyse und Entwurf mit der UML 2, Spektrum Akademischer Verlag
Balzert, Helmut, Lehrbuch der Softwaretechnik, Spektrum Akademischer Verlag Band 1 Software-Entwicklung
Oestereich Bernd, Objektorientierte Softwareentwicklung: Analyse und Design mit der UML 2.1, Oldenbourg
Ian Sommerville: Software Engineering; Pearson; München
Gamma, Erich / Helm, Richard / Johnson, Ralph / Vlissides, John: Entwurfsmuster _ Elemente wiederverwendbarer objektorientierter Software; Addison-Wesley; München / Boston
Rupp, Queins, Zengler: UML 2 Glasklar, Hanser
Martin Fowler: UML konzentriert; Addison-Wesley; München/Boston


[updated 19.02.2018]
Module offered in:
WS 2022/23, WS 2021/22, WS 2020/21, WS 2019/20, WS 2018/19
[Sun Jan 29 20:17:50 CET 2023, CKEY=ksb, BKEY=pi2, CID=PIB-SWT, LANGUAGE=en, DATE=29.01.2023]