This is a free and open-source SE textbook under the SE-EDU initiative.
Requirements
Gathering requirements
Specifying requirements
Design
Design fundamentals
Modeling
Architecture
Design patterns
Design approaches
IDEs
Code quality
Refactoring
Documentation
Error handling
Integration
Reuse
Quality assurance
Testing
Test case design
Revision control
Project planning
Teamwork
Process models
UML
IntelliJ IDEA
Git and GitHub
C++ to Java
Combined exercises
List of definitions
List of references
List of learning outcomes
Printable version