Software engineering
Software Engineering
5 self-contained study topics — notes, diagrams, formulas, and worked examples for exams and GATE.
Topics
- Software Development Life CycleThe software development life cycle organises development into phases; models like Waterfall, V, spiral and Agile differ in how they sequence and iterate those phases to manage risk, change and cost.
- Requirements EngineeringRequirements engineering elicits, analyses, specifies and validates what a system must do (functional) and how well (non-functional), producing a clear, traceable and prioritised specification that drives the rest of development.
- UML and Design ModellingUML is a standard visual notation for modelling software: structural diagrams (class, component) show what the system is made of, while behavioural diagrams (use case, sequence, state) show how it behaves.
- Agile and ScrumAgile delivers software in short iterations with continuous feedback; Scrum implements this with defined roles, time-boxed sprints, and artifacts like the backlog and burndown chart to plan and track work.
- Software MetricsSoftware metrics quantify size, complexity and quality — defect density, cyclomatic complexity and reliability measures like MTBF — to inform decisions about testing effort, maintainability and release readiness.