SlideShare a Scribd company logo
1 of 9
practicalA g i l e S o l u t i o n s T h a t W o r k
Ben Clay
Created: March 12, 2011
Updated: May 31, 2013
Vertical Slicing
AGENDA ITEMS
Vertical Slicing
By Ben Clay
Copyright 2013 All Rights Reserved by Ben Clay
Copyright 2013 All Rights Reserved by Ben Clay
practicalA g i l e S o l u t i o n s T h a t W o r k
Ben Clay
2
Vertical Slicing
• Increased productivity
• Improved quality
• Less complex
• Testable
• Vertically sliced module
reuse (pluggable code reuse)
• Greater business value
• Sooner ROI
• Stub dependent data
if not available
• Decreased time to
market
Vertically Sliced Products
• Electronics (Computer Parts)
• Car Parts
• Modular Homes
• More
Breaking a complex problem into smaller more manageable vertical slices
Copyright 2013 All Rights Reserved by Ben Clay
practicalA g i l e S o l u t i o n s T h a t W o r k
Ben Clay
3
The layers of Vertical Slicing
UX/UI
Service
Data
Additional Top Layer
Additional Middle Layer
Additional Bottom Layer
Login Slice
Copyright 2013 All Rights Reserved by Ben Clay
practicalA g i l e S o l u t i o n s T h a t W o r k
Ben Clay
4
Vertical User Stories
LOGIN
Email
Password
remember me
Forgot Password
As an end user I must be able to login to my company portal so that I can perform
the functions of my job.
Acceptance Criteria
• Verify that I can log into
the system
• Verify that my login
credentials will be
remembered
• Verify that I can reset my
own password by
clicking the "Forgot
Password" link
• Verify that I cannot
navigate back to the
landing page without
first logging in
Copyright 2013 All Rights Reserved by Ben Clay
practicalA g i l e S o l u t i o n s T h a t W o r k
Ben Clay
5
The Layers of Login
As a developer I must think about every layer I will need to touch in order to
vertically develop this user story.
NOTE:
At this point, if you as a developer
need to list out all the functions,
then do so. It will only help. This
way you can see what you need
to create and use it as a checklist
ensuring you don’t forget
anything.
UX/UI
Service
Data
Vertical
Copyright 2013 All Rights Reserved by Ben Clay
practicalA g i l e S o l u t i o n s T h a t W o r k
Ben Clay
As a developer, you will need to think about every file encapsulated in each layer
that needs to be created and/or extended in order to complete this “Login User”
Story.
6
Dissected by Layer
bootstrap class
session class
UX/UI
Service
Data
index.jsp
CSS
constance class / config file
user bean
database class / ORM
database
function class
template class
login service
login.jsp
landing.jsp
JavaScript
Copyright 2013 All Rights Reserved by Ben Clay
practicalA g i l e S o l u t i o n s T h a t W o r k
Ben Clay
No
index.jsp
7
Horizontal Flow Chart of
Pluggable Vertical Slices
Registration
bootstrap
session
control
No Yes
JavaScript
Register.jsp
HTML5
DB
No Yes
JavaScript
Login.jsp
HTML5
DBYes
Do Nothing
No
Yes
JavaScript
Landing Page
HTML5
Yes
No
Landing
Page Login
UX/UI
SERVICE
DATA
Registered?
Register
Successful?
Already
Logged in?
Login
Successful?Logout?
Vertical Slice Vertical Slice
Copyright 2013 All Rights Reserved by Ben Clay
practicalA g i l e S o l u t i o n s T h a t W o r k
Ben Clay
8
Questions?
Copyright 2013 All Rights Reserved by Ben Clay
practicalA g i l e S o l u t i o n s T h a t W o r k
Ben Clay
9
Take Notes:

More Related Content

What's hot

Cheat Sheet: 8 ways to split your user stories
Cheat Sheet:  8 ways to split your user storiesCheat Sheet:  8 ways to split your user stories
Cheat Sheet: 8 ways to split your user storiesPayton Consulting
 
Strategies to split user stories
Strategies to split user storiesStrategies to split user stories
Strategies to split user storiescpolc
 
Product Backlog - Refinement and Prioritization Techniques
Product Backlog - Refinement and Prioritization TechniquesProduct Backlog - Refinement and Prioritization Techniques
Product Backlog - Refinement and Prioritization TechniquesVikash Karuna
 
