<style data-src="../seminars.css"></style>

# #SWD21

<lively-import src="../_navigation.html"></lively-import>


[HPI](https://hpi.de/studium/im-studium/lehrveranstaltungen/it-systems-engineering-ma/lehrveranstaltung/sose-21-3178-software_design.html)

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.

## Projects

- [Alexander Junger und Mark Bader: ECS for Programming Novices (@Tom)](project_1/index.md)
- [Sven Kästle und Nicolas Walk: Pipes and Filters (@Jens)](project_2/index.md)
- [Philipp Gampe: Event Sourcing (@Jens)](project_3/index.md)
- [Teresa Lasarow: Croquet (@Jens)](project_4/index.md)

## Literature

- [Explorable Explanations](http://worrydream.com/#!/ExplorableExplanations)
- [Learnable Programming](http://worrydream.com/#!/LearnableProgramming)

<lively-bibtex>

@article{Gamma1994DPE,
    author = {Erich Gamma and Richard Helm and Ralph Johnson and John Vlissides and Grady Booch},
    title = {Design Patterns: Elements of Reusable Object-Oriented Software},
    year = {1994},
    microsoftid = {2955158802},
    booktitle = {Katarxis Nº 2: On Contemporary New Traditional Architecture and Urbanism}
}

@book{Buschmann1996POS,
    author = {Frank Buschmann and Regine Meunier and Hans Rohnert and Peter Sommerlad and Michael Stal},
    title = {Pattern-Oriented Software Architecture Volume 1: A System of Patterns},
    year = {1996},
    microsoftid = {3261618}
}

@article{Ingalls2020ESS,
    author = {Daniel Ingalls},
    title = {The evolution of Smalltalk: from Smalltalk-72 through Squeak},
    year = {2020},
    microsoftid = {3034286476},
    booktitle = {Proceedings of the ACM on Programming Languages},
    doi = {10.1145/3386335}
}


</lively-bibtex>