SlideShare ist ein Scribd-Unternehmen logo
1 von 77
Downloaden Sie, um offline zu lesen
@aahoogendoorn 
Sander Hoogendoorn 
Principal Technology Officer, Global Agile Thought Leader Capgemini 
PRAGMATIC AGILE MODEL DRIVEN DEVELOPMENT USING SMART USE CASES
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
2 
Sander Hoogendoorn 
Me 
Dad (3) 
Programmer, trainer, coach, architect 
Books (3) 
Articles (+250) 
International conferences (+100) 
Capgemini 
Principal technology officer 
Global design authority agile 
Web 
www.sanderhoogendoorn.com 
www.smartusecase.com 
www.speedbird9.com 
@aahoogendoorn
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
4 
On being a developer...
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
5 
Agenda 
Agile. How does it work? 
Agile requirements and modeling? 
The backlog. Where does it come from? 
User stories. An agile requirements anti-pattern 
Smart use cases 
Different levels of use cases 
Standardizing and stereotypes 
Estimating smart use cases 
The backlog revisited. Where does it come from? 
Automating test design 
Generating code from agile requirements 
In retrospective
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
6 
Agenda. Demo’s 
Agile. How does it work? 
Agile requirements and modeling? 
The backlog. Where does it come from? 
User stories. An agile requirements anti-pattern 
Smart use cases 
Different levels of use cases 
Standardizing and stereotypes 
Estimating smart use cases 
The backlog revisited. Where does it come from? 
Automating test design 
Generating code from agile requirements 
In retrospective
@aahoogendoorn 
AGILE. HOW DOES IT WORK?
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
8 
Agile. Backlog
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
9 
Agile. Iterations
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
10 
Agile. In iteration
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
11 
Agile. Iteration backlog
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
12 
Agile. Working in iterations
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
13 
Agile. New work items
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
14 
Agile. Remaining work items
@aahoogendoorn 
WHAT ABOUT AGILE REQUIREMENTS AND MODELING?
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
16 
Scrum
@aahoogendoorn 
THE BACKLOG. WHERE DOES IT COME FROM?
@aahoogendoorn 
AND ON THE SEVENTH DAY KEN CREATED THE BACKLOG
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
19 
The automagical backlog
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
20 
The automagical backlog
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
21 
Agile. Where does the backlog come from?
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
22 
Preliminary iterations
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
23 
Preliminary iterations
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
24 
SmartCreateproject proposalWriteproject planDeliverworkingsoftwareStabilizesoftware
@aahoogendoorn 
An agile requirements anti-pattern 
USER STORIES
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
26 
User stories
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
27 
User stories. The approach
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
28 
User stories in complex system landscapes 
Often too unstructured 
Unsuitable in complex environments
@aahoogendoorn 
Part I. From scope to smart use cases 
SMART USE CASES
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
30 
Levels of requirements
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
31 
Agile requirements. Approach 
D 
E 
F 
SmartUse Cases 
A 
ProjectScope 
D 
Use Cases 
A 
B 
C 
HierarchicalProcesses 
B 
D 
D 
HierarchicalProcesses 
ChronologicalProcesses 
Cloud Level 
Kite Level 
Sea Level 
Fish Level 
C
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
32 
Identifying scope at cloud level
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
33 
Cloud level
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
34 
Kite level
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
35 
Modeling smart use cases. Sea and fish level
@aahoogendoorn 
Modeling at different levels of granularity 
SMART USE CASES
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
37 
Different levels of use cases 
User goal 
Sub function
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
38 
Different levels of use cases 
Traditionaluse cases 
Smartuse cases 
Format 
Textual 
Visual 
Granularity 
Different 
Unified 
Estimate 
Hard 
Easy 
Unit of work 
Lousy 
Good 
Reuse 
Incidental 
Normal 
Traceability 
Possible 
Normal 
Testability 
Poor 
Good
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
39 
Identifying sub-function level use cases 
Guidelines for identifying sub-function level use cases 
Identify re-use 
Model one form per use case 
Model one use case per functional web part 
Isolate unknown functionality 
Identify complex functionality 
Show reporting 
Model complex calculations 
Isolate interaction with others 
Avoid low level (database) interaction
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
41 
Smart use cases. Stereotyped
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
42 
Smart use cases. Service orientation
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
43 
Identifying reuse
@aahoogendoorn 
Thinking in stereotypes 
SMART USE CASES
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
45 
Smart use case stereotypes
@aahoogendoorn 
Using www.speedbird9.com 
DEMO THE BACKLOG REVISITED. WHERE DOES IT COME FROM?
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
47 
Filling the backlog (www.speedbird9.com)
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
48 
www.speedbird9.com
@aahoogendoorn 
ESTIMATING SMART USE CASES
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
50 
Estimating smart use cases
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
51 
Estimating smart use cases 
4 
3 
2 
3 
8 
4 
3 
3
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
52 
Standardizing estimation 
Estimating smart use caseswhile modeling
@aahoogendoorn 
Using Enterprise Architect, Tobago MDA 
DEMO GENERATINGYOUR ESTIMATES
@aahoogendoorn 
Part II. Implementing smart use cases 
SMART USE CASES
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
55 
The smart use case life cycleDefine work on use caseWritetest casesGenerateand builduse caseRuntest casesAdjustuse caseDescribeuse caseAcceptuse case
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
56 
Analysis & Design. Writing use cases
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
57 
Test Design. Test scenarios for smart use cases
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
58 
Test Design. Testing smart use cases
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
59 
Test Design. Test cases for smart use cases
@aahoogendoorn 
Using Sparx’ Enterprise Architect 
DEMO AUTOMATING SMART USE CASE TEST DESIGN
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
62 
Writing smart use cases. Using Enterprise Architect
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
63 
Writing smart use cases. Using Enterprise ArchitectAlternative flowsException flowsBasic flow
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
64 
Writing smart use cases. Using Enterprise ArchitectFields on formwith smart use casesSmart use casespecific business rulesand validations
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
65 
Test scenarios for a smart use case
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
66 
Testing a smart use case. Using Enterprise Architect
@aahoogendoorn 
CAN WE GENERATE CODE FROM (AGILE) REQUIREMENTS?
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
68 
Can we generate code from (agile) requirements? 
Why generate code? 
Higher productivity? 
Higher quality? 
Get rid of repetitive work? 
Prototyping? 
Prerequisites to generating code 
Standardize, standardize, standardize 
A decent and pragmatic model 
A simple code generator 
A straightforward templating language 
Templates! 
Clear and present software architecture 
Frameworks to back up your software architecture
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
Presentation 
Process 
Domain 
Data / Services 
Outside world 
PagesUserControlsPanels 
Use casesWorkflow 
Domain objects / Entities 
Factories / Repositories 
Enums / Value objects / Smart references 
Data / Service gateways 
Service locators 
[Mapping] 
DatabasesServices / ESB 
Exact 
SAP 
BizTalk 
Java
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
70 
Using Tobago MDA
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
71 
Model driven development -Templates
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
Forms 
Use cases 
Domain 
objects 
Data / Serviceclasses 
Databases 
Software Architecture 
TobagoMDA 
Testscenario’s 
Frameworks 
Specifications 
ExistingApplications 
Businessmodels 
DomainModel 
Smartuse cases 
User interfacespecification1. Mapbusiness processes to smart use cases2. Set up domain model3. Refinesoftware architecture(s) 4. Generate code using a text template engine5. Finalize application
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
73 
Generated code in ASP.NET
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
74 
Generated code Windows 8
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn 
75 
Generating code. Twitter Bootstrap & JSF
@aahoogendoorn 
Using Enterprise Architect, Tobago MDA, Visual Studio 2013 
DEMO GENERATING CODE FROM SMART USE CASES
@aahoogendoorn 
IN RETROSPECTIVE?
UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved 
@aahoogendoorn
@aahoogendoorn 
www.sanderhoogendoorn.comwww.smartusecase.comwww.speedbird9.com 
sander@ditisagile.nl 
@aahoogendoorn 
REFERENCES AND QUESTIONS