User Story Smells & Anti-patterns
User Story Smells & Anti-patternsUser Story Smells & Anti-patterns
User Story Smells & Anti-patternsFadi Stephan
 
Scrum Learning Game: Elephant Carpaccio
Scrum Learning Game: Elephant CarpaccioScrum Learning Game: Elephant Carpaccio
Scrum Learning Game: Elephant CarpaccioAndy Cleff
 
Splitting Stories with the Hamburger Method - A Simple 5 Step Process
Splitting Stories with the Hamburger Method - A Simple 5 Step ProcessSplitting Stories with the Hamburger Method - A Simple 5 Step Process
Splitting Stories with the Hamburger Method - A Simple 5 Step ProcessStephen Tucker
 
Mke agile 032014 Slicing the cake: User Story Decomposition
Mke agile 032014   Slicing the cake: User Story DecompositionMke agile 032014   Slicing the cake: User Story Decomposition
Mke agile 032014 Slicing the cake: User Story DecompositionDave Neuman
 
Slicing user stories
Slicing user storiesSlicing user stories
Slicing user storiesDavid Michel
 
Story Mapping in a Nutshell
Story Mapping in a NutshellStory Mapping in a Nutshell
Story Mapping in a NutshellVersionOne
 
User story splitting techniques
User story splitting techniquesUser story splitting techniques
User story splitting techniquesAshutosh Rai
 
Writing Effective User Stories
Writing Effective User StoriesWriting Effective User Stories
Writing Effective User StoriesJaneve George
 
Techniques for Effectively Slicing User Stories by Naresh Jain
Techniques for Effectively Slicing User Stories by Naresh JainTechniques for Effectively Slicing User Stories by Naresh Jain
Techniques for Effectively Slicing User Stories by Naresh JainNaresh Jain
 
Elephant Carpaccio workshop
Elephant Carpaccio workshopElephant Carpaccio workshop
Elephant Carpaccio workshopnikos batsios
 
User Story Slicing - easy way to split user stories
User Story Slicing - easy way to split user stories  User Story Slicing - easy way to split user stories
User Story Slicing - easy way to split user stories Arto Eskelinen
 

What's hot (20)

User Stories Fundamentals
User Stories FundamentalsUser Stories Fundamentals
User Stories Fundamentals
 
User Story Mapping
User Story MappingUser Story Mapping
User Story Mapping
 
Cheat Sheet: 8 ways to split your user stories
Cheat Sheet:  8 ways to split your user storiesCheat Sheet:  8 ways to split your user stories
Cheat Sheet: 8 ways to split your user stories
 
Strategies to split user stories
Strategies to split user storiesStrategies to split user stories
Strategies to split user stories
 
Product Backlog - Refinement and Prioritization Techniques
Product Backlog - Refinement and Prioritization TechniquesProduct Backlog - Refinement and Prioritization Techniques
Product Backlog - Refinement and Prioritization Techniques
 
User Story Smells & Anti-patterns
User Story Smells & Anti-patternsUser Story Smells & Anti-patterns
User Story Smells & Anti-patterns
 
Scrum Learning Game: Elephant Carpaccio
Scrum Learning Game: Elephant CarpaccioScrum Learning Game: Elephant Carpaccio
Scrum Learning Game: Elephant Carpaccio
 
Splitting Stories with the Hamburger Method - A Simple 5 Step Process
Splitting Stories with the Hamburger Method - A Simple 5 Step ProcessSplitting Stories with the Hamburger Method - A Simple 5 Step Process
Splitting Stories with the Hamburger Method - A Simple 5 Step Process
 
Product Owner
Product OwnerProduct Owner
Product Owner
 
Effective User Stories
Effective User StoriesEffective User Stories
Effective User Stories
 
Mke agile 032014 Slicing the cake: User Story Decomposition
Mke agile 032014   Slicing the cake: User Story DecompositionMke agile 032014   Slicing the cake: User Story Decomposition
Mke agile 032014 Slicing the cake: User Story Decomposition
 
Slicing user stories
Slicing user storiesSlicing user stories
Slicing user stories
 
Story Mapping in a Nutshell
Story Mapping in a NutshellStory Mapping in a Nutshell
Story Mapping in a Nutshell
 
