agile development - emory universitycengiz/cs540-485-soft-eng-fa13/slides/turnbull... · agile...

15
..or something that looks like it Scott Turnbull [email protected] Software Engineering Manager Emory University Libraries Agile Development

Upload: others

Post on 18-Oct-2019

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Agile Development - Emory Universitycengiz/cs540-485-soft-eng-fa13/slides/Turnbull... · Agile Development: Prototypes & Deployed Software ... Pivotal Tracker – User Stories/Chores

..or something that looks like it

Scott [email protected]

Software Engineering ManagerEmory University Libraries

Agile Development

Page 2: Agile Development - Emory Universitycengiz/cs540-485-soft-eng-fa13/slides/Turnbull... · Agile Development: Prototypes & Deployed Software ... Pivotal Tracker – User Stories/Chores

The Agile Manifesto

Collaboration by 17 industry leaders in 2001Emphasis on ‘Light Weight’ methods & personal

Interactions to catch problems early and changeCore Principles:

Individuals and Interactions over processes and tools Working Software over comprehensive documentation Customer Collaboration over contract negotiation Responding to Change over following a plan

http://agilemanifesto.org/

Page 3: Agile Development - Emory Universitycengiz/cs540-485-soft-eng-fa13/slides/Turnbull... · Agile Development: Prototypes & Deployed Software ... Pivotal Tracker – User Stories/Chores

Flavors of Agile Development

Various Techniques with differing process maps In Reality few people strictly adhere to one method Our Own Mix and Match borrows from:

Agile Development: Prototypes & Deployed Software Scrum: Stand-Ups & Story Points Extreme Programming: Refactoring

Realities of Our Environment: Little project planning High number of concurrent projects High diversity and low complexity of projects High Complexity and Significant External Workflow Dependency

Page 4: Agile Development - Emory Universitycengiz/cs540-485-soft-eng-fa13/slides/Turnbull... · Agile Development: Prototypes & Deployed Software ... Pivotal Tracker – User Stories/Chores

Breaking It Down and Developing

Project Plan >> Release Plan >> User StoryProject Plan covers Scope and Overall GoalsRelease Plan bundles features into logical blocksUser Stories tell WHO can do WHAT and WHYStorypoints estimate the relative complexity of

satisfying the requirement.Tools we use:

Wiki’s and Documentation sites – Project/Release Plans Pivotal Tracker – User Stories/Chores Iteration – 2 Week breakdown and focus of work. Iteration Board – Daily Management of Development.

Page 5: Agile Development - Emory Universitycengiz/cs540-485-soft-eng-fa13/slides/Turnbull... · Agile Development: Prototypes & Deployed Software ... Pivotal Tracker – User Stories/Chores

Estimation & Planning

User Stories are the central focus for developersEach User Story should imply an acceptance testComplexity is estimated in Story Points

Arbitrary measure of relative complexity We use modified Fibonacci Sequence (0, 1, 2, 3, 5, 8, 13, 21) Estimates are collaborative to uncover assumptions Based on Staffing we estimate how many Story Points we can

accomplish in a 2 week Iteration (Velocity)

Page 6: Agile Development - Emory Universitycengiz/cs540-485-soft-eng-fa13/slides/Turnbull... · Agile Development: Prototypes & Deployed Software ... Pivotal Tracker – User Stories/Chores

Iterations & The Iteration Board

Iterations focus on immediate goals in a releaseIdentify the most critical work over next 2 weeksSet expectations on what we’ll be trying to

accomplishAre a means to monitor the progress of development

and adjust planning if neededDaily 10 min Stand-Ups keep Everyone In the LoopSignificant difference in how we use iterations here

Page 7: Agile Development - Emory Universitycengiz/cs540-485-soft-eng-fa13/slides/Turnbull... · Agile Development: Prototypes & Deployed Software ... Pivotal Tracker – User Stories/Chores

Discipline In The Process

Version Control (Git/Subversion) is a MUSTBranching and Tagging of ReleasesUnit Testing Absolutely VitalCommunication & Released Software

Daily Stand-Ups Code needs to be frequently Deployed and Hand’s On Design Globally, Code Locally Acceptance Testing is important

Page 8: Agile Development - Emory Universitycengiz/cs540-485-soft-eng-fa13/slides/Turnbull... · Agile Development: Prototypes & Deployed Software ... Pivotal Tracker – User Stories/Chores

Criticisms of Agile Development

Feature focus obscures goals and infrastructure.Staffing and long term planning problems.A charismatic movement that generates certification

or speaker fees.Works better for Senior Developers who can operate

with more discretion.Higher Risk of Scope Creep.Inadequate handing of non-functional details.

Page 9: Agile Development - Emory Universitycengiz/cs540-485-soft-eng-fa13/slides/Turnbull... · Agile Development: Prototypes & Deployed Software ... Pivotal Tracker – User Stories/Chores

My Own Conclusions

No method excuses you from knowing your business.Just like software, pick the right tools for the right

job.Make the process as transparent and avoid Scrum-

But.Define with expected outcomes but iterate through

features.Why is the most important question you can ask.

Page 10: Agile Development - Emory Universitycengiz/cs540-485-soft-eng-fa13/slides/Turnbull... · Agile Development: Prototypes & Deployed Software ... Pivotal Tracker – User Stories/Chores

Tools of the Trade

Agile Development

Page 11: Agile Development - Emory Universitycengiz/cs540-485-soft-eng-fa13/slides/Turnbull... · Agile Development: Prototypes & Deployed Software ... Pivotal Tracker – User Stories/Chores

Pivotal Tracker for Project Management

Page 12: Agile Development - Emory Universitycengiz/cs540-485-soft-eng-fa13/slides/Turnbull... · Agile Development: Prototypes & Deployed Software ... Pivotal Tracker – User Stories/Chores

Iteration Cards

<Project>

<Description>

<Project>

<User Story>

<Initials><Storypointst>

<Initials>

Page 13: Agile Development - Emory Universitycengiz/cs540-485-soft-eng-fa13/slides/Turnbull... · Agile Development: Prototypes & Deployed Software ... Pivotal Tracker – User Stories/Chores

Analog, the wave of the future

Page 14: Agile Development - Emory Universitycengiz/cs540-485-soft-eng-fa13/slides/Turnbull... · Agile Development: Prototypes & Deployed Software ... Pivotal Tracker – User Stories/Chores

Reporting and Tracking

Page 15: Agile Development - Emory Universitycengiz/cs540-485-soft-eng-fa13/slides/Turnbull... · Agile Development: Prototypes & Deployed Software ... Pivotal Tracker – User Stories/Chores

Velocity and Where it takes You