If you find this site useful, you should try my 55-page eBook here

Agile Principle #1: Active User Involvement Is Imperative

by Kelly Waters

Email This Post Print This Post Save As PDF
In my mind, active user involvement is the first principle of agile development.

It's not always possible to have users directly involved in development projects, particularly if the agile development project is to build a product where the real end users will be external customers or consumers.

In this event it is imperative to have a senior and experienced user representative involved throughout.

Not convinced? Here's 16 reasons why!
  • Requirements are clearly communicated and understood (at a high level) at the outset

  • Requirements are prioritised appropriately based on the needs of the user and market

  • Requirements can be clarified on a daily basis with the entire project team, rather than resorting to lengthy documents that aren't read or are misunderstood

  • Emerging requirements can be factored into the development schedule as appropriate with the impact and trade-off decisions clearly understood

  • The right product is delivered

  • As iterations of the product are delivered, that the product meets user expectations

  • The product is more intuitive and easy to use

  • The user/business is seen to be interested in the development on a daily basis
  • The user/business sees the commitment of the team

  • Developers are accountable, sharing progress openly with the user/business every day

  • There is complete transparency as there is nothing to hide

  • The user/business shares responsibility for issues arising in development; it’s not a customer-supplier relationship but a joint team effort

  • Timely decisions can be made, about features, priorities, issues, and when the product is ready

  • Responsibility is shared; the team is responsible together for delivery of the product

  • Individuals are accountable, reporting for themselves in daily updates that involve the user/business

  • When the going gets tough, the whole team - business and technical - work together!

See also:
10 Key Principles of Agile Development

  • Digg
  • del.icio.us
  • StumbleUpon
  • Yahoo! Buzz
  • Technorati
  • Facebook
  • TwitThis
  • MySpace
  • LinkedIn
  • Live
  • Google
  • Reddit
  • Sphinn
  • Propeller
  • Slashdot
  • Netvibes

7 comments:

  1. Paula Thornton said...

    There should be no 'users' in agile. The results of agile should be so pervasive to an individual's needs that the product is an appendage to their needs. When was the last time you read a 'user guide' or specified 'user requirements' for your arm or leg?

    On a slightly different note, involvement of any individuals is simply part of a full series of activities involved in "Design Research". The artifacts of Design Research are the elements used to support "Evidence-Based Design".

  2. Kelly Waters said...

    I don't agree with this comment. Although scrum team is a *team* and the project goals are *team goals*, there must be a "user" role in the team. Although everyone should care about the user, someone must have specific knowledge and understanding of the user's needs, because a software product with no users has no value.

  3. StephenKress said...

    I also disagree. There are no requirements for an arm or a leg, because you just get one. You don't have a choice, you just get one (if you're lucky).
    How can you design something that is "Pervasive to an individual's needs" if you don't have a "user" to design for?

    Since there are always several ways to implement how a user interacts with an IT system, you shouldn't count on the designer to choose the right way. You must ask a user (and better yet, ask many users).

  4. Scott W, Ambler said...

    The real issue is active stakeholder participation, not just active user involvement. A few thoughts:
    1. Users are just one of many stakeholders, important ones obviously, but not your only ones. If you ignore other stakeholders you put your project at risk.
    2. Participation is better than simple involvement. If you don't find ways to enable them to actively participate you put your project at risk. Not only should stakeholders provide information and make decisions in a timely manner, they should also actively participate in the modeling effort themselves. You can do this by adopting inclusive modeling tools such as whiteboards and paper.

    In Agile Modeling we made this very clear and included an explicit practice, Active Stakeholder Participation. There's a detailed article on this at http://www.agilemodeling.com/essays
    /activeStakeholderParticipation.htm

    There's also a detailed article on inclusive modeling at http://www.agilemodeling.com/essays
    /inclusiveModels.htm . Enjoy!


    - Scott

  5. whirliwig said...

    Another 'disagree' vote...although there is a sense in which removing the traditional concept of 'user' as a 'them', as opposed to 'us', is useful.

    Actually, I'd love to have a user guide for my arms and legs. Unfortunately there's no-one qualified to write it. I have to make do with user guides for less customised versions of my arms and legs: health articles on the internet, medical encyclopaedias etc...and if I get in real trouble I have to go see a developer (sorry, 'doctor') -- unfortunately I didn't negotiate the contract properly, so I often have to wait for weeks for an appointment...

  6. Wouter said...

    I think Paula was not talking about agile development method, but more about the philosophy behind it. That the end product should be so intuitive to use for the user, that he does not feel like a user, but is just doing what he does.

    If i understand her correctly, i'm sure that she agrees that this requires a very deep understanding of the user.

    I don't think tho, that agile has failed if this is not reached. Agile has worked, if the end-user is happy with the product, even if it comes with a manual.

  7. JObermark said...

    It is also mandatory that this user representative is part of the team, and not a taskmaster we are all serving. Presumed functionality preconceived in complete detail are not needs.

    It is not uncommon for this supposed team member to sneak off and plan out detailed task-lists for months in the future, and then try to shape the present development around these visions of the future, rather than around identifiable needs that can be completely nailed down.

    Agile folks focus on not identifying our user as alien and disconnected, but we also need to sell the idea that we are not a 'them' to the rest if the institution. We need to continually be clear that a team is a team, and a player who wishes to be the referee is unwelcome.

10 Key Principles of Agile Development

How To Implement Scrum in 10 Easy Steps

User Stories - Agile Requirements

Agile Project Management

10 Key Principles of Agile

How To Implement Scrum

Most Read

Agile Leadership

Agile Requirements - User Stories

Agile Estimating

Agile Testing

Agile Project Management

Lean Software Development

Agile Teams