Are Agile Projects Doomed to Half-Baked Design? Alex Chaffee [email_address] Leslie Chicoine [email_address]
Introduction What is Design What is Coding XP and Agile Programming Agile Design: How to merge Agile processes and design ...
Web 2.0 =  ?
Web 2.0 =  play
Web 2.0 =  play  faster
Design Methods Design
Design Methods Strategy Graphics User Centered Front End Coding User Interface Information Architecture Interactive Intera...
Design Methods I design.
Design Methods Research Thought Modeling Communication Play Re-design I design.
Coding Methods Coding
Coding Methods Model-View-Controller Databases JavaScript Java Debugging CSS Version Control IDEs Research Coding Ruby Des...
Coding Methods I code.
Coding Methods I code. Research Thought Modeling Communication Play Re-design
The Big Idea “ Design is finding the problem, not the solution.” —Leslie Chicoine
The hard problems are… <ul><li>people problems </li></ul><ul><ul><li>(mis-) communication </li></ul></ul><ul><ul><li>(not ...
<ul><li>Extreme Programming is an Agile Process </li></ul><ul><ul><li>Motto:  Embrace Change </li></ul></ul><ul><ul><li>Ot...
<ul><li>Extreme Programming is an Agile Process </li></ul><ul><li>Values </li></ul><ul><ul><li>Feedback </li></ul></ul><ul...
XP Practices XP Practices Collective Ownership Pairing Continuous Improvement Continuous Integration testing refactoring s...
<ul><li>XP Cycles </li></ul><ul><ul><li>Rapid Iteration, small releases </li></ul></ul><ul><ul><li>Frequent planning/desig...
XP Meets Waterfall Design Extreme  Programming Waterfall  Design
XP Meets Waterfall Design Extreme Programming Waterfall Design
XP Meets Waterfall Design
<ul><li>The three things we do in XP that  any  team should do </li></ul><ul><ul><li>Weekly demos </li></ul></ul><ul><ul><...
Agile Design Agile Design
Agile Design “ Plans are useless, but planning is indispensable.” -Dwight D. Eisenhower
Agile Design Embracing change Communal design ownership Evolving solutions
Agile Design
Agile Design
Agile Design “ Make it OK for people to challenge an idea or two, the good ideas can withstand it and the weaker ideas fal...
Agile Design “ He’ll take good ideas from wherever they come from.”  “He asks you, he wants to know what you think.”
Scales of Design Scales of Design
Scales of Design Concept Business Goals User Tasks / Motivations Site Flow & Wayfinding Supporting Systems Navigation Widg...
Scales of Design The Large Scale is tested in the Small Scale.  The Small Scale reveals if the Large Scale ideas are solid.
Scales of Design Play faster.
Scales of Design Play faster.
Scales of Design Play faster.
Scales of Design Play faster.
Scales of Design Concept Business Goals User Tasks / Motivations Site Flow & Wayfinding Supporting Systems Navigation Widg...
Problems vs. Solutions Problems vs. Solutions
Problems vs. Solutions “ Design is finding the problem, not the solution.”
Problems vs. Solutions Documents as communication space Not as blueprints
Problems vs. Solutions
Problems vs. Solutions
Problems vs. Solutions Expose and flesh out the problems  While manage constraints
Problems vs. Solutions Suggest solutions Share the outcome to create buy-in
Open Design Open Design
Open Design Agile demands open: it’s got to be flexible and extensible.
Open Design Expose  to create  depth .
Scales of Open Design Concept Business Goals User Tasks / Motivations Site Flow & Wayfinding Supporting Systems Navigation...
Open Design
Open Design
Open Design
Open Design Small Scale as reflection of Large Scale Design emerges from simple rules
Designers should… <ul><li>Design a week in advance of coding </li></ul><ul><li>Not make your mockups pixel-perfect </li></...
Coders should… <ul><li>Coders should ask designers… or else </li></ul><ul><ul><li>time is wasted re-working solved issues ...
How to integrate with an outside design company? <ul><li>Communication and feedback are naturally more stretched out </li>...
Say Hi. Alex Chaffee [email_address] Leslie Chicoine [email_address]
Upcoming SlideShare
Loading in...5
×

Are Agile Projects Doomed to Half-Baked Design?

26,326

Published on

Today's web-based applications go live every few weeks. Agile methodologies like Extreme Programming and Scrum, focus on short development cycles, accelerated feedback from users and customers, and incremental delivery. On the technical side these approaches can bring discipline and predictability to short release cycles. But can these incremental methodologies incorporate successful design techniques? Using case studies and examples from their own project experience, Alex and Leslie will discuss how to integrate design and Agile, discussing what works, what problems arise, and most importantly, the changes in mindset that are necessary on an integrated Agile design/implementation team.

Published in: Business, Technology
6 Comments
72 Likes
Statistics
Notes
No Downloads
Views
Total Views
26,326
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
1,261
Comments
6
Likes
72
Embeds 0
No embeds

No notes for slide
  • Transcript of "Are Agile Projects Doomed to Half-Baked Design?"

    1. 1. Are Agile Projects Doomed to Half-Baked Design? Alex Chaffee [email_address] Leslie Chicoine [email_address]
    2. 2. Introduction What is Design What is Coding XP and Agile Programming Agile Design: How to merge Agile processes and design principles Q&A
    3. 3. Web 2.0 = ?
    4. 4. Web 2.0 = play
    5. 5. Web 2.0 = play faster
    6. 6. Design Methods Design
    7. 7. Design Methods Strategy Graphics User Centered Front End Coding User Interface Information Architecture Interactive Interaction Research User Flow Concepts Design
    8. 8. Design Methods I design.
    9. 9. Design Methods Research Thought Modeling Communication Play Re-design I design.
    10. 10. Coding Methods Coding
    11. 11. Coding Methods Model-View-Controller Databases JavaScript Java Debugging CSS Version Control IDEs Research Coding Ruby Design Patterns UML Diagrams Deploying Perl Object-Oriented Design Best Practices Scripting
    12. 12. Coding Methods I code.
    13. 13. Coding Methods I code. Research Thought Modeling Communication Play Re-design
    14. 14. The Big Idea “ Design is finding the problem, not the solution.” —Leslie Chicoine
    15. 15. The hard problems are… <ul><li>people problems </li></ul><ul><ul><li>(mis-) communication </li></ul></ul><ul><ul><li>(not enough) feedback </li></ul></ul><ul><ul><li>(not fully) comprehending constraints </li></ul></ul><ul><li>process problems </li></ul><ul><ul><li>deadline and resource management </li></ul></ul><ul><ul><li>design flexibility in the face of frequent change </li></ul></ul><ul><li>Where can we find a people-oriented process, and process-oriented people? </li></ul>
    16. 16. <ul><li>Extreme Programming is an Agile Process </li></ul><ul><ul><li>Motto: Embrace Change </li></ul></ul><ul><ul><li>Other Agile Processes include Scrum, Crystal Clear, Adaptive Software Development, Feature Driven Development, DSDM, Agile Modeling </li></ul></ul>XP Defined
    17. 17. <ul><li>Extreme Programming is an Agile Process </li></ul><ul><li>Values </li></ul><ul><ul><li>Feedback </li></ul></ul><ul><ul><li>Communication </li></ul></ul><ul><ul><li>Simplicity </li></ul></ul><ul><ul><li>Courage </li></ul></ul>XP Defined
    18. 18. XP Practices XP Practices Collective Ownership Pairing Continuous Improvement Continuous Integration testing refactoring simple design High code quality <ul><ul><li>Sustainable Pace </li></ul></ul><ul><ul><li>On-site Customer </li></ul></ul><ul><ul><ul><li>design by discussion </li></ul></ul></ul><ul><ul><ul><li>frequent spontaneous </li></ul></ul></ul><ul><ul><ul><li>working sessions </li></ul></ul></ul><ul><ul><ul><li>Suggest and agree to process changes </li></ul></ul></ul>” Ask the room” “ Don’t be stupid.” retrospectives Incremental design, development, deployment Weekly demos
    19. 19. <ul><li>XP Cycles </li></ul><ul><ul><li>Rapid Iteration, small releases </li></ul></ul><ul><ul><li>Frequent planning/design sessions </li></ul></ul><ul><ul><ul><li>Iteration Planning, Release Planning </li></ul></ul></ul><ul><ul><ul><li>Break down requirements into stories into tasks </li></ul></ul></ul><ul><ul><ul><li>Daily Standup </li></ul></ul></ul><ul><ul><ul><li>Regular All-Hands Retrospectives </li></ul></ul></ul><ul><ul><li>Frequent (weekly) demos </li></ul></ul><ul><ul><ul><li>of deployed, 100% functional software </li></ul></ul></ul><ul><ul><ul><li>real code, real db, real ui, but only some of the stories </li></ul></ul></ul><ul><ul><ul><li>coders, clients, designers, PMs are all in the room </li></ul></ul></ul>XP Cycles
    20. 20. XP Meets Waterfall Design Extreme Programming Waterfall Design
    21. 21. XP Meets Waterfall Design Extreme Programming Waterfall Design
    22. 22. XP Meets Waterfall Design
    23. 23. <ul><li>The three things we do in XP that any team should do </li></ul><ul><ul><li>Weekly demos </li></ul></ul><ul><ul><li>Daily standups </li></ul></ul><ul><ul><li>Pairing </li></ul></ul><ul><li>Caution: May provoke resistance and hostility </li></ul>XP Staples
    24. 24. Agile Design Agile Design
    25. 25. Agile Design “ Plans are useless, but planning is indispensable.” -Dwight D. Eisenhower
    26. 26. Agile Design Embracing change Communal design ownership Evolving solutions
    27. 27. Agile Design
    28. 28. Agile Design
    29. 29. Agile Design “ Make it OK for people to challenge an idea or two, the good ideas can withstand it and the weaker ideas fall away and make room for something [better].” -Brad Bird, Writer/Director of the Incredibles
    30. 30. Agile Design “ He’ll take good ideas from wherever they come from.” “He asks you, he wants to know what you think.”
    31. 31. Scales of Design Scales of Design
    32. 32. Scales of Design Concept Business Goals User Tasks / Motivations Site Flow & Wayfinding Supporting Systems Navigation Widgets Global Styles Language Buttons Graphics Fonts Large Scale Small Scale
    33. 33. Scales of Design The Large Scale is tested in the Small Scale. The Small Scale reveals if the Large Scale ideas are solid.
    34. 34. Scales of Design Play faster.
    35. 35. Scales of Design Play faster.
    36. 36. Scales of Design Play faster.
    37. 37. Scales of Design Play faster.
    38. 38. Scales of Design Concept Business Goals User Tasks / Motivations Site Flow & Wayfinding Supporting Systems Navigation Widgets Global Styles Language Buttons Graphics Fonts Large Scale Small Scale
    39. 39. Problems vs. Solutions Problems vs. Solutions
    40. 40. Problems vs. Solutions “ Design is finding the problem, not the solution.”
    41. 41. Problems vs. Solutions Documents as communication space Not as blueprints
    42. 42. Problems vs. Solutions
    43. 43. Problems vs. Solutions
    44. 44. Problems vs. Solutions Expose and flesh out the problems While manage constraints
    45. 45. Problems vs. Solutions Suggest solutions Share the outcome to create buy-in
    46. 46. Open Design Open Design
    47. 47. Open Design Agile demands open: it’s got to be flexible and extensible.
    48. 48. Open Design Expose to create depth .
    49. 49. Scales of Open Design Concept Business Goals User Tasks / Motivations Site Flow & Wayfinding Supporting Systems Navigation Widgets Global Styles Language Buttons Graphics Fonts Large Scale Small Scale
    50. 50. Open Design
    51. 51. Open Design
    52. 52. Open Design
    53. 53. Open Design Small Scale as reflection of Large Scale Design emerges from simple rules
    54. 54. Designers should… <ul><li>Design a week in advance of coding </li></ul><ul><li>Not make your mockups pixel-perfect </li></ul><ul><li>Work literally side-by-side with coders when implementing mockups </li></ul><ul><li>Allow coders to participate in IA/UI design — Especially after the coding has already started </li></ul>
    55. 55. Coders should… <ul><li>Coders should ask designers… or else </li></ul><ul><ul><li>time is wasted re-working solved issues </li></ul></ul><ul><ul><li>solutions are implemented that don't work with other parts of the designed system </li></ul></ul><ul><ul><li>coders make assumptions based on mockups </li></ul></ul><ul><li>Coders should give frequent live demos… or else </li></ul><ul><ul><li>designers don't know what parts of the design are/aren't working </li></ul></ul><ul><ul><li>designers don't know what parts of the design aren't working together </li></ul></ul><ul><ul><li>coders don't know their code has bugs or needs tweaking </li></ul></ul>
    56. 56. How to integrate with an outside design company? <ul><li>Communication and feedback are naturally more stretched out </li></ul><ul><li>Some unnatural (or at least un-Agile) barriers are imposed </li></ul><ul><ul><li>Time and space </li></ul></ul><ul><ul><li>Signoff procedures </li></ul></ul><ul><ul><li>Documentation / specs </li></ul></ul><ul><ul><li>Perfectionism </li></ul></ul><ul><ul><li>Mistrust </li></ul></ul><ul><li>Bring them in to your process as much as you can </li></ul><ul><li>Don’t force them to adapt too much or they’ll resent and demonize you </li></ul><ul><li>Iterate per-month at first, then per-week </li></ul><ul><li>Invite them to your demos (remotely if need be) </li></ul>
    57. 57. Say Hi. Alex Chaffee [email_address] Leslie Chicoine [email_address]
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×