An open API service indexing awesome lists of open source software.

https://github.com/pintergreg/software-engineering

software engineering teaching materials
https://github.com/pintergreg/software-engineering

behavior-driven-development c4-model clean-code code-quality code-review continuous-deployment continuous-integration legacy-code requirement-analysis risk-storming software-design software-engineering teaching-materials test-driven-development user-story-mapping wireframing

Last synced: about 1 month ago
JSON representation

software engineering teaching materials

Awesome Lists containing this project

README

          

# software engineering handout

The goal of this course is to provide a common foundation in software engineering for students from various backgrounds.
It aims to provide a shared terminology that enables experts in business informatics to be able to work seamlessly with software developers.
The course introduces the fundamentals of modern software development methodologies and life cycle models, with a focusing in detail on Scrum and Kanban.
The course covers requirements analysis and software architecture, both in theory and in practice.
During the practical classes, the students explore and document the requirements of a software system.

Then, during the second half of the semester, they design its architecture.
For requirements analysis, the course applies user story mapping in accordance with the agile principles.
For the software design, the course uses the C4 model, which is a set of hierarchical diagrams describing the architecture of a software system.
The practical classes are workshops in which the students work in teams on the project assignment under an instructor's guidance.
During the second half of the semester, lectures also cover topics such as code quality, code review, testing and automation.

## copyrighted materials

- the [how to run short & effective meetings](lectures/figures/borrowed/how_to_run_short_and_effective_meetings.jpg) comic is by [Sam Lau](https://www.samlau.xyz/about), and used with the author's permission
- the [let's hop on a quick call](lectures/figures/borrowed/quick_call.jpg) comic is by [Ash Lamb](https://ashlamb.com/), and used with the author's permission

## acknowledgements

- 2020-Scrum-Guide-US.pdf is by Ken Schwaber & Jeff Sutherland, downloaded from [scrumguides.org](https://scrumguides.org/) and licensed under [CC BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/)
- Kanban-Guide-2020-12.pdf is by Daniel Vacanti & John Coleman, downloaded from [kanbanguides.org](https://kanbanguides.org/english/) and licensed under [CC BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/)
- quickstart-guide-to-user-story-mapping.pdf is by Eben Halford, downloaded via [web archive](https://web.archive.org/web/20210615192510/https://www.beliminal.com/quickstart-guide-to-user-story-maps/) and licensed under [CC BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/)
- the Richard's guide to software development comic is by Oliver Knörzer & Puri Andini (Powree), downloaded from [sandraandwoo.com](https://www.sandraandwoo.com/2012/11/19/0430-software-engineering-now-with-cats/) and licensed under [CC BY-NC-ND 3.0](https://creativecommons.org/licenses/by-nc-nd/3.0/)

## used software

- [pandoc](https://pandoc.org/)
- [mdbook](https://github.com/rust-lang/mdBook)
- [markmap](https://github.com/markmap/markmap)

### included into this repo

- [reveal.js 5.2.1](https://github.com/hakimel/reveal.js)
- ieee.csl and apa.csl files are from https://github.com/citation-style-language/styles repository and licensed under [CC BY-SA 3.0](https://creativecommons.org/licenses/by-sa/3.0/)
- [quizdown 0.6.0](https://github.com/bonartm/quizdown-js)