SlideShare a Scribd company logo
Use-Case 2.0:
   Scaling up, scaling out, scaling in for
   agile projects


   Dr Ivar Jacobson
   with Ian Spence




ivar@ivarjacobson.com
Scaling up, scaling out, scaling in – what is that?




                         Scaling up
                          To deal with larger development:
                          more people, more requirements,
                          more complex software systems

      Use Cases                  Scaling out
                                  To deal with greater breath
                                  of the development lifecycle

                         Scaling in
                           To provide more guidance
                           to individuals.




                                   2            Copyright © 2011 Ivar Jacobson International SA. All rights reserved
Agenda


•  A Brief History of Use Cases
•  Use-Case 2.0 – What is new

•  Use-Case 2.0 in practice

•  Wrap Up




                                  3   Copyright © 2011 Ivar Jacobson International SA. All rights reserved
A brief history of use cases


A practice that has learnt                                                        ‘87 – ‘96                        Use-Case Driven

to adapt and evolve                                                                                               Development Paper,
                                                                                                                     OOPSLA, 87


A practice that has stood                                                                   The Objectory Process and
                                                                                 Object-Oriented Software Engineering,
the test of time                                                                                 Addison Wesley, 1992


                                                                                 UML, OOPSLA, 1995

                                  ’96 -’00                  The Rational Objectory Process, 1997

                                                                The Unified Software Development
                                                                                         Process,
                                                                             Addison Wesley, 1999
                               Company X, Y & Z
                               Methods
                                                        EssUP
                         More and more books and
                         methods using use cases.               RUP


                                                                                Use-Case
    And now use-case 2.0…                                                       Essentials




                                                    4                   Copyright © 2011 Ivar Jacobson International SA. All rights reserved
What made use cases so popular?

                                                                    Requirements
•     They effectively communicate what                 Reuse
      a system is supposed to do                                                                      Architecture

•     They place the requirements into
      the context of a specific user’s
      goals                                      Iteration                  Use                               Software
                                                 Planning                  Cases                               Design
•     They are the test cases
•     They are the starting point for the
      design of effective user experiences
                                                      Business                                     Test
•     They ‘drive’ the development                    Modeling
      through design and code                                     User Experience
                                                                      Design


            Use-Case Modeling – A very simple idea.
       To get to the heart of what a system must do, you should focus on
      who, (or what) will use it, and then look at what the system must do for
                  them to help them achieve something useful.

                                             5                  Copyright © 2011 Ivar Jacobson International SA. All rights reserved
Why do we still need use cases?


   “There are lots of other popular requirement related
practices, haven’t they replaced the need for use cases?”

•  User Stories – great for small systems and small teams
•  Features – great for product management
•  Declarative Requirements – great for capturing independent,
   atomic qualities
•  Domain Modeling – great for information rich, functionally simple
   systems



 There a lots of great techniques but they lack something to
 pull them together, and provide a simple, scalable solution.

                                   6            Copyright © 2011 Ivar Jacobson International SA. All rights reserved
Why do we need use case 2.0?


 •  To correct some of the common misunderstandings:
    –    Use-cases are lightweight not heavy-weight
    –    Use-cases are stories not functions
    –    Use-cases are simple not complicated
    –    Use-cases are for all types of development not just green field
         application development
 •  To re-focus on the essentials
 •  To better support innovations and improvements such as test-
    driven development, Kanban, and Scrum



                              Use-Case 2.0
                    Scaling up, scaling out, scaling in.
         The lightness of user stories with the power of modelling.


                                        7              Copyright © 2011 Ivar Jacobson International SA. All rights reserved
Agenda


•  A Brief History of Use Cases
•  Use-Case 2.0 – What is new

•  Use-Case 2.0 in practice

•  Wrap Up




                                  8   Copyright © 2011 Ivar Jacobson International SA. All rights reserved
A use case is still a use case 

 A use case is all the ways of using a system to achieve a
           particular goal for a particular user.

•  Use cases can be shown in
   UML diagrams
•  Use cases are described as
   narratives                                                 Withdraw Cash
   –  Which tell the story of how
      the system and its users      Bank Customer
      work together to achieve a
      particular goal



   …but the way we describe and apply them has
                    evolved.
                                    9          Copyright © 2011 Ivar Jacobson International SA. All rights reserved
Use cases act as placeholders for conversations

                                          A set of use cases visualizes the
                                         scope and goals of a system in an
                                               easily accessible form.


                                       A Simple Telephone System




 The use cases provide context
     for our conversations.

The use cases are our epics and
           themes.

                                  10            Copyright © 2011 Ivar Jacobson International SA. All rights reserved
