If the customer is the king, then agile is the method to keep the king-subject relationship alive & growing!
Agile is a serious buzzword used by many!
In essence, it is a modern project management system with an iterative & incremental approach to deliver business requirements throughout a project lifecycle. Constant & maximum value delivering is another prime objective of agile.
Image credit: medium.com
So, the prime principles of agile project management are:
Knowing the customer requirements and fulfilling those is the heart line in an agile project management system where documentation is the most critical part.
The agile project management process includes the following phases:
The traditional process of compiling the requirement includes creating an SRS (Software Requirement Specification) or SoW(Scope of Work) document which comprises of all the aspects of the software within one single document. All these aspects are features to be implemented, functional requirements, design constraints, performance expectations, security, etc.
The software requirement document takes a considerable time for compilation and corrections. Doing so would delay the time to market for the product as this method is iterative in terms of writing, revisiting, and correcting. Further, this is a comprehensive document where the readers may lose the essence while going through it.
This approach has gradually lost its popularity and a new approach is on the verge of replacing it with the changing market needs and competition amongst different providers. Yes...! We are talking about documenting the requirements ‘The Agile way’, in the form of themes, epics, and user stories. There are several benefits to this process:
Analyzing the advantages of the agile project management approach, we are explaining the starting point:
The business entities, who are building the software, are called as product owners because they know what the end-users want from the products. The product owners comply with the requirements in form of the user stories which are constructive narratives. Breaking down requirements can be consolidated in the following steps:
Components |
Queries |
Answers |
User Story Formation |
Who? |
Who is going to use this feature? |
A shopper/buyer |
As ashopper/buyer, |
What? |
What is it that they want? |
Purchase a product |
I want to purchase a product |
Why? |
Why do they want it? |
To use/consume the product (it may be a need or just a hobby) |
So that I can consume/use/utilize it. |
Once the above step is done, raise a question again. Can it further be broken down? If yes, do so. And ask at the end of each user story.
A question may arise how can we know that the user story can be further broken down or not? Let us see.
What are the prerequisites for a user to purchase a product?
Now, let us try to further break this down. Try to think all possible scenarios so that I can satisfy the above user story.
Card:
I should see the list of products
So that I can select products to purchase.
Conversation:
You can provide a sketch, wireframe, mockup or design to display how the screen would look like(visualization).
Confirmation or Acceptance Criteria (checklist):
I should be able to view the details of a product
So that I can know more about it.
Conversation:
You can provide a sketch, wireframe, mockup or design to display how the screen would look like(visualization).
Confirmation/Acceptance Criteria:
Simply, an Epic is a large chunk of work having common objectives. An epic can be a customer requirement, features, or business requirements. The details that are required to reach an epic are called stories.
For example, I want to develop login functionality.
As you know, there are multiple ways you can do login/authorization.
You can consider this bunch of user stories as a Login Epic and you can consider user stories for the entire user module as your theme. It can include, Register, Login, Logout, Forgot Password, Change Password, etc.,
Prioritizing depends of the importance or business value of the user story.
Especially, executing these agile tips in an iterative fashion will help you break down user requirements into functionalities that are consistent with the business. After detailed user stories, we can move to User interactions and design, but the accuracy of the interactions will depend on the iterations performed during the previous stages. Having high-quality reviews in place which will evaluate and marginalize these requirements from going haywire is a means to narrowing down the document.
Some of the popular agile software is Agilean, Wrike, Trello, JIRA, Asana, Active Collab, Binfire, Planbox, etc.