Technische Universität Ilmenau

Software Engineering 2 - Modultafeln of TU Ilmenau

The Modultafeln have a pure informational character. The legally binding information can be found in the corresponding Studienplan and Modulhandbuch, which are served on the pages of the course offers. Please also pay attention to this legal advice (german only). Information on place and time of the actual lectures is served in the Vorlesungsverzeichnis.

subject properties Software Engineering 2 in major polyvalenter Bachelor Polyvalenter Bachelor mit Lehramtsoption für berufsbildende Schulen - Metalltechnik 2013 (IN)
subject number100564
examination number2200379
departmentDepartment of Computer Science and Automation
ID of group 223A (Group for Software Architectures and Product Lines)
subject leader Dr. Detlef Streitferdt
term Sommersemester
languageDeutsch
credit points3
on-campus program (h)34
self-study (h)56
Obligationobligatory
examwritten examination performance, 90 minutes
details of the certificate

Schriftliche Prüfung.

Signup details for alternative examinations
maximum number of participants60
previous knowledge and experience

Softwaretechnik 1

learning outcome

Fachkompetenz: Die Studierenden verfügen über anwendungsorientiertes Wissen zu Werkzeugen der Anforderungserhebung und –modellierung, der Prozessmodellierung und – anpassung, der
Aufwandsschätzung, des Softwaretests, der Produktlinienentwicklung und der Wartung von Software.

Methodenkompetenz: Die Studierenden kennen den methodischen Hintergrund zu den vorgestellten Werkzeugen / Verfahren und sind daher in der Lage auch neue Problemstellungen zu lösen. Sie können aus den vorgestellten Methoden jeweils die passenden auswählen.

Systemkompetenz: Die Studierenden können die vorgestellten Methoden und Werkzeuge in
Projekten unterschiedlicher Domänen anwenden.

Sozialkompetenz: Die Studierenden kennen die Bedeutung und den Einfluss der erlernten
Methoden und Werkzeuge innerhalb einen Firma. Sie können daher Ihr jeweiliges Vorgehen und die
Ergebnisse auf die Erfordernisse eines Projektes in einer Organisation abstimmen.

content

Diese Vorlesung vertieft die Inhalte der Softwaretechnik. Durch den Anwendungsbezug und
die vorgestellten Entwicklungswerkzeuge werden theoretische Kenntnisse umgesetzt. Die bekannten
Phasen des Softwareentwicklungszyklus werden durch Themen vertieft, deren Bedeutung im industriellen Praxiseinsatz hoch ist.

 

  • Requirements Engineering (RE) - Als eine der wichtigen Grundvoraussetzungen für hochwertige Systeme gilt die Requirements Engineering Phase. Die wichtigsten Technologien werden vorgestellt und eingesetzt. 

- Elicitation, Modeling, Validation/Verification

- Goal-Oriented RE

- Traceability

- RE Tool Support

 

  • Softwareprozessmodellierung - Nutzung und Anpassung von Entwicklungsprozessen mit zugehörigen Artefakten (z. B. Checklisten, Dokumentvorlagen,Werkzeugen, Rollenkonzept, …). Je nach Anforderung, sollen einzelne oder ganze Prozesse erzeugt und effizient eingesetzt werden, um eine Entwicklergruppe bestmöglich zu unterstützen.

- Modellierung von Softwareentwicklungsprozessen (Wiederverwendung von Methoden- / Prozessschritten)
- Tailoring von SW-Entwicklungsprozessen

 

  • Langlebige Systeme - Das Wissen um den Lebenszyklus von Softwaresystemen ist entscheidend für deren Entwicklung und zukünftigen Erfolg. Die geforderte Stabilität langlebiger Systeme (z. B. mehr als 30 Jahre) muss sich im Entwurf der Systeme wiederfinden.

-  Design for Stability
- Reengineering
- Refactoring
- SW Wartung, Wartbarkeit

  • Automatisiertes Testen - Veränderungen in den Anforderungen oder auch Fehlerbereinigungen führen zu der Notwendigkeit das System erneut testen zu müssen. Hierbei sind automatisierte Testansätzehilfreich. Zum einen lassen sie Änderungen an Testmodellen zu, aus denen Testfälle generiert werden. Zum anderen können Testfälle mit unterschiedlichen Zielen generiert werden, z. B. der Verbesserung der Codeabdeckung.

- Einordnung in den SW-Entwicklungsprozess
- Testmodellierung
- Testfallableitung
- Analyse von Testergebnissen

  • Software Produktlinien - Der immer häufiger angewandte Produktlinienansatz erfordert ein Umdenken während des gesamten Entwicklungszyklus. Sollen später Produkte generiert und nicht jeweils als Eigenentwicklung entstehen, sind folgende Themen relevant:

- Merkmalmodelle (variable / gemeinsame Systemanteile)
- Produktlinien Architekturen
- Domänenspezifische Sprachen
- Testen von Produktlinien
- Generieren von Applikationen aus einer Produktlinie

media of instruction

Bücher, Webseiten, Wissenschaftliche Paper, Open Source/Kommerzielle – Werkzeuge

literature / references

[Boec 2004] Günter Böckle, Peter Knauber, Klaus Pohl, Klaus Schmid, ”Software-Produktlinien: Methoden, Einführung und Praxis”, dpunkt.Verlag GmbH, 2004.

[Broo 1995] Frederick P. Brooks, Jr., "The Mythical Man Month", Addison-Wesley, 1995.

[Fowl 1999] Martin Fowler, ”Refactorings – Improving the Design of Existing Code”, Addison Wesley, 1999.

[Gamm 1995] Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, ”Design Pattern – Elements of Reusable Object-Oriented Software”, Addison Wesley, 1995.

[Lams 2009] Axel van Lamsweerde, "Requirements Engineering: From System Goals to UML Models to Software Specifications", John Wiley & Sons, 2009.

[McCo 2006] Steve McConnell, "Software Estimation", Microsoft Press, 2006.

[Pohl 2005] Klaus Pohl, Günter Böckle, Frank van der Linden,"Software Product Line Engineering – Foundations, Principles, and Techniques", Springer, Heidelberg 2005.

[Pohl 2008] Klaus Pohl, "Requirements Engineering: Grundlagen, Prinzipien,Techniken", dpunkt.Verlag GmbH, 2008.

[Robe 1999] Suzanne Robertson, James Robertson, "Mastering the Requirements Process", Addison-Wesley, 1999.

[Rooc 2004] Stefan Roock, Martin Lippert, ”Refactorings in großen Softwareprojekten”, dpunkt.Verlag GmbH, 2004.

[Somm 2007] Ian Sommerville,”Software Engineering”, Pearson Studium, 2007.

[Wieg 1999] Karl E. Wiegers, "Software Requirements", Microsoft Press, 1999.

[Your 1997] Edward Yourdon, "Death March", Prentice-Hall, 1997.

evaluation of teaching

Pflichtevaluation:

SS 2017 (Fach)

Freiwillige Evaluation:

SS 2012 (Vorlesung)

SS 2013 (Vorlesung)

Hospitation: