Use-Case is Everything
-
Upload
chinmay-v-s -
Category
Engineering
-
view
325 -
download
2
Transcript of Use-Case is Everything
![Page 1: Use-Case is Everything](https://reader033.fdocuments.us/reader033/viewer/2022052317/55d59322bb61ebd45a8b4674/html5/thumbnails/1.jpg)
Use-Case is Everything! 1
Use-Case isEVERYTHING!
Software Engineering
![Page 2: Use-Case is Everything](https://reader033.fdocuments.us/reader033/viewer/2022052317/55d59322bb61ebd45a8b4674/html5/thumbnails/2.jpg)
Use-Case is Everything! 2
DisclaimerThe purpose of this slide deck is
to highlight the importance of a
good requirements gathering processin software development.
(~,~)
Breaking the ENIGMA code was an amazing feat of reverse-engineering.
The events described below are not meant to belittle the task in any way.
![Page 3: Use-Case is Everything](https://reader033.fdocuments.us/reader033/viewer/2022052317/55d59322bb61ebd45a8b4674/html5/thumbnails/3.jpg)
Use-Case is Everything! 3
Remember Alan Turing?
The guy who developed the system
used to defeat the
Nazi
ENIGMA encryption.
![Page 4: Use-Case is Everything](https://reader033.fdocuments.us/reader033/viewer/2022052317/55d59322bb61ebd45a8b4674/html5/thumbnails/4.jpg)
Use-Case is Everything! 4
Remember Alan Turing?
• …actually, this is Alan Turing.
• Pioneering…– computer scientist– Mathematician– Logician– Cryptanalyst– Philosopher– mathematical biologist– marathon runner
Why enigma?... …because no one else is doing anything about it
and I can have it to myself…
![Page 5: Use-Case is Everything](https://reader033.fdocuments.us/reader033/viewer/2022052317/55d59322bb61ebd45a8b4674/html5/thumbnails/5.jpg)
The Engineering Team
5
ProjectManager
Lead Executive Manager
Software Engineers
Use-Case is Everything!
Guys! Requirement = Break ENIGMA!
![Page 6: Use-Case is Everything](https://reader033.fdocuments.us/reader033/viewer/2022052317/55d59322bb61ebd45a8b4674/html5/thumbnails/6.jpg)
The Engineering Team
6Use-Case is Everything!
• Used £100,000 ($6Million in today’s terms).• Spent 30 man-months.• Result ?
ummm… OK!
![Page 7: Use-Case is Everything](https://reader033.fdocuments.us/reader033/viewer/2022052317/55d59322bb61ebd45a8b4674/html5/thumbnails/7.jpg)
Use-Case is Everything! 7
A “Bombe”
* operator not included.
![Page 8: Use-Case is Everything](https://reader033.fdocuments.us/reader033/viewer/2022052317/55d59322bb61ebd45a8b4674/html5/thumbnails/8.jpg)
Use-Case is Everything! 8
The bombe ran . . .
![Page 9: Use-Case is Everything](https://reader033.fdocuments.us/reader033/viewer/2022052317/55d59322bb61ebd45a8b4674/html5/thumbnails/9.jpg)
Use-Case is Everything! 9
. . . and ran . . .
![Page 10: Use-Case is Everything](https://reader033.fdocuments.us/reader033/viewer/2022052317/55d59322bb61ebd45a8b4674/html5/thumbnails/10.jpg)
Use-Case is Everything! 10
. . . and ran . . .
![Page 11: Use-Case is Everything](https://reader033.fdocuments.us/reader033/viewer/2022052317/55d59322bb61ebd45a8b4674/html5/thumbnails/11.jpg)
Use-Case is Everything! 11
. . . until it was switched-off.
![Page 12: Use-Case is Everything](https://reader033.fdocuments.us/reader033/viewer/2022052317/55d59322bb61ebd45a8b4674/html5/thumbnails/12.jpg)
Use-Case is Everything! 12
Requirements? What requirements?(a.k.a. requirement = requirements)
Doesn’t work??The bombe was still running, trying to break the code.Isn’t that what you wanted!!??
Yes. But the requirement was to break the code within a “reasonable” time-frame.
Oh! Ok.Since code is changed daily,Time to break code < 24hrs.
![Page 13: Use-Case is Everything](https://reader033.fdocuments.us/reader033/viewer/2022052317/55d59322bb61ebd45a8b4674/html5/thumbnails/13.jpg)
So who gathers use-cases?
13
ProjectManager
Lead Executive Manager
Software Engineers
Use-Case is Everything!
![Page 14: Use-Case is Everything](https://reader033.fdocuments.us/reader033/viewer/2022052317/55d59322bb61ebd45a8b4674/html5/thumbnails/14.jpg)
Use-Case is Everything! 14
So who gathers use-cases?
…but did not prioritise this over other tasks. Only to end-up forgetting this when put under a strict deadline.
In fact, Alan Turing did start gathering use-cases early-on…
![Page 15: Use-Case is Everything](https://reader033.fdocuments.us/reader033/viewer/2022052317/55d59322bb61ebd45a8b4674/html5/thumbnails/15.jpg)
Use-Case is Everything! 15
Luckily, someone else wasgathering use-cases !
Each message always starts with…
Not this guy
Customer facing field engineer
![Page 16: Use-Case is Everything](https://reader033.fdocuments.us/reader033/viewer/2022052317/55d59322bb61ebd45a8b4674/html5/thumbnails/16.jpg)
Use-Case is Everything! 16
. . . and just like that . . .
ENIGMA is promptly broken in 5 minutes
![Page 17: Use-Case is Everything](https://reader033.fdocuments.us/reader033/viewer/2022052317/55d59322bb61ebd45a8b4674/html5/thumbnails/17.jpg)
Use-Case is Everything! 17
OK. So what?
![Page 18: Use-Case is Everything](https://reader033.fdocuments.us/reader033/viewer/2022052317/55d59322bb61ebd45a8b4674/html5/thumbnails/18.jpg)
Use-Case is Everything! 18
Remember the bombe?
* operator not included.
Looks familiar?
![Page 19: Use-Case is Everything](https://reader033.fdocuments.us/reader033/viewer/2022052317/55d59322bb61ebd45a8b4674/html5/thumbnails/19.jpg)
Use-Case is Everything! 19
“Bombe” vs. Software
Is this block required?
![Page 20: Use-Case is Everything](https://reader033.fdocuments.us/reader033/viewer/2022052317/55d59322bb61ebd45a8b4674/html5/thumbnails/20.jpg)
Use-Case is Everything! 20
Requirements “Features”
What is possible to engineerwithin the feature
What is actually requiredto be engineeredwithin the feature
What is notpart of the feature(but requested by the customer)
Supported Feature Customer Requirements
![Page 21: Use-Case is Everything](https://reader033.fdocuments.us/reader033/viewer/2022052317/55d59322bb61ebd45a8b4674/html5/thumbnails/21.jpg)
Use-Case is Everything! 21
Requirements “Features”
TODO.
When I have a hammer,everything looks like a nail to me.
Supported Features Customer Requirements
![Page 22: Use-Case is Everything](https://reader033.fdocuments.us/reader033/viewer/2022052317/55d59322bb61ebd45a8b4674/html5/thumbnails/22.jpg)
Use-Case is Everything! 22
TL;DR
• Gather use-cases before designing.– Prepare a comprehensive set of use-cases.
• Know all the use-cases before starting out to implement the design.
• Let the customer know what use-cases the system will handle once ready.– Essentially letting the customers know of any shortcomings
in the input requirements provided by them.
![Page 23: Use-Case is Everything](https://reader033.fdocuments.us/reader033/viewer/2022052317/55d59322bb61ebd45a8b4674/html5/thumbnails/23.jpg)
Use-Case is Everything! 23
References
• http://en.wikipedia.org/wiki/Alan_Turing#Hut_8_and_Naval_Enigma
• http://en.wikipedia.org/wiki/Cryptanalysis_of_the_Enigma
• http://www.imdb.com/title/tt2084970/
Linkedin.com/in/chinmayvs
TheCodeArtist.blogspot.com
StackOverflow.com/users/319204/TheCodeArtist