User story splitting techniques
User story splitting techniquesUser story splitting techniques
User story splitting techniques
 
Writing Effective User Stories
Writing Effective User StoriesWriting Effective User Stories
Writing Effective User Stories
 
Epics and User Stories
Epics and User StoriesEpics and User Stories
Epics and User Stories
 
Techniques for Effectively Slicing User Stories by Naresh Jain
Techniques for Effectively Slicing User Stories by Naresh JainTechniques for Effectively Slicing User Stories by Naresh Jain
Techniques for Effectively Slicing User Stories by Naresh Jain
 
User Stories
User StoriesUser Stories
User Stories
 
Elephant Carpaccio workshop
Elephant Carpaccio workshopElephant Carpaccio workshop
Elephant Carpaccio workshop
 
User Story Slicing - easy way to split user stories
User Story Slicing - easy way to split user stories  User Story Slicing - easy way to split user stories
User Story Slicing - easy way to split user stories
 

Similar to Vertical Slicing

Life cycle of user story: Outside-in agile product management & testing, or...
Life cycle of user story: Outside-in agile product management & testing, or...Life cycle of user story: Outside-in agile product management & testing, or...
Life cycle of user story: Outside-in agile product management & testing, or...Ravi Tadwalkar
 
Denver ACE October 21st 2020
Denver ACE October 21st 2020Denver ACE October 21st 2020
Denver ACE October 21st 2020denveraug
 
Denver Atlassian Community 5-minute Plugins
Denver Atlassian Community 5-minute PluginsDenver Atlassian Community 5-minute Plugins
Denver Atlassian Community 5-minute Pluginsdenveraug
 
Александр Махомет "Feature Flags. Уменьшаем риски при выпуске изменений"
Александр Махомет "Feature Flags. Уменьшаем риски при выпуске изменений" Александр Махомет "Feature Flags. Уменьшаем риски при выпуске изменений"
Александр Махомет "Feature Flags. Уменьшаем риски при выпуске изменений" Fwdays
 
Feature Flags. Reducing risks during shipping changes/
Feature Flags. Reducing risks during shipping changes/Feature Flags. Reducing risks during shipping changes/
Feature Flags. Reducing risks during shipping changes/Aleksandr Makhomet
 
Synergy 2015 Session Slides: SYN408 XenDesktop 7.6 Architecture - Dealing Wit...
Synergy 2015 Session Slides: SYN408 XenDesktop 7.6 Architecture - Dealing Wit...Synergy 2015 Session Slides: SYN408 XenDesktop 7.6 Architecture - Dealing Wit...
Synergy 2015 Session Slides: SYN408 XenDesktop 7.6 Architecture - Dealing Wit...Citrix
 
GGX 2014 Lari Hotari Modular Monoliths with Spring Boot and Grails 3
GGX 2014 Lari Hotari Modular Monoliths with Spring Boot and Grails 3GGX 2014 Lari Hotari Modular Monoliths with Spring Boot and Grails 3
GGX 2014 Lari Hotari Modular Monoliths with Spring Boot and Grails 3Lari Hotari
 
6 Principles for Enabling Build/Measure/Learn: Lean Engineering in Action
6 Principles for Enabling Build/Measure/Learn: Lean Engineering in Action6 Principles for Enabling Build/Measure/Learn: Lean Engineering in Action
6 Principles for Enabling Build/Measure/Learn: Lean Engineering in ActionBill Scott
 
Bulletproof design systems using storybook
Bulletproof design systems using storybookBulletproof design systems using storybook
Bulletproof design systems using storybookChen Feldman
 
Session15+16-User Story (2).pdf
Session15+16-User Story (2).pdfSession15+16-User Story (2).pdf
Session15+16-User Story (2).pdfPeterTran514407
 
human computer interaction of movie booking system project
human computer interaction of movie booking system projecthuman computer interaction of movie booking system project
human computer interaction of movie booking system project201roopikha
 
Lean Engineering: How to make Engineering a full Lean UX partner
Lean Engineering: How to make Engineering a full Lean UX partnerLean Engineering: How to make Engineering a full Lean UX partner
Lean Engineering: How to make Engineering a full Lean UX partnerBill Scott
 
Application Lifecycle Management with TFS
Application Lifecycle Management with TFSApplication Lifecycle Management with TFS
Application Lifecycle Management with TFSMehdi Khalili
 
