Develop the software.
Improve the code.
An illustrated guide to development tools, Git, issue tracking, code review, debugging, software metrics, and clean code.
FROM DESIGN TO DEVELOPMENTStudy sections
Follow the order or choose a sectionModule 1 · Introduction to Software Development
Requirements describe what people need, interface designs show what users see, and software design describes how the parts fit together…
02Module 2 · Version Control Systems
When different developers change the same application, an accidental defect can enter the code. Version history records earlier states…
03Module 3 · Issue Tracking and Code Review
An issue is reported by a developer, tester or user and must be saved and tracked until it is fixed. An issue tracking system manages a…
04Module 4 · Debugging
Error = discrepancy between actual behaviour and intended behaviour. Failure = an observable error (incorrect output value, exception e…
05Module 5 · Software Metrics
Clean code is easier for team members to understand, easier to test and debug, and easier to maintain or extend later. A program that p…
06Module 6 · Writing Clean Code
A code smell is a warning sign that code may be difficult to understand, change or maintain. The program might still run and produce th…
How to study: Read one short explanation, inspect the matching illustration, then test yourself using the review questions. Figure numbers follow the 01–68 figure sequence.
Week 7 learning route
Figures 01–08: Introduction to Software Development. From requirements and design to code, programming environments, frameworks and web templates.
Figures 09–28: Version Control Systems. How Git records history, how repositories communicate and how teams use branches, merging and rebasing.
Figures 29–38: Issue Tracking and Code Review. How teams report problems, manage issues, review pull requests and collaborate on better code.
Figures 39–51: Debugging. Find and explain faults with input manipulation, logging, tracing, profilers and Python pdb.
Figures 52–59: Software Metrics. Use quantitative measurements of complexity, source lines and comments, alongside qualitative review.
Figures 60–68: Writing Clean Code. Spot maintainability problems and refactor without changing the observable behaviour of a program.
