fire). 2. Validation events (communicate what metric do you want to move). 3. No kitchen sink wish list please. Prioritize. (eg. 70 half-baked/broken features vs 17 fully usable features.) 4
optimise visibility on progress for the whole team. (eg. Pivotal Tracker) 5. Continuous delivery lets you move and test your features faster. 6. Test Driven Development gives you stable software (most of the time). 5
for continuous, rapid innovation • Visibility of progress of everyone • Automate as much as possible • Sustainable product development as renewing cycles 6
your strong & opinionated engineers to agree on a process for working together. • Trust in a process, not just people. • Model for sustainable/continuous growth • Industry best practices for *NOT* burning out. 7
Feature requirements structured as a story of how user will use the app. • Building features in small rapid iterations. • Cycle to Test > Build > Feedback. Repeat. • Working app every step of the way. 8 Processes for rapid innovation
mouse, 1 computer (preferably with 1 massive monitor). • Counter-intuitive way of improving productivity. • Sharing the mental load in writing code. • 2 pair of eyes focused on a small batch of code changes. • Immediate code-review at time of writing. Improves code quality. • Tag-team approach to writing unit tests and codes to pass the test. 10 Processes for rapid innovation
establish the different "stages" that your code changes goes through. • Eg. Test is written, code is written, code passes tests, deliver to the server for acceptance by product owner, accepted by product owner, await deployment to production. Deploy to production. • Just-In-Time development. 12 Processes for rapid innovation
tendency of stepping on each other's "toes". • The sooner you discover the code conflicts and clashes, the better is is for your team. • An automated script that pulls together code from everyone in your dev team, runs automated tests on the code, and return the result. Merge conflicts, breaking tests, etc. can be discovered quickly and fixed (instead of at day of launch). 14 Processes for rapid innovation
and discovering how users are interacting with your app. • Validated learning that leads to feature changes and/or pivots. 17 Model for sustainable growth
your feature changes in phases. We sometimes call this an "Iteration". This can last between 2-4 weeks. • As product owner, you decide on the features u wish to see. • The whole team comes together for an iteration planning meeting (IPM) where we discuss the features in more details and discover the complexities involved. 19 Model for sustainable growth
via Planning Poker. • Each team member is given a deck of cards (usually with numbers in Fibonacci progression). 20 Agile development as renewing cycles Model for sustainable growth
Product Manager ask for their assessment - the team members will put up a card from their deck with a number, signifying what they perceive to be the complexity of the feature. • The median number shall be the assigned complexity point. • More discussion can be had if there is a high difference between the perceived complexity points given by team members. • This could be a sign that they do not completely understand the requirements. 21 Agile development as renewing cycles Model for sustainable growth
period with a "Retrospective" - a kind of post-mortem/evaluation on the sprint. • This is a good time for you to discover weaknesses in your process. • It also allows your team to understand each other's working style better. 22 Agile development as renewing cycles Model for sustainable growth