Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Reclaiming Agile Development

848 views

Published on

Presented at CodeMash 2015. By Paul Holway.

Regardless of how you feel about felines, dead cats stink. What also stinks is what is happening to agile development practices. What started as a movement to increase quality and usefulness of code written, has been professionalized into certificates and ceremonies that are only marginally helping the process. Instead of blaming political and organizational forces, this humorous and irreverent talk focuses on what team members can do to overcome these corporate obstacles and to get to the spirit of agile through a focus on architectural innovation and personal improvement. Attendees should expect to laugh, to learn from the experience of implementing dozens of real world enterprise agile teams, and to come out with proven new techniques to try to bring more satisfaction to how they do their work and to bring the focus of agile back to software development.

Published in: Technology
  • Be the first to comment

Reclaiming Agile Development

  1. 1. NOTICE: Proprietary and Confidential This material is proprietary to Centric Consulting, LLC. It contains trade secrets and information which is solely the property of Centric Consulting, LLC. This material is solely for the Client’s internal use. This material shall not be used, reproduced, copied, disclosed, transmitted, in whole or in part, without the express consent of Centric Consulting, LLC. © 2014 Centric Consulting, LLC. All rights reserved Reclaiming Agile Development paul.holway@centricconsulting.com 314-265-3403 Twitter: @paulholway
  2. 2. WHY GO AGILE? 1/12/2015www.centricconsulting.com 1 Bluetooth enabled - Moxie Shower by Kohler
  3. 3. Why is agile adoption rising? Version One 2013 Survey of Agile Results: 1/12/2015www.centricconsulting.com 2 Top 5 Reasons to Adopt Agile • Accelerate Time to Market • Manage Changing Priorities • Better IT/business alignment • Increased Productivity • Better Quality Top 5 Benefits Realized • Manage Changing Priorities • Increased Productivity • Improved Project Visibility • Improved Team Morale • Better Quality
  4. 4. Budget Scope Time The Real Reason 50- 70%* of Technology Solutions industry-wide fail to meet the business user expectations Some cited reasons: • Lack of business involvement • Executives find it difficult to find information** • Features un-used 1/12/2015 •Gartner: 2012 Business Intelligence still subject to non-technical challenges •** Business Week Research Services
  5. 5. Technology is changing at a rapid pace 1/12/2015 Sensors invade and expand Big Data use
  6. 6. http://connectedco.com/ BUSINESS AND TECHNOLOGY ARE CHANGING AT AN INCREASINGLY RAPID PACE 1/12/2015www.centricconsulting.com 5
  7. 7. Back to Basics 1/12/2015www.centricconsulting.com 6
  8. 8. The Agile Mindset • Business involvement throughout the project • Empiricism and experimentation • Change that leads to value is encouraged • Build working technology frequently within a short, fixed timeframe (i.e. timebox) • Small team size • Transparency • Architecture is constantly tested 1/12/2015www.centricconsulting.com 7 Agile is not only a project approach but also a mindset based on the principles of the agile manifesto. To be successful with agile, there needs to be cultural a shift, not an imposed afterthought. Below are just some of the paradigm shifts that take place when transitioning to agile.
  9. 9. 1/12/2015www.centricconsulting.com 8 Components Of a Successful Agile Execution Today, few technology managers or developers will admit to not understanding agile. The Agile Manifesto* serves as an excellent foundation, but we know there’s more to delivering on budget, on schedule, and with real people. You need 4 things: Companies often start (and stall) here Processes Technology Practices Organizational Interfaces Adopting an Agile Culture How do we use technology to maintain agility? How do our role’s change? How do we create an agile organization? How do we talk to the rest of the organization in a way they understand?
  10. 10. In an agile project, the first thing to getting started is establishing a cadence. • Prioritization • Estimation • Learning and Adapting • Garnering Feedback • Releasing • Keeping in Sync. 1/12/2015 9www.centricconsulting.com Establishing Cadence Often we receive so many ideas and requirements, because users are afraid of missing the “Feature Bus”. They will not get your attention back again. By establishing cadence, you effectively install more stops that they can get on/off. Why is cadence is so important?
  11. 11. 1/12/2015 10www.centricconsulting.com A sample cadence Governed By Release Owner Governed By Product Owner Governed By Steering Committee Portion of Release delivered to business users. Program Cycle Release Each Cycle consists of: Plan Execute Done Feedback Are releases meeting business goals Which releases to fund Release coherency Release coordination Fulfilling daily commitments Removing Obstacles Iteration Daily Standup
  12. 12. 1/12/2015www.centricconsulting.com 11 Centric's Agile Approach – Agile Technology Practices Many Agile transformations focus solely on the Agile process. But the technologies used to execute successful Agile delivery are equally important. Early Sprints need to define the technologies and the extent to which they will be used. Do not attempt to do this on the fly! Organizational Interfaces Change Management Processes Technology Practices Components of a Successful Agile Execution
  13. 13. 1/12/2015www.centricconsulting.com 12 How is Agile Architecture Different - Refactoring
  14. 14. 1/12/2015www.centricconsulting.com 13 $postImportsStatus = $this->InteractionsLoad->postImportCSV(); // TODO: fix the comparison // if ($importStatus && $postImportsStatus) { // return true; // } return $importStatus; Define Done
  15. 15. +Claim Severity() +Claim Duration Days() +Claim Processing Days() +Claim Count() +Claim Notification Days() +Claim Last Close Date() +Claim Last Complete Date() +Claim Class() +Claim Type() -Claim Number -Loss Date -Reported Date -Current Claim Status : Claim Status -Claim State : State Claim +In Force Policy Count() +In Force Policy Premium() «signal»-Cancellation() «signal»-Inception() «signal»-Renewal() -Policy Number -Current Primary Rate State : State -Company : Company -Policy Original Effective Date -Policy Segment : Policy Segment Policy -Payment Amount -Check : Check -Cost Center -Payment Type : Payment Type -Payment Subtype : Payment Subtype -Claim Element : Claim Feature 0..1 0..* 1 0..* -First Name -Last Name Adjuster -State Code -State Name -Country Code State -Feature Loss Type Code -Feature Loss Type Description Feature Loss Type 0..1 0..* -Claim Status : Claim Status -Claim Status Date -Claim : Claim Claim Status History 1 1..* -Claim Status Type -Claim Status Description Claim Status1 0..* 1 0..* -Feature Status : Feature Status -Feature Status Date -Feature : Claim Feature Feature Status History 1 1..* -Feature Status Type -Feature Status Feature Status 0..* 1 0..* 1 0..* -Check Number -Check Payee 1 1..* -Payment Type Description -Payment Subtype Code -Payment Subtype Description Payment Type 1 1..* +Feature Severity() +Feature Duration Days() +Feature Duration Weeks() +Feature Processing Days() +Feature Count() +Feature Original Open Date() +Feature Last Close Date() +Net Loss Reserve() +Gross Loss Payments() +Gross Loss Reserve Change Avg() +Gross Loss Reserve Change Count() +Gross Loss Reserve Change() «signal»-Open() «signal»-Close() «signal»-Reopen() -Current Feature Status : Feature Status -Feature Loss Type : Feature Loss Type -Claim : Claim -Coverage : Coverage -Loss Reserve Claim Feature 0..1 0..* -Adjuster Effective Date -Adjuster Expiration Date -Primary Adjuster Flag -Adjuster : Adjuster -Feature : Claim Feature Feature Adjuster History 1 0..* 0..1 0..* 1 1..* 1/12/2015www.centricconsulting.com 14 Visualizing Increments Show current iteration against the vision. Organizational Interfaces Stories, individually, may not clearly demonstrate the big picture of how the solution builds.
  16. 16. 1/12/2015Centric Consulting, LLC 15 Understand more than your application
  17. 17. 1/12/2015www.centricconsulting.com 16 Agile does not mean faster or with less quality. In fact, quality takes a larger role in agile. -Quality is a first class citizen in the conversation. -Testing is included in the iteration -Is this testable? How? How will we perform regression as time goes by? The push for automation. Lack of automation is a major source of agile failure. Build Quality In
  18. 18. 1/12/2015www.centricconsulting.com 17 Automate Everything From Continuous Integration to Continuous Deployment…
  19. 19. 1/12/2015www.centricconsulting.com 18 Adopting an Agile Culture Agile is very different than traditional development approaches – different roles, different interactions, different reporting structures. We see similar concerns on across many different engagements when taking on an Agile approach. Types of concerns and reasons for them differ by role. Technology Practices Organizational Interfaces Processes Components of a Successful Agile Execution Adopting An Agile Culture
  20. 20. 1/12/2015www.centricconsulting.com 19 Centric’s Agile Approach – Organizational Change Management Managers Non-managers Loss of power and control Lack of understanding around the vision and need for change Overload of current tasks, pressures of daily activities and limited resources Comfort with the status quo and fear of the unknown Lack of skills and experience needed to manage the change effectively Corporate history and culture Fear of job loss Opposition to the new technologies, requirements and processes introduced by the change Disagreement with the new way or skepticism about the need for change Fear of job loss Common reasons for being concerned about moving to an agile development approach. Role Concerns About Agile Business Analyst "A big requirements document is no longer my focus, what is?” Developer "Agile changes how projects are planned, but shouldn't impact how I write code, right?” Quality Analyst "Why do I need to be involved so early in the process? What do I do?” Resource Manager "If developers are fully allocated to a single team and are self-organizing to tasks, what role do I play?” "Do performance evaluations need to be different now?” PMO Lead “Why shouldn't we have agile teams follow the same phase gates as the other projects?” Stakeholder "They have new questions for me every other day. Why not spend a week at the start of the project and talk all of this out?” Common concerns when going from a traditional approach to an agile approach.
  21. 21. January 12, 2015 www.centricconsulting.com 20 Traditional approaches often ignores two important factors. Organization inertia makes it difficult to change budgets, resource allocation and executive willpower needed to kick-off data governance. Challenge of Traditional Approach Program Cost Benefit Year 1 Year 2 Year 3 ExecutiveTimeCommitment ENGAGEMENT FRUSTRATION DISILLISIONMENT DISENGAGEMENT ProgramEndsINSTALLING AN TOOL!
  22. 22. January 12, 2015 www.centricconsulting.com 21 Agile Approach Year 1 Year 2 Year 3 ExecutiveTimeCommitment INSTALLING AN TOOL! Program Cost LIMITED ENGAGEMENT AWARE OF VALUE WILLNG TO INVEST FULLY ENGAGED Benefit User Story This approach may technically be less efficient but it is much more likely to succeed. EXPANDING SCOPE
  23. 23. 1/12/2015www.centricconsulting.com 22 What we are after…
  24. 24. 1/12/2015www.centricconsulting.com 23 What to do next? Do not: • Focus on Process only • Let the simplicity of the philosophy be misinterpreted • Code for the demo • Say, “we do that” Do: • Pick a pilot team/project and learn what works for your org • Get a coach • Embrace architecture • Start from the team, not management • Invest in testing • Invest in automated builds / deploys • Run retrospectives Processes Technology Practices Organizational Interfaces Adopting an Agile Culture
  25. 25. Questions? Follow @paulholway Follow @centric Stop by Centric’s booth Make sure to visit talks this afternoon by : Bill Klos – Micro-locating with Beacons Joseph Ours – Thinking Fast and Slow 1/12/2015www.centricconsulting.com 24

×