621.200 (09W) Software Engineering I

Wintersemester 2009/10

Registration deadline has expired.

First course session
07.10.2009 09:00 - 11:00 HS 1 On Campus
... no further dates known

Overview

Lecturer
Course title german Software Engineering I
Type Lecture
Hours per Week 2.0
ECTS credits 2.0
Registrations 162
Organisational unit
Language of instruction German
Course begins on 01.10.2009

Time and place

List of events is loading...

Course Information

Teaching methodology including the use of eLearning tools

Vorlesung

Course content

Software Engineering behandelt Methoden zur effizienten Entwicklung, Wartung und Qualitätssicherung von langlebigen, umfangreichen Software-Systemen. Software Engineering I führt in diesen Themenkreis über die Wartungsproblematik von (alten), bestehenden Software-Systemen ein. Insbesondere werden Methoden zur Analyse und Erweiterung von bestehenden Systemen sowie Testmethoden behandelt. Die Neuentwicklung von Software-Systemen wird Gegenstand von Software Engineering II sein.

Topics

  • Einführung und Überblick : Wartung, Reengineering, Reverse Engineering
  • Software Comprehension
  • Reverse engineering of object oriented & Visualization
  • Architektur und Architekturbeschreibungen (Prinzipien, Architekturstile)
  • Architekturmuster (Beispielsarchitekturen und Architekturmuster, klassische Architektur¬formen, SOA)
  • Modellierung mit Petri Netze
  • Analyse von Nebenläufgkeit: Prüfung von PN auf Sicherheit und Lebendigkeit.
  • Artefakt-Metriken (Code-Metriken); Unterstützungswerkzeuge f. Comprehension in the Large (Rigi, …)
  • Verstehen klassischer Entwurfsparadigma: Entwurfsstile, SD-Prinzipien
  • Spezialfragen (Ideome) und Entwurfsmuster (soweit nicht in OO Mod+Imp behandelt)
  • Testtechniken Übersicht, Black-Box
  • Testtechniken: White Box
  • Objektorientierte Testen
  • Configuration Management

Keywords

Wartung, Reverse Engineering, Testen, Petri-Netze, Configuration Management

Teaching objective

Vermittlung von Software-Engineering Wissen und Fähigkeiten, die nötig sind, um lang-lebige, qualitätsvolle Software-Systeme effizient zu entwickeln und zu warten. Methodik: - Durch Einstieg über die Wartungsproblematik sollte den Studierenden die Bedeutung guten SEs plausibel gemacht werden. - Weiters sollte die Wartungs-Betonung künftige Berufsbilder vieler Absolventinnen und Absolventen berücksichtigen. - Es sollte eine Basisliteratur zur LV geben. Ggf. unterschiedliche Bücher für SE I und SE II. - Die in der Vorlesung behandelten Themengebiete sollten im Praktikum vertieft, aber nicht wiederholt werden. - Im 3. Semester wird auf Wartung (korrektiv und evolutorisch) fokussiert. im 4. Semester wird dann auch auf Erstentwicklung eingegangen. - Es sollte weiters ein größeres Semester-Projekt in Gruppenarbeit von der Analyse bis zur Qualitätssicherung durchgängig entwickelt und auch (wenigstens in Teilen) getestet werden. (Tests finden schon im 3. Sem. statt).

Prior knowledge expected

- Einführung in die strukturierte und objekt-orientierte Programmierung (ESOP) - Objekt-orientierte Implementierung von Algorithmen und Datenstrukturen (OOP) - Programmiersprache Java

Other materials

Eclipse-Entwicklungsumgebung; weitere Werkzeuge werden in der VO und im PR vorgestellt.

Literature

- Serge Demeyer, Stéphane Ducasse, Oscar Nierstrasz: Object-oriented reengineering patterns, Morgan Kaufmann, 2003. - Ian Sommerville: Software engineering, 8. ed., Addison-Wesley, 2007. (Lehrbuchsammlung) - Ilene Burnstein: Practical software testing : a process-oriented approach, Springer, 2003.

