The Agile 411 series is a compilation of tips and tricks about Agile delivery. These tidbits have been posted for information and awareness, and are occasionally used on social media for general engagement and conversation.
- #Agile is a mindset based on collaboration, iterative business value delivery, and built-in learning cycles. #Scrum, #XP, and #Kanban are some of the methods that subscribe to these values
- While #Waterfall attempts to predict the future in a plan, #Agile adapts based on actual delivery increments
- #Agile is not a justification for not having a holistic vision or foresight beyond the current iteration
- #Agile focuses on proactive #risk and #issue management through daily #standups, ongoing #ProductBacklog grooming, and constant #collaboration with the team
- #ScrumMaster is part of the team, and he/she guides the process and makes sure that all team members are able to do their intended job (by removing or facilitating the removal of roadblocks)
- #ProductBacklog is a prioritized wish list of the customer, and #ProductOwner is accountable for it; ensure prioritization considers business value, dependencies, and technical feedback
- #ProductBacklog is not an optional component of #Scrum; this makes the distinction between a coherent product as envisioned versus an ad hoc feature set hastily slapped together
- #ProductBacklog is ever-evolving and should be continuously refined; limiting refinement to #backlog grooming sessions is neither enough nor manageable
- Ensure that the #ProductOwner has the right level of influence and authority to make just in time decisions regarding the #product
- #Architecture is not optional; make sure to have a high-level architecture that allows for adaptation upon detailed planning and elaboration over each iteration
- Repackaging the sequential phases of #WaterfallSDLC (design, development, etc) into 2-4 week #iterations does not make your team #Agile
- Slice work based on vertical business functionality rather than horizontal slices of work phases (testing, coding, etc.)
- Look to develop E2E functionality within each #iteration; this means completing the full #development life cycle for a given work item from detailed specifications, design, and development to testing
- #BusinessValue is at the heart of #Agile #delivery; each iteration should deliver some business value to be considered 'potentially' shippable
- #Velocity is a team planning metric to determine the pace at which the team can consume the product backlog; it is NOT a performance metric or a target dictated by management
- #RelativeSizing, in itself, is not an exercise to determine effort hours for a given piece of work; it is to determine the relative size of a work item against a well-understood reference point
- Adding more teams won't necessarily accelerate the timelines; think about finishing chunks of work rather than starting more - limit #WorkInProgress
- #Retrospectives are meant to provide the team a forum to reflect and improve in a safe and open environment; this is a team event and should not be bogged down with management report outs
- While #Agile embraces #change, avoid the urge to change the fundamental product vision and roadmap at a moment’s notice without a coherent and strategic thought
- ‘Working software over comprehensive documentation’ DOES NOT mean no documentation - strike a balance!
- 'Individuals and interactions over processes and tools' DOES NOT mean chaos; understand that processes and tools should evolve based on feedback and evolving interactions
- Make sure to understand and practice the fundamentals of #Scrum prior to scaling to multiple #teams, #programs, and #portfolios
- #Kanban is a powerful visual representation of your team's workload and can provide useful insights; don't forget to determine and set appropriate work in progress limits
- #Kanban is an effective method for managing team backlog, visualizing bottlenecks, and managing throughput; it is well-suited for shared services & IT operations among others
- Consider establishing 'core hours' where all team members work together in the same space and collaborate; this could be a preferable arrangement over 100% colocation
- Challenge the use of #Agile in your organization; reflect on whether it adds value or increases overhead. Think about varying scenarios - highly predictable infrastructure deployment vs. an innovative software development
- Reflect on how a product lifecycle is managed in your organization; multiple #projects and #teams over the years (?) or a stable team that continuously develops, maintains, and evolves the product (?) - #Agile challenges you to embrace a more product-focus
- Consider using #LeanCanvas to effectively facilitate large collaborative workshops, and obtain agreement on #ProductVision, #ProductRoadmap, and #AgilePersonaDevelopment among others