Skip to content

Agile ​

Agile is a project management methodology for software development based on communication and collaboration between teams, including the client.

Agile can be considered as a broad philosophy that apply to other tools and methodologies: Scrum, Kanban, Lean, XP, SAFe, etc.

Manifesto ​

Agile methodology can be overview via the manifesto. It states 4 core values and 12 principles.

Values ​

  1. Individuals and interactions over processes and tools
  2. Working software over comprehensive documentation
  3. Customer collaboration over contract negotiation
  4. Responding to change over following a place

Principles ​

  1. Satisfy customer via early and continuous delivery
  2. Welcome changing requirements, even in late stages
  3. Deliver work frequently, in preference to a short timescale
  4. Business and development teams work together
  5. Keep people motivated, through environment and support
  6. Prioritize face-to-face conversations
  7. Functionality is the primary measure of progress
  8. Have a constant pace, avoid exhausting rushes
  9. Technical excellence and good design
  10. Keep it simple, minimize useless work
  11. Self-organized teams deliver best results
  12. 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
      • …

Resources ​