Skip to content

Resources

This page collects references that remain useful beyond a single lecture.

Core references

  • Ian Sommerville, Software Engineering.
  • Roger S. Pressman and Bruce R. Maxim, Software Engineering: A Practitioner's Approach.
  • Martin Fowler, Refactoring.
  • Robert C. Martin, Clean Architecture and selected parts of Clean Code.
  • Eric Evans, Domain-Driven Design (selected concepts for advanced reading).

Standards and bodies of knowledge

  • ISO/IEC/IEEE 12207 — software lifecycle processes.
  • ISO/IEC 25010 — software product quality model.
  • IEEE Software Engineering Body of Knowledge (SWEBOK).
  • OWASP resources for application security and secure development.

Engineering tools

Need Typical tools
Version control Git, GitHub/GitLab
Issue tracking GitHub Issues, GitLab Issues, Jira
Modeling PlantUML, Mermaid, diagrams.net
Testing pytest, JUnit, NUnit, Jest, Playwright/Selenium
CI GitHub Actions, GitLab CI, Jenkins
Quality linters, formatters, static analyzers, coverage tools
Security dependency scanning, secret scanning, SAST/DAST tools

The course focuses on transferable concepts rather than tool memorization. Equivalent tools may be used when they support the same engineering objective.