A use case is represented by many stories….




        •    Basic Flow                   Alternative Flows
            1. Insert Card                    A1 Invalid Card
            2. Validate Card                  A2 Non-Standard Amount
                                              A3 Receipt Required
            3. Select Cash Withdrawal
                                              A4 Insufficient Funds in ATM
            4. Select Amount
                                              A5 Insufficient Funds in Acct
            5. Confirm Availability of
                                              A6 Would Cause Overdraft
               Funds
                                              A7 Card Stuck
            6. Return Card
                                              A8 Cash Left Behind
            7. Dispense Cash                  Etc…




       … often too many to code and test in one go.
                                         11                 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
Too many stories for a single release


            Purchase                                          Refill and Service
             Goods           Purchase                           the Machine
                              Tickets


                                Withdraw     ATM                                    Configure the
                                 Cash      Engineer                                   Machine
                                                             Check the Machine is in
                                 Deposit                        Working Order
 Customer                        Funds


                                                               Analyze System
                                Transfer
                                                                Performance
                                 Funds
                                                                                      Reconcile Transaction
                                                                                              Logs
   Charge Device With      Manage
         Funds             Account          ATM
                                           Operator                                         Run Advertising
                                                                                              Campaign
                                                                    Update System
                                                                     Configuration
  Burglar               Break Into
                         Machine                  Change Pricing



                        Release 1:        , Release 2:           ,
                   Release 3:      , Release 4:        , Out of Scope:

                                                      12                 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
Too many stories for a single increment


    Start
Up
                                                                        Release
Ready
              Handover


            releasable
value
   releasable
value
   releasable
value
   releasable
value

                                releasable
value
   releasable
value
   releasable
value
            Product                   Released
                                                    releasable
value
   releasable
value
            Release                    Product
                                                                        releasable
value





                      Use Case 1

                                              Use Case 2

                                                               Use Case 3


                                                                                Use Case 4



       You need to slice up the use cases to provide stories
       suitable for iterative development, Kanban or Scrum.

                                                              13                     Copyright © 2011 Ivar Jacobson International SA. All rights reserved
So we slice up the use cases to drive the development




           A Use Case                            A Use-Case Slice

•  Is described by a set of                •  Is created by selecting one or
   structured stories in                      more stories for implementation
   the form of:                            •  …, acts as a placeholder for all
    –  A use-case narrative                   the work required to complete
       containing flows and special           the implementation of the
       requirements                           stories
    –  And a set of matching Test          •  …, and evolves to include the
       Cases
                                              equivalent slices through
                                              design, implementation and
                                              test.
                                      14            Copyright © 2011 Ivar Jacobson International SA. All rights reserved
Use-Cases drive the development

                             Use-Case Model




                                                                               Project Plans




                                               Class...                                  Pass

                                                                                         Fail


   Glossary /     Analysis       Design       Implementation                   Tests & Test
  Domain Model     Model         Model             Model                         Results




           Use case slices are more than just the stories.

                                   15            Copyright © 2011 Ivar Jacobson International SA. All rights reserved
A use case may generate several slices covering all its
functionality …

                                   Use Case 1

                                       Basic Flow plus 15 Alternatives




                                                   …
   Use-Case     Use-Case     Use-Case                                           Use-Case
    Slice1.1     Slice1.2     Slice1.3                                          Slice1.N

  Basic Flow     Alt Flows    Alt Flows                                        Alt Flows
     plus        1-4 plus     5-7 plus                                         M-15 plus
  Test Cases    Test Cases   Test Cases                                       Test Cases
   1.1 – 1.5    1.6 – 1.10   1.11 – 1.15                                       1.x – 1.Y



The Use-Case Slices split the use case up into a number of
          smaller, separately deliverable parts

                              16                Copyright © 2011 Ivar Jacobson International SA. All rights reserved
…,and other quality attributes



      Use-Case                Use-Case                                  Use-Case
      Slice 2.1               Slice 2.2                                 Slice 2.3
                              Basic Flow –                             Basic Flow –
     Basic Flow –
                            Rest of Scenarios                         + Supp Req’t A,
      Scenario 1
                                   plus                                    B&C
          plus
                               Test Cases                               Test Cases
     Test Case 2.1
                                2.2 – 2.8                                2.9 – 2.10



   Slice1 – Build the                                            Slice 3 – Use the basic
                         Slice 2 – Complete the
    basic flow and                                                flow to performance
                          implementation and
   Test with one key                                                and stress test the
                        testing of the basic flow.
       scenario.                                                         system.


  You don’t even need the whole use case before you start
                         slicing 
                                    17               Copyright © 2011 Ivar Jacobson International SA. All rights reserved