Weitere ähnliche Inhalte

Ähnlich wie Agile Model Driven Development Using Smart Use Cases

Designing SOLID C - ACCU Conference 2014
Designing SOLID C - ACCU Conference 2014Designing SOLID C - ACCU Conference 2014
Designing SOLID C - ACCU Conference 2014James Grenning
 
20101007 how smart use cases drive web development
20101007   how smart use cases drive web development20101007   how smart use cases drive web development
20101007 how smart use cases drive web developmentSander Hoogendoorn
 
Distributed Product Owner Team for an Agile Medical Development - Strategies ...
Distributed Product Owner Team for an Agile Medical Development - Strategies ...Distributed Product Owner Team for an Agile Medical Development - Strategies ...
Distributed Product Owner Team for an Agile Medical Development - Strategies ...Andrea Heck
 
UNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOP
UNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOPUNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOP
UNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOPAmit Midha
 
UNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOP
UNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOPUNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOP
UNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOPAmit Midha
 
"TRENDS: THE UNWIRED HOME"
"TRENDS: THE UNWIRED HOME""TRENDS: THE UNWIRED HOME"
"TRENDS: THE UNWIRED HOME"Lounge47
 
How Frameworks Can Kill Your Projects at XP Days Ukraine 2013 in Kiev
How Frameworks Can Kill Your Projects at XP Days Ukraine 2013 in KievHow Frameworks Can Kill Your Projects at XP Days Ukraine 2013 in Kiev
How Frameworks Can Kill Your Projects at XP Days Ukraine 2013 in KievSander Hoogendoorn
 
