Software
Engineering.
Understand how teams plan, build, test, and improve software.
Course weeks
10 weeks availableThe foundations of software engineering
Components and the development lifecycle. Waterfall, Spiral, and Agile.
14 study sections · 31 illustrations · Revision questionsSoftware requirements
Stakeholders, requirement gathering, SRS, and SMART user stories.
19 study sections · 33 illustrations · Revision questionsSoftware user interfaces
Interaction design, usability goals, prototyping, and design heuristics.
7 study sections · 40 illustrations · Quick revisionSoftware project management
Estimation, scheduling, risk management, Scrum, and Pivotal Tracker.
6 study sections · 44 illustrations · Practice questionsSoftware design
Modularity, coupling and cohesion, object-oriented design, UML, and VeriSIM.
5 study sections · 47 illustrations · Self-check questionsSoftware development
Development tools, Git, issue tracking, code review, debugging, metrics, and clean code.
6 study sections · 68 illustrations · Self-check questionsArchitecture, SOLID, and design patterns
Architecture styles, maintainable object-oriented design, and choosing the right pattern.
6 study sections · 40 illustrations · Revision questionsSoftware testing
Test cases, coverage, pytest, test-driven development, integration, and system testing.
48 study sections · 47 illustrations · Revision questionsSoftware deployment and monitoring
Environments, rollout strategies, hosting, CI, performance, and monitoring.
9 study sections · 54 illustrations · Practice and glossarySoftware organizations and teamwork
Professional roles, communication, knowledge sharing, productivity, and engineering judgement.
3 study sections · 27 illustrations · Practice and revision