You only need to outline the flows to create the slices


                                         Use-Case 1: Withdraw Cash
                        •    Basic Flow                        Handling Errors!
                                                         1.3 CardAlternative Flows
                            1.   Insert Card                     A1 Invalid Card
                                                          Story: Wrong type of card. !
                            2.   Validate Card            Flows:A2 Non-Standard Amount
                                                                  BF, A1!
                                                                 A3 Receipt Required
                                                          Test Conditions: Invalid card !
                            3.   Select Cash Withdrawal !
                                                                 A4 Insufficient Funds in ATM
                                                          Story: Card Stuck on Cashor Exit!
                                                                       1.2 Full Entry Withdrawal!
                            4.   Select Amount
                                                          Flows:A5 Insufficient Funds in Acct
                                                                  BF, A7!
                            5.   Confirm Availability of  Test Conditions: Default Card, Default
                                                                        Story: Empty an Account!
                                                                 A6 Would Cause Overdraft
                                 Funds                    Account, Default Amount !
                                                                        Flows: BF!
                                                                 A7 Card Stuck
                                                                        Test Conditions: Card 001, Account 001
                            6.   Return Card              Points:
                                                                 A8 Cash Left £200 !
                                                                        containing Behind
                            7.   Dispense Cash                          Story: Withdraw Daily Limit!
                                                                 Etc…Flows: BF!
                                                          1.1 Normal CashConditions: Card 002, Account
                                                                        Test Withdrawal!
                                                                          002!
Use case narratives can be described at different             Story: Withdraw Beer Money!
                                                                         Points:
                  levels of detail.                           Flows: BF!
                                                              Test Conditions: Default Card, Default
They start very lightweight by outlining the flows.           Account, Default Amounts !
                                                              !

 This is enough detail to identify our stories and
               define our slices.
                                                              Points:
                                                   18                   Copyright © 2011 Ivar Jacobson International SA. All rights reserved
You can slice up your use cases to support product owners
 and development teams


Done

Doable


  Where
time runs
   out.



At risk

            Building a backlog, tracking done, and knowing
                      how much more you can do.
                                 19         Copyright © 2011 Ivar Jacobson International SA. All rights reserved
You only need to model what is important to you




                                              1.1 Normal Cash Withdrawal!

                                                Story: Withdraw Beer Money!
                                                Flows: BF!
                                                Test Conditions: Default Card, Default
                                                Account, Default Amounts !
                           To get started you!
                           only need one use
                             case and one Points:
                                  slice.


   The use-case model provides the big picture needed for
     effective scope management and release planning.

                             20          Copyright © 2011 Ivar Jacobson International SA. All rights reserved
Agenda


•  A Brief History of Use Cases
•  Use-Case 2.0 – What is new

•  Use-Case 2.0 in practice

•  Wrap Up




                                  21   Copyright © 2011 Ivar Jacobson International SA. All rights reserved
The agile sweet spot:
 Use-Case 2.0 with a small agile team

Building a web-based insurance application
•  Small, co-located project team
•  On-site product owner
•  4 then 2 week iterations
•  Previous experience of use cases
•  No experience of iterating



                          The team wrote their                       First working
Lightweight use-case
                         test cases up front as                  software within four
narratives to identify
                           they prepared their                          weeks.
   use-case slices.
                             use case slices.




                                  22              Copyright © 2011 Ivar Jacobson International SA. All rights reserved
Working on very large-systems:
 Use-Case 2.0 with systems engineering

Building a new banking straight-through processing engine
•  Large distributed project team
•  Many stakeholders and sponsors
•  6 then 4 and now 2 week iterations
•  New to agile and iteration



 Started with more
                        Became more agile                    Delivered on-time
  formal use-case
                         as they grew in                      and on-budget.
narratives and longer
                           confidence.
      iterations.




                               23           Copyright © 2011 Ivar Jacobson International SA. All rights reserved
Working with external suppliers
     Using Use Case 2.0 with out-sourcing or off-shoring

•  Innovation for Telecoms operations
•  Working iteratively and incrementally through-out
•  Requirements and testing in Holland
•  All software development and testing out-sourced (much to
   India)
•  Contractually need a formal requirements specification
•  Many distributed teams – difficult to have timely conversations


                                                                   Created test cases
      Used outlines and     Evolved the use-case                     up front and use
      use-case slices to       slices to provide                     these to QA the
     identify deliverable   clean clear orders for                releases delivered by
       pieces of work.          each iteration.                        the supplier.




                                     24              Copyright © 2011 Ivar Jacobson International SA. All rights reserved
Working with the business:
 Using Use Case 2.0 for business change


•  Agile business programs working iteratively and incrementally
•  Business product managers creating software intensive
   products