Precise Semantics Standards at OMG: Executing on the Vision
Precise Semantics Standards at OMG: Executing on the VisionPrecise Semantics Standards at OMG: Executing on the Vision
Precise Semantics Standards at OMG: Executing on the VisionEd Seidewitz
 
PuppetConf 2016 Moving from Exec to Types and Provides
PuppetConf 2016 Moving from Exec to Types and ProvidesPuppetConf 2016 Moving from Exec to Types and Provides
PuppetConf 2016 Moving from Exec to Types and ProvidesMartin Alfke
 
PuppetConf 2016: Moving from Exec to Types and Providers – Martin Alfke, exam...
PuppetConf 2016: Moving from Exec to Types and Providers – Martin Alfke, exam...PuppetConf 2016: Moving from Exec to Types and Providers – Martin Alfke, exam...
PuppetConf 2016: Moving from Exec to Types and Providers – Martin Alfke, exam...Puppet
 
Model-Driven Software Development 2.0
Model-Driven Software Development 2.0Model-Driven Software Development 2.0
Model-Driven Software Development 2.0Etienne Juliot
 
Hypermesh Training in Delhi
Hypermesh Training in DelhiHypermesh Training in Delhi
Hypermesh Training in DelhiAPTRON
 
HMI MMI System By Absolute Engineering & Robotic System
HMI MMI System By Absolute Engineering & Robotic SystemHMI MMI System By Absolute Engineering & Robotic System
HMI MMI System By Absolute Engineering & Robotic SystemIndiaMART InterMESH Limited
 
Cell_Manufacturing.ppt
Cell_Manufacturing.pptCell_Manufacturing.ppt
Cell_Manufacturing.pptAshok Mannava
 

Ähnlich wie Agile Model Driven Development Using Smart Use Cases (20)

Solid c-accu2014.key
Solid c-accu2014.keySolid c-accu2014.key
Solid c-accu2014.key
 