Examination information

Im Fall von online durchgeführten Prüfungen sind die Standards zu beachten, die die technischen Geräte der Studierenden erfüllen müssen, um an diesen Prüfungen teilnehmen zu können.

Examination topic(s)

Vorlesungsmaterial

Assessment criteria / Standards of assessment for examinations

Schriftliche Schlussprüfung (Ohne Unterlagen)

Grading scheme

Grade / Grade grading scheme

Position in the curriculum

  • Bachelorstudium Informatik (SKZ: 521, Version: 09W.3)
    • Subject: Softwareentwicklung (Compulsory subject)
      • Software Engineering I: Wartung, Re- und Reverse Engineering ( 2.0h VO / 2.0 ECTS)
        • 621.200 Software Engineering I (2.0h VO / 2.0 ECTS)
  • Bachelor's degree programme Informatics (SKZ: 521, Version: 03W.1)
    • Subject: Softwareentwicklung (Compulsory subject)
      • Softwareentwurf, -test und -entwicklungsprozess ( 3.0h VO / 3.0 ECTS)
        • 621.200 Software Engineering I (2.0h VO / 2.0 ECTS)
  • Diploma programme Informatics (SKZ: 880, Version: 02W)
    • Stage two
      • Subject: Softwareentwicklung (Compulsory subject)
        • Softwareentwurf, -test und -entwicklungsprozess ( 3.0h VO / 3.0 ECTS)
          • 621.200 Software Engineering I (2.0h VO / 2.0 ECTS)
  • Bachelor's degree programme Information Management (SKZ: 522, Version: 05W.4)
    • Subject: Grundlagen der Informatik und Softwareentwicklung I + II (Compulsory subject)
      • Module: Grundlagen der Informatik und Softwareeentwicklung II
        • Software Engineering I: Wartung, Re- und Reverse Engineering ( 2.0h VO / 3.0 ECTS)
          • 621.200 Software Engineering I (2.0h VO / 2.0 ECTS)
  • Bachelor's degree programme Information Technology (SKZ: 289, Version: 06W.1)
    • Subject: Informatics and Software Engineering (Compulsory elective)
      • Module: Softwareentwurf, -test und -entwicklungsprozess
        • Vorlesung (Softwareentwurf, -test und -entwicklungsprozess) ( 3.0h VO / 4.5 ECTS)
          • 621.200 Software Engineering I (2.0h VO / 4.5 ECTS)

Equivalent courses for counting the examination attempts

Wintersemester 2023/24
  • 621.200 VO Software Engineering I (2.0h / 2.0ECTS)
Wintersemester 2022/23
  • 621.200 VO Software Engineering I (2.0h / 2.0ECTS)
Wintersemester 2021/22
  • 621.200 VO Software Engineering I (2.0h / 2.0ECTS)
Wintersemester 2020/21
  • 621.200 VO Software Engineering I (2.0h / 2.0ECTS)
Wintersemester 2019/20
  • 621.200 VO Software Engineering I (2.0h / 2.0ECTS)
Wintersemester 2018/19
  • 621.200 VO Software Engineering I (2.0h / 2.0ECTS)
Wintersemester 2017/18
  • 621.200 VO Software Engineering I (2.0h / 2.0ECTS)
Wintersemester 2016/17
  • 621.200 VO Software Engineering I (2.0h / 2.0ECTS)
Wintersemester 2015/16
  • 621.200 VO Software Engineering I (2.0h / 2.0ECTS)
Wintersemester 2014/15
  • 621.200 VO Software Engineering I (2.0h / 2.0ECTS)
Wintersemester 2013/14
  • 621.200 VO Software Engineering I (2.0h / 2.0ECTS)
Wintersemester 2012/13
  • 621.200 VO Software Engineering I (2.0h / 2.0ECTS)
Wintersemester 2011/12
  • 621.200 VO Software Engineering I (2.0h / 3.0ECTS)
Wintersemester 2010/11
  • 621.200 VO Software Engineering I (2.0h / 2.0ECTS)