•  Adding these new products to existing enterprise IT systems
•  Business requires synchronized up dates to multiple
   applications to meet their business needs
•  Apply use-case 2.0 to the business as well as the software


                             Analyzed the                       Created “business”
 Used outlines and       business use-case                      test cases up front
 use-case slices to      slices to identify the               and used these to QA
  identify slices of      applications to be                   the integrated set of
 business change.         changed and their                   applications provided
                           use-case slices.                   by the IT Department.



                                  25              Copyright © 2011 Ivar Jacobson International SA. All rights reserved
Use Case 2.0 with Scrum: A winning combination

      1.
Slice
early
            2.
Test
early
            3.
Deliver
early

                                  and
o2en
                   and
o2en

      Use
lightweight
use

       case
narra0ves
to
        Write
test
cases

up
        Use the use-case
                               front

to
clearly
define
      model to identfy the
    iden0fy
use‐case
slices

                                 done,
use
these
to
       right slices to generate
       and
populate
the
                                     a usable system as
            backlog.
          demonstrate
working

                                      so?ware.
               early as possible.




                                                                                            Time




                                                                                                    Done




                                                      26                  Copyright © 2011 Ivar Jacobson International SA. All rights reserved
Use Case 2.0 with Kanban: A winning combination



                                                    Time




                          27        Copyright © 2011 Ivar Jacobson International SA. All rights reserved
Agenda


•  A Brief History of Use Cases
•  Use-Case 2.0 – What is new

•  Use-Case 2.0 in practice

•  Wrap Up




                                  28   Copyright © 2011 Ivar Jacobson International SA. All rights reserved
Introducing Use-Case 2.0


•    Use cases are still use cases
•    They provide context for our conversations
•    We only model what is important
•    We slice our use cases to drive the development
•    We eliminate waste by using the lightest level of detail
•    We include test cases (as part of the use case) to define done
•    We use cards and backlogs to support agile ways-of-working
•    We add detail to cope with out-sourcing and off-shoring
•    We apply the techniques recursively to handle large projects,
     programs and business change

                           Use-Case 2.0
                            Agility in action.
        The lightness of user stories with the power of modeling.

                                    29           Copyright © 2011 Ivar Jacobson International SA. All rights reserved
Use Case 2.0 -- Distinctive Features


•  It helps you quickly understand the big picture
•  As light as you want it to be
•  Enabling incremental delivery
•  It’s not just about requirements, it’s for the whole lifecycle
•  It’s also for non-functional requirements
•  It’s also for embedded software
•  It’s not just for software development – it’s for business
   development as well
•  Scaling to meet your needs – scaling in, scaling out
   and scaling up



     Register for the free Use-Case 2.0 e-book.

                                     30            Copyright © 2011 Ivar Jacobson International SA. All rights reserved
31   Copyright © 2011 Ivar Jacobson International SA. All rights reserved
For questions, feel free to contact me, Ivar Jacobson, at
                ivar@ivarjacobson.com
White papers and other resources can be downloaded from
                www.ivarjacobson.com




                             32            Copyright © 2011 Ivar Jacobson International SA. All rights reserved

More Related Content

PPTX
IoT Architecture for Water Resources Industry
PPTX
Automotive SPICE Level 3 and Beyond with codeBeamer ALM
PDF
Mesurer les performances avec JMeter
PPTX
Cluster computer
PDF
IRJET- Road Traffic Prediction using Machine Learning
PPTX
Process Mining Introduction
PDF
Hands-on Learning with KubeFlow + Keras/TensorFlow 2.0 + TF Extended (TFX) + ...
PPTX
IoT Architecture for Water Resources Industry
Automotive SPICE Level 3 and Beyond with codeBeamer ALM
Mesurer les performances avec JMeter
Cluster computer
IRJET- Road Traffic Prediction using Machine Learning
Process Mining Introduction
Hands-on Learning with KubeFlow + Keras/TensorFlow 2.0 + TF Extended (TFX) + ...

Viewers also liked (17)

PDF
Antifragilität
PDF
أنواع الصور للقروض البنكية
PPTX
Case studies use cases ASE
PPTX
Muster für anforderungsgetriebene Projekte in der Produktentwicklung
PDF
Nachhaltig unterwegs - Einblicke in die Zukunft der Mobilität - Michael Schra...
PDF
Traceability in der Business Analyse - Spuren legen auf dem Weg vom Bedarf zu...
PPTX
Schluss mit Excel
PDF
Story Maps Workshop (German) - DNUG Bern
PDF
Use Cases Vs User Stories
PDF
Story Maps - Liefern was wirklich zählt
PDF
Digitalisierung im Mittelstand: Märkte von morgen
ODP
From Use case to User Story
PPT
Lecture04- Use Case Diagrams
PDF
"Für Risiken & Nebenwirkungen" ... verwenden Sie Enterprise Search
PDF
Intelligente Suchmaschine in einer ELGA-Umgebung: Vinzenzgruppe, Mindbreeze I...
PDF
Keynote - AIIM17 -- Forces of Change in Content Management
PDF
Vom ich zum wir - Potentiale neuer Mobilitätskonzepte
Antifragilität
أنواع الصور للقروض البنكية
Case studies use cases ASE
Muster für anforderungsgetriebene Projekte in der Produktentwicklung
Nachhaltig unterwegs - Einblicke in die Zukunft der Mobilität - Michael Schra...
Traceability in der Business Analyse - Spuren legen auf dem Weg vom Bedarf zu...
Schluss mit Excel
Story Maps Workshop (German) - DNUG Bern
Use Cases Vs User Stories
Story Maps - Liefern was wirklich zählt
Digitalisierung im Mittelstand: Märkte von morgen
From Use case to User Story
Lecture04- Use Case Diagrams
"Für Risiken & Nebenwirkungen" ... verwenden Sie Enterprise Search
Intelligente Suchmaschine in einer ELGA-Umgebung: Vinzenzgruppe, Mindbreeze I...
Keynote - AIIM17 -- Forces of Change in Content Management
Vom ich zum wir - Potentiale neuer Mobilitätskonzepte
Ad

Similar to Use case+2-0 (20)

PDF
[EN] Club Automation presentation "Quality Model for Industrial Automation", ...
PPTX
SOA OSB BPEL BPM Presentation
PDF
Colaboración - la Nueva Plataforma para los Negocios
PPTX
1112 agile approach to pci dss development
PPTX
Getting Started with DevOps
PDF
Getting started with Cloud Foundry
PDF
Getting started with Cloud Foundry
PDF
Webinar: Top 5 Mistakes Your Don't Want to Make When Moving to the Cloud
PPTX
Bigdata Final NSF I-Corps Presentation
PPTX
The Application Development Landscape - 2011
PPTX
A Decade of SharePoint Adoption Strategies
PPTX
Realising Business Strategy wuth EA
PDF
Vineet Choudhry Portfolio
PDF
A Chemistry-Inspired Workflow Management System for Scientific Applications o...
PPTX
PDF
A short introduction to the cloud
PPTX
Mas overview dirks at cni dec11b
PDF
Vigor
PPTX
IDecideFast Final NSF I-Corp Presentation
PDF
Location Analytics - Session Evaluation Results
[EN] Club Automation presentation "Quality Model for Industrial Automation", ...
SOA OSB BPEL BPM Presentation
Colaboración - la Nueva Plataforma para los Negocios
1112 agile approach to pci dss development
Getting Started with DevOps
Getting started with Cloud Foundry
Getting started with Cloud Foundry
Webinar: Top 5 Mistakes Your Don't Want to Make When Moving to the Cloud
Bigdata Final NSF I-Corps Presentation
The Application Development Landscape - 2011
A Decade of SharePoint Adoption Strategies
Realising Business Strategy wuth EA
Vineet Choudhry Portfolio
A Chemistry-Inspired Workflow Management System for Scientific Applications o...
A short introduction to the cloud
Mas overview dirks at cni dec11b
Vigor
IDecideFast Final NSF I-Corp Presentation
Location Analytics - Session Evaluation Results
Ad

Recently uploaded (20)

PPTX
Amazon (Business Studies) management studies
PDF
pdfcoffee.com-opt-b1plus-sb-answers.pdfvi
PPTX
New Microsoft PowerPoint Presentation - Copy.pptx
PDF
20250805_A. Stotz All Weather Strategy - Performance review July 2025.pdf
DOCX
unit 2 cost accounting- Tender and Quotation & Reconciliation Statement
PDF
IFRS Notes in your pocket for study all the time
PDF
Laughter Yoga Basic Learning Workshop Manual
DOCX
Euro SEO Services 1st 3 General Updates.docx
PPTX
AI-assistance in Knowledge Collection and Curation supporting Safe and Sustai...
DOCX
Business Management - unit 1 and 2
PDF
Power and position in leadershipDOC-20250808-WA0011..pdf
PPTX
Dragon_Fruit_Cultivation_in Nepal ppt.pptx
PPTX
Principles of Marketing, Industrial, Consumers,
PDF
kom-180-proposal-for-a-directive-amending-directive-2014-45-eu-and-directive-...
PDF
How to Get Funding for Your Trucking Business
PDF
DOC-20250806-WA0002._20250806_112011_0000.pdf
PDF
SIMNET Inc – 2023’s Most Trusted IT Services & Solution Provider
PDF
Elevate Cleaning Efficiency Using Tallfly Hair Remover Roller Factory Expertise
PPTX
The Marketing Journey - Tracey Phillips - Marketing Matters 7-2025.pptx
PDF
Katrina Stoneking: Shaking Up the Alcohol Beverage Industry
Amazon (Business Studies) management studies
pdfcoffee.com-opt-b1plus-sb-answers.pdfvi
New Microsoft PowerPoint Presentation - Copy.pptx
20250805_A. Stotz All Weather Strategy - Performance review July 2025.pdf
unit 2 cost accounting- Tender and Quotation & Reconciliation Statement
IFRS Notes in your pocket for study all the time
Laughter Yoga Basic Learning Workshop Manual
Euro SEO Services 1st 3 General Updates.docx
AI-assistance in Knowledge Collection and Curation supporting Safe and Sustai...
Business Management - unit 1 and 2
Power and position in leadershipDOC-20250808-WA0011..pdf
Dragon_Fruit_Cultivation_in Nepal ppt.pptx
Principles of Marketing, Industrial, Consumers,
kom-180-proposal-for-a-directive-amending-directive-2014-45-eu-and-directive-...
How to Get Funding for Your Trucking Business
DOC-20250806-WA0002._20250806_112011_0000.pdf
SIMNET Inc – 2023’s Most Trusted IT Services & Solution Provider
Elevate Cleaning Efficiency Using Tallfly Hair Remover Roller Factory Expertise
The Marketing Journey - Tracey Phillips - Marketing Matters 7-2025.pptx
Katrina Stoneking: Shaking Up the Alcohol Beverage Industry

Use case+2-0

  • 1. Use-Case 2.0: Scaling up, scaling out, scaling in for agile projects Dr Ivar Jacobson with Ian Spence ivar@ivarjacobson.com
  • 2. Scaling up, scaling out, scaling in – what is that? Scaling up To deal with larger development: more people, more requirements, more complex software systems Use Cases Scaling out To deal with greater breath of the development lifecycle Scaling in To provide more guidance to individuals. 2 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 3. Agenda •  A Brief History of Use Cases •  Use-Case 2.0 – What is new •  Use-Case 2.0 in practice •  Wrap Up 3 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 4. A brief history of use cases A practice that has learnt ‘87 – ‘96 Use-Case Driven to adapt and evolve Development Paper, OOPSLA, 87 A practice that has stood The Objectory Process and Object-Oriented Software Engineering, the test of time Addison Wesley, 1992 UML, OOPSLA, 1995 ’96 -’00 The Rational Objectory Process, 1997 The Unified Software Development Process, Addison Wesley, 1999 Company X, Y & Z Methods EssUP More and more books and methods using use cases. RUP Use-Case And now use-case 2.0… Essentials 4 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 5. What made use cases so popular? Requirements •  They effectively communicate what Reuse a system is supposed to do Architecture •  They place the requirements into the context of a specific user’s goals Iteration Use Software Planning Cases Design •  They are the test cases •  They are the starting point for the design of effective user experiences Business Test •  They ‘drive’ the development Modeling through design and code User Experience Design Use-Case Modeling – A very simple idea. To get to the heart of what a system must do, you should focus on who, (or what) will use it, and then look at what the system must do for them to help them achieve something useful. 5 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 6. Why do we still need use cases? “There are lots of other popular requirement related practices, haven’t they replaced the need for use cases?” •  User Stories – great for small systems and small teams •  Features – great for product management •  Declarative Requirements – great for capturing independent, atomic qualities •  Domain Modeling – great for information rich, functionally simple systems There a lots of great techniques but they lack something to pull them together, and provide a simple, scalable solution. 6 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 7. Why do we need use case 2.0? •  To correct some of the common misunderstandings: –  Use-cases are lightweight not heavy-weight –  Use-cases are stories not functions –  Use-cases are simple not complicated –  Use-cases are for all types of development not just green field application development •  To re-focus on the essentials •  To better support innovations and improvements such as test- driven development, Kanban, and Scrum Use-Case 2.0 Scaling up, scaling out, scaling in. The lightness of user stories with the power of modelling. 7 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 8. Agenda •  A Brief History of Use Cases •  Use-Case 2.0 – What is new •  Use-Case 2.0 in practice •  Wrap Up 8 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 9. A use case is still a use case  A use case is all the ways of using a system to achieve a particular goal for a particular user. •  Use cases can be shown in UML diagrams •  Use cases are described as narratives Withdraw Cash –  Which tell the story of how the system and its users Bank Customer work together to achieve a particular goal …but the way we describe and apply them has evolved. 9 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 10. Use cases act as placeholders for conversations A set of use cases visualizes the scope and goals of a system in an easily accessible form. A Simple Telephone System The use cases provide context for our conversations. The use cases are our epics and themes. 10 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 11. A use case is represented by many stories…. • Basic Flow  Alternative Flows 1. Insert Card A1 Invalid Card 2. Validate Card A2 Non-Standard Amount A3 Receipt Required 3. Select Cash Withdrawal A4 Insufficient Funds in ATM 4. Select Amount A5 Insufficient Funds in Acct 5. Confirm Availability of A6 Would Cause Overdraft Funds A7 Card Stuck 6. Return Card A8 Cash Left Behind 7. Dispense Cash Etc… … often too many to code and test in one go. 11 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 12. Too many stories for a single release Purchase Refill and Service Goods Purchase the Machine Tickets Withdraw ATM Configure the Cash Engineer Machine Check the Machine is in Deposit Working Order Customer Funds Analyze System Transfer Performance Funds Reconcile Transaction Logs Charge Device With Manage Funds Account ATM Operator Run Advertising Campaign Update System Configuration Burglar Break Into Machine Change Pricing Release 1: , Release 2: , Release 3: , Release 4: , Out of Scope: 12 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 13. Too many stories for a single increment Start
