common sense agile

23
Common Sense Agile by Alex Apollonsky

Upload: alex-apollonsky-csm-pmp

Post on 11-Apr-2017

342 views

Category:

Leadership & Management


0 download

TRANSCRIPT

Common Sense Agileby

Alex Apollonsky

Main Topics

● How it was done in the past● Agile

○ What is Agile○ Scrum○ Kanban○ Scrum/Kanban Hybrid (example)

● Agile Tools

How it was done - waterfall phases● Discovery

○ understanding business

● Requirements○ envisioning and documenting product requirements

● Design○ software, UI, solution design

● Planning○ estimation, work breakdown, resources planning, GANTT chart, milestones

● Development○ coding

● Testing● Release

○ Deployment, Release to Users

How it was done - waterfall phases

https://en.wikipedia.org/wiki/Waterfall_model

How it was done - waterfall pros/cons● Cons

○ Long cycle - release takes months, sometimes years to get to Production○ All requirements may not be known ahead of time○ Product cannot be exposed to client until coding finished and some QA done○ Product may not match expectations or be unrelevant/outdated○ “Requirements set in stone” approach○ There is no cost-effective mechanism to correct the product○ Over 80% of projects are late or over budget

● Pros○ Developers know exactly what needs to be built○ Supports good coordination between multiple 3rd parties involved○ Provides clear milestones ○ Product is defined ahead of time

How it was done - ad-hoc

● Have an idea● Start coding● Put it in Production● Hope it works

How it was done - ad-hoc pros/cons

● Cons○ Unknown delivery dates○ Unknown resulting product specification○ Unknown needs for the product○ Challenging to coordinate team work○ Recipe for “Debugging in Production”○ Potential for “Never Ending Release”

● Pros○ New ideas can be coded in very quickly

What would be best of both worlds?

● Understanding what product will look like ahead of time● Shorter release cycle● Ability to touch/demonstrate product as soon as possible● Ability to provide feedback and adapt requirements mid-release● Start testing early

Welcome to Agile!

http://www.agilemanifesto.org/

Agile Principles

http://agilemanifesto.org/principles.html

Agile Principles Cont’d

http://agilemanifesto.org/principles.html

Scrum Process

https://en.wikipedia.org/wiki/Scrum_(software_development)

Scrum Framework

https://en.wikipedia.org/wiki/Scrum_(software_development)

Scrum: Vocabulary● Backlog - Prioritized list of User Stories● Related User Stories can be grouped into Epics● Product Backlog consists of all stories for the product● Sprint Backlog - subset of Product Backlog selected for a sprint● User Stories usually estimated in Story Points, not hours● Team Velocity - Number of Story Points completed by Dev Team within 1

sprint● Scrum Master - coordinates agile meetings● Product Owner - prepares User Stories● Daily Scrum - daily 15 mins call/meeting to coordinate daily activities● Sprint Demo - meeting to demo stories completed in the sprint● Sprint Planning - meeting to plan stories for next sprint● Sprint Retrospective - meeting to review what worked and what can be

improved for the future sprints● Team Velocity can be used for Release Date Estimations

Scrum Tracking: Burndown Chart

Kanban Outline

● Start with your current process● Visualize workflow● Limit work-in-progress● Manage and measure flow● Improve collaboratively overtime● Make process policies explicit

Kanban Board

http://kanbanblog.com/explained/

Kanban Tracking: Cumulative Flow Diagram (CFD)

http://pawel.wrzesz.cz/2014/12/03/kanban-beyond-taskboard-and-wip-limits-map-measure-and-improve-your-flow/

Hybrid Scrum/Kanban Approach for Organizations (one of the options)● Use Scrum for Product Development● Use Kanban for Everything Else

Agile Tools: Trello

http://www.puravidamultimedia.com/how-to-plan-email-newsletter-campaigns-with-trello/

Agile Tools: JIRA Scrum Board View

https://www.atlassian.com/software/jira/features

Agile Tools: JIRA Backlog View

https://answers.atlassian.com/questions/11967096/how-to-display-only-stories-on-jira-backlog

Questions?