Home | english  | Impressum | Datenschutz | Sitemap | KIT
Leitung H²T
+49 721 608 47379
asfourFun0∂kit edu

Institut für Anthropomatik und Robotik
Lehrstuhl für Hochperformante Humanoide Technologien
Adenauerring 2, Geb.50.20
76131 Karlsruhe

Sekretariat

Sprechstunde:

Mo. - Do.: 10:00h - 12:00h

Telefon: +49 721 608-48277
            +49 721 608-43547

Email: sekretariatEcq9∂humanoids kit edu

Praxis der Softwareentwicklung (PSE)

Praxis der Softwareentwicklung (PSE)
Typ: Vorlesung (V) Links:
Semester: SS 2019
Dozent: Andreas Fried
Prof. Dr.-Ing. Gregor Snelting
SWS: 4
LVNr.: 2400150
VoraussetzungenDie Voraussetzungen werden in der Modulbeschreibung erläutert.
AnmerkungPSE und TSE müssen zusammen belegt werden.
KurzbeschreibungObjektorientierte Entwicklung eines Softwaresystems im Team.
Arbeitsbelastung6 SWS entspricht ca 180 Arbeitsstunden pro Teilnehmer, davon

ca 25 Std Erstellung des Pflichtenheftes

ca 50 Std Erstellung des Entwurfsdokument

ca 50 Std Implementierung

ca 50 Std integrierte Qualitätssicherung

ca 5 Std Erstellung/ Vorbereitung der Abschlusspräsentation.

Der gesamte Projektaufwand ist incl. TSE für ein 5-er Team also ca. 1200 Arbeitsstunden

ZielDie Studierenden lernen, ein vollständiges Softwareprojekt nach dem Stand der Softwaretechnik in Teams von 4-6 Teilnehmern durchzuführen. Ziel ist es inbesondere, Verfahren des objektorientierten Software-Entwurfs und der Qualitätssicherung praktisch einzusetzen, Implementierungskompetenz umzusetzen, und arbeitsteilig im Team zu kooperieren. Die Teilnehmer erstellen ein Pflichtenheft von ca. 30 Seiten, ein Entwurfsmodell mit ca 75 Klassen, eine Entwurfsdokumentation von ca. 80 Seiten, eine validierte Implementierung mit ca. 10000 Zeilen Quelltext, eine Implementierungs-dokumentation von ca. 15 Seiten, und eine Qualitätssicherungsdokumentation von ca 25 Seiten. Die Teilnehmer stellen ihr Projekt in einer Abschlusspräsentation (ca 15 min) vor.

Dazu werden von den betreuenden Lehrstühlen Aufgabenstellungen vorbereitet, die einen ähnlichen Umfang und ein objektorientiertes Prozessmodell gemeinsam haben, jedoch inhaltlich die Forschungsinteressen des Lehrstuhls widerspiegeln („forschungsorientiertes Lernen“).Erfolgreiche Teilnehmer beherrschen die Erstellung eines Pflichtenheftes incl. GUI-Beispielen und Use Cases (Testfallszenarien), sowie Unterscheidung nach Muss- und Wunschfunktionalität. Sie beherrschen objektorientierten Entwurf mit UML, insbesondere Klassendiagramm und Sequenzdiagramm; sowie die Darstellung der Systemarchitektur, der Methoden-spezifikationen und die Umsetzung der Testfallszenarien im Entwurfsdokument. Siebeherrschen Techniken der Modularisierung (Kohäsion, Kopplung, Lokalitätsprinzip etc) sowie den Ersatz von Fallunterscheidung durch dynamische Bindung. Sie können Techniken der informellen und evtl. formalen Spezifikation anwenden und beurteilen, und Entwurf/Klassendiagramm anhand softwaretechnischer Kriterien begründen.

Erfolgreiche Teilnehmer beherrschen die arbeitsteilige Implementierung des Entwurfs durch profunde Kenntnis einer objektorientierten Sprache (vgl. Veranstaltung „Programmieren“), der dazugehörigen (aufgabenspezifischen) Werkzeuge undBibliotheken, und durchintegrierte Techniken zur Qualitätssicherung. Sie können ihr System mittels Komponententest (zB Junit), Überdeckungstests (zB JCov), Integrationstests und evtl. formalen Verifikation kritischer Komponenten validieren. Sie können Systemanforderungen bewerten und ggf. den Entwurf nachträglich anpassen. Sie kennen ggf. agile Techniken zur Implementierung (zB Pair Programming).Sie stellen Änderungen an Pflichtenheft und Entwurf im Implementierungsdokument dar, und bewerten die Systemqualität anhand von Statistiken (u.a. Testfall-Überdeckungsmaße) undAnalysen gefundener Fehler im Qualitätssicherungsdokument.

Die Teilnehmer präsentieren zum Schluss ihr Projekt so, dass sowohl ein einprägsamer Gesamteindruck des erstellten Systems entsteht, als auch softwaretechnische Details nebst Erfahrungen der Teamarbeit sichtbar werden.

Roboter Trajektorien Designer
Themenbeispiel: Trajektoriendesigner
RoboCorder
Themenbeispiel: RoboCorder
 

Im Rahmen der Lehrverstanstaltung Praxis der Softwareenwicklung (PSE) wird für gewöhnlich jedes Semester am H2T ein Thema angeboten, das Softwareentcklung im Rahmen der Robotik behandelt.

Diese Themen reichen von intuitiver Steuerung des Roboters mittels Android-Tablets über 3D-Trajektoriendesigner bis zur Anomaliedetektion in den Sensoren des Roboters.

Genauere Informationen zu PSE und welches Thema für das aktuelle Semester angeboten wird, können auf der Hauptseite von PSE beim Lehrstuhl von Prof. Snelting abgerufen werden.