Are Your Development Processes Truly Agile?

Are Your Development Processes Truly Agile

Many organizations are making a move to agile-powered environments, but agile development is more than a name. How do you determine if your organization is truly agile? The evaluation starts with the Agile Manifesto. If you’re following the principles laid out in the manifesto, that’s a good sign that you’re on an agile journey.

For those not familiar with the manifesto, however, let’s review its points quickly. The Agile Manifesto’s core is simple—the primary points of the manifesto include the following:

Individuals and interactions take precedence over processes and tools. This means the organization and its leaders place more value on people than they do on processes. People respond to business needs and they drive the development process within the organization.

Working software takes precedence over comprehensive documentation. This is not about not providing any documentation at all, but you should streamline documentation. Any documentation that does exist should be necessary only for current and future development.

Customer collaboration over contract negotiation. Engaging customers throughout the development process makes it easier for your people to meet the needs of your customers. Doing so means all business case features are clear and useful to customers.

Responding to change over following a plan. This means change is welcome throughout the project, each project and allows for priorities to shift over time versus following a rigid or scripted development plan. 

The Agile Manifesto 12 Steps

Essentially, the core values of the Agile Manifesto can be fully detailed in 12 steps, or principles. These principles support the key points of the manifesto and provide additional detail as to how the practices can be followed in an agile environment. Again, for those who currently follow the Agile Manifesto, the following may be redundant. For those new to the concept, these steps provide clarification and direction to drive agile processes overall.

  • Self-organizing teams encourage great architectures, requirements and designs.
  • Regular reflections on how to become more effective.
  • Frequent delivery of working software.
  • Simplicity.
  • Support and trust for those involved in the process.
  • Enable face-to-face interactions.
  • Working software is the primary measure of progress.
  • Agile processes to support a consistent development pace.
  • Attention to technical detail and design enhances agility.
  • Collaboration between the business stakeholders and developers throughout the project.
  • Customer satisfaction through early and continuous software delivery.
  • Accommodate changing requirements throughout the development process.

Based on these principles, there are three points—the final three listed here—that we often find the most compelling. A colleague of mine, Tobias Spöcker, scrum master and QA engineer, says these points naturally float to the top for an organization such as TOPdesk.

The reasons for this are fairly obvious. We create products that are sold to thousands of customers around the world. To pinpoint any development problems, we look to the scrum process described by the scrum guide, with an emphasis on the last parts of the process. For example, the following illustration is edifying for explaining this process:

Agile scrum process

Notice in the “product release” phase illustrated above that the team listed here focuses on finished work for the development sprint. This portion of the model should be able to present a product incrementally to the stakeholders, including the customer. Ideally, these increments are released through a continuous delivery model. Here are two principles that further illustrate the point: Collaboration between the business stakeholders and developers throughout the project and customer satisfaction through early and continuous delivery of the software.

There’s an additional consideration when providing value: Develop what is right; don’t simply develop something right.

Adding Value

At TOPdesk, providing the proper value to customers is a major goal for us. To achieve our organizational goals, we consider the impacts on our customers so when we start on a new product development project, we always work with some of our customers so they are involved in the development process, which makes the process and the product better for everyone. Those of our customers that have participated in our development processes usually tell us that they find the experience valuable and that being a part of the process also helps them when they use the solution. These same customers also express satisfaction in our efforts—as partners in the development process—and with us as an organization.

Direct Feedback is the Key to Better Development

The immediate and direct feedback we receive also helps to achieve another of our key operational principles: accommodating changing requirements throughout the development process. Through the partnership with our customers during the development phase, we’re able to receive regular, constructive feedback—even criticism—that leads to changes and evolutions in the product map and development stream. This feedback facilitates refinement of the most important processes and features, and moves them to the top of the priority list, leading to a project that’s undertaken with a focus on the most valuable areas so that development capacity (on the part of our organization) is spent the most wisely.

Agile-Organization

In Sum

The agile mindset and the scrum framework are powerful tools if they are used in the right way. When considering following any development principles, don’t go in blindly. It is a good idea to see which parts of the toolbox help your organization be the most agile, efficient and customer-focused, and utilize the processes and principles that work best for your organization.

Consider direct feedback from customers, which can be implemented immediately into the product scope. Provide simple-to-use customer communications vehicles, including metrics built into the software, surveys and feedback portals. Live demos of the product, when ready, can be extremely effective in helping you collect copious feedback efficiently. However, if your feedback loop is too big—meaning there are too many cooks in your kitchen—the whole process will quickly balloon beyond profitable, resulting in a less agile development process.

The projects we develop using these principles are the ones that deliver the most value to our customers the most quickly. Including feedback from customers makes the development team more confident in what they are creating, and our customers tell us that they feel their needs and input have been heard, which they greatly appreciate.

— Nancy Van Elsacker Louisnord

Comments

10 responses to “Are Your Development Processes Truly Agile?”

  1. […] (DX) continues to be a primary focus as companies both large and small look to become more agile, improve and accelerate the delivery of product and service offerings and enhance data-driven […]

  2. […] part of the company DNA since the beginning and every employee is bought into it. This means fast, agile development and experimentation is part of the […]

  3. […] feedback loop is the concept on which the agile mindset is built. Instead of having a project that is one year long, we divide the project into […]

  4. […] value- and purpose-driven should be at the center of any organization wanting to be more agile, with a strong focus on the customer. To serve the customer, your organization, team and individual […]

  5. […] you have been in a scrum team (or even an agile software development team), you most certainly have had or heard about sprint retrospectives or […]

  6. […] supports, not stalls, agile development. DevSecOps doesn’t have to be sluggish. As Dan described, DevSecOps must […]

  7. […] a reason modern agile processes refer to user stories to capture requirements. But we lose the spirit of the story when we write, […]

  8. […] quality and ultimately better-performing software. While DevOps processes can increase agility, and agile approaches are a great help in improving responsiveness to change, the overall process still needs […]

  9. […] stream mapping comes in. You identify what works then look at how you can improve flow. Finally, agile, the cultural aspect of […]

  10. […] applications being built and the infrastructure automation scripts that support them, moving to an agile development methodology or trying to take advantage of DevOps practices such as continuous integration (CI) is […]

Leave a Reply