Designing SOLID C - ACCU Conference 2014
Designing SOLID C - ACCU Conference 2014Designing SOLID C - ACCU Conference 2014
Designing SOLID C - ACCU Conference 2014
 
20101007 how smart use cases drive web development
20101007   how smart use cases drive web development20101007   how smart use cases drive web development
20101007 how smart use cases drive web development
 
Distributed Product Owner Team for an Agile Medical Development - Strategies ...
Distributed Product Owner Team for an Agile Medical Development - Strategies ...Distributed Product Owner Team for an Agile Medical Development - Strategies ...
Distributed Product Owner Team for an Agile Medical Development - Strategies ...
 
UNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOP
UNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOPUNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOP
UNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOP
 
UNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOP
UNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOPUNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOP
UNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOP
 
"TRENDS: THE UNWIRED HOME"
"TRENDS: THE UNWIRED HOME""TRENDS: THE UNWIRED HOME"
"TRENDS: THE UNWIRED HOME"
 
AE foyer on Mobile by Design 19/02/2014
AE foyer on Mobile by Design 19/02/2014AE foyer on Mobile by Design 19/02/2014
AE foyer on Mobile by Design 19/02/2014
 
Altair Communication
Altair CommunicationAltair Communication
Altair Communication
 
Mobile Rerence Applications: The end to end Integration
Mobile Rerence Applications: The end to end IntegrationMobile Rerence Applications: The end to end Integration
Mobile Rerence Applications: The end to end Integration
 
How Frameworks Can Kill Your Projects at XP Days Ukraine 2013 in Kiev
How Frameworks Can Kill Your Projects at XP Days Ukraine 2013 in KievHow Frameworks Can Kill Your Projects at XP Days Ukraine 2013 in Kiev
How Frameworks Can Kill Your Projects at XP Days Ukraine 2013 in Kiev
 
Being Smart at enterprise agile
Being Smart at enterprise agileBeing Smart at enterprise agile
Being Smart at enterprise agile
 
Precise Semantics Standards at OMG: Executing on the Vision
Precise Semantics Standards at OMG: Executing on the VisionPrecise Semantics Standards at OMG: Executing on the Vision
Precise Semantics Standards at OMG: Executing on the Vision
 
PuppetConf 2016 Moving from Exec to Types and Provides
PuppetConf 2016 Moving from Exec to Types and ProvidesPuppetConf 2016 Moving from Exec to Types and Provides
PuppetConf 2016 Moving from Exec to Types and Provides
 
PuppetConf 2016: Moving from Exec to Types and Providers – Martin Alfke, exam...
PuppetConf 2016: Moving from Exec to Types and Providers – Martin Alfke, exam...PuppetConf 2016: Moving from Exec to Types and Providers – Martin Alfke, exam...
PuppetConf 2016: Moving from Exec to Types and Providers – Martin Alfke, exam...
 
Model-Driven Software Development 2.0
Model-Driven Software Development 2.0Model-Driven Software Development 2.0
Model-Driven Software Development 2.0
 
Hypermesh Training in Delhi
Hypermesh Training in DelhiHypermesh Training in Delhi
Hypermesh Training in Delhi
 
Shree engineers
Shree engineersShree engineers
Shree engineers
 
HMI MMI System By Absolute Engineering & Robotic System
HMI MMI System By Absolute Engineering & Robotic SystemHMI MMI System By Absolute Engineering & Robotic System
HMI MMI System By Absolute Engineering & Robotic System
 
Cell_Manufacturing.ppt
Cell_Manufacturing.pptCell_Manufacturing.ppt
Cell_Manufacturing.ppt
 

Mehr von Avisi B.V.

Scaling Your Team and Technology: The Agile Way - Erik Duindam
Scaling Your Team and Technology: The Agile Way - Erik DuindamScaling Your Team and Technology: The Agile Way - Erik Duindam
Scaling Your Team and Technology: The Agile Way - Erik DuindamAvisi B.V.
 
