Software Development

Application Development, Software Development Life Cycle, SDLC

What it covers

Software development is the whole discipline of turning a need into working software and keeping it working. The three seed names are one field seen from three angles: building software (the craft and the code), delivering an application (the work of getting it into use), and the software development life cycle (the phases from requirements through maintenance). None of them names a single learnable skill, which is why this page exists rather than a lesson.

Why it matters

Almost every expensive failure in the field is a failure at a boundary between these angles. A well-written component that nobody specified; a specification nobody tested against; a release nobody documented. Knowing what each part of the discipline is responsible for is what lets you notice when one of them has been skipped — and it is why this page points at six entries rather than one.

Included skills

Where to start

Start with Software Architecture and Clean Code to understand the shape of the thing you are building, then Unit Testing, which is what makes the shape changeable. Move on to Requirements Engineering to see how the work is agreed, and Agile Methodology for how it is delivered in short cycles with feedback. Technical Writing runs alongside them: it is how each decision survives the person who made it.