10 simple “stealth” ways to introduce Agile concepts to your ERP or COTS teams

Disclaimer – I wholeheartedly recommend an open, fully sponsored and supported approach for Agile and Change initiatives to succeed.  However, in the absence of that and if your corporate culture and environment are conducive to some experimentation and exploration, this may offer some inspiration…

So you work in a traditional ERP shop — waterfall lifecycle with massive business requirement documents, gathered during a lengthy blueprinting phase, followed by an even longer realization phase, with lots of change requests (and a painful, hard to manage CR process), eventual User Acceptance Testing and training, and ultimately, finally a Big-Bang Go-Live… Been there, done that.

What if there was a better way?

What if we could incorporate and leverage an Agile approach to implementing ERP or other COTS?

We realize that this represents a significant change and not everyone in the organization may be up for it. The risk of failure is daunting. What should you do?

Some Agile ‘purists’ might say to “just go for it”. Dive right in and start by learning and implementing the basic processes and practices of proven Agile methodologies like Scrum, Kanban, or even XP.   As you learn and put these practices in place they can adapt and evolve to what fits best for the team and organization.

Often, we’re required to be more pragmatic.  We know that organizations and teams respond to change differently.  First, you must understand the organizational Culture and how Agile might fit into that culture.   That, in and of itself, takes time to analyze and affirm.  We’ll delve more deeply into that another time.

Perhaps, rather than trying to jump in head-first, we test the waters, taking a gradual approach to ease your organization or team into some of the core Agile principles.  With each, we gauge the reaction and level of acceptance, to determine the next level of adoption.  If the environment or culture necessitates, you may need to do this quietly at first.  A colleague of mine refers to it as “Stealth” Agile Adoption.

Try these simple principles and techniques (in “stealth” mode if necessary):

  1. Before committing to create documentation, ask a few key questions to challenge the need for it. Why do they need it? Who is the audience? How will it be used? If they insist on it, agree to provide the minimum amount of information needed to satisfy the request. If they need more, they can request more, allowing you to repeat the process to reinforce iterative discovery and reduce waste.
  2. Introduce User Stories to represent all of the requirements and activities that need to be done as part of this implementation project.  User Stories provide a great vehicle for driving out requirements, understanding the various scenarios that need to be accounted for and serve as a “token” for having a conversation with stakeholders and other team members as we begin working on something.  This will help reinforce communication and collaboration, as well as promote creativity in design and problem solving.
  3. Defer decision-making for as long as feasible. Make decisions when needed to avoid the potential for change requests and document revisions.  Log and track needed decisions and issues, taking care not to allow them to become impediments.  This will reinforce lean, just-in-time flow and drive the need for improved, timely communications.
  4. If you’re not already doing Daily Stand-Up meetings, start.  Yes, everybody stands up.  Remove the chairs from the area if necessary, to keep this meeting short and focused. This sets the tone (plan) for the work day.  It reinforces accountability, promotes open communication, and serves as means to surface impediments that arise.
  5. Challenge the team to deliver something frequently in iterations and releases and keep stakeholders informed and involved with each iteration. Keep Iterations to no more than 4 weeks, and end each iteration with a Review/Demo. This will foster frequent, continuous stakeholders engagement and helps teach the team to deliver value incrementally.
  6. Conduct regular Retrospective meetings at the end of each iteration (or whenever an event warrants). Help the team focus on improving the way they work and how they work best as a team. Isolate one or two items to improve upon with each retrospective and track the results.  This reinforces the inspect and adapt principles that are so vital for continuous improvement.
  7. Allocate a dedicated, designated team area or project room. Encourage the team to use this area for impromptu, or working, meetings and discussions. This fosters visibility, accountability and creativity.
  8. Set up a simple task board (like Scrum and Kanban teams use) in the team room. Even if you’re not doing User Stories yet (see # 2 above), you can still track assigned tasks, important features, key issues, or critical defects just to get an idea of how a task board works.  Again, this reinforces visibility and accountability.
  9. Create and post Burn-down or Burn-Up charts to track and display progress for the team.  You can create one manually and update it as specific deliverables are met, or use a simple spreadsheet, that tracks activities and tasks the team is working on, and update that frequently to generate a chart that everyone can see.  When used in conjunction with the other techniques above, this provides accountability and visibility for the team, as well as stakeholders.
  10. Promote self-directed teams.  This one can be very difficult when there is a command-and-control, or rigid hierarchical culture, particularly when not presented in the full context of an Agile team.  If you happen to be a Project Manager, or any management role, this can and should start with you.  Seek ways to embody Servant Leadership and think of yourself as a Facilitator for the team, rather than as their manager.  If you’re a team member, challenge your peers and managers to create an environment that fosters team ownership and allows for collaboration in planning and execution.

These are just a few simple techniques that may help introduce agile concepts and practices to your ERP or COTS team, while minimizing the distractions and anxiety associate with a “big change”.   This will help to lay the foundation for your team to explore agile more deeply and position them to successfully move away from a traditional waterfall approach toward a value-driven, agile approach.  While this may not be our ideal approach, sometimes it’s best to take gradual steps.

As always with Agile, we do a little and we learn a little…

Advertisements
Comments
4 Responses to “10 simple “stealth” ways to introduce Agile concepts to your ERP or COTS teams”
  1. PM Hut says:

    Hi Richard,

    That’s an excellent post on selling Agile… I would really like to republish it on PM Hut under the Agile project management category where many project managers will benefit from it. Please either email me or contact me through the “contact us” form on the PM Hut site in case you’re OK with this.

  2. Reblogged this on use-cases.org – Matthew Tippett's Blog and commented:
    I came across this posting earlier this month. While I applaud the application of best practices into any organization, I’d like to refute a number of these being agile only. They are truly best practices that transcend agile itself. I’ll break down the ones I feel aren’t necessarily agile below.

    • rdolman says:

      To clarify, I never intended to suggest that any of these ideas were “agile only”.
      I’m sure some may transcend agile, but I believe they are all agile in spirit and aligned to agile principles.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: