Web development is hard, very hard – and it’s getting harder. But there is hope, a radically different approach called agile.
If you build websites for a living, you know the pressure. Drupal sites can be complex beasts with thousands of moving parts. Clients have high demands – changing demands. Budgets have never been tighter. If you are going to keep the sites you manage ahead of the competition, you have to innovate – continually. And everything has to be done at the breakneck speed of web time.
The results: the average software project is 45% over budget, delayed by 63% and missing 1/3 of the promised functionality. Failure has become the norm – but there is a better way.
Agile is a radically different processes for improving development efficiency, minimizing risk and enhancing innovation. In the ten short years since the Agile Manifesto was penned it has taken over traditional software and game development. The world’s web leaders such as Google, Amazon, Microsoft, Yahoo!, Twitter and Saleforce.com have embraced agile methodologies. Many top Drupal shops have also made the leap.
Come learn what all the buzz is about.
2. How websites are built • requirements gathering
• planning?
• design & development
• testing
• launch
• maintenance
Photo: http://www.flickr.com/photos/schoolstreet/163727710
3. Why do we plan?
•Certainty
•On time
•On budget
•On scope
•Better user experience
•End user
•Stakeholder
•Improved returns
•Waste
What are the outcomes of planning?
Photo: http://www.flickr.com/photos/joeshlabotnik/3707230247
4. How are we doing?
Source: http://blogs.msdn.com/b/dannawi/archive/2009/05/15/2009-standish-chaos-report-we-are-successful-in-the-failure.aspx
5. Creating valueHow do we know what creates value for end
users and stakeholders?
Predict | Test
6. Best way to gather opinions
http://www.flickr.com/photos/avlxyz/429194752
http://www.flickr.com/photos/ricardofrancone/4358780638 http://www.flickr.com/photos/avlxyz/2270628017
http://www.flickr.com/photos/niallkennedy/54261427
8. The fallacy
Web development can
be planned to precision
Software development is
accidently complex and
essential complex
Essential complexity
cannot be solved with
predictive planning
http://www.flickr.com/photos/kraetzsche/3820338564
9. The fallacy
Web development can
be planned to precision
http://www.flickr.com/photos/kraetzsche/3820338564
Parnas and Clements
1. User and customers do not know exactly what they want
2. Even if the developers know the requirements, the details
become clear only as they develop the system
3. Even if all the details could be know up front, humans are
incapable of comprehending that many details
4. Even if we could understand all the details, product and
project changes occur
5. People make mistakes
11. Empirical processes Empirical Process
move from predictive
to adaptive
useful for processes
with lots of noise and
unpredictability
three cornerstones
• transparency
• inspection
• adaption
http://www.flickr.com/photos/picture_taking__fool/99560925
12. What is Scrum
Scrum is an iterative and incremental agile
framework for completing complex project
Named from an analogy in a 1986 study
by Takeuchi and Nonaka, published in the
Harvard Business Review comparing
high-performing, cross-functional teams to the
scrum formation used by Rugby teams
http://www.flickr.com/photos/sk8geek/4624935280
13. Example Waterfall Process:
Waterfall vs. Scrum
Requirements
Design
Implementation
Verification
Requirements
Design
Implementation
Verification
Website
(6 months)
Feature
(2 weeks)
Example Scrum Process:
15. Three Scrum Roles:
1. ScrumMaster
• Facilitator; enforces Scrum process
2. Product Owner
• Owner of the product backlog
• Works with client to prioritize features
• Focused on ROI
3. Team
• Responsible for developing functionality
• Self-managing, self-organizing, cross-functional
Scrum roles
16. What happened to…
Project manager
• Responsibilities distributed to all roles
UX architect
• Works one sprint ahead of the team
• Opportunity to move from heuristics to
observation
Business analyst
• Works both with product owners & directly
with team
http://www.flickr.com/photos/stuckincustoms/2743756315
17. Just in time strategy
Make decisions when you have the most data
Make decisions based on working software
(not paper prototypes)
Minimize the amount of work not done
Adequate planning and frequent conversations
Just-in-Time Strategy
http://www.flickr.com/photos/rpmarks/4503154179
18. Innovation
“Uncertainty is the only thing to be certain of.”
- Anthony Muh, Citigroup, Asia
“If you don’t like change, you are going to like irrelevance
even less. ”
- General Eric Shinseki, Chief of Staff, U.S. Army
http://www.flickr.com/photos/xtyler/4296489988
19. Five Disciplines of a Learning Organizations
1. Personal mastery – commitment by an individual to the process of
learning (driven by creative tension)
2. Mental models – assumptions (best practices) held by individuals and
organizations. Models must be challenged.
3. Shared vision – creates a common identity that provides focus and
energy for learning. Built on the individual visions of staff at all levels.
4. Team learning – ability of the team to learn and think as a whole
where the sum is greater than the parts. Driven by open dialogue,
discussion, shared meaning and shared understanding.
5. Systems thinking – A conceptual framework that allows people to
study businesses as a bounded objects (close systems). Created by
making all characteristics apparent at once, in particular connections
between cause and effect (feedback).
http://www.flickr.com/photos/rytc/282673909
20. How Scrum drives innovation
•Personal mastery
•Learning accountability: held accountable to the team on a daily and sprintly
basis
•Cannot do things half way; must meet the definition of done
• Mental models
•Challenged and adapted on a regular basis in sprint retros
•Allows and encourages frequent observation
•Shared vision
•Develops from sprint planning and backlog grooming
•Tuned in daily standups
•Team learning
•Paired development; work is highly collaborative.
•Dialoging is encouraged in sprint planning, daily standups and sprint retros
•Systems thinking
•Sprint reviews enable continuous inspection and adaption on the product
•Sprint retro enables continuous inspection and adaption on the process
21. Thank you
Tom McCracken
LevelTen Interactive
Director
Phone: 214.887.8586
Email: tom@leveltendesign.com
Twitter: @levelten_tom
Blog: leveltendesign.com/blog/tom
LinkedIn: linkedin.com/in/tommccracken
Notas do Editor
How are websites built
Why do we plan
Conclusion: not much certainty, a lot of waste
Predict or ask & observe (empirical)
Food: writeup in the menu, picture, see real life version, try it
? User Experience Design typical does not include Users Experiencing anything?
It is tempting to believe that we can write down all the requirements for a system and then think our way to a solution in a top-down manor. David Parnas and Paul Clements (1986) Fred Brooks – No Silver Bullet (1986) We know that planning fails at creating certainty. We know it is sub optimal for creating better user experiences and returns because stakeholders are forced to make the most important decisions when they have the least knowledge to do it. So why do we do it.
It is tempting to believe that we can write down all the requirements for a system and then think our way to a solution in a top-down manor. David Parnas and Paul Clements (1986) Fred Brooks – No Silver Bullet (1986) We know that planning fails at creating certainty. We know it is sub optimal for creating better user experiences and returns because stakeholders are forced to make the most important decisions when they have the least knowledge to do it. So why do we do it.