User Story Mapping
User Story MappingUser Story Mapping
User Story MappingStefano Leli
 
Wds leanengineering-141103233017-conversion-gate02
Wds leanengineering-141103233017-conversion-gate02Wds leanengineering-141103233017-conversion-gate02
Wds leanengineering-141103233017-conversion-gate02Shivam Prajapati
 
Spring '20 Developer Release Highlights
Spring '20 Developer Release HighlightsSpring '20 Developer Release Highlights
Spring '20 Developer Release HighlightsPeter Knolle
 

Similar to Vertical Slicing (20)

Life cycle of user story: Outside-in agile product management & testing, or...
Life cycle of user story: Outside-in agile product management & testing, or...Life cycle of user story: Outside-in agile product management & testing, or...
Life cycle of user story: Outside-in agile product management & testing, or...
 
Denver ACE October 21st 2020
Denver ACE October 21st 2020Denver ACE October 21st 2020
Denver ACE October 21st 2020
 
An Introduction to Drupal
An Introduction to DrupalAn Introduction to Drupal
An Introduction to Drupal
 
Denver Atlassian Community 5-minute Plugins
Denver Atlassian Community 5-minute PluginsDenver Atlassian Community 5-minute Plugins
Denver Atlassian Community 5-minute Plugins
 
Александр Махомет "Feature Flags. Уменьшаем риски при выпуске изменений"
Александр Махомет "Feature Flags. Уменьшаем риски при выпуске изменений" Александр Махомет "Feature Flags. Уменьшаем риски при выпуске изменений"
Александр Махомет "Feature Flags. Уменьшаем риски при выпуске изменений"
 
Feature Flags. Reducing risks during shipping changes/
Feature Flags. Reducing risks during shipping changes/Feature Flags. Reducing risks during shipping changes/
Feature Flags. Reducing risks during shipping changes/
 
Ibm redbook
Ibm redbookIbm redbook
Ibm redbook
 
Synergy 2015 Session Slides: SYN408 XenDesktop 7.6 Architecture - Dealing Wit...
Synergy 2015 Session Slides: SYN408 XenDesktop 7.6 Architecture - Dealing Wit...Synergy 2015 Session Slides: SYN408 XenDesktop 7.6 Architecture - Dealing Wit...
Synergy 2015 Session Slides: SYN408 XenDesktop 7.6 Architecture - Dealing Wit...
 
Enabling Lean at Enterprise Scale: Lean Engineering in Action
Enabling Lean at Enterprise Scale: Lean Engineering in ActionEnabling Lean at Enterprise Scale: Lean Engineering in Action
Enabling Lean at Enterprise Scale: Lean Engineering in Action
 
GGX 2014 Lari Hotari Modular Monoliths with Spring Boot and Grails 3
GGX 2014 Lari Hotari Modular Monoliths with Spring Boot and Grails 3GGX 2014 Lari Hotari Modular Monoliths with Spring Boot and Grails 3
GGX 2014 Lari Hotari Modular Monoliths with Spring Boot and Grails 3
 
6 Principles for Enabling Build/Measure/Learn: Lean Engineering in Action
6 Principles for Enabling Build/Measure/Learn: Lean Engineering in Action6 Principles for Enabling Build/Measure/Learn: Lean Engineering in Action
6 Principles for Enabling Build/Measure/Learn: Lean Engineering in Action
 
Bulletproof design systems using storybook
Bulletproof design systems using storybookBulletproof design systems using storybook
Bulletproof design systems using storybook
 
Session15+16-User Story (2).pdf
Session15+16-User Story (2).pdfSession15+16-User Story (2).pdf
Session15+16-User Story (2).pdf
 
human computer interaction of movie booking system project
human computer interaction of movie booking system projecthuman computer interaction of movie booking system project
human computer interaction of movie booking system project
 
Project scope preparation
Project scope preparationProject scope preparation
Project scope preparation
 
Lean Engineering: How to make Engineering a full Lean UX partner
Lean Engineering: How to make Engineering a full Lean UX partnerLean Engineering: How to make Engineering a full Lean UX partner
Lean Engineering: How to make Engineering a full Lean UX partner
 