Bigger product is better - Viktor Grgric
Bigger product is better  - Viktor GrgricBigger product is better  - Viktor Grgric
Bigger product is better - Viktor GrgricAvisi B.V.
 
Product development insights - Robin van Breukelen
Product development insights - Robin van BreukelenProduct development insights - Robin van Breukelen
Product development insights - Robin van BreukelenAvisi B.V.
 
Software design patterns and lessons learned from nature - Jaromil
Software design patterns and lessons learned from nature - JaromilSoftware design patterns and lessons learned from nature - Jaromil
Software design patterns and lessons learned from nature - JaromilAvisi B.V.
 
Content must be creative - Jon Westenberg
Content must be creative - Jon WestenbergContent must be creative - Jon Westenberg
Content must be creative - Jon WestenbergAvisi B.V.
 
Does your design smell - Tushar Sharma
Does your design smell  - Tushar SharmaDoes your design smell  - Tushar Sharma
Does your design smell - Tushar SharmaAvisi B.V.
 
How to become a Product Samurai - Chris Lukassen
How to become a Product Samurai - Chris LukassenHow to become a Product Samurai - Chris Lukassen
How to become a Product Samurai - Chris LukassenAvisi B.V.
 
ASAS 2015 Gert Florijn & Eelco Rommes
ASAS 2015 Gert Florijn & Eelco RommesASAS 2015 Gert Florijn & Eelco Rommes
ASAS 2015 Gert Florijn & Eelco RommesAvisi B.V.
 
ASAS 2015 - Benito de Miranda
ASAS 2015 - Benito de MirandaASAS 2015 - Benito de Miranda
ASAS 2015 - Benito de MirandaAvisi B.V.
 
ASAS 2015 Stanimira Jelezova
ASAS 2015 Stanimira JelezovaASAS 2015 Stanimira Jelezova
ASAS 2015 Stanimira JelezovaAvisi B.V.
 
ASAS 2015 Regina Chien
ASAS 2015 Regina ChienASAS 2015 Regina Chien
ASAS 2015 Regina ChienAvisi B.V.
 
ASAS 2015 Darren Harris
ASAS 2015 Darren HarrisASAS 2015 Darren Harris
ASAS 2015 Darren HarrisAvisi B.V.
 
ASAS 2015 Henk Kolk
ASAS 2015 Henk KolkASAS 2015 Henk Kolk
ASAS 2015 Henk KolkAvisi B.V.
 
ASAS 2015 Chris Lukassen
ASAS 2015 Chris LukassenASAS 2015 Chris Lukassen
ASAS 2015 Chris LukassenAvisi B.V.
 
ASAS 2015 Chris Lukassen
ASAS 2015 Chris LukassenASAS 2015 Chris Lukassen
ASAS 2015 Chris LukassenAvisi B.V.
 
Keynote ASAS 2015 Ted Neward
Keynote ASAS 2015 Ted NewardKeynote ASAS 2015 Ted Neward
Keynote ASAS 2015 Ted NewardAvisi B.V.
 
ASAS 2015 Robin van Breukelen
ASAS 2015 Robin van BreukelenASAS 2015 Robin van Breukelen
ASAS 2015 Robin van BreukelenAvisi B.V.
 
ASAS 2015 - Kasia Mrowca
ASAS 2015 - Kasia MrowcaASAS 2015 - Kasia Mrowca
ASAS 2015 - Kasia MrowcaAvisi B.V.
 
ASAS 2015 - Norberto Leite
ASAS 2015 - Norberto LeiteASAS 2015 - Norberto Leite
ASAS 2015 - Norberto LeiteAvisi B.V.
 
ASAS 2015 - Maarten van den Heuvel
ASAS 2015 - Maarten van den HeuvelASAS 2015 - Maarten van den Heuvel
ASAS 2015 - Maarten van den HeuvelAvisi B.V.
 