Up
 Release
Ready
 Handover
 releasable
value
 releasable
value
 releasable
value
 releasable
value
 releasable
value
 releasable
value
 releasable
value
 Product Released releasable
value
 releasable
value
 Release Product releasable
value
 Use Case 1 Use Case 2 Use Case 3 Use Case 4 You need to slice up the use cases to provide stories suitable for iterative development, Kanban or Scrum. 13 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 14. So we slice up the use cases to drive the development A Use Case A Use-Case Slice •  Is described by a set of •  Is created by selecting one or structured stories in more stories for implementation the form of: •  …, acts as a placeholder for all –  A use-case narrative the work required to complete containing flows and special the implementation of the requirements stories –  And a set of matching Test •  …, and evolves to include the Cases equivalent slices through design, implementation and test. 14 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 15. Use-Cases drive the development Use-Case Model Project Plans Class... Pass Fail Glossary / Analysis Design Implementation Tests & Test Domain Model Model Model Model Results Use case slices are more than just the stories. 15 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 16. A use case may generate several slices covering all its functionality … Use Case 1 Basic Flow plus 15 Alternatives … Use-Case Use-Case Use-Case Use-Case Slice1.1 Slice1.2 Slice1.3 Slice1.N Basic Flow Alt Flows Alt Flows Alt Flows plus 1-4 plus 5-7 plus M-15 plus Test Cases Test Cases Test Cases Test Cases 1.1 – 1.5 1.6 – 1.10 1.11 – 1.15 1.x – 1.Y The Use-Case Slices split the use case up into a number of smaller, separately deliverable parts 16 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 17. …,and other quality attributes Use-Case Use-Case Use-Case Slice 2.1 Slice 2.2 Slice 2.3 Basic Flow – Basic Flow – Basic Flow – Rest of Scenarios + Supp Req’t A, Scenario 1 plus B&C plus Test Cases Test Cases Test Case 2.1 2.2 – 2.8 2.9 – 2.10 Slice1 – Build the Slice 3 – Use the basic Slice 2 – Complete the basic flow and flow to performance implementation and Test with one key and stress test the testing of the basic flow. scenario. system. You don’t even need the whole use case before you start slicing  17 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 18. You only need to outline the flows to create the slices Use-Case 1: Withdraw Cash • Basic Flow  Handling Errors! 1.3 CardAlternative Flows 1. Insert Card A1 Invalid Card Story: Wrong type of card. ! 2. Validate Card Flows:A2 Non-Standard Amount BF, A1! A3 Receipt Required Test Conditions: Invalid card ! 3. Select Cash Withdrawal ! A4 Insufficient Funds in ATM Story: Card Stuck on Cashor Exit! 1.2 Full Entry Withdrawal! 4. Select Amount Flows:A5 Insufficient Funds in Acct BF, A7! 5. Confirm Availability of Test Conditions: Default Card, Default Story: Empty an Account! A6 Would Cause Overdraft Funds Account, Default Amount ! Flows: BF! A7 Card Stuck Test Conditions: Card 001, Account 001 6. Return Card Points: A8 Cash Left £200 ! containing Behind 7. Dispense Cash Story: Withdraw Daily Limit! Etc…Flows: BF! 1.1 Normal CashConditions: Card 002, Account Test Withdrawal! 002! Use case narratives can be described at different Story: Withdraw Beer Money! Points: levels of detail. Flows: BF! Test Conditions: Default Card, Default They start very lightweight by outlining the flows. Account, Default Amounts ! ! This is enough detail to identify our stories and define our slices. Points: 18 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 19. You can slice up your use cases to support product owners and development teams Done Doable Where time runs out. At risk Building a backlog, tracking done, and knowing how much more you can do. 19 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 20. You only need to model what is important to you 1.1 Normal Cash Withdrawal! Story: Withdraw Beer Money! Flows: BF! Test Conditions: Default Card, Default Account, Default Amounts ! To get started you! only need one use case and one Points: slice. The use-case model provides the big picture needed for effective scope management and release planning. 20 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 21. Agenda •  A Brief History of Use Cases •  Use-Case 2.0 – What is new •  Use-Case 2.0 in practice •  Wrap Up 21 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 22. The agile sweet spot: Use-Case 2.0 with a small agile team Building a web-based insurance application •  Small, co-located project team •  On-site product owner •  4 then 2 week iterations •  Previous experience of use cases •  No experience of iterating The team wrote their First working Lightweight use-case test cases up front as software within four narratives to identify they prepared their weeks. use-case slices. use case slices. 22 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 23. Working on very large-systems: Use-Case 2.0 with systems engineering Building a new banking straight-through processing engine •  Large distributed project team •  Many stakeholders and sponsors •  6 then 4 and now 2 week iterations •  New to agile and iteration Started with more Became more agile Delivered on-time formal use-case as they grew in and on-budget. narratives and longer confidence. iterations. 23 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 24. Working with external suppliers Using Use Case 2.0 with out-sourcing or off-shoring •  Innovation for Telecoms operations •  Working iteratively and incrementally through-out •  Requirements and testing in Holland •  All software development and testing out-sourced (much to India) •  Contractually need a formal requirements specification •  Many distributed teams – difficult to have timely conversations Created test cases Used outlines and Evolved the use-case up front and use use-case slices to slices to provide these to QA the identify deliverable clean clear orders for releases delivered by pieces of work. each iteration. the supplier. 24 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 25. Working with the business: Using Use Case 2.0 for business change •  Agile business programs working iteratively and incrementally •  Business product managers creating software intensive products •  Adding these new products to existing enterprise IT systems •  Business requires synchronized up dates to multiple applications to meet their business needs •  Apply use-case 2.0 to the business as well as the software Analyzed the Created “business” Used outlines and business use-case test cases up front use-case slices to slices to identify the and used these to QA identify slices of applications to be the integrated set of business change. changed and their applications provided use-case slices. by the IT Department. 25 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 26. Use Case 2.0 with Scrum: A winning combination 1.