Application Lifecycle Management with TFS
Application Lifecycle Management with TFSApplication Lifecycle Management with TFS
Application Lifecycle Management with TFS
 
User Story Mapping
User Story MappingUser Story Mapping
User Story Mapping
 
Wds leanengineering-141103233017-conversion-gate02
Wds leanengineering-141103233017-conversion-gate02Wds leanengineering-141103233017-conversion-gate02
Wds leanengineering-141103233017-conversion-gate02
 
Spring '20 Developer Release Highlights
Spring '20 Developer Release HighlightsSpring '20 Developer Release Highlights
Spring '20 Developer Release Highlights
 

Recently uploaded

🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
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
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
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
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024The Digital Insurer
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
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
 
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
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
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
 
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
 
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
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 

Recently uploaded (20)

🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
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
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
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)
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
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
 
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
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
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...
 
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
 
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
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 

Vertical Slicing

  • 1. practicalA g i l e S o l u t i o n s T h a t W o r k Ben Clay Created: March 12, 2011 Updated: May 31, 2013 Vertical Slicing AGENDA ITEMS Vertical Slicing By Ben Clay Copyright 2013 All Rights Reserved by Ben Clay
  • 2. Copyright 2013 All Rights Reserved by Ben Clay practicalA g i l e S o l u t i o n s T h a t W o r k Ben Clay 2 Vertical Slicing • Increased productivity • Improved quality • Less complex • Testable • Vertically sliced module reuse (pluggable code reuse) • Greater business value • Sooner ROI • Stub dependent data if not available • Decreased time to market Vertically Sliced Products • Electronics (Computer Parts) • Car Parts • Modular Homes • More Breaking a complex problem into smaller more manageable vertical slices
  • 3. Copyright 2013 All Rights Reserved by Ben Clay practicalA g i l e S o l u t i o n s T h a t W o r k Ben Clay 3 The layers of Vertical Slicing UX/UI Service Data Additional Top Layer Additional Middle Layer Additional Bottom Layer Login Slice
  • 4. Copyright 2013 All Rights Reserved by Ben Clay practicalA g i l e S o l u t i o n s T h a t W o r k Ben Clay 4 Vertical User Stories LOGIN Email Password remember me Forgot Password As an end user I must be able to login to my company portal so that I can perform the functions of my job. Acceptance Criteria • Verify that I can log into the system • Verify that my login credentials will be remembered • Verify that I can reset my own password by clicking the "Forgot Password" link • Verify that I cannot navigate back to the landing page without first logging in
  • 5. Copyright 2013 All Rights Reserved by Ben Clay practicalA g i l e S o l u t i o n s T h a t W o r k Ben Clay 5 The Layers of Login As a developer I must think about every layer I will need to touch in order to vertically develop this user story. NOTE: At this point, if you as a developer need to list out all the functions, then do so. It will only help. This way you can see what you need to create and use it as a checklist ensuring you don’t forget anything. UX/UI Service Data Vertical
  • 6. Copyright 2013 All Rights Reserved by Ben Clay practicalA g i l e S o l u t i o n s T h a t W o r k Ben Clay As a developer, you will need to think about every file encapsulated in each layer that needs to be created and/or extended in order to complete this “Login User” Story. 6 Dissected by Layer bootstrap class session class UX/UI Service Data index.jsp CSS constance class / config file user bean database class / ORM database function class template class login service login.jsp landing.jsp JavaScript
  • 7. Copyright 2013 All Rights Reserved by Ben Clay practicalA g i l e S o l u t i o n s T h a t W o r k Ben Clay No index.jsp 7 Horizontal Flow Chart of Pluggable Vertical Slices Registration bootstrap session control No Yes JavaScript Register.jsp HTML5 DB No Yes JavaScript Login.jsp HTML5 DBYes Do Nothing No Yes JavaScript Landing Page HTML5 Yes No Landing Page Login UX/UI SERVICE DATA Registered? Register Successful? Already Logged in? Login Successful?Logout? Vertical Slice Vertical Slice
  • 8. Copyright 2013 All Rights Reserved by Ben Clay practicalA g i l e S o l u t i o n s T h a t W o r k Ben Clay 8 Questions?
  • 9. Copyright 2013 All Rights Reserved by Ben Clay practicalA g i l e S o l u t i o n s T h a t W o r k Ben Clay 9 Take Notes: