Deployment Pipeline with Progressive Rollout and Automatic Rollback
A deployment controller that releases a new version to a small share of traffic, watches error and latency metrics, and rolls back automatically when they degrade. Building the control loop yourself is the project, and it is a proper distributed systems exercise.
Advanced
Needs a team, real planning, and a supervisor who knows the area.1 semester, 2 to 3 students
5 to ship
3 optional extrasSuggested stack
What you should ship
- Traffic splitting between versions at a configurable percentage
- Metric evaluation comparing the new version against the current one on error rate and latency
- Automated promotion and rollback driven by defined thresholds over a defined observation window
- Deployment history with the metric evidence for every promotion and rollback decision
- Demonstration with a deliberately broken release, showing detection time and rollback time
If you have time left
- Statistical significance testing so a small sample does not trigger a spurious rollback
- Automatic rollback on a dependent service degrading rather than only the deployed one
- Session affinity so a user does not move between versions mid session
The problem
Most deployments are all or nothing, and problems are found by users. Progressive delivery limits the blast radius, but doing it manually means someone watching dashboards, which does not scale and does not happen at three in the morning.
What you build
Traffic splitting, a comparative metric evaluator, an automated promotion and rollback loop, and an auditable decision history.
The control loop is the computer science
Deciding whether a new version is worse is a statistics problem disguised as an operations one. Compare against the current version rather than a fixed threshold, since a spike affecting both is an environmental problem and not a bad release. Require a minimum sample before deciding, or you will roll back on three unlucky requests.
The demonstration that proves it
Deploy something deliberately broken: a version with a five percent error rate, a version that is slow only under load, a version that fails only for certain inputs. Report detection time and rollback time for each. That table is the strongest thing in your report.
Why writing the controller yourself matters
Configuring an existing tool is an operations exercise. Implementing the control loop, the metric comparison and the decision logic is a final year project.
Scope warning
One deployment strategy done properly. Do not build a full continuous delivery platform around it.
Ideas and guidance, not finished projects
These are project ideas and scoping guidance, published free for students to use as a starting point. I do not build, write, or sell final-year projects, and I do not complete coursework for anyone. Take an idea, make it yours, and build it.
Not sure this one fits you?
I help students pick an idea that matches their skills and their deadline, then scope it down until it is finishable. Guidance only, never done for you.
Stuck on something specific?
Writing only gets you so far. If you want an answer to your situation rather than the general case, book a session and we will work through it together. Every session is free; a few slots open each week.
Follow along
New writing, resources and project ideas land here first.