Escaping the Brownfield: Lean and Agile Survival Techniques for Maintenance

Your in a predicament. The system needs re-architecture. There are a lot of bugs to stamp out. You need to turn it off, but you can't - it's mission critical to your business.

When most of us learn about Agile, the examples and stories we are told are from a Greenfield perspective; Greenfield meaning new development. Most organizations that aren't start-ups have many applications already in use; this pristine start just doesn't exist. Existing software needs to be maintained and continuity of operations is the highest priority; these are the circumstances of Brownfield development. This is essentially any application past its first release. Making this more difficult is that teams need to maintain legacy code and update antiquated architectures.

This session will cover techniques you can use at the team level to help this maintenance activity. We’ll specifically look at the use of the Mikado Method, Kanban, and some indicators you may want to use to analyze your application portfolio from a maintenance perspective.

 
1 favorite thumb_down thumb_up 0 comments visibility_off  Remove from Watchlist visibility  Add to Watchlist
 

Outline/Structure of the Talk

What do we mean by brownfield and legacy code? (2 min) - AKA who starts with a blank screen anymore?

The Maintenance Problem Areas (1 min) - quickly review these 4 areas

  • Technical
  • Predictability
  • Personnel
  • Financial

Technical: “no one understands the code”; “when we fix one thing, 3 other things break” (~10 min)

Mikado Method in a nutshell - describe the Mikado method and how it can help allow discovery of underlying code

Add tests as you maintain - discuss strategies for incrementally adding tests

Tech Debt - what is it and why one should pay attention to it

Predictability: “how long will it take to fix that bug (or add that feature)?” (~10 min)

Kanban & Lead-time - how to give accurate forecasts where there is uncertainty

Applying the Theory of Constraints - look for system bottlenecks and how to elevate these and increase capacity

Personnel: “how do we motivate people to do a good job just fixing things” (~2 min)

Connect people to Purpose - help people understand why it is important

Maintenance Innovation - translate this to Mastery, give people freedom to try new things with safety

Financial: “why is maintenance so expensive?”; “when should we replace this app?” (~10 min)

Spelunking is Hard, Stop Being Cheap - the fallacy of paying less for maintenance

Some Metrics to Consider

By the Team - code coverage, performance data, team confidence

By Management - WSJF, MTTR, team health

How Do We Avoid Falling Into This Trap? (Maintain to Expensive Replacement then Repeat) (~5 min)

Discuss full-lifecycle teams vs dev teams handing off to maintenance

Call to action for education to stop greenfield projects in degrees

Q&A (remaining time)

Learning Outcome

This session will help people understand:

  • How do I maintain legacy applications in an Agile fashion?
  • What people considerations do I need?
  • What measurements would be meaningful?
  • How do I avoid this mess in the first place?

Target Audience

Development Managers, Scrum Masters, Product Owners, Team Members, CS Educators, Portfolio Managers, CxOs

Prerequisites for Attendees

Some understanding of Kanban and technical approaches, as well as some familiarity with what a portfolio is and what metrics or measures may be important.

schedule Submitted 10 months ago

Public Feedback

