Softwaredesign (Sommersemester 2024)
Lecturer:
Prof. Dr. Robert Hirschfeld
(Software-Architekturen)
,
Dr. Jens Lincke
(Software-Architekturen)
,
Marcel Taeumel
(Software-Architekturen)
,
Stefan Ramson
(Software-Architekturen)
,
Tom Beckmann
(Software-Architekturen)
,
Leonard Geier
(Software-Architekturen)
,
Lukas Böhme
(Software-Architekturen)
General Information
- Weekly Hours: 4
- Credits: 6
- Graded:
yes
- Enrolment Deadline: 01.04.2024 - 30.04.2024
- Examination time §9 (4) BAMA-O: 01.07.2024
- Teaching Form: Project seminar
- Enrolment Type: Compulsory Elective Module
- Course Language: German
- Maximum number of participants: 25
Programs, Module Groups & Modules
- HCGT: Human Computer Interaction & Computer Graphics Technology
- HPI-HCGT-K Konzepte und Methoden
- HCGT: Human Computer Interaction & Computer Graphics Technology
- HPI-HCGT-S Spezialisierung
- HCGT: Human Computer Interaction & Computer Graphics Technology
- HPI-HCGT-T Techniken und Werkzeuge
- SAMT: Software Architecture & Modeling Technology
- HPI-SAMT-K Konzepte und Methoden
- SAMT: Software Architecture & Modeling Technology
- HPI-SAMT-S Spezialisierung
- SAMT: Software Architecture & Modeling Technology
- HPI-SAMT-T Techniken und Werkzeuge
- SYSE: Systems Engineering
- HPI-SYSE-K Konzepte und Methoden
- SYSE: Systems Engineering
- HPI-SYSE-T Techniken und Werkzeuge
- SYSE: Systems Engineering
- HPI-SYSE-S Spezialisierung
Description
Softwareentwicklung ist ein kreativer Prozess, in dem Ideen entwickelt und deren Umsetzung in Systeme überprüft und falls notwendig revidiert werden. Einige so entstandene Systemstrukturen und die in diesen zu beobachtenden Abläufe sind durch ihre Klarheit auch für andere als den ursprünglich behandelten Problemraum von Bedeutung.
Im Rahmen dieser Veranstaltung werden ausgewählte Systeme hinsichtlich relevanter Entwurfsentscheidungen und deren Umsetzung besprochen.
Lehrinhalte
- Softwarearchitekturen
- Entwurfsmuster
- Entwurfsentscheidungen
- Softwaresysteme: Programmiersprachen, Frameworks und Anwendungen
Requirements
- In-depth knowledge in at least one dynamic programming language
- Knowledge of JavaScript, Squeak/Smalltalk, Java or Python and associated technologies helpful, but not required
Learning
Project-Seminar
Examination
Grading will take place based on the work on one of the projects. To complete the course, the following requirements are to be fulfilled:
To obtain the six credits, the following requirements are to be fulfilled:
- Work on a project topic, regular demonstration of progress, quality of code (50%)
- Final presentation of results (30%)
- Documentation of topic, its background, results, and software design decisions (20%)
One week before the final presentation, students will submit a draft of their current slides for feedback. One day before the final presentation, students will submit
- sources (e.g. PPTX) of the presentation slides,
- a PDF version of the presentation,
- current state of the project’s source code, and
- a short screencast (mp4)
All source code created during this seminar will be licenced under the MIT license.
Dates
Themenvergabe:
Zurück