Microservices rules #10: Make smaller, safer, and reversible changes - part 5

This is another article in the series about microservices rules: what good looks like, which are a set of principles and practices for using microservices effectively. The complete set of articles about microservices rules are:
- Practice continuous delivery/deployment
- Implement fast, automated deployment pipelines
- Apply Team Topologies
- Provide a great developer experience (DevEx)
- Use a deliberative design process
- Design independently deployable services
- Design loosely coupled services
- Design testable services
- Develop observable services
- Big/risky change => smaller/safer and (ideally easily) reversible changes - part 1 - incremental architecture modernization, part 2 - continuous deployment, part 3 - canary releases, part 4 - incrementally migrating users, part 5 - smaller user stories
- Track and improve software metrics and KPIs
This article explores yet another way to achieve Microservices Rule #10: Make smaller, safer, and reversible changes. Work items flow into a team in four main forms: features, defects, risks, and technical debt. Previous articles on Rule #10 focused on implementing and delivering work items incrementally. However, another effective approach is to reduce the size of the work item itself — specifically, implement smaller features, or in other words, define and deliver smaller user stories.
This article explores how defining and delivering smaller user stories accelerates learning and experimentation — essential ingredients for building a great product.