User Rating: 5 / 5

Star ActiveStar ActiveStar ActiveStar ActiveStar Active
 

Article Index

I had a refresh reading of the Agile documentation and want to share with everyone some quick notes to remember and keep in mind for the everyday in our projects.

 

Agile Methodology in a Nutshell

 

I had a refresh reading of the Agile documentation and want to share with everyone some quick notes to remember and keep in mind for the everyday in our projects.

 

I hope you enjoy and benefit from the Agile methodology as much as I do not only on my work but also the everyday activities.

 


Agile Fundamentals


  1. Deliver Value every week
    1.1. Break big problems into smaller ones.
    1.2. Focus on the important stuff and don't pay attention to nothing else.
    1.3. Make sure whatever you're delivering works.
    1.4. Look for feedback.
    1.5. Change course when needed (Adapt)
    1.6. Become accountable: Quality, schedule, expectations, budget.


  2. How does Agile planning works?
    2.1. Master story - Project To-Do list
    2.2. User stories - High level features
    2.3. Iterate - Take features and plan on development, testing and delivery on a one or two week basis.
    2.4. Team Velocity - How fast the team can take on work per iteration.
    2.5. Understanding your Team Velocity will keep schedule plans honest reducing over-commitment.
    2.6. Flexibility based on work load keeps the plan balanced and commitments real.
    2.7. Adaptive Planning - Be prepare to change the plan if reality changed.


  3. When something is Done?
    3.1. Done means Done!
    3.2. Do everything that is necessary to produce shippable code.
    3.3. Break user stories into sub tasks: Analysis, Design, Coding, Testing.


  4. There are Three Simple Truths
    4.1. Not all requirements are available at the beginning of a project.
    4.2. Requirements most likely DO change .
    4.3. Time and Money will allow to DO less than we want to - Prioritize.


  5. There is not only ONE method
    5.1. Crystal
    5.2. Lean
    5.3. Kanban
    5.4. Scrum
    5.5. Extreme Programming (XP)
    5.6. Your own!

 


How different are projects managed with Agile?

 

  1. Roles

    The roles on an Agile team blur in a sense that people do whatever it takes to make the project successful, regardless of title or role.


  2. Continuous Activities

    On an Agile team, the analysis, code design and testing are activities that are executed in a continuous basis.


  3. One Team

    All team members are responsible of the quality, there is not a dedicated entity such as a QA department. Whether while doing analysis, developing code, testing or managing the project.

 


 

Recipe for Success

 

  1. Co-Location


    When possible, to improve productivity of the team it's better to have everyone working on the same place. Many barriers are solved by having everyone collaborating on the same place:

    • Faster communication.
    • Problems fixed on the spot.
    • Less friction.
    • Trust relations built quickly.
    • A small co-located team is hard to compete with.


    Distributed teams can also run an agile project, however certain considerations should be taken to improve results:

    • Get everyone together at the beginning of the project.
      Time spent getting to know each other, joking, eating together helps to ease future interaction.
    • Make use of tools that helps boost collaboration online to make the team seem like a co-located
      Use communication tools such as Skype. video conferencing, social media, mailing lists, forums,


  2. Engaged Customers