Mehr von Avisi B.V. (20)

Scaling Your Team and Technology: The Agile Way - Erik Duindam
Scaling Your Team and Technology: The Agile Way - Erik DuindamScaling Your Team and Technology: The Agile Way - Erik Duindam
Scaling Your Team and Technology: The Agile Way - Erik Duindam
 
Bigger product is better - Viktor Grgric
Bigger product is better  - Viktor GrgricBigger product is better  - Viktor Grgric
Bigger product is better - Viktor Grgric
 
Product development insights - Robin van Breukelen
Product development insights - Robin van BreukelenProduct development insights - Robin van Breukelen
Product development insights - Robin van Breukelen
 
Software design patterns and lessons learned from nature - Jaromil
Software design patterns and lessons learned from nature - JaromilSoftware design patterns and lessons learned from nature - Jaromil
Software design patterns and lessons learned from nature - Jaromil
 
Content must be creative - Jon Westenberg
Content must be creative - Jon WestenbergContent must be creative - Jon Westenberg
Content must be creative - Jon Westenberg
 
Does your design smell - Tushar Sharma
Does your design smell  - Tushar SharmaDoes your design smell  - Tushar Sharma
Does your design smell - Tushar Sharma
 
How to become a Product Samurai - Chris Lukassen
How to become a Product Samurai - Chris LukassenHow to become a Product Samurai - Chris Lukassen
How to become a Product Samurai - Chris Lukassen
 
ASAS 2015 Gert Florijn & Eelco Rommes
ASAS 2015 Gert Florijn & Eelco RommesASAS 2015 Gert Florijn & Eelco Rommes
ASAS 2015 Gert Florijn & Eelco Rommes
 
ASAS 2015 - Benito de Miranda
ASAS 2015 - Benito de MirandaASAS 2015 - Benito de Miranda
ASAS 2015 - Benito de Miranda
 
ASAS 2015 Stanimira Jelezova
ASAS 2015 Stanimira JelezovaASAS 2015 Stanimira Jelezova
ASAS 2015 Stanimira Jelezova
 
ASAS 2015 Regina Chien
ASAS 2015 Regina ChienASAS 2015 Regina Chien
ASAS 2015 Regina Chien
 
ASAS 2015 Darren Harris
ASAS 2015 Darren HarrisASAS 2015 Darren Harris
ASAS 2015 Darren Harris
 
ASAS 2015 Henk Kolk
ASAS 2015 Henk KolkASAS 2015 Henk Kolk
ASAS 2015 Henk Kolk
 
ASAS 2015 Chris Lukassen
ASAS 2015 Chris LukassenASAS 2015 Chris Lukassen
ASAS 2015 Chris Lukassen
 
ASAS 2015 Chris Lukassen
ASAS 2015 Chris LukassenASAS 2015 Chris Lukassen
ASAS 2015 Chris Lukassen
 
Keynote ASAS 2015 Ted Neward
Keynote ASAS 2015 Ted NewardKeynote ASAS 2015 Ted Neward
Keynote ASAS 2015 Ted Neward
 
ASAS 2015 Robin van Breukelen
ASAS 2015 Robin van BreukelenASAS 2015 Robin van Breukelen
ASAS 2015 Robin van Breukelen
 
ASAS 2015 - Kasia Mrowca
ASAS 2015 - Kasia MrowcaASAS 2015 - Kasia Mrowca
ASAS 2015 - Kasia Mrowca
 
ASAS 2015 - Norberto Leite
ASAS 2015 - Norberto LeiteASAS 2015 - Norberto Leite
ASAS 2015 - Norberto Leite
 
ASAS 2015 - Maarten van den Heuvel
ASAS 2015 - Maarten van den HeuvelASAS 2015 - Maarten van den Heuvel
ASAS 2015 - Maarten van den Heuvel
 

