Agile
Agile is a project management methodology for software development based on communication and collaboration between teams, including the client.
Manifesto
Agile methodology can be overview via the manifesto. It states 4 core values and 12 principles.
Values
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a place
Principles
- Satisfy customer via early and continuous delivery
- Welcome changing requirements, even in late stages
- Deliver work frequently, in preference to a short timescale
- Business and development teams work together
- Keep people motivated, through environment and support
- Prioritize face-to-face conversations
- Functionality is the primary measure of progress
- Have a constant pace, avoid exhausting rushes
- Technical excellence and good design
- Keep it simple, minimize useless work
- Self-organized teams deliver best results
- Adjust to changes to become more and more effective
Main principles
Backlog
The product backlog defines the requirements for the final product. It's split in Product Backlog Items (PIB).
Sprint
1-4 week work iteration
User Story
A User Story describes a feature from the user's point of view. List of tasks can then arise from it.
It typically is constructed on a format like this:
As a [role], I [want to], [so that]
Epics
User stories are generally grouped to Epics
Example
- Epic Develop an application to consult a school's class schedule
- User Story As a student, I want to easily access my personal schedule, so that I can manage my homeworks and revisions
- Task Student access and authentication
- Task Web application, responsive
- …
- User Story As a teacher, I want to easily edit the schedule, so that I can inform my student in real-time
- Task Teach access and authentication
- Task Editor / admin role
- …
- User Story As a student, I want to easily access my personal schedule, so that I can manage my homeworks and revisions
Resources
- agilemanifesto.org – Official Agile's manifesto