Resources
Free tutorials, official standards, tools and books, grouped by topic. Links open in a new tab.
ToolsBooks1. Team & planning2. LaTeX reports3. IEEE SRS4. SDLC models5. DFD levels 0–16. Use case diagrams7. Sequence & communication8. Class diagrams9. UI/UX & Figma
Tools used across the course
ToolOverleaf ↗Write and compile LaTeX in the browser; share one report with the whole team.Tooldraw.io (diagrams.net) ↗Free editor for DFDs and every UML diagram; no account needed.ToolVisual Paradigm Online ↗Online UML modeller recommended by the lab manual.ToolStarUML ↗Desktop UML modeller.ToolLucidchart ↗Online diagramming with DFD and UML shape libraries.ToolPlantUML ↗Write UML as text; keeps diagrams in version control.ToolFigma ↗Wireframes, UI design and clickable prototypes.ToolGanttProject ↗Free Gantt charts for the project plan.SearchGoogle Scholar ↗Papers for the literature review, with BibTeX export.ToolZotero ↗Free reference manager; exports .bib files.
Textbooks
Available in most university libraries; check the latest edition.
BookSoftware Engineering, 10th ed. — Ian SommervillePearson, 2015. Process models, requirements, system modelling with UML, design and testing.
BookSoftware Engineering: A Practitioner’s Approach, 9th ed. — Roger Pressman & Bruce MaximMcGraw-Hill, 2019. Broad coverage of process models, requirements and design.
BookSoftware Requirements, 3rd ed. — Karl Wiegers & Joy BeattyMicrosoft Press, 2013. The source of the SRS template used in the lab manual.
BookUML Distilled, 3rd ed. — Martin FowlerAddison-Wesley, 2003. The shortest useful guide to UML.
BookSystems Analysis and Design, 7th ed. — Alan Dennis, Barbara Wixom & Roberta RothWiley, 2018. Planning, feasibility, DFDs, use cases and class diagrams in one project-based book.
BookDon’t Make Me Think, Revisited — Steve KrugNew Riders, 2014. Usability in a weekend.
1. Team Formation, Project Assignment & Planning
ArticleGantt chart ↗History, parts of a Gantt chart, dependencies and the critical path.ToolGanttProject ↗Free desktop tool for Gantt charts, resources and milestones; exports to PDF and PNG.ToolProjectLibre ↗Free open-source alternative to Microsoft Project.ArticleFeasibility study ↗The TELOS categories and what each part of a feasibility study contains.ArticleSMART criteria ↗How to write objectives that are specific, measurable, achievable, relevant and time-bound.ArticleTuckman’s stages of group development ↗Forming, storming, norming, performing and adjourning.ArticleResponsibility assignment matrix (RACI) ↗Variants of RACI and how to build one.GuidePMI: Project Management Institute ↗The organisation behind the PMBOK Guide; articles on planning, risk and scheduling.SearchGoogle Scholar ↗Find papers for your literature review; use “Cite → BibTeX” to export references.
BookA Guide to the Project Management Body of Knowledge (PMBOK Guide), 7th ed.PMI, 2021. The standard reference for project planning, scheduling and risk.
2. Technical Report Writing with LaTeX
TutorialLearn LaTeX in 30 minutes (Overleaf) ↗The tutorial the lab manual links to: first document, text, maths, structure, figures and tables.DocsOverleaf: Mathematical expressions ↗Inline and display maths, with a list of common symbols.DocsOverleaf: Tables ↗tabular, multi-row and multi-column cells, booktabs and long tables.DocsOverleaf: Inserting images ↗graphicx options, floats, captions and labels.DocsOverleaf: Bibliography management with biblatex ↗Setting up biblatex, citation styles and the .bib file.DocsOverleaf: Algorithms ↗algorithm, algorithmic and algpseudocode in detail.DocsOverleaf: Code listing ↗listings and minted for source code.BookThe Not So Short Introduction to LaTeX (lshort) ↗A free, classic 100-page introduction, kept up to date on CTAN.ToolDetexify ↗Draw a symbol and it tells you the LaTeX command.ToolTables Generator ↗Build a table in a spreadsheet-like editor and copy the LaTeX code.CommunityTeX – LaTeX Stack Exchange ↗Search here first when you meet an error message.ToolZotero ↗Free reference manager that exports BibTeX for your whole reading list.
3. IEEE Software Requirements Specification (SRS)
ArticleSoftware requirements specification ↗Purpose of an SRS, typical structure and qualities.StandardIEEE 830-1998: Recommended Practice for SRS ↗The classic IEEE recommended practice the template is based on (IEEE Xplore; free via many university logins).StandardISO/IEC/IEEE 29148:2018 ↗The current international standard for requirements engineering, which replaced IEEE 830.ArticleNon-functional requirement ↗A long list of quality attributes with definitions.ArticleMoSCoW method ↗Must, Should, Could, Won’t prioritisation.ArticleRequirements traceability ↗Forward and backward traceability and the traceability matrix.GuideProcess Impact (Karl Wiegers) ↗Articles and templates by the author of the SRS template used in the lab manual.
BookSoftware Requirements, 3rd ed. — Karl Wiegers & Joy BeattyMicrosoft Press, 2013. The practical guide to eliciting, writing and managing requirements.
BookSoftware Engineering, 10th ed. — Ian SommervillePearson, 2015. Chapter 4 covers requirements engineering and the NFR classification.
4. SDLC Model Selection
ArticleSystems development life cycle ↗Overview of the stages and the major models.ArticleWaterfall model ↗History (Royce 1970), phases, and the arguments for and against.ArticleV-model ↗Verification and validation phases and how they pair up.ArticleSpiral model ↗Boehm’s risk-driven process model and its invariants.ArticleIterative and incremental development ↗How iterations and increments work together.ArticleSoftware prototyping ↗Throwaway and evolutionary prototypes.Primary sourceManifesto for Agile Software Development ↗The four values and twelve principles, in the authors’ own words.Primary sourceThe Scrum Guide ↗The official, short definition of Scrum’s roles, events and artifacts.GuideAtlassian Agile Coach ↗Practical guides to sprints, backlogs, boards and retrospectives.
BookSoftware Engineering: A Practitioner’s Approach, 9th ed. — Pressman & MaximMcGraw-Hill, 2019. Chapters on process models and agile development.
5. Data Flow Diagrams (DFD): Level 0 and Level 1
ArticleData-flow diagram ↗History, notations and levels.GuideLucidchart: What is a data flow diagram? ↗Symbols, levels, rules and examples — from the tool the lab manual uses.GuideVisual Paradigm: What is a DFD? ↗A step-by-step walk-through with a worked example.Tooldraw.io (diagrams.net) ↗Free diagram editor in the browser; no account needed, saves to Google Drive or your computer.ToolLucidchart ↗Online diagramming with a Data Flow shape library (free tier with a document limit).
BookStructured Analysis and System Specification — Tom DeMarcoYourdon Press, 1978. The book that popularised DFDs and the Yourdon/DeMarco notation.
BookSystems Analysis and Design, 7th ed. — Dennis, Wixom & RothWiley, 2018. Clear chapters on process modelling with DFDs and balancing.
6. UML Use Case Diagrams
Guideuml-diagrams.org: Use case diagrams ↗Precise UML notation with many examples, including include and extend.GuideVisual Paradigm: What is a use case diagram? ↗Tutorial from the tool the lab manual uses.GuideLucidchart: UML use case diagram tutorial ↗Symbols, relationships and examples.ToolPlantUML: use case diagrams ↗Write use case diagrams as text; works in Overleaf-friendly workflows and VS Code.ToolVisual Paradigm Online ↗Free online UML editor (the manual’s recommended tool).ToolStarUML ↗Desktop UML modeller (the manual calls it “StartUML”).StandardOMG Unified Modeling Language specification ↗The official UML standard (current version 2.5.1).
BookWriting Effective Use Cases — Alistair CockburnAddison-Wesley, 2000. The classic on use case descriptions, goals and scenarios.
BookUML Distilled, 3rd ed. — Martin FowlerAddison-Wesley, 2003. A short, practical guide to all the UML diagrams in this course.
7. UML Sequence & Communication Diagrams
Guideuml-diagrams.org: Sequence diagrams ↗Precise notation for lifelines, messages and every combined fragment.Guideuml-diagrams.org: Communication diagrams ↗Links, sequence numbers and nesting.GuideVisual Paradigm: What is a sequence diagram? ↗Tutorial with examples, from the tool used in the lab.GuideLucidchart: UML sequence diagram tutorial ↗Symbols and a step-by-step example.ToolPlantUML: sequence diagrams ↗Text-based sequence diagrams, including alt, opt and loop.ToolSequenceDiagram.org ↗Free browser tool: type messages and see the diagram instantly.ArticleSequence diagram ↗Overview and history.ArticleCommunication diagram ↗Overview and comparison with sequence diagrams.
BookUML Distilled, 3rd ed. — Martin FowlerAddison-Wesley, 2003. Chapter 4 (sequence) and chapter 12 (communication) are short and practical.
8. UML Class Diagrams
Guideuml-diagrams.org: Class diagrams ↗Complete notation reference with examples for every relationship.GuideVisual Paradigm: UML class diagram tutorial ↗Notation, relationships and a worked example.GuideLucidchart: UML class diagram tutorial ↗Symbols, multiplicity and examples.ToolPlantUML: class diagrams ↗Text-based class diagrams, easy to keep in version control.ToolMermaid: class diagrams ↗Class diagrams in Markdown; renders on GitHub.ToolStarUML ↗Desktop UML tool with code generation for Java and C#.ArticleClass diagram ↗Overview of elements and relationships.StandardOMG UML specification ↗The official definition of every symbol.
BookUML Distilled, 3rd ed. — Martin FowlerAddison-Wesley, 2003. Chapters 3 and 5 cover class diagrams, basic and advanced.
BookApplying UML and Patterns, 3rd ed. — Craig LarmanPrentice Hall, 2004. How to find classes from use cases and assign responsibilities.
9. UI/UX Foundations & Figma Wireframing
Article10 Usability Heuristics for User Interface Design (NN/g) ↗Jakob Nielsen’s heuristics with explanations and examples.ArticleWhy You Only Need to Test with 5 Users (NN/g) ↗The reasoning behind small, repeated usability tests.GuideLaws of UX ↗Short illustrated explanations of Fitts’s, Hick’s, Jakob’s law and more.StandardWCAG overview (W3C) ↗The Web Content Accessibility Guidelines and what is new in 2.2.ToolWebAIM Contrast Checker ↗Check any colour pair against WCAG AA and AAA.DocsFigma Help Center ↗Official guides to frames, components, auto layout, prototyping and Dev Mode.ToolFigma ↗Design and prototyping in the browser; free Starter plan and education plans for students.GuideMaterial Design 3 ↗Google’s design system: components, layout, colour and accessibility guidance.GuideApple Human Interface Guidelines ↗Apple’s platform design guidance, including touch targets and typography.ArticleSystem usability scale ↗The 10 SUS statements and how to calculate the score.
BookDon’t Make Me Think, Revisited — Steve KrugNew Riders, 2014. A short, funny classic on usability and simple testing.
BookThe Design of Everyday Things (revised ed.) — Don NormanBasic Books, 2013. Affordances, signifiers, feedback and human error.