One of
the most contentious items for an Agile team can be the requirements. Yes, I
said it - REQUIREMENTS. Because how you set up your communication with the
Business partner matters a lot. It really can set you up to succeed or fail,
especially if you have an immature organization, or an ambiguous process to
work with.
Requirements can take on many
forms, and each form has its strengths and weakness. The most
common requirement form in most agile organizations is the User Story. And if
you research it a bit, you can see why "requirements" and "user
story" do have some significant and important differences. The one thing
they have in common is that it is a vehicle that allows a development team to
work towards delivering something of value to the business. Less common forms
include use cases, Technical Specs, Functional and Non-Functional Requirements
or just plain wish lists. Each form has it's particular nuances, and I wish to
write about this because if you work with an organization that is familiar with
the less common forms, I find that the easiest way to "become
agile" is to use the old process and re-name the new items "User
Stories". This can lead to failure even before you get started.