View
191
Download
0
Embed Size (px)
Citation preview
[email protected] FirstChairofIREB&ChiefRequirementsEngineeratadessoAG
Thefuture ofRequirementsEngineeringinanagilecontext
Agenda• RE@Agile - Pitfalls• Requirements Engineering is important, but there are several misunderstandings• Agile@RE - supposed differences and common misunderstandings • RE@Agile – best of both worlds• Benefits & Prices to Pay• Agility and Conceptual Work• Conclusion
Picture:office.microsoft.com (MP900443152)
Pitfalls ofRE@AgileREequals upfront
Picture:office.microsoft.com (MP900385568)
Pitfalls ofRE@AgileREequals documentation
Picture:office.microsoft.com (MP900422458)
Pitfalls ofRE@AgileRunningsoftwareisnottheonlymeantovalidaterequirements
Picture:office.microsoft.com (MP900443136)
"Computers are good at following instructions, but not at reading your mind.“
- Donald E. Knuth
Picture:Dasha Slobozhanina/Donald Knuthhttp://www-cs-faculty.stanford.edu /~uno/g raph ics.html
RequirementsEngineeringisimportant!
"The hardest single part ofbuilding a software system isdeciding precisely what tobuild.No other part of theconceptual work is as difficultas establishing the detailedtechnical requirements . . . Noother part of the work socripples the resulting system ifdone wrong.No other part is as difficult torectify later“
FredBrooks
Picture:©SD&M
RECapabilitybeatsProgrammingandBusinessAreaExpertise!
9
Source:McConnel, S.:SoftwareEstimation:Demystifying the BlackArt, Microsoft Press,2006
Factor VeryLow
Low Norm High VeryHigh
RequirementsAnalystCapability 1,42 1,19 1,00 0,85 0,71ProgrammerCapability 1,34 1,15 1,00 0,88 0,76PersonalContinuity(Turnover) 1,29 1,12 1,00 0,90 0,81Application(BusinessArea) Expertise 1,22 1,10 1,00 0,88 0,81Required SoftwareReliability 0,82 0,92 1,00 1,10 1,26Product Complexity 0,73 0,87 1,00 1,17 1,34
09.06.16 Agile&RequirementsEngineering
Cocomo IIProjectEffort Adjustment Factors
RequirementsEngineeringisimportant,
butthereareseveralmisunderstandings
RequirementsEngineering(IREBGlossary)
Asystematicanddisciplined approach tothespecificationandmanagementofrequirementswiththefollowinggoals:(1)Knowing therelevantrequirements,achievingaconsensusamongthestakeholdersabouttheserequirements,documenting themaccording togivenstandards,andmanagingthemsystematically,(2)Understanding anddocumenting thestakeholders’desiresandneeds,(3)Specifying andmanagingrequirements tominimizetheriskofdelivering asystemthatdoesnotmeetthestakeholders’desiresandneeds.
RequirementsEngineersareVOICERECORDERSforotherpeople‘sthoughts?
Picture:pixabay.com
RequirementsEngineering(IREBGlossary)
Asystematicanddisciplined approach tothespecificationandmanagementofrequirementswiththefollowinggoals:(1)Knowingtherelevant requirements,achievingaconsensusamongthestakeholdersabouttheserequirements,documenting them according togivenstandards,andmanagingthemsystematically,(2)Understandinganddocumenting thestakeholders’desiresandneeds,(3)Specifying andmanagingrequirements tominimizetheriskofdelivering asystemthatdoesnotmeetthestakeholders’desiresandneeds.
RequirementsEngineersproduces(useless?)paper/documentation?
Picture:office.microsoft.com (MP900422458)
RequirementsEngineering(IREBGlossary)
Asystematicanddisciplined approach tothespecificationandmanagementofrequirementswiththefollowinggoals:(1)Knowingtherelevant requirements,achievingaconsensusamongthestakeholders abouttheserequirements,documenting themaccording togivenstandards,andmanagingthemsystematically,(2)Understandinganddocumenting thestakeholders’desiresandneeds,(3)Specifying andmanaging requirementstominimizetheriskofdelivering asystemthatdoesnotmeetthestakeholders’desiresandneeds.
RequirementsEngineer Clerkofother peoples‘ideas
Picture:office.microsoft.com (MP900422458)
Active PassiveRequirementsEngineering
Stakeholder...• ...providesrequirements• ...developsideas• ...validatesrequirements• …isresponsible forresult• ...declarescompletionRequirements Engineer ...• ...documentsrequirements• …resolveconflicts• …managerequirements
Stakeholder&RequirementsEngineer• ...providesrequirements• ...developsideas• ...validaterequirements• …shareresponsibility• ...declarecompletionRequirements Engineer ...• ...documentsrequirements• …resolveconflicts• …managerequirements
Projectswith“expertstakeholders”
Projectswithdiffuse/unclearexpertise
Picture:agilemanifesto.org
BrilliantContributionsofAgile[Meyer2014]• ShortIterationsforconstantfeedback• Closed-windowruletoprotecttheteamwithinaniteration• Time-boxingeveryiterationtocreateareliableschedule• Manymore….see[Meyer2014]
Working softwareovercomprehensivedocumentation
• REperfectlyagreeswiththis!• Mealoverrecipe• Myhomeoverthebuildingplan
• workingrunning
• www.oxforddictionaries.com• Working:=“abletofunction”• Function :=“Fulfilthepurposeortaskof(aspecifiedthing)”
≠
Picture:pixabay.com
“Standing”Concepts
“Running"Software
Determine“DegreeofWorking”
• prosedescription(e.g.shall-statements,userstories)• models(e.g.UML)• staticUImockups• scenarios• storyboards• usecases• Interactivemockups• prototypicalsoftwareimplementation• softwareinproduction
REisinlinewiththeAgilePrinciples1stPrinciple:Ourhighestpriorityistosatisfythecustomer�throughearlyandcontinuousdelivery�ofvaluablesoftware.
REprovidestherelevantunderstandingofthestakeholders’desiresandneedstodevelopvaluablesoftware.
Picture:office.microsoft.com (MP900402271)
REisinlinewiththeAgilePrinciples2ndPrinciple:Welcomechangingrequirements,evenlateindevelopment.Agileprocessesharnesschangeforthecustomer'scompetitiveadvantage.
REprovides the propertools torecognize changes inthe market forthe stakeholders’competitiveadvantage.
Picture:office.microsoft.com (MP900402271)
REisinlinewiththeAgilePrinciples4thPrinciple:Businesspeopleanddevelopersmustworktogetherdailythroughouttheproject.
REprovides the propertools andtechniques to foster efficientcollaborationbetween stakeholdersanddevelopers.
Picture:office.microsoft.com (MP900402271)
REisinlinewiththeAgilePrinciples6stPrinciple:Themostefficientandeffectivemethodofconveyinginformationtoandwithinadevelopmentteamisface-to-faceconversation..
REprovidespropertools andtechniques to support verbalcommunication.
Picture:office.microsoft.com (MP900402271)
REisinlinewiththeAgilePrinciples10thPrinciple:Simplicity--theartofmaximizingtheamount�ofworknotdone--isessential.
REprovidestherelevantunderstandingofthestakeholders’desiresandneedstominimizetheamountofdevelopingunnecessarysoftware.
Picture:office.microsoft.com (MP900402271)
REandAgileshare the same goal of thedelivery of quality software
Agile approaches candeliver running software inan efficient and fast way
RE provides techniques tounderstand stakeholders’desires and needs todevelop the right software
agility makes softwaredevelopment efficient andRE makes softwaredevelopment effective.
Picture:office.microsoft.com (MP900422094)
“… the language or notationwe are using to express orrecord our thoughts, are themajor factors determiningwhat we can think or expressat all!”
Edsger W.Dijkstra“TheHumbleProgrammer”ACMTuringLecture1972
(EWD340)
Picture:Hamilton Richards / Edsger W.Dijkstra
NewIREBRE@Agile® CertificationcombinesthemindsetsofREandAgileprovidescommonterminology,strategies,principles,techniques,andtoolsfrombothapproachestomitigatethesometimesreligiousmethodwarsbetweenthesetwoapproaches.
twonewcertificates:• RE@AgilePrimer (Summer2016)• AdvancedLevelRE@Agile (Winter2016)
Benefits ofRE@AgileRE&Devcompetencesinthesameteamcanreducehandovers
picture:office.microsoft.com (MP900426563)
Benefits ofRE@AgileTheTime-boxisapracticalmeanstofinishrequirementswork
picture: istockphoto.com (000015634604)
Benefits ofRE@AgileREhelpstodefinetheproductbacklog
picture:office.microsoft.com (MP900387580)
Pricesto pay forRE@AgileIncrementaldevelopmentmaynotencourageinnovation
Picture:RaphaelGoetter
Pricesto pay forRE@AgileKnowledgeoftherequirementsliveswithpeople
Picture: iStockphoto.com/Brigida_Soriano (14696510)
Pricesto pay forRE@AgileAgilecomeswithaculturechange
picture:office.microsoft.com (MP900430986)
Agile&Conceptual Work
picture:office.microsoft.com (MP900430986)
DesignThinking
• Goal:Developsustainablesolutionideasforwicked/ill-definedproblems• Combinationofalight-weightprocessanddifferentmethods/techniques• Focusondevelopingcheapandquickprototypes• Slogan”failfasttosuccesssooner“• Scalableapproach(fewhours– severalmonths)
bias toward action collaborate across boundries focus on human values
be mindful of process prototype toward a solution show don’t tell
Empathize
Define
Ideate
Prototype
Test
�
GVDesignSprintafive-day process foransweringcritical business questionsthrough design,prototyping,andtesting ideas with customers.• Monday:unpack• Thuesday:sketch ideas• Wednesday: select best ideas• Thursday:prototype• Friday:Testwith realcustomers
http://www.gv.com/sprint/
TheLeanStartup
• Minimumviable product• Continuousdeployment(only forsoftwaredevelopment)• Splittesting• Actionablemetrics• Pivot• Innovationaccounting• Build–Measure–Learn
REandAgileshare the same goal of thedelivery of quality software
Agile approaches candeliver running software inan efficient and fast way
RE provides techniques tounderstand stakeholders’desires and needs todevelop the right software
agility makes softwaredevelopment efficient andRE makes softwaredevelopment effective.
Picture:office.microsoft.com (MP900422094)
NewIREBRE@Agile® CertificationcombinesthemindsetsofREandAgileprovidescommonterminology,strategies,principles,techniques,andtoolsfrombothapproachestomitigatethesometimesreligiousmethodwarsbetweenthesetwoapproaches.
twonewcertificates:• RE@AgilePrimer (Summer2016)• AdvancedLevelRE@Agile (Winter2016)
Stay tuned – visit www.ireb.org