Agile Development Methodologies
Three Communities
Project stakeholders (Customers)
Development organization management
Developers
The Agile Manifesto
Indivduals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
That is, while there is value in the items on the right, we value the items on the left more.
The Agile Principles
1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.
2. Welcome changing requirements, even late in development. Agilel processes harness change for the customer’s competitive advantage.
3. Deliver working software frequently, from a couple of weeks to a couple of monthsm with a preference for the shorter time scale.
From the Agile Alliance: www.agilealliance.com
More Agile Principles
4. Business people and developers must work together daily throughout the project.
5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
6. The most efficient and effective method of conveying information to, and within a development team is face-to-face conversation.
Still more Agile Principles
7. Working software is the primary measure of progress.
8. Agile processes promote sustainable development.
9. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
10. Continuous attention to technical excellence and good design enhances agility.
Even more Agile Principles
11. Simplicity – the art of maximizing the amount of work not done – is essential.
12. The best architectures, requirements, and designs emerge from self-organizing teams.
13. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
Major Agile Methodologies
Scrum
Extreme Programming
Version of the Unified Process
Evo
Crystal family of methodologies
Scrum
Single team of three to nine
Multiple teams each with three to nine members each.
Representatives from teams meet daily.
Common project room
Daily stand-up meeting
Iteration Is thirty calendar days
Emphasis on empirical rather than defined process.
May be easily combined with other methodologies to provide greater specification of specific activities.
The Scrum Lifecycle
Lifecycle has four phases:
Pre-game
Planning
Staging
The Game
Development
Release
Development may iterate, typically 3 to 8 times.
Called sprints lasting one month each
Scrum Planning
Purpose:
Establish vision
Set expectations
Secure funding and other needed resources
Activities
Write vision
Develop budget
Form initial Product Backlog
Estimate items
Exploratory design and prototypes
Scrum Staging
Purpose:
Identify more requirements
Prioritize for first iteration
Activities
Planning
Exploratory design and prototypes
Scrum Development
Purpose:.
Agile Development MethodologiesThree CommunitiesProjec.docx
1. Agile Development Methodologies
Three Communities
Project stakeholders (Customers)
Development organization management
Developers
The Agile Manifesto
Indivduals and interactions over processes and tools
Working software over comprehensive
documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
That is, while there is value in the items on the right, we value
the items on the left more.
The Agile Principles
1. Our highest priority is to satisfy the customer through early
and continuous delivery of valuable software.
2. Welcome changing requirements, even late in development.
Agilel processes harness change for the customer’s competitive
advantage.
3. Deliver working software frequently, from a couple of weeks
to a couple of monthsm with a preference for the shorter time
scale.
2. From the Agile Alliance: www.agilealliance.com
More Agile Principles
4. Business people and developers must work together daily
throughout the project.
5. Build projects around motivated individuals. Give them the
environment and support they need, and trust them to get the
job done.
6. The most efficient and effective method of conveying
information to, and within a development team is face-to-face
conversation.
Still more Agile Principles
7. Working software is the primary measure of progress.
8. Agile processes promote sustainable development.
9. The sponsors, developers, and users should be able to
maintain a constant pace indefinitely.
10. Continuous attention to technical excellence and good
design enhances agility.
Even more Agile Principles
11. Simplicity – the art of maximizing the amount of work not
done – is essential.
12. The best architectures, requirements, and designs emerge
from self-organizing teams.
13. At regular intervals, the team reflects on how to become
more effective, then tunes and adjusts its behavior accordingly.
Major Agile Methodologies
Scrum
Extreme Programming
Version of the Unified Process
3. Evo
Crystal family of methodologies
Scrum
Single team of three to nine
Multiple teams each with three to nine members each.
Representatives from teams meet daily.
Common project room
Daily stand-up meeting
Iteration Is thirty calendar days
Emphasis on empirical rather than defined process.
May be easily combined with other methodologies to provide
greater specification of specific activities.
The Scrum Lifecycle
Lifecycle has four phases:
Pre-game
Planning
Staging
The Game
Development
Release
Development may iterate, typically 3 to 8 times.
Called sprints lasting one month each
Scrum Planning
Purpose:
Establish vision
Set expectations
Secure funding and other needed resources
Activities
Write vision
Develop budget
4. Form initial Product Backlog
Estimate items
Exploratory design and prototypes
Scrum Staging
Purpose:
Identify more requirements
Prioritize for first iteration
Activities
Planning
Exploratory design and prototypes
Scrum Development
Purpose:
Implement a product ready for release
Series of thirty day iterations (Sprints)
Activities:
Sprint planning meeting
Define the Sprint Backlog
Do estimates
Daily Standup meetings
Sprint Review
Scrum Standup Meetings
Fifteen minutes
One team of developers and immediate manager
The manager is silent, but takes notes
Limited to fifteen minutes
Each developer answers three questions:
What did you do yesterday?
What will you do today?
5. What is limiting your progress?
Scrum Release
Purpose:
Operational deployment
Activities:
Documentation
Training
Preparation of deployment
Marketing & Sales
Scrum Work Products
Product Backlog
Features
Use cases
Enhancements
Defects
technologies
Release Backlog
Subset of product backlog
More Scrum Work Propducts
Backlog graph: estimate of work remaining versus days
Sprint backlog: tasks for the iteration
Each task expected to need 4 to 16 hours of work
Scrum Roles
Customer
One or more business stakeholders
Product Owner
Responsible for creating and prioritizing the Product Backlog
6. Selects the goals from the Product Backlog for the next Sprint
Along with other stakeholders, reviews the product at the end of
each Sprint.
Developer
No specialists
Work on the Sprint Backlog
More Scrum Roles
Management
Scrum Master
Usually developer as well as manager
Reinforces the project and iteration vision and goals
Ensures Scrum values and practices are followed
Mediates between Developers and Management
Listens to progress
Works to remove or ameliorate impediments
Conducts the Daily Standup Meeting
Conducts the Sprint Review
Still More Scrum Roles
Upper management called the Chickens
May observe, but not speak during an iteration
Stand outside the Daily Standup meeting
Developers are called the Pigs,
Scrum Coach
Optional
Helps guide developers in Scrum practices, principles, and
philosophy.
Extreme Programming
Four Values:
Communication
7. Simplicity
Feedback
Courage
Extreme Programming Core Practices
1. Planning Game
2. Small, frequent releases
3. System metaphors
4. Simple design
5. Test-Driven Development
6. Frequent refactoring
More Practices
7. Pair programming
8. Team code ownership
9. Continuous integration
10. Sustainable pace
11. Whole team together
12. Coding Standards
Extreme Programming Lifecycle
Five Phases
Exploration
Purpose:
Write enough well-estimated story cards for first release
Ensure feasibility
Activities
Prototyping
Exploratory proof of technology programming
Story card writing
estimating
8. More of the Lifecycle
Planning
Purpose:
Agree on date ad stories for first release
Activities
Release Planning Game
Story card writing
Estimating
More of the Lifecycle
Iterations to First Release
Purpose:
Implement a tested product ready for release
Activities
Test-directed development
Iteration Planning Game
Task writing and estimating
Still More of the Lifecycle
Productionizing
Purpose:
Operational deployment
Activities
Documentation
Training
Marketing
Maintenance
Purpose
Enhance, fix, and build major releases
Activities
Iterations of the previous four phases.
9. Extreme Programming Work Products
Story cards:
Feature requests
Should require 2 to 10 days to implement
More details from customer
CRC Cards:
Class responsibility and collaborator ideas
Sketches
Informal working out of ideas
More Work Products
Task list
Tasks within each story
Should take 1 – 2 days to implement
Vision Graphs
Visual representation of progress
Kept on the wall for all to see
Extreme Programming Roles
Customer
Writes stories
Writes acceptance tests
Selects stories for release and for iteration
Developer
Programmer
Writes unit tests, designs, code
Refactors
Identifies tasks
Estimates tasks
Tester
Helps customer write tests
More Roles
10. Management
Coach
Process conscience
process customizing
Intervention
Teaching
Tracker
Collect metrics
Inform on progress
Provide feedback on prior estimates
Another Role
Consultant
Coaching
Technical consulting
Lean Software Development Methodology
Some developers view Lean as a successor to Agile.
Others consider Lean an extension of Agile.
Lean Industrial Development was formulated by the Japsnese in
the 1950’s.
Lean Software Development is the imperfect adaptation to
software.
Lean Guiding Principles
1. Eliminate Waste
DOTWIMP
2. Build quality in
3. Create Knowledge
4. Defer commitment
5. Deliver fast
6. Respect People
7. Optimize the whole
11. Getting Started with Lean
Version control
Scripted Builds
1. Daily standup
2. Automated testing
3. Continuous integration
4. Short iterations
5. Customer participation
Summary
Agile is a family of methodologies for software development.
Key Aspects of Agile
Self-organizing teams
Informal rather than formal communications
Expects and accommodates change and discovery
Emphasizes self and team evaluation, learning, and
improvemen.
Manager encourages and facilitates rather than directs.
Mini Case
Delivering Business Value with
IT at Hefty Hardware2
“IT is a pain in the neck,” groused Cheryl
O’Shea, VP of retail marketing, as she
slipped into a seat at the table in the Hefty Hardware executive
dining room, next to
her colleagues. “It’s all technical mumbo-jumbo when they talk
12. to you and I still don’t
know if they have any idea about what we’re trying to
accomplish with our Savvy Store
program. I keep explaining that we have to improve the
customer experience and that
we need IT’s help to do this, but they keep talking about
infrastructure and bandwidth
and technical architecture, which is all their internal stuff and
doesn’t relate to what
we’re trying to do at all! They have so many processes and
reviews that I’m not sure
we’ll ever get this project off the ground unless we go outside
the company.”
“You’ve got that right,” agreed Glen Vogel, the
COO. “I really like my IT account
manager, Jenny Henderson. She sits in on all our strategy
meetings and seems to really
understand our business, but that’s about as far as it goes. By
the time we get a project
going, my staff are all complaining that the IT people don’t
even know some of our
basic business functions, like how our warehouses operate. It
takes so long to deliver
any sort of technology to the field, and when it doesn’t work the
way we want it to, they
just shrug and tell us to add it to the list for the next release!
Are we really getting value
for all of the millions that we pour into IT?”
“Well, I don’t think it’s as bad as you both seem to believe,”
added Michelle
Wright, the CFO. “My EA sings the praises of the help desk and
the new ERP system
we put in last year. We can now close the books at month-end in
24 hours. Before that,
13. it took days. And I’ve seen the benchmarking reports on our
computer operations. We
are in the top quartile for reliability and cost-effectiveness for
all our hardware and
systems. I don’t think we could get IT any cheaper outside the
company.”
“You are talking ‘apples and oranges’ here,” said Glen. “On one
hand, you’re
saying that we’re getting good, cheap, reliable computer
operations and value for the
money we’re spending here. On the other hand, we don’t feel IT
is contributing to
creating new business value for Hefty. They’re really two
different things.”
“Yes, they are,” agreed Cheryl. “I’d even agree with you that
they do a pretty
good job of keeping our systems functioning and preventing
viruses and things. At
least we’ve never lost any data like some of our competitors.
But I don’t see how they’re
contributing to executing our business strategy. And surely in
this day and age with
increased competition, new technologies coming out all over the
place, and so many
changes in our economy, we should be able to get them to help
us be more flexible, not
less, and deliver new products and services to our customers
quickly!”
2 Smith, H. A., and J. D. McKeen. “Delivering
Business Value with IT at Hefty Hardware.”
#1-L10-1-001,
Queen’s School of Business, May 2010. Reproduced by
permission of Queen’s University, School of Business,
14. Kingston, Ontario, Canada.
76
Delivering Business Value with IT at Hefty
Hardware 77
The conversation moved on then, but Glen was thoughtful as he
walked back to
his office after lunch. Truthfully, he only ever thought about IT
when it affected him and
his area. Like his other colleagues, he found most of his
communication with the depart-
ment, Jenny excepted, to be unintelligible, so he delegated it to
his subordinates, unless
it absolutely couldn’t be avoided. But Cheryl was right. IT was
becoming increasingly
important to how the company did its business. Although
Hefty’s success was built on
its excellent supply chain logistics and the assortment of
products in its stores, IT played
a huge role in this. And to implement Hefty’s new Savvy Store
strategy, IT would be
critical for ensuring that the products were there when a
customer wanted them and
that every store associate had the proper information to answer
customers’ questions.
In Europe, he knew from his travels, IT was front and center in
most cutting-
edge retail stores. It provided extensive self-service to improve
checkout; multichannel
access to information inside stores to enable customers to
browse an extended product
15. base and better support sales associates assisting customers; and
multimedia to engage
customers with extended product knowledge. Part of Hefty’s
new Savvy Store business
strategy was to copy some of these initiatives, hoping to become
the first retailer in
North America to completely integrate multimedia and digital
information into each of
its 1,000 stores. They’d spent months at the executive
committee meetings working out
this new strategic thrust—using information and multimedia to
improve the customer
experience in a variety of ways and to make it consistent in
each of their stores. Now,
they had to figure out exactly how to execute it, and IT was a
key player. The question
in Glen’s mind now was how could the business and IT work
together to deliver on this
vision, when IT was essentially operating in its own technical
world, which bore very
little relationship to the world of business?
Entering his office, with its panoramic view of the downtown
core, Glen had an
idea. “Hefty’s stores operate in a different world than we do at
our head office. Wouldn’t
it be great to take some of our best IT folks out on the road so
they could see what it’s
really like in the field? What seems like a good idea here at
corporate doesn’t always
work out there, and we need to balance our corporate needs with
those of our store
operations.” He remembered going to one of Hefty’s smaller
stores in Moose River and
seeing how its managers had circumvented the company’s
stringent security protocols
16. by writing their passwords on Post-it notes stuck to the store’s
only computer terminal.
So, on his next trip to the field he decided he would take Jenny,
along with Cheryl
and the Marketing IT Relationship Manager, Paul Gutierez, and
maybe even invite the
CIO, Farzad Mohammed, and a couple of the IT architects. “It
would be good for them
to see what’s actually happening in the stores,” he reasoned.
“Maybe once they do, it
will help them understand what we’re trying to accomplish.”
A few days later, Glen’s e-mailed invitation had Farzad in a
quandary. “He wants
to take me and some of my top people—including you—on the
road two weeks from
now,” he complained to his chief architect, Sergei Grozny.
“Maybe I could spare Jenny
to go, since she’s Glen’s main contact, but we’re up to our
wazoos in alligators trying to
put together our strategic IT architecture so we can support
their Savvy Stores initiative
and half a dozen more ‘top priority’ projects. We’re supposed to
present our IT strategy
to the steering committee in three weeks!”
“And I need Paul to work with the architecture team over the
next couple of
weeks to review our plans and then to work with the master data
team to help them
outline their information strategy,” said Sergei. “If we don’t
have the infrastructure and
17. 78 Section I • Delivering Value with IT
integrated information in place there aren’t going to be any
‘Savvy Stores’! You can’t
send Paul and my core architects off on some boondoggle for a
whole week! They’ve all
seen a Hefty store. It’s not like they’re going to see anything
different.”
“You’re right,” agreed Farzad. “Glen’s just going to have to
understand that I can’t
send five of our top people into the field right now. Maybe in
six months after we’ve
finished this planning and budget cycle. We’ve got too much
work to do now. I’ll send
Jenny and maybe that new intern, Joyce Li, who we’re thinking
of hiring. She could use
some exposure to the business, and she’s not working on
anything critical. I’ll e-mail
Jenny and get her to set it up with Glen. She’s so great with
these business guys. I don’t
know how she does it, but she seems to really get them onside.”
Three hours later, Jenny Henderson arrived back from a
refreshing noontime
workout to find Farzad’s request in her priority
in-box. “Oh #*!#*@!” she swore. She
had a more finely nuanced understanding of the politics
involved in this situation, and
she was standing on a land mine for sure. Her business contacts
had all known about
the invitation, and she knew it was more than a simple request.
However, Farzad, hav-
ing been with the company for only eighteen months, might not
recognize the olive
branch that it represented, nor the problems that it would cause
18. if he turned down the
trip or if he sent a very junior staff member in his place. “I have
to speak with him about
this before I do anything,” she concluded, reaching for her
jacket.
But just as she swiveled around to go see Farzad, Paul Gutierez
appeared in her
doorway, looking furious. “Got a moment?” he asked and, not
waiting for her answer,
plunked himself down in her visitor’s chair. Jenny could almost
see the steam coming
out of his ears, and his face was beet red. Paul was a great
colleague, so mentally put-
ting the “pause” button on her own problems, Jenny replied,
“Sure, what’s up?”
“Well, I just got back from the new technology meeting between
marketing and
our R&D guys, and it was just terrible!” he moaned. I’ve been
trying to get Cheryl and
her group to consider doing some experimentation with cell
phone promotions—you
know, using that new Japanese bar coding system. There are a
million things you can
do with mobile these days. So, she asked me to set up a
demonstration of the technol-
ogy and to have the R&D guys explain what it might do. At
first, everyone was really
excited. They’d read about these things in magazines and
wanted to know more. But
our guys kept droning on about 3G and 4G technology and
different types of connec-
tivity and security and how the data move around and how we
have to model and
architect everything so it all fits together. They had the business
19. guys so confused we
never actually got talking about how the technology might be
used for marketing and
whether it was a good business idea. After about half an hour,
everyone just tuned out.
I tried to bring it back to the applications we could develop if
we just invested a little
in the mobile connectivity infrastructure, but by then we were
dead in the water. They
wouldn’t fund the project because they couldn’t see why
customers would want to use
mobile in our stores when we had perfectly good cash registers
and in-store kiosks!”
“I despair!” he said dramatically. “And you know what’s going
to happen don’t
you? In a year or so, when everyone else has got mobile apps,
they’re going to want
us to do something for them yesterday, and we’re going to have
to throw some sort of
stopgap technology in place to deal with it, and everyone’s
going to be complaining
that IT isn’t helping the business with what it needs!”
Jenny was sympathetic. “Been there, done that, and got the T-
shirt,” she laughed
wryly. “These tech guys are so brilliant, but they can’t ever
seem to connect what they
Delivering Business Value with IT at Hefty
Hardware 79
know to what the business thinks it needs. Sometimes, they’re
too farsighted and need
20. to just paint the next couple of steps of what could be done, not
the ‘flying around in
jetpacks vision.’ And sometimes I think they truly don’t
understand why the business
can’t see how these bits and bytes they’re talking about
translate into something that it
can use to make money.” She looked at her watch, and Paul got
the hint. He stood up.
“Thanks for letting me vent,” he said. “You’re a good listener.”
“I hope Farzad is,” she thought grimly as she headed down the
hall. “Or he’s
going to be out of here by Thanksgiving.” It was a sad truth that
CIOs seemed to turn
over every two years or so at Hefty. It was almost predictable.
A new CEO would come
in, and the next thing you knew the CIO would be history. Or
the user satisfaction rate
would plummet, or there would be a major application crash, or
the executives would
complain about how much IT cost, or there would be an
expensive new system failure.
Whatever it was, IT would always get blamed, and the CIO
would be gone. “We have
some world-class people in IT,” she thought, “but everywhere
we go in the business, we
get a bad rap. And it’s not always our fault.”
She remembered the recent CIM project to produce a single
customer database for
all of Hefty’s divisions: hardware, clothing, sporting goods, and
credit. It had seemed
to be a straightforward project with lots of ROI, but the
infighting between the client
divisions had dragged the project (and the costs) out. No one
could agree about whose
21. version of the truth they should use, and the divisions had
assigned their most junior
people to it and insisted on numerous exceptions, workarounds,
and enhancements, all
of which had rendered the original business case useless. On top
of that, the company
had undergone a major restructuring in the middle of it, and a
lot of the major play-
ers had changed. “It would be a lot easier for us in IT if the
business would get its act
together about what it wants from IT,” she thought. But just as
quickly, she recognized
that this was probably an unrealistic goal. A more practical one
would be to find ways
for business and IT to work collaboratively at all levels. “We
each hold pieces of the
future picture of the business,” she mused. “We need to figure
out a better way to put
them together than simply trying to force them to fit.”
Knocking on Farzad’s door, she peeked into the window beside
it. He seemed
lost in thought but smiled when he saw her. “Jenny!” he
exclaimed. “I was just think-
ing about you and the e-mail I sent you. Have you done
anything about it yet?” When
she shook her head, he gave a sigh of relief. “I was just
rethinking my decision about
this trip, and I’d like your advice.” Jenny gave her own mental
sigh and stepped into
the office. “I think we have a problem with the business and we
need to fix it—fast,”
she said. “I’ve got some ideas, and what to do about the trip is
just part of them. Can
we talk?” Farzad nodded encouragingly and invited her to sit
down. “I agree with you,
22. and I’d like to hear what you have to say. We need to do things
differently around here,
and I think with your help we can. What did you have in mind?”
Discussion Questions
1. Overall, how effective is the partnership between IT and the
business at Hefty
Hardware? Identify the shortcomings of both IT and the
business.
2. Create a plan for how IT and the business can work
collaboratively to deliver the
Savvy Store program successfully.
First Assignment
Go through the discussion of the two most popular Agile
methodologies: Scrum and Extreme Programming in the video
on Agile Development Methodologies. Then consider how if
you were a member of a development team, you would like to
develop the following application. You should choose some
practices from each of these two Agile Methodologies form
what you feel would be the most effective methodology for this
specific application. For each of the practices you include,
justify in at least three sentences why you are including it for
this application. For each of the practices you choose not to
include, justify in at least three sentences why you did not
include it. Your justifications should draw on specific
characteristics of the provided application, rather than being
generic or arguments derived form an article, book, or the
Internet.
Application:
Our Vice President of Information Technology is responsible
for all the software development done in our company. He has
asked for a tool which would assist him in keeping track of the
23. various ongoing efforts. This tool should have the following
capabilities:
• Can maintain data for as few as six ongoing projects
and as many as thirty;
• Each project is identified by the following
information:
• Title of the project
• Start date for the project
• Termination date for the project and status at
termination (project delivered a satisfactory product; project
was terminated without success);
• Links to the HR records for each individual on the
project, their dates of project activity, and their role within the
project
• Links to each formal document produced by the
project including schedule, Vision, Requirements Specification,
etc.
• Methodology attempted by each project team.
• The application must be capable of producing the
following reports:
• List of projects with title, status, and start date
• List of projects with title, Vision, schedule, and
budget.
The Vice President has not had this type of reporting before and
expects to make frequent changes in what she wants the
application to do. Initially, she has assigned one experienced
team and one year to complete the project. There is some
possibility a successful product might be considered for sale as
an eventual product of this company.
Required Organization of Your Submission:
First Assignment
Your full name
Date of submission
Included Practices:
For each included practice, give a one sentence description
24. of the practice, Then, give your justification for including this
practice.
Excluded Practices:
For each excluded practice, give a one sentence
description. Then, give your justification for excluding this
practice.
Assistance
List each human or inanimate source of information you
used to help you used to complete this assignment. Indicate for
each, how it helped you with this assignment.
The assignment is worth thirty points. Here is the rubric which
will be used to grade this assignment.
Criterion
Point Range
Each practice is accurately described
6
Each justification draws on the actual application presented in
the assignment.
18
All Scrum and Extreme Programming practices are presented.
4
The sources of assistance are presented.
2