What is Agile?

  • A group of software development methods that builds software incrementally.  

  • Breaks projects down using user stories , prioritizing them, and then continuously delivering them in short cycles called sprints .

The Agile Manifesto


  • A manifesto is a published verbal declaration of the intentions, motives, or views of the issuer, be it an individual, group, political party or government.   

  • In February 2001, 17 software developers met at the Snowbird, Utah resort, to discuss lightweight development methods.

  • They published the Manifesto for Agile Software Development to define the approach now known as agile software development.

Agile purpose


  • To teach teams to be Agile.
    • While a new process can easily improve team productivity by a fraction, enabling your team to work effectively as a cohesive unit can improve productivity by several times.
    • Agility is the ability to both create and respond to change in order to profit in a turbulent business environment.
      - Jim Highsmith, Agile Project Management
 
  • To make the customer  the one who funds the software development .
    • A document can have plenty of information, but real knowledge is hard to put on paper.

Agile values


  • Individuals and interactions over Processes and tools
  • Working software over Comprehensive documentation
  • Customer collaboration over Contract negotiation
  • Responding to change over Following a plan


Scrum Framework

  • Scrum is an iterative and incremental Agile software development framework for managing software projects and product or application development.


Roles

  • Scrum Master
  • Business Owner
  • Development Team 


Scrum Master

  • IS:
    • A scrum facilitator:
      • Removes impediments to the ability of the team to deliver the product goals and deliverables.
      • Ensures that the Scrum process is used as intended.

  • IS NOT:
    • A Project Manager: 
      • In fact, there is no role of project manager in Scrum at all, because none is needed.
      • Responsibilities of a project manager have been divided up and reassigned among the three Scrum roles.
      • Practicing Scrum with the addition of a project manager indicates a fundamental misunderstanding of Scrum, and typically results in conflicting responsibilities, unclear authority, and sub-optimal results

Product Owner


  • Represents the stakeholders and is the voice of the customer.
  • Creates the user stories, ranks and prioritizes them, and adds them to the product backlog.
  • Is combined with the role of Project Manager as they have the best visibility regarding the scope of work.

Development Team


  • Responsible for delivering potentially shippable increments of product at the end of each Sprint.
  • A Team is made up of 3–9 individuals with cross-functional skills who do the actual work.


Artifacts 


  • Backlog
  • User Story
  • Burn-down Chart


Backlog


  • Is a prioritized features list, containing short descriptions of all functionality desired in the product.
  • There are two kinds of backlog:
    • Product backlog: Contains the requirements for the entire project. Is allowed to grow and change as more is learned about the product and its customers.
    • Sprint backlog: Contains the requirements for the specific iteration.

User Story


  • Are short, simple description of a feature told from the perspective of the person who desires the new capability, usually a user or customer of the system. 
  • Points and priority are assigned to them.

  • Examples:
    • "As a admin user, I can specify files or folders to backup based on file size, date created and date modified."             

Burn-down chart


  • Is a graphical representation of work left to do versus time. 
  • Is an essential part of any agile project and is a way for the team to clearly see what is happening and how progress is being made during each sprint.


Events


  • Sprints
  • Planning Meeting
  • Daily Stand Up Meeting
  • Review Meeting
  • Retrospective Meeting


Sprints


  • Is a regular, repeatable work cycle or iteration during the development process.
  • In by-the-book Scrum, a sprint is 30 days long, but many teams prefer shorter sprints, such as one-week, two-week, or three-week sprints.
    •  The important thing is that a sprint is a consistent duration.
  • A deliverable has to be defined for each sprint, at the end of the sprint the deliverable will be demoed to the stakeholders.

Planning Meeting


  • Every sprint begins with the sprint planning meeting, in which the Product Owner and the team discuss which stories will be moved from the product backlog into the sprint backlog.
  • Once the team commits to the work, the Product Owner cannot add more work or alter course mid-sprint.
  • During this meeting team will assign sizes to the picked stories, the Business Owner will let the team to assign the sizes but he/she will be in charge of priority assignation. 

Daily Stand up


  • Each day during the sprint, a project team communication meeting occurs.
    • All members of the development team come prepared with the updates for the meeting.
    • The meeting starts precisely on time even if some development team members are missing.
    • The meeting should happen at the same location and same time every day.
    • The meeting length is set  to 15 minutes.

  • During the meeting, each team member answers three questions:
    • What have you done?
    • What are you planning to do today?
    • Any blockers? 


Review Meeting


  • At the end of each sprint, a sprint review meeting is held. 
  • During this meeting, the Scrum team shows what they accomplished during the sprint (DEMO).


Retrospective meeting


  • Is the last thing done in a sprint.
  • During this meeting two main questions are asked: 
    • What went well during the sprint? 
    • What could be improved in the next sprint?
  • At the end of the sprint, the next retrospective is often begun by reviewing the list of things selected for attention in the prior sprint retrospective.

Scrum Software


  • GreenHopper
    • https://confluence.atlassian.com/display/AGILE/GreenHopper+6.2+Release+Notes
  • Rally: 
    • http://www.rallydev.com/ 

Questions?

Activity

What is Agile?

By jlopez17

What is Agile?

  • 1,500