Slice
early
 2.
Test
early
 3.
Deliver
early
 and
o2en
 and
o2en
 Use
lightweight
use
 case
narra0ves
to
 Write
test
cases

up
 Use the use-case front

to
clearly
define
 model to identfy the iden0fy
use‐case
slices
 done,
use
these
to
 right slices to generate and
populate
the
 a usable system as backlog.
 demonstrate
working
 so?ware.
 early as possible. Time Done 26 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 27. Use Case 2.0 with Kanban: A winning combination Time 27 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 28. Agenda •  A Brief History of Use Cases •  Use-Case 2.0 – What is new •  Use-Case 2.0 in practice •  Wrap Up 28 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 29. Introducing Use-Case 2.0 •  Use cases are still use cases •  They provide context for our conversations •  We only model what is important •  We slice our use cases to drive the development •  We eliminate waste by using the lightest level of detail •  We include test cases (as part of the use case) to define done •  We use cards and backlogs to support agile ways-of-working •  We add detail to cope with out-sourcing and off-shoring •  We apply the techniques recursively to handle large projects, programs and business change Use-Case 2.0 Agility in action. The lightness of user stories with the power of modeling. 29 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 30. Use Case 2.0 -- Distinctive Features •  It helps you quickly understand the big picture •  As light as you want it to be •  Enabling incremental delivery •  It’s not just about requirements, it’s for the whole lifecycle •  It’s also for non-functional requirements •  It’s also for embedded software •  It’s not just for software development – it’s for business development as well •  Scaling to meet your needs – scaling in, scaling out and scaling up Register for the free Use-Case 2.0 e-book. 30 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 31. 31 Copyright © 2011 Ivar Jacobson International SA. All rights reserved
  • 32. For questions, feel free to contact me, Ivar Jacobson, at ivar@ivarjacobson.com White papers and other resources can be downloaded from www.ivarjacobson.com 32 Copyright © 2011 Ivar Jacobson International SA. All rights reserved