Are Agile Projects doomed to halfbaked design

Download Are Agile Projects doomed to halfbaked design

Post on 14-Oct-2014

888 views

Category:

Documents

0 download

Embed Size (px)

TRANSCRIPT

<p>AreAgileProjectsDoomedto HalfBakedDesign?</p> <p>AlexChaffee alex@PivotalLabs.com LeslieChicoine leslie@GetSatisfaction.com</p> <p>Introduction</p> <p>What is Design What is Coding XP and Agile Programming Agile Design: How to merge Agile processes and design principles Q&amp;A</p> <p>Web 2.0 =</p> <p>?</p> <p>Web 2.0 =</p> <p>play</p> <p>Web 2.0 = play</p> <p>faster</p> <p>DesignMethods</p> <p>Design</p> <p>DesignMethods</p> <p>Graphics UserFlow Concepts Strategy</p> <p>InformationArchitecture UserCentered</p> <p>DesignFrontEndCoding Interaction</p> <p>Research Interactive</p> <p>UserInterface</p> <p>DesignMethods</p> <p>Idesign.</p> <p>DesignMethods</p> <p>Thought</p> <p>Researc h</p> <p>Idesign.</p> <p>Modelin g Play</p> <p>Communicatio n</p> <p>Redesign</p> <p>CodingMethods</p> <p>Coding</p> <p>CodingMethods</p> <p>Databases Design Patterns IDEs Debugging Perl</p> <p>Scripting Ruby</p> <p>CSS</p> <p>UMLDiagrams JavaScript Deploying</p> <p>CodingResearch</p> <p>Java</p> <p>Best ObjectOriented Practices Design ModelView VersionControl Controller</p> <p>CodingMethods</p> <p>Icode.</p> <p>CodingMethods</p> <p>Thought</p> <p>Researc h</p> <p>Icode.</p> <p>Modelin g Play</p> <p>Communicatio n</p> <p>Redesign</p> <p>TheBigIdea</p> <p>Designisfindingthe problem,notthesolution.LeslieChicoine</p> <p>Thehardproblemsare peopleproblems (mis)communication (notenough)feedback (notfully)comprehendingconstraints</p> <p> processproblems</p> <p> deadlineandresourcemanagement designflexibilityinthefaceoffrequentchange</p> <p>Wherecanwefindapeopleorientedprocess,andprocess orientedpeople?</p> <p>XPDefined</p> <p>ExtremeProgrammingisanAgileProcess Motto:EmbraceChange OtherAgileProcessesincludeScrum,CrystalClear, AdaptiveSoftwareDevelopment,FeatureDriven Development,DSDM,AgileModeling</p> <p>XPDefined</p> <p>ExtremeProgrammingisanAgileProcess Values</p> <p> Feedback Communication Simplicity Courage</p> <p>Continuous Integration</p> <p>Collective Ownership</p> <p>Asktheroom frequent spontaneous workingsessions</p> <p>XPPractices</p> <p>retrospectivestesting Continuous Improvement HighcodequalityIncremental design, development, deployment</p> <p>XP PracticesWeeklydemos OnsiteCustomer</p> <p>Pairingsimpledesign</p> <p>refactoringSuggestandagreeto processchanges SustainablePace</p> <p>designbydiscussion</p> <p>Dontbestupid.</p> <p>XPCycles</p> <p>XPCycles</p> <p> RapidIteration,smallreleases Frequentplanning/designsessions IterationPlanning,ReleasePlanning Breakdownrequirementsintostoriesintotasks DailyStandup RegularAllHandsRetrospectives</p> <p> Frequent(weekly)demos</p> <p> ofdeployed,100%functionalsoftware realcode,realdb,realui,butonlysomeofthestories coders,clients,designers,PMsareallintheroom</p> <p>XPMeetsWaterfallDesign</p> <p>Extreme Programming</p> <p>Waterfall Design</p> <p>XPMeetsWaterfallDesign</p> <p>ExtremeProgramming</p> <p>WaterfallDesign</p> <p>XPMeetsWaterfallDesign</p> <p>XPStaples</p> <p> ThethreethingswedoinXPthatanyteam shoulddo</p> <p> Weeklydemos Dailystandups PairingCaution:Mayprovokeresistanceandhostility</p> <p>AgileDesign</p> <p>AgileDesign</p> <p>AgileDesign</p> <p>Plansareuseless,but planningisindispensable.DwightD.Eisenhower</p> <p>AgileDesign</p> <p>Embracingchange Communaldesignownership Evolvingsolutions</p> <p>AgileDesign</p> <p>AgileDesign</p> <p>AgileDesign</p> <p>MakeitOKforpeopletochallengeanideaor two,thegoodideascanwithstanditandthe weakerideasfallawayandmakeroomfor something[better].BradBird,Writer/DirectoroftheIncredibles</p> <p>AgileDesign</p> <p>Helltakegoodideasfromwherever theycomefrom. Heasksyou,hewantstoknowwhat youthink.</p> <p>ScalesofDesign</p> <p>ScalesofDesign</p> <p>ScalesofDesign</p> <p>LargeScale</p> <p>Concept BusinessGoals</p> <p>UserTasks/Motivations SiteFlow&amp;WayfindingSupportingSystemsNavigation WidgetsLanguageButtons</p> <p>GlobalStyles</p> <p>SmallScale </p> <p>GraphicsFonts</p> <p>ScalesofDesign</p> <p>TheLargeScaleistestedintheSmall Scale. TheSmallScalerevealsiftheLarge Scaleideasaresolid.</p> <p>ScalesofDesign</p> <p>Playfaster.</p> <p>ScalesofDesign</p> <p>Playfaster.</p> <p>ScalesofDesign</p> <p>Playfaster.</p> <p>ScalesofDesign</p> <p>Playfaster.</p> <p>ScalesofDesign</p> <p>LargeScale</p> <p>Concept BusinessGoals</p> <p>UserTasks/Motivations SiteFlow&amp;WayfindingSupportingSystemsNavigation WidgetsLanguageButtons</p> <p>GlobalStyles</p> <p>SmallScale </p> <p>GraphicsFonts</p> <p>Problemsvs.Solutions</p> <p>Problemsvs.Solutions</p> <p>Problemsvs.Solutions</p> <p>Designisfindingtheproblem, notthesolution.</p> <p>Problemsvs.Solutions</p> <p>Documentsascommunicationspace Notasblueprints</p> <p>Problemsvs.Solutions</p> <p>Problemsvs.Solutions</p> <p>Problemsvs.Solutions</p> <p>Exposeandfleshouttheproblems Whilemanageconstraints</p> <p>Problemsvs.Solutions</p> <p>Suggestsolutions Sharetheoutcometocreatebuyin</p> <p>OpenDesign</p> <p>OpenDesign</p> <p>OpenDesign</p> <p>Agiledemandsopen:itsgottobe flexibleandextensible.</p> <p>OpenDesign</p> <p>Exposetocreatedepth.</p> <p>ScalesofOpenDesign</p> <p>LargeScale</p> <p>Concept BusinessGoals</p> <p>UserTasks/Motivations SiteFlow&amp;WayfindingSupportingSystemsNavigation WidgetsLanguageButtons</p> <p>GlobalStyles</p> <p>SmallScale </p> <p>GraphicsFonts</p> <p>OpenDesign</p> <p>OpenDesign</p> <p>OpenDesign</p> <p>OpenDesign</p> <p>SmallScaleasreflectionofLargeScale Designemergesfromsimplerules</p> <p>Designersshould Designaweekinadvanceofcoding Notmakeyourmockupspixelperfect Workliterallysidebysidewithcoderswhen implementingmockups AllowcoderstoparticipateinIA/UIdesignEspeciallyafterthecodinghasalreadystarted</p> <p>Codersshould</p> <p>Codersshouldaskdesignersorelse timeiswastedreworkingsolvedissues solutionsareimplementedthatdon'tworkwithotherpartsof thedesignedsystem codersmakeassumptionsbasedonmockups Codersshouldgivefrequentlivedemosorelse designersdon'tknowwhatpartsofthedesignare/aren't working designersdon'tknowwhatpartsofthedesignaren'tworking together codersdon'tknowtheircodehasbugsorneedstweaking</p> <p>Howtointegratewithanoutsidedesign company? Communicationandfeedbackarenaturallymorestretchedout Someunnatural(oratleastunAgile)barriersareimposed Timeandspace Signoffprocedures Documentation/specs Perfectionism Mistrust Bringthemintoyourprocessasmuchasyoucan Dontforcethemtoadapttoomuchortheyllresentanddemonizeyou Iteratepermonthatfirst,thenperweek Invitethemtoyourdemos(remotelyifneedbe)</p> <p>SayHi.</p> <p>AlexChaffee alex@PivotalLabs.com LeslieChicoine leslie@GetSatisfaction.com</p>