Kürzlich hochgeladen

A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 

Kürzlich hochgeladen (20)

A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 

Agile Model Driven Development Using Smart Use Cases

  • 1. @aahoogendoorn Sander Hoogendoorn Principal Technology Officer, Global Agile Thought Leader Capgemini PRAGMATIC AGILE MODEL DRIVEN DEVELOPMENT USING SMART USE CASES
  • 2. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 2 Sander Hoogendoorn Me Dad (3) Programmer, trainer, coach, architect Books (3) Articles (+250) International conferences (+100) Capgemini Principal technology officer Global design authority agile Web www.sanderhoogendoorn.com www.smartusecase.com www.speedbird9.com @aahoogendoorn
  • 3. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn
  • 4. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 4 On being a developer...
  • 5. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 5 Agenda Agile. How does it work? Agile requirements and modeling? The backlog. Where does it come from? User stories. An agile requirements anti-pattern Smart use cases Different levels of use cases Standardizing and stereotypes Estimating smart use cases The backlog revisited. Where does it come from? Automating test design Generating code from agile requirements In retrospective
  • 6. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 6 Agenda. Demo’s Agile. How does it work? Agile requirements and modeling? The backlog. Where does it come from? User stories. An agile requirements anti-pattern Smart use cases Different levels of use cases Standardizing and stereotypes Estimating smart use cases The backlog revisited. Where does it come from? Automating test design Generating code from agile requirements In retrospective
  • 8. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 8 Agile. Backlog
  • 9. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 9 Agile. Iterations
  • 10. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 10 Agile. In iteration
  • 11. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 11 Agile. Iteration backlog
  • 12. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 12 Agile. Working in iterations
  • 13. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 13 Agile. New work items
  • 14. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 14 Agile. Remaining work items
  • 15. @aahoogendoorn WHAT ABOUT AGILE REQUIREMENTS AND MODELING?
  • 16. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 16 Scrum
  • 17. @aahoogendoorn THE BACKLOG. WHERE DOES IT COME FROM?
  • 18. @aahoogendoorn AND ON THE SEVENTH DAY KEN CREATED THE BACKLOG
  • 19. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 19 The automagical backlog
  • 20. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 20 The automagical backlog
  • 21. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 21 Agile. Where does the backlog come from?
  • 22. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 22 Preliminary iterations
  • 23. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 23 Preliminary iterations
  • 24. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 24 SmartCreateproject proposalWriteproject planDeliverworkingsoftwareStabilizesoftware
  • 25. @aahoogendoorn An agile requirements anti-pattern USER STORIES
  • 26. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 26 User stories
  • 27. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 27 User stories. The approach
  • 28. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 28 User stories in complex system landscapes Often too unstructured Unsuitable in complex environments
  • 29. @aahoogendoorn Part I. From scope to smart use cases SMART USE CASES
  • 30. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 30 Levels of requirements
  • 31. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 31 Agile requirements. Approach D E F SmartUse Cases A ProjectScope D Use Cases A B C HierarchicalProcesses B D D HierarchicalProcesses ChronologicalProcesses Cloud Level Kite Level Sea Level Fish Level C
  • 32. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 32 Identifying scope at cloud level
  • 33. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 33 Cloud level
  • 34. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 34 Kite level
  • 35. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 35 Modeling smart use cases. Sea and fish level
  • 36. @aahoogendoorn Modeling at different levels of granularity SMART USE CASES
  • 37. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 37 Different levels of use cases User goal Sub function
  • 38. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 38 Different levels of use cases Traditionaluse cases Smartuse cases Format Textual Visual Granularity Different Unified Estimate Hard Easy Unit of work Lousy Good Reuse Incidental Normal Traceability Possible Normal Testability Poor Good
  • 39. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 39 Identifying sub-function level use cases Guidelines for identifying sub-function level use cases Identify re-use Model one form per use case Model one use case per functional web part Isolate unknown functionality Identify complex functionality Show reporting Model complex calculations Isolate interaction with others Avoid low level (database) interaction
  • 40. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 41 Smart use cases. Stereotyped
  • 41. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 42 Smart use cases. Service orientation
  • 42. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 43 Identifying reuse
  • 43. @aahoogendoorn Thinking in stereotypes SMART USE CASES
  • 44. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 45 Smart use case stereotypes
  • 45. @aahoogendoorn Using www.speedbird9.com DEMO THE BACKLOG REVISITED. WHERE DOES IT COME FROM?
  • 46. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 47 Filling the backlog (www.speedbird9.com)
  • 47. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 48 www.speedbird9.com
  • 49. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 50 Estimating smart use cases
  • 50. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 51 Estimating smart use cases 4 3 2 3 8 4 3 3
  • 51. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 52 Standardizing estimation Estimating smart use caseswhile modeling
  • 52. @aahoogendoorn Using Enterprise Architect, Tobago MDA DEMO GENERATINGYOUR ESTIMATES
  • 53. @aahoogendoorn Part II. Implementing smart use cases SMART USE CASES
  • 54. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 55 The smart use case life cycleDefine work on use caseWritetest casesGenerateand builduse caseRuntest casesAdjustuse caseDescribeuse caseAcceptuse case
  • 55. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 56 Analysis & Design. Writing use cases
  • 56. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 57 Test Design. Test scenarios for smart use cases
  • 57. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 58 Test Design. Testing smart use cases
  • 58. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 59 Test Design. Test cases for smart use cases
  • 59. @aahoogendoorn Using Sparx’ Enterprise Architect DEMO AUTOMATING SMART USE CASE TEST DESIGN
  • 60. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 62 Writing smart use cases. Using Enterprise Architect
  • 61. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 63 Writing smart use cases. Using Enterprise ArchitectAlternative flowsException flowsBasic flow
  • 62. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 64 Writing smart use cases. Using Enterprise ArchitectFields on formwith smart use casesSmart use casespecific business rulesand validations
  • 63. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 65 Test scenarios for a smart use case
  • 64. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 66 Testing a smart use case. Using Enterprise Architect
  • 65. @aahoogendoorn CAN WE GENERATE CODE FROM (AGILE) REQUIREMENTS?
  • 66. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 68 Can we generate code from (agile) requirements? Why generate code? Higher productivity? Higher quality? Get rid of repetitive work? Prototyping? Prerequisites to generating code Standardize, standardize, standardize A decent and pragmatic model A simple code generator A straightforward templating language Templates! Clear and present software architecture Frameworks to back up your software architecture
  • 67. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn Presentation Process Domain Data / Services Outside world PagesUserControlsPanels Use casesWorkflow Domain objects / Entities Factories / Repositories Enums / Value objects / Smart references Data / Service gateways Service locators [Mapping] DatabasesServices / ESB Exact SAP BizTalk Java
  • 68. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 70 Using Tobago MDA
  • 69. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 71 Model driven development -Templates
  • 70. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn Forms Use cases Domain objects Data / Serviceclasses Databases Software Architecture TobagoMDA Testscenario’s Frameworks Specifications ExistingApplications Businessmodels DomainModel Smartuse cases User interfacespecification1. Mapbusiness processes to smart use cases2. Set up domain model3. Refinesoftware architecture(s) 4. Generate code using a text template engine5. Finalize application
  • 71. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 73 Generated code in ASP.NET
  • 72. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 74 Generated code Windows 8
  • 73. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn 75 Generating code. Twitter Bootstrap & JSF
  • 74. @aahoogendoorn Using Enterprise Architect, Tobago MDA, Visual Studio 2013 DEMO GENERATING CODE FROM SMART USE CASES
  • 76. UML AND SMART USE CASES ©2001 -2014 Sander Hoogendoorn. All Rights Reserved @aahoogendoorn