The Mickey Mouse™ model for Software Delivery Nish Mahanty @nishmahanty
Sep 08, 2014
The Mickey Mouse™ model for Software Delivery
Nish Mahanty@nishmahanty
“Feedback is the breakfast of Champions”
Ken Blanchard
Build Things Right
Build Things Right
• How do I know that my code works?
• How do we work simultaneously on the same application?
• Is your code is good quality?
• How do I know when we will deliver?
• Are we efficient/predictable?
Build Things Right
TDDUnit Tests
BDD
Version Control
Branching strategy
Continuous IntegrationSCM/DevOps
Continuous Delivery
Coding standards
Static code analysis
Progress metrics
Cycle Time
Lead TimeVelocity
Estimation techniques
Feedback loops
Systems Thinking
Lean Kanban
Agile
Build the Right Thing
• Will people buy it?
• How are they using it?
• Is it easy to use?
• How do they want next?
• What is the problem we are solving?
Build the Right Thing
Build the Right Thing
Product managementLean Startup
Teaser sitesMVP
Application instrumentation
SplunkNew Relic
Customer feedback mechanisms
Usability TestingVoting buttons
UX
Customer Value
Prototypes
Product Capabilities
Startup Thinking
Lean Canvas
Agile
Build Things Right
Build the Right Thing
• How do I motivate a team?
• How do we introduce innovation?
• What sort of line management structure is best?
• How do I set context?
• How do I get the right behaviours and skills?
Build the Right Team
Build the Right Team
Servant LeadershipLeadership models
EmpowermentMVP
Collaboration
MotivationAutonomy
feedback mechanisms
Mastery1:1s
Crucial Conversations
Coaching
5 Dysfunctions
Rewards & Recognition
Systems Thinnking
Purpose
Build Things Right
Build the Right Thing
Build the Right Team
Build Things Right
Build the Right Thing
Build the Right Team
Build Things Right
Build the
Right Thing
Build the Right Team
Business objectives and environment
Assess whether the team is doing productive work that aligns with the business needs. • Understand the business, division, and team goals and priorities• Assess whether the team goals support and adequately contribute to the business
objectives and priorities• Review and assess the team’s delivery plans and current rate of progress against their
objectives• Assess the financial, competitive, and political environment. In particular produce a
stakeholder map, and understand who your stakeholder’s “trusted advisors” might be.
Team
Build a highly engaged, resilient team that understand their contribution to the larger business outcomes • Set up regular 1:1s to focus on the individual’s needs and concerns, career planning,
training needs, work experiences, and align career plans with the project deliverables. Ask for their feedback about the team, organisation, and environment.
• Define individual KPIs/accountabilities and align the KPIs with team goals to help team members achieve both the overarching goals and their individual KPIs
• Set up fortnightly team meetings.The team should drive the agenda, but include a general Q&A session, feedback on progress, as well discussion and agreement on the team processes and practices.
• Set up team building activities. First focus on tasks that build trust and rapport such as XXXXXX .
• Start to measure team engagement levels and morale. Start to portray the behaviours that you expect from the team through leading strongly by example with your vision and values.
Metrics
Continually visualise progress against your goals • Set up an automated mechanism to generate the metrics that matter for this team, so
that the metrics are always up to date, and immediately available. • Start with “quality of product” as a metric. Determine metrics for delivery. I utilise a
lot of the concepts from Lean and Kanban, as well as Agile methodology. • Any improvements in the team, processes, or tools are usually reflected as a reduction
in Cycle Time or Lead Time, so you can quickly assess the effectiveness of any change that you introduced.
• Determine business metrics. Currently, our main metrics are; # net new subscribers (NNS), Net Promoter Score (NPS), Churn, and Revenue. The metrics should confirm progress against the desired business outcomes.
Stakeholders
Build a strong relationship, and clear lines of communication • Set up regular 1:1s so that you can communicate progress, and any risks/issues.• Have a clear understanding of what success looks like (and understand your
stakeholders expectations of success) to help ensure that you achieve the right outcomes
• Discuss and agree what they expect of you, and what you need from them, so that you are aligned in expectations.
• Agree on how you will report progress and make sure that the metrics are clearly understood.
Continual Improvement
No team should stand still, and no team has reached perfection, so continuously analyse performance and focus on getting better.
• Ask the team what they would like to improve (they always know what is holding them back from being more effective)
• Run a Value Stream Mapping exercise with the team, looking for opportunities to improve the delivery process to help eliminate inefficiencies from the delivery processes.
• Review the tools the team use (hardware/software) and update them as necessary• Introduce regular retrospectives – and ensure you have clear actions out of the
retrospectives to help the team to continually improve performance. • Leverage the principles from Lean and Kanban around just-in-time production and the
reduction of “waste” and focus on measuring throughput, quality, and appropriateness of the deliverables
Budget
Understand the financial commitment to help plan activities and team dynamics .
• What are your main costs? Examples include salary, tools and consultancy . What are your inherited commitments ?
• What additional resources do you need to deliver the business outcomes?• Keep a close eye on the budget (at least monthly): look for any variations, and ensure
that your forecast covers the expected duration of the project.