Blog
Mert Özen's blog posts on software development, backend, frontend, and DevOps.
Choosing the Right SDLC Model for Your Project, Team and Risk Profile
The right SDLC model is chosen by the project's risk profile, not the team's habits: requirements uncertainty, regulation, contract type, deployment cost and access to feedback. We use Cynefin to separate complicated from complex problems, build a decision table, and honestly describe conscious hybrid models for Bookstore's bank integration, subscription product and internal reporting work.
From Waterfall to Agile and DevOps: Why the Feedback Loop Shrank from Months to Hours
The feedback loop shrank as the fixed cost of deployment fell: cheaper deployments meant smaller batches, and smaller batches reduced both risk and the time to find a bug. We trace the line from the lightweight methods of the 1990s to the Agile Manifesto, DevOps in 2009 and Continuous Delivery, and cover DORA's five metrics, shift-left and the water-scrum-fall trap of running sprints while still releasing once a quarter.
Incremental, Iterative and Spiral Models: Surfacing Risk Early
Incremental development adds the system part by part, iterative development builds the whole roughly and reworks it; Cockburn recommends using both together. We start Bookstore's checkout with a walking skeleton and grow it in slices, and cover Boehm's risk-driven Spiral model, throwaway vs evolutionary prototypes, RAD and RUP's four phases, together with the pitfall of mini-Waterfall disguised as iterations.
The V-Model: Pairing Every Development Step with a Test Level
In the V-Model testing isn't done last, it's designed on the left arm: requirements pair with acceptance tests, system design with system tests, architecture with integration tests, module design with unit tests. We tie Bookstore's 14-day return rule to its requirement with xUnit v3 traits, list the four tests of REQ-RET-01 with one command, and see in real test output which requirement a boundary bug breaks.
The Waterfall Model: What Royce Actually Said in 1970
In his 1970 paper Royce drew the single-pass model but immediately called it risky, because problems such as timing and memory first appear in testing and force a redesign. We cover his five fixes (program design first, document it, do it twice, plan testing, involve the customer), the story of the name "Waterfall" and DOD-STD-2167, and how integration blows up in the last month of Bookstore's returns feature.
What Is the SDLC? A Software System's Life from Idea to Retirement
The SDLC (Software Development Life Cycle) is the full set of phases software goes through from idea to retirement: requirements, design, implementation, test, deployment, operations and retirement; models don't change the phases, only their order and repetition. Using Bookstore's returns feature we look at each phase's output, the weight of maintenance, the four process groups of ISO/IEC/IEEE 12207:2026 and the forgotten retirement phase.