comment Suggest improvements to the Speaker

  • Liked Dane Weber
    keyboard_arrow_down

    Dane Weber - Please Stop Modernizing!

    Dane Weber
    Dane Weber
    Sr. Consultant
    Excella
    schedule 1 year ago
    Sold Out!
    10 Mins
    Lightning Talk
    Executive

    The federal government loves modernizing software systems and it isn't wrong: stale, decaying software leads to major headaches and eventual catastrophe. Modernization efforts, however, have big risks and big failures.

    There is an alternative: software renovation. That is improving, updating, and upgrading the software system one piece at a time while it continues to operate.

    Dane has participated deeply in three US government modernization projects. Each project followed a pattern of pitfalls, scary "go-live" transitions, and unpleasant trade-offs.

    Renovating legacy software is frequently a better option. The software system continues to gain functionality at the same time that its design and performance are improved.

  • Liked Allison Pollard
    keyboard_arrow_down

    Allison Pollard / Barry Forrest - Brewing Great Agile Team Dynamics--No More Bitter Beer Face Communications

    45 Mins
    Workshop
    Beginner
    ›Ever find yourself making a sour face after talking to a coworker? Wishing your team meetings felt more like an engaging social hour? There is hope. Those everyday conflicts where something seems “off” after a conversation are often related to differences in communication styles. When team members understand themselves and others, there’s less conflict, more collaboration, and better working relationships. The DiSC model can help you understand why your team behaves the way it does and how to build trust for a more agile team.
    In this interactive session, agile coaches Allison Pollard and Barry Forrest will introduce the DiSC model to explain the four behavior types that are the ingredients in any team, then explore the characteristics of these ingredients and how they react with one another. Join them to learn about the behavior styles of you and your team using DiSC, how to communicate better together, and increase trust in the team. You'll leave with a common language that your team can use to better understand themselves and adapt their behaviors with others.
  • Liked Colleen Esposito
    keyboard_arrow_down

    Colleen Esposito - Simple Agile Design for YOUR Architecture

    Colleen Esposito
    Colleen Esposito
    Agile Coach
    Assurant
    schedule 10 months ago
    Sold Out!
    45 Mins
    Workshop
    Beginner

    Agile encourages us to eliminate activities that don’t add value and find the simplest solution possible to solve our business needs. For many teams, that can lead to a state where collaborative design no longer happens or is discussed on a whiteboard that gets erased after the conversation.

    How then, can you share the knowledge with team members who don’t work on that feature, or join the team after the feature is built? What about distributed teams, are they unable to have collaborative design because they don't have a whiteboard?

    I had those same questions in 2012, when Ron Garton of the Agile Coaching Network showed me a lightweight solution and we stopped creating traditional design documents. Ron provided me permission to bring that solution to the agile community through sessions like these.

    This solution helps everyone on the team understand what they will create or change in the current systems before it’s built, which can also be retained to increase the domain knowledge for that system later. Though the template itself can be helpful, like many agile tools, it’s the conversation that it starts that’s truly powerful.

  • Liked Joanne Stone
    keyboard_arrow_down

    Joanne Stone / S. Barton Cutter - Laughter a Hidden Gem for Team Success

    45 Mins
    Workshop
    Intermediate

    Are your agile teams struggling with committing to sprint objectives? Are they struggling with conflict? Are they struggling aligning with each other? Is the stress rising when you get close to that deadline? Do they feel they are not at a sustainable pace?

    Research has shown that leaders who’s brainwaves are in coherent states not only demonstrate higher productivity, but those with the strongest coherence also entrain the brainwaves of colleagues the same levels.

    Laughter is one of the quickest way for individuals, and team to reach coherence. Learn how to harness laughter and play to positively disrupt habitual behavior, boost levels of innovation, engagement, and creative problem-solving, and forge team coherence in the face of high stress.

    No experience necessary, just a willingness to step out of the box. Are you ready? Come PLAY!!!!!

    Join Joanne and Barton as they provide a slice of their one-day workshop: Laugh to F'in' Freedom to learn how we can utilize laughter to help create high performing teams.

  • Liked Nicole Spence Goon
    keyboard_arrow_down

    Nicole Spence Goon - You're in a Safe Space: Psychological Safety and where to find it

    Nicole Spence Goon
    Nicole Spence Goon
    Agile Coach
    Excella Consulting
    schedule 11 months ago
    Sold Out!
    10 Mins
    Lightning Talk
    Beginner

    Psychological safety is one of the newest buzz terms in team dynamics but what does it really mean for an Agile team? No need to reinvent the wheel here - whether you’re using Scum or Kanban, they both have safety built in. You can find it hiding in plain sight - in Scrum values & Kanban principles.

    Let’s learn how to use these concepts to develop trust in our teams and where to start.