Develop in small batches

DORA Develop in small batches

登録は簡単!. 無料です
または 登録 あなたのEメールアドレスで登録
Develop in small batches により Mind Map: Develop in small batches

1. Understand

1.1. Why

1.1.1. Want to learn quickly from decisions

1.2. What

1.2.1. Use a feedback loop

1.3. How

1.3.1. Enabled by working in small batches

1.4. Where

1.4.1. Applied to Software Delivery Life Cycle SDLC

1.4.2. Why missing

1.4.2.1. Legacy large cost of handing off changes

1.4.2.2. Iconic: ITIL v3 release process

2. Implement

2.1. Plan

2.1.1. Adopt INVEST principle

2.1.1.1. Independent

2.1.1.1.1. can be worked in any order

2.1.1.2. Negotiable

2.1.1.2.1. as feedback received

2.1.1.3. Valuable

2.1.1.4. Estimable

2.1.1.4.1. defined scope

2.1.1.5. Small

2.1.1.5.1. hours to couple ot days

2.1.1.6. Testable

2.1.1.6.1. TDD & local test

2.1.2. Split into small features

2.1.2.1. Splited in small batches

2.1.2.1.1. completed

2.2. Build

2.2.1. Merge work at least once per day

2.2.1.1. Trunk base dev

2.3. Deploy

2.3.1. Launch dark + feature flipping

2.3.1.1. What

2.3.1.1.1. Add changes up to prod not yet visible to users

2.3.1.2. How

2.3.1.2.1. Iterate to accumulate deployed small piece of work

2.3.1.2.2. Flip ON the feature

2.3.1.2.3. Flip OFF

2.3.1.3. Means

2.3.1.3.1. Start at API layer

2.3.1.3.2. Integrate

2.3.1.3.3. Convience developpers to

2.3.1.4. Outcomes

2.3.1.4.1. Trust to do trunk based dev while preserving production impacts

2.3.1.4.2. Business capability to release by audience

2.3.1.4.3. Make continuous deployment real

2.3.1.4.4. Fade out releases and related schedule, branches, hot fixes ...

2.4. Alternate approach

2.4.1. Alternate approach: branch by abstraction

3. Pitfalls

3.1. Not small enough pieces

3.1.1. More than 1 week = too big

3.2. Fake small

3.2.1. Working in small batches but then regrouping the batches before sending them downstream for testing or release

4. Check

4.1. Work is split in small batches and frequently / continuously deployed to prod

4.2. Software engineers are used to break work in batchs < 1 day

5. Measure

5.1. Effective feature work split

5.1.1. Enables continuous deployment to prod

5.1.1.1. Release frequency?

5.1.1.2. Does it differ across teams ?

5.1.1.3. Does it differ with release size?

5.1.2. Lead to work complete < 1w

5.1.2.1. Proportion of batches / feature completed in < 1w

5.1.2.2. What are longer features ?

5.1.2.3. Ability to commit and deploy before feature complete ?