Skip to content

Instantly share code, notes, and snippets.

@jim-clark
Last active December 11, 2020 19:40
Show Gist options
  • Save jim-clark/19454353ad098b941521 to your computer and use it in GitHub Desktop.
Save jim-clark/19454353ad098b941521 to your computer and use it in GitHub Desktop.

Agile Development & Trello


Agile Development & Trello


Learning Objectives

  • Be able to discuss Agile Development amongst developers and potential employers

  • Be able to write effective User Stories for a new project

  • Be able to use Trello to organize User Stories using Agile principles


Roadmap


  • What is Agile Development?

  • Why use Agile Development?

  • Agile vs. Waterfall Methodology

  • Roles Within Agile Development

  • User Stories


"Agile":

"Having a quick, resourceful and adaptive character"


What is Agile Development?


  • A Software Development Methodology

  • Introduced by the Agile Manifesto in 2001

  • Focused on Customer Satisfaction with Early & Continuous Delivery

  • Requirements and Solutions Evolve Through Collaboration

  • Promotes Early Delivery

  • Continuous Improvement via Iteration

  • Enables Rapid Response to Change


Agile Manifesto


  • 17 software developers met at the Snowbird resort in Utah on February 2001.

  • They met to discuss lightweight development methods.

  • The outcome was a publication named the Manifesto for Agile Software Development.

  • They said that by uncovering better ways of developing software by doing it and helping others do it, they have come to value...



Why Has Agile Development Been Voted
"Most Likely to Succeed?"


Agile Development prioritizes the satisfaction of the customer through early and continuous delivery of valuable software.



Why Use Agile Development?

To Help Avoid This...



Agile vs. Waterfall Methodology


Agile vs. Waterfall - Exercise


Think about the following words within the context of both the Agile and Waterfall methodologies:

  • Risk
  • Workflow
  • Change
  • Quality
  • Product Vision/Direction
  • Documentation

After five minutes, be prepared to share your thoughts...


Roles Within an Agile Project Team:

  • Product Owner: The person responsible for bridging the gap between the customer, stakeholders, and the development team.

  • Stakeholders: Anyone with an interest in the project.

  • Development Team: The group of people who do the work of creating a product. Programmers, testers & designers.

  • Scrum Master: The person responsible for supporting the development team and keeping the agile process consistent.

  • Agile Mentor: Someone with experience implementing agile projects and can share that experience with a team.


What is a Sprint


  • A sprint is a single iterative cycle that:

    • Begins with initial planning
    • Ends with potentially deployable/shippable enhanced working software
  • Typically two to four weeks in duration...



Daily Stand Ups - Industry


  • Short Duration (up to 15 minutes)

  • Each Participant Answers Three Questions:

    • What did you accomplish yesterday?
    • What are you working on today?
    • What obstacles/challenges are you faced with?

Daily Stand Ups - WDI


  • Duration is still up to 15 minutes

  • But, each Student answers these questions:

    • What are you working on?
    • What are you struggling with?
    • What are you excited about?

User Stories


User Stories - What are they?


  • Key component of the initial planning for an Agile project

  • Defines small chunks of business value which can be implemented in a period of days to weeks

  • Captures what a user does or needs

  • Commonly formulated by questioning the customer/user

  • Often initially written on 3x5 index cards

  • NOT a programming To-Do List


User Story Template



As a {user type (role)}, I want {feature} so that {reason}.

As an administrator, I want to approve photos before they are posted so that I can make sure they are appropriate.


User Stories Example



As a user, I want to be able to collapse the details of a note so that I can more easily focus on the notes I'm interested in.


User Stories Example



As a player, I want to be able to view a list of high scores for inspiration and impress my friends if I make the list.


User Stories Example


User Stories Example


User Stories Example


User Stories Example


User Story - Exercise


In groups of 2 or 3

Develop at least 4 user stories for an online dating application



Trello


  • What is Trello?

  • Register Your Account (free)

  • Using Trello for Agile

  • Managing User Stories

  • Exercise - Enter User Stories


What is Trello?


  • Free, flexible, visual way to manage projects and organize anything

  • Used by millions of users

  • Trello's Structure:

    • Boards (main containers)
    • Boards contain Lists
    • Lists contain Cards
    • Cards may have a Description, Comments, Members, Labels, a Checklist and Attachments

Register Your Account


Go to

https://trello.com/

to sign up


Using Trello for Agile
Setup


  • Create a Board for your Project

  • Real-world projects could have the following Lists organized from left-to-right:

    • Ice Box (aka Backlog)
    • Current (aka Planned)
    • Sprint (aka In Progress)
    • Done

Using Trello for Agile
Setup


  • Due to time limitations, you can organize your lists as:
    • Ice Box
    • MVP (aka Planned)
    • Done

Using Trello for Agile
User Stories


  • Each User Story will be a Trello Card

  • The User Story cards can contain:

    • The details for the Story in the Description section
    • Optional: You can document the Point value assigned to complete the story in parenthesis after the Title.
    • Use the Checklist to track tasks or steps necessary to complete the story. When creating a checklist, you are given the opportunity to name it.

Using Trello for Agile - Flow

  • Ice Box: Put all of your ideas in here to start. Feel free to put in large features (epics) in here until they are broken down into user stories.

  • Current: Stories that make the cut are put here. You may choose to prioritize your stories from top to bottom. This is also a good place to put cards for bugs to be fixed.

  • Sprint: This list holds the user stories and bugs currently being developed.

  • Done: Done obviously holds the completed stories.


Using Trello for Agile
Ice Box (Backlog)


Using Trello for Agile
Current (Planned)


Using Trello for Agile
Sprint (In Progress)


Exercise - Enter User Stories


In Your Trello

Develop the user stories for an online banking application

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment