SlideShare a Scribd company logo
1 of 19
Download to read offline
Adri Timp
Chair, NESMA Counting Practices Committee
             Adri.Timp@nesma.nl

                  ISMA-3
             September 18, 2008
FPA applied to UML/Use Cases
         SIG proposal


         Approach


         UML and FPA


         Brief explanation of the guidelines


September 18, 2008             ISMA-3          2
Approach
 Goal SIG (Special Interest Group)
   • Application of FPA guidelines to UML/Use Cases, no Use Case Points
   • Starting point: Acquainted with both FPA and UML


 Process
   • Literature study: One basic knowledge level for SIG members
   • Formulate draft version
   • Review by FPA and UML experts of leading companies: Getronics, Pink
     Roccade, Sogeti, Equens, ABN AMRO, QSM, Atos Origin, and CapGemini
   • Publication

September 18, 2008   ISMA-3                                                3
FPA and UML / Use Cases
  FPA sizes functionality based on user view of application
  So independent of:
     Technology used for implementation
     Analysis / Design methodologies and models
  Consequence:
     FPA also applicable in UML designed application
     Just different terminology  “translation” to FPA concepts
     Many people don’t realize  use case points (and other)
     For experienced people “open doors”


September 18, 2008   ISMA-3                                        4
Requirements to carry out FPA
    Requirement                      Objective for FPA
    Model that describes             To identify the data functions




                                                                               Structure
    Structure/Data of application    (ILF, EIF)
    (Data Model)
    Data element types and           To determine complexity of the
    record types in Data Model       data functions
    Model that describes             To identify the transactional functions




                                                                               Behaviour
    behaviour of application         (EI, EO, EQ)
    The flow of data element         To determine complexity of the
    types and the processing logic   transactional functions




September 18, 2008     ISMA-3                                                              5
UML and FPA
         Behaviour or UML Diagram                    Describes
         structure?
         Behaviour    Use case diagram               Actors, system and functions
                      Use case description           Actions in a Use case
                      Activity diagram               Actions in a scenario
                      Interaction Overview diagram   Actions in a scenario
                      Sequence diagram               Actions in a scenario
                      Collaboration diagram          Actions in a scenario
         Structure    Class diagram                  Detailed information need


          In practice almost always available:
                Use Case Model (both diagrams and descriptions)
                Class Model
September 18, 2008       ISMA-3                                                     6
Use Cases
 Use Case Diagram                                                    Update customers



                                                                                           Customer system
                               Analyze risks
                                                              « include »



                             Price agreement
                                                                            Credit score
                                                « include »


               Salesman
                             Document the
                              agreement


                                   <<extend>>                                               Formulate credit
                                                                                                policy


                           Customer inquiry
                                                                              Manager




September 18, 2008        ISMA-3                                                                               7
Use Case and Actor
  UML definition of “Use Case”:
   “The specification of a set of actions performed by a system,
   which yields an observable result that is, typically, of value
   for one or more actors or other stakeholders of the system.”
  Use cases describe the requirements for an application from
   the point of view of the so-called “actor”
  Use cases represent the behaviour of the system as
   perceived by the actors
  UML “Actor” = FPA “User”
  UML “Use Case” = FPA “Elementary Process”?
September 18, 2008   ISMA-3                                   8
Use Case=Elementary Process?
  Yes and No
  Use Cases are well suited for counting function points
   (user view; observable result/self contained)
  But
       Level of detail (“granularity”) of uses cases widely vary
       UML does not give a definite answer for the level of detail
          for a use case
  So
       Additional analysis is always a must
       Automated “counting” not possible
September 18, 2008    ISMA-3                                          9
Analysis of Use Case A Must!
  Decomposition needed
     For example:
       1 Use Case “Maintain Customer”
          Analysis might show there are 4 EP’s:
          Customer Inquiry & Add, Change, Delete Customer
  Composition Needed
   For example:
       5 Use Cases “Validate Customer”, “Validate Article”, “Add
          Orderline”, “Calculate Shipping Date”, “Confirm Order”
          Analysis might show that this is 1 EP: “Place an Order”

September 18, 2008    ISMA-3                                        10
Use Case Scenarios
  Use Case Description may contain several “Scenarios”
  A Scenario is a “series of steps that describe the
   interaction between an actor and an application”
  All scenarios for a use case have in common that they
   support the same basic objective for a user
       “Happy Flow”: everything goes well
       Alternate Flows: describe what can go wrong and how a
          user can achieve his goal in a different way
             handling an error situation: typically no extra EP
             additional steps for actor: could be extra EP if self contained

September 18, 2008       ISMA-3                                                 11
Include Relationship
  Include Relationship: When a specific type of behaviour
   occurs in several Uses Cases, but is described once as
   separate Use Case
  Include Use Case can be:
       Not a separate EP if it is not a self contained process,
        for example a validation that is documented separately
       An EP if it does meet the criteria for an EP
        for example a drop down list in which the contents of an ILF
        is presented to make a selection
  Magic Word again: Analysis!

September 18, 2008   ISMA-3                                        12
Summary Use Cases
                     Analyse Granularity

                     Analyse Scenarios

                     Analyse “Include” Use Cases

                     Analyse “Storyboards”
September 18, 2008   ISMA-3                        13
Class Model
                Bank account

       <id> bank account nr.: Num <9>
       Account type: String <6>          Class/Object relationships
       Amount: Num <15>

       DepositAmount(Amount):            • Association
       RemitAmount(Amount):
       ShowBalance():Amount              • Aggregation
                                         • Composition
                     Or                  • Generalization


               Bank account




September 18, 2008              ISMA-3                                14
Objects and Classes
  How to identify Data Functions based on the OO Class
   Model
  Class: the definition of the attributes and the operations
   (“methods”) of similar Objects
  Object: concrete or abstract “ things” from the real world
  Sounds like Entity (Occurrence) and Entity Type
  Approach: Analyse the Class Model using the FPA rules
   and guidelines for identifying Logical Files in an Entity
   (Relationship) Model

September 18, 2008   ISMA-3                                     15
Guidelines
                     Exclude the Code Data



                     Exclude Association Classes without attributes:
                     (“Key-Key entities”): do not occur


                     Include Association Classes with attributes
                     (“Key-Key with attributes”)


                     Analyse type and optionality of the relationship
                     (dependent/independent) and group

September 18, 2008   ISMA-3                                             16
Guidelines
               Employee


                            1               Association and Aggregation:
                            0..*
                                            • Mutually a 1  1 Logical File
               Dependant
                                            • Mutually a 0  2 Logical Files
                                            • A 0 on one side?  “delete rule”
                     Team                     (class dependence/independence)

                            0..1

                            0..*

                 Player




September 18, 2008                 ISMA-3                                        17
Guidelines
                     Order                      Composition
                             1
                                                • Together always 1 logical file
                             1..*

                 Order line




                     Motor vehicle              Generalization

                                                • Separate “discrete” items? Then
                                                  2 Logical files
        Car                             Truck




September 18, 2008                   ISMA-3                                         18
FPA applied to UML/Use Cases Guide
                     Guide “FPA applied to UML/Use Cases”

                                 www.nesma.nl/english

                                   (Free download)


                                    office@nesma.nl

                                 Adri.Timp@nesma.nl




September 18, 2008      ISMA-3                              19

More Related Content

Similar to FPA applied to UML and Use Cases

Sadcw 7e chapter03-done(1)
Sadcw 7e chapter03-done(1)Sadcw 7e chapter03-done(1)
Sadcw 7e chapter03-done(1)LamineKaba6
 
Intro to UML - Use Case diagrams
Intro to UML - Use Case diagramsIntro to UML - Use Case diagrams
Intro to UML - Use Case diagramsjsm1979
 
Chapter 3.pptx
Chapter 3.pptxChapter 3.pptx
Chapter 3.pptxTekle12
 
Use Case Diagram
Use Case DiagramUse Case Diagram
Use Case DiagramAshesh R
 
Use Case Workshop
Use Case WorkshopUse Case Workshop
Use Case Workshopelkensteyin
 
Quality Assurance. Quality Assurance Approach. White Box
Quality Assurance. Quality Assurance Approach. White BoxQuality Assurance. Quality Assurance Approach. White Box
Quality Assurance. Quality Assurance Approach. White BoxKimberly Jones
 
Machine Learning as service
Machine Learning as serviceMachine Learning as service
Machine Learning as serviceNihal Mehdi
 
Lecture 12 requirements modeling - (system analysis)
Lecture 12   requirements modeling - (system analysis)Lecture 12   requirements modeling - (system analysis)
Lecture 12 requirements modeling - (system analysis)IIUI
 
SELECT21.pptx
SELECT21.pptxSELECT21.pptx
SELECT21.pptxdevnasra1
 
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddelCHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddelmohamed khalaf alla mohamedain
 
05 fse requirementsengineering
05 fse requirementsengineering05 fse requirementsengineering
05 fse requirementsengineeringMohesh Chandran
 

Similar to FPA applied to UML and Use Cases (20)

Sadcw 7e chapter03-done(1)
Sadcw 7e chapter03-done(1)Sadcw 7e chapter03-done(1)
Sadcw 7e chapter03-done(1)
 
Intro to UML - Use Case diagrams
Intro to UML - Use Case diagramsIntro to UML - Use Case diagrams
Intro to UML - Use Case diagrams
 
Chapter 3.pptx
Chapter 3.pptxChapter 3.pptx
Chapter 3.pptx
 
Chapter5
Chapter5Chapter5
Chapter5
 
Use Case Diagram
Use Case DiagramUse Case Diagram
Use Case Diagram
 
Ws002 use cases
Ws002 use casesWs002 use cases
Ws002 use cases
 
StructureofUseCases.pptx
StructureofUseCases.pptxStructureofUseCases.pptx
StructureofUseCases.pptx
 
Use Case Workshop
Use Case WorkshopUse Case Workshop
Use Case Workshop
 
Ch08
Ch08Ch08
Ch08
 
Ch08
Ch08Ch08
Ch08
 
Quality Assurance. Quality Assurance Approach. White Box
Quality Assurance. Quality Assurance Approach. White BoxQuality Assurance. Quality Assurance Approach. White Box
Quality Assurance. Quality Assurance Approach. White Box
 
Machine Learning as service
Machine Learning as serviceMachine Learning as service
Machine Learning as service
 
Unified Modeling Language
Unified Modeling LanguageUnified Modeling Language
Unified Modeling Language
 
chapter_5_5.ppt
chapter_5_5.pptchapter_5_5.ppt
chapter_5_5.ppt
 
Lecture 12 requirements modeling - (system analysis)
Lecture 12   requirements modeling - (system analysis)Lecture 12   requirements modeling - (system analysis)
Lecture 12 requirements modeling - (system analysis)
 
SELECT21.pptx
SELECT21.pptxSELECT21.pptx
SELECT21.pptx
 
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddelCHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
 
05 fse requirementsengineering
05 fse requirementsengineering05 fse requirementsengineering
05 fse requirementsengineering
 
Sadcw 6e chapter3
Sadcw 6e chapter3Sadcw 6e chapter3
Sadcw 6e chapter3
 
Use Cases
Use CasesUse Cases
Use Cases
 

More from Nesma

2024-04 - Nesma webinar - Benchmarking.pdf
2024-04 - Nesma webinar - Benchmarking.pdf2024-04 - Nesma webinar - Benchmarking.pdf
2024-04 - Nesma webinar - Benchmarking.pdfNesma
 
Agile Team Performance Measurement webinar
Agile Team Performance Measurement webinarAgile Team Performance Measurement webinar
Agile Team Performance Measurement webinarNesma
 
Software Cost Estimation webinar January 2024.pdf
Software Cost Estimation webinar January 2024.pdfSoftware Cost Estimation webinar January 2024.pdf
Software Cost Estimation webinar January 2024.pdfNesma
 
Nesma event June '23 - How to use objective metrics as a basis for agile cost...
Nesma event June '23 - How to use objective metrics as a basis for agile cost...Nesma event June '23 - How to use objective metrics as a basis for agile cost...
Nesma event June '23 - How to use objective metrics as a basis for agile cost...Nesma
 
Nesma event June '23 - NEN Practice Guideline - NPR.pdf
Nesma event June '23 - NEN Practice Guideline - NPR.pdfNesma event June '23 - NEN Practice Guideline - NPR.pdf
Nesma event June '23 - NEN Practice Guideline - NPR.pdfNesma
 
Nesma event June '23 - Easy Function Sizing - Introduction.pdf
Nesma event June '23 - Easy Function Sizing - Introduction.pdfNesma event June '23 - Easy Function Sizing - Introduction.pdf
Nesma event June '23 - Easy Function Sizing - Introduction.pdfNesma
 
Automotive Software Cost Estimation - The UCE Approach - Emmanuel Mary
Automotive Software Cost Estimation - The UCE Approach - Emmanuel MaryAutomotive Software Cost Estimation - The UCE Approach - Emmanuel Mary
Automotive Software Cost Estimation - The UCE Approach - Emmanuel MaryNesma
 
The COSMIC battle between David and Goliath - Paul Hussein
The COSMIC battle between David and Goliath - Paul HusseinThe COSMIC battle between David and Goliath - Paul Hussein
The COSMIC battle between David and Goliath - Paul HusseinNesma
 
Succesful Estimating - It's how you tell the story - Amritpal Singh Agar
Succesful Estimating - It's how you tell the story - Amritpal Singh AgarSuccesful Estimating - It's how you tell the story - Amritpal Singh Agar
Succesful Estimating - It's how you tell the story - Amritpal Singh AgarNesma
 
(Increasing) Predictability of large Government ICT Projects - Koos Veefkind
(Increasing) Predictability of large Government ICT Projects - Koos Veefkind(Increasing) Predictability of large Government ICT Projects - Koos Veefkind
(Increasing) Predictability of large Government ICT Projects - Koos VeefkindNesma
 
CEBoK for Software Past Present Future - Megan Jones
CEBoK for Software Past Present Future - Megan JonesCEBoK for Software Past Present Future - Megan Jones
CEBoK for Software Past Present Future - Megan JonesNesma
 
Agile Development and Agile Cost Estimation - A return to basic principles - ...
Agile Development and Agile Cost Estimation - A return to basic principles - ...Agile Development and Agile Cost Estimation - A return to basic principles - ...
Agile Development and Agile Cost Estimation - A return to basic principles - ...Nesma
 
Resolving Cost Management and Key Pitfalls of Agile Software Development - Da...
Resolving Cost Management and Key Pitfalls of Agile Software Development - Da...Resolving Cost Management and Key Pitfalls of Agile Software Development - Da...
Resolving Cost Management and Key Pitfalls of Agile Software Development - Da...Nesma
 
Project Succes is a Choice - Joop Schefferlie
Project Succes is a Choice - Joop SchefferlieProject Succes is a Choice - Joop Schefferlie
Project Succes is a Choice - Joop SchefferlieNesma
 
Afrekenen met functiepunten
Afrekenen met functiepuntenAfrekenen met functiepunten
Afrekenen met functiepuntenNesma
 
Agile teams get a grip - martijn groenewegen
Agile teams   get a grip - martijn groenewegenAgile teams   get a grip - martijn groenewegen
Agile teams get a grip - martijn groenewegenNesma
 
The fact that your poject is agile is not (necessarily) a cost driver arlen...
The fact that your poject is agile is not (necessarily) a cost driver   arlen...The fact that your poject is agile is not (necessarily) a cost driver   arlen...
The fact that your poject is agile is not (necessarily) a cost driver arlen...Nesma
 
Software sizing as an essential measure past present and future - Dan Galorat...
Software sizing as an essential measure past present and future - Dan Galorat...Software sizing as an essential measure past present and future - Dan Galorat...
Software sizing as an essential measure past present and future - Dan Galorat...Nesma
 
A benchmark based approach to determine language verbosity - Hans Kuijpers - ...
A benchmark based approach to determine language verbosity - Hans Kuijpers - ...A benchmark based approach to determine language verbosity - Hans Kuijpers - ...
A benchmark based approach to determine language verbosity - Hans Kuijpers - ...Nesma
 
Software sizing the cornerstone for iceaa's scebok - Carol Dekkers
Software sizing the cornerstone for iceaa's scebok - Carol DekkersSoftware sizing the cornerstone for iceaa's scebok - Carol Dekkers
Software sizing the cornerstone for iceaa's scebok - Carol DekkersNesma
 

More from Nesma (20)

2024-04 - Nesma webinar - Benchmarking.pdf
2024-04 - Nesma webinar - Benchmarking.pdf2024-04 - Nesma webinar - Benchmarking.pdf
2024-04 - Nesma webinar - Benchmarking.pdf
 
Agile Team Performance Measurement webinar
Agile Team Performance Measurement webinarAgile Team Performance Measurement webinar
Agile Team Performance Measurement webinar
 
Software Cost Estimation webinar January 2024.pdf
Software Cost Estimation webinar January 2024.pdfSoftware Cost Estimation webinar January 2024.pdf
Software Cost Estimation webinar January 2024.pdf
 
Nesma event June '23 - How to use objective metrics as a basis for agile cost...
Nesma event June '23 - How to use objective metrics as a basis for agile cost...Nesma event June '23 - How to use objective metrics as a basis for agile cost...
Nesma event June '23 - How to use objective metrics as a basis for agile cost...
 
Nesma event June '23 - NEN Practice Guideline - NPR.pdf
Nesma event June '23 - NEN Practice Guideline - NPR.pdfNesma event June '23 - NEN Practice Guideline - NPR.pdf
Nesma event June '23 - NEN Practice Guideline - NPR.pdf
 
Nesma event June '23 - Easy Function Sizing - Introduction.pdf
Nesma event June '23 - Easy Function Sizing - Introduction.pdfNesma event June '23 - Easy Function Sizing - Introduction.pdf
Nesma event June '23 - Easy Function Sizing - Introduction.pdf
 
Automotive Software Cost Estimation - The UCE Approach - Emmanuel Mary
Automotive Software Cost Estimation - The UCE Approach - Emmanuel MaryAutomotive Software Cost Estimation - The UCE Approach - Emmanuel Mary
Automotive Software Cost Estimation - The UCE Approach - Emmanuel Mary
 
The COSMIC battle between David and Goliath - Paul Hussein
The COSMIC battle between David and Goliath - Paul HusseinThe COSMIC battle between David and Goliath - Paul Hussein
The COSMIC battle between David and Goliath - Paul Hussein
 
Succesful Estimating - It's how you tell the story - Amritpal Singh Agar
Succesful Estimating - It's how you tell the story - Amritpal Singh AgarSuccesful Estimating - It's how you tell the story - Amritpal Singh Agar
Succesful Estimating - It's how you tell the story - Amritpal Singh Agar
 
(Increasing) Predictability of large Government ICT Projects - Koos Veefkind
(Increasing) Predictability of large Government ICT Projects - Koos Veefkind(Increasing) Predictability of large Government ICT Projects - Koos Veefkind
(Increasing) Predictability of large Government ICT Projects - Koos Veefkind
 
CEBoK for Software Past Present Future - Megan Jones
CEBoK for Software Past Present Future - Megan JonesCEBoK for Software Past Present Future - Megan Jones
CEBoK for Software Past Present Future - Megan Jones
 
Agile Development and Agile Cost Estimation - A return to basic principles - ...
Agile Development and Agile Cost Estimation - A return to basic principles - ...Agile Development and Agile Cost Estimation - A return to basic principles - ...
Agile Development and Agile Cost Estimation - A return to basic principles - ...
 
Resolving Cost Management and Key Pitfalls of Agile Software Development - Da...
Resolving Cost Management and Key Pitfalls of Agile Software Development - Da...Resolving Cost Management and Key Pitfalls of Agile Software Development - Da...
Resolving Cost Management and Key Pitfalls of Agile Software Development - Da...
 
Project Succes is a Choice - Joop Schefferlie
Project Succes is a Choice - Joop SchefferlieProject Succes is a Choice - Joop Schefferlie
Project Succes is a Choice - Joop Schefferlie
 
Afrekenen met functiepunten
Afrekenen met functiepuntenAfrekenen met functiepunten
Afrekenen met functiepunten
 
Agile teams get a grip - martijn groenewegen
Agile teams   get a grip - martijn groenewegenAgile teams   get a grip - martijn groenewegen
Agile teams get a grip - martijn groenewegen
 
The fact that your poject is agile is not (necessarily) a cost driver arlen...
The fact that your poject is agile is not (necessarily) a cost driver   arlen...The fact that your poject is agile is not (necessarily) a cost driver   arlen...
The fact that your poject is agile is not (necessarily) a cost driver arlen...
 
Software sizing as an essential measure past present and future - Dan Galorat...
Software sizing as an essential measure past present and future - Dan Galorat...Software sizing as an essential measure past present and future - Dan Galorat...
Software sizing as an essential measure past present and future - Dan Galorat...
 
A benchmark based approach to determine language verbosity - Hans Kuijpers - ...
A benchmark based approach to determine language verbosity - Hans Kuijpers - ...A benchmark based approach to determine language verbosity - Hans Kuijpers - ...
A benchmark based approach to determine language verbosity - Hans Kuijpers - ...
 
Software sizing the cornerstone for iceaa's scebok - Carol Dekkers
Software sizing the cornerstone for iceaa's scebok - Carol DekkersSoftware sizing the cornerstone for iceaa's scebok - Carol Dekkers
Software sizing the cornerstone for iceaa's scebok - Carol Dekkers
 

Recently uploaded

How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsHyundai Motor Group
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 

Recently uploaded (20)

How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 

FPA applied to UML and Use Cases

  • 1. Adri Timp Chair, NESMA Counting Practices Committee Adri.Timp@nesma.nl ISMA-3 September 18, 2008
  • 2. FPA applied to UML/Use Cases SIG proposal Approach UML and FPA Brief explanation of the guidelines September 18, 2008 ISMA-3 2
  • 3. Approach Goal SIG (Special Interest Group) • Application of FPA guidelines to UML/Use Cases, no Use Case Points • Starting point: Acquainted with both FPA and UML Process • Literature study: One basic knowledge level for SIG members • Formulate draft version • Review by FPA and UML experts of leading companies: Getronics, Pink Roccade, Sogeti, Equens, ABN AMRO, QSM, Atos Origin, and CapGemini • Publication September 18, 2008 ISMA-3 3
  • 4. FPA and UML / Use Cases  FPA sizes functionality based on user view of application  So independent of:  Technology used for implementation  Analysis / Design methodologies and models  Consequence:  FPA also applicable in UML designed application  Just different terminology  “translation” to FPA concepts  Many people don’t realize  use case points (and other)  For experienced people “open doors” September 18, 2008 ISMA-3 4
  • 5. Requirements to carry out FPA Requirement Objective for FPA Model that describes To identify the data functions Structure Structure/Data of application (ILF, EIF) (Data Model) Data element types and To determine complexity of the record types in Data Model data functions Model that describes To identify the transactional functions Behaviour behaviour of application (EI, EO, EQ) The flow of data element To determine complexity of the types and the processing logic transactional functions September 18, 2008 ISMA-3 5
  • 6. UML and FPA Behaviour or UML Diagram Describes structure? Behaviour Use case diagram Actors, system and functions Use case description Actions in a Use case Activity diagram Actions in a scenario Interaction Overview diagram Actions in a scenario Sequence diagram Actions in a scenario Collaboration diagram Actions in a scenario Structure Class diagram Detailed information need In practice almost always available:  Use Case Model (both diagrams and descriptions)  Class Model September 18, 2008 ISMA-3 6
  • 7. Use Cases Use Case Diagram Update customers Customer system Analyze risks « include » Price agreement Credit score « include » Salesman Document the agreement <<extend>> Formulate credit policy Customer inquiry Manager September 18, 2008 ISMA-3 7
  • 8. Use Case and Actor  UML definition of “Use Case”: “The specification of a set of actions performed by a system, which yields an observable result that is, typically, of value for one or more actors or other stakeholders of the system.”  Use cases describe the requirements for an application from the point of view of the so-called “actor”  Use cases represent the behaviour of the system as perceived by the actors  UML “Actor” = FPA “User”  UML “Use Case” = FPA “Elementary Process”? September 18, 2008 ISMA-3 8
  • 9. Use Case=Elementary Process?  Yes and No  Use Cases are well suited for counting function points (user view; observable result/self contained)  But  Level of detail (“granularity”) of uses cases widely vary  UML does not give a definite answer for the level of detail for a use case  So  Additional analysis is always a must  Automated “counting” not possible September 18, 2008 ISMA-3 9
  • 10. Analysis of Use Case A Must!  Decomposition needed For example:  1 Use Case “Maintain Customer” Analysis might show there are 4 EP’s: Customer Inquiry & Add, Change, Delete Customer  Composition Needed For example:  5 Use Cases “Validate Customer”, “Validate Article”, “Add Orderline”, “Calculate Shipping Date”, “Confirm Order” Analysis might show that this is 1 EP: “Place an Order” September 18, 2008 ISMA-3 10
  • 11. Use Case Scenarios  Use Case Description may contain several “Scenarios”  A Scenario is a “series of steps that describe the interaction between an actor and an application”  All scenarios for a use case have in common that they support the same basic objective for a user  “Happy Flow”: everything goes well  Alternate Flows: describe what can go wrong and how a user can achieve his goal in a different way  handling an error situation: typically no extra EP  additional steps for actor: could be extra EP if self contained September 18, 2008 ISMA-3 11
  • 12. Include Relationship  Include Relationship: When a specific type of behaviour occurs in several Uses Cases, but is described once as separate Use Case  Include Use Case can be:  Not a separate EP if it is not a self contained process, for example a validation that is documented separately  An EP if it does meet the criteria for an EP for example a drop down list in which the contents of an ILF is presented to make a selection  Magic Word again: Analysis! September 18, 2008 ISMA-3 12
  • 13. Summary Use Cases Analyse Granularity Analyse Scenarios Analyse “Include” Use Cases Analyse “Storyboards” September 18, 2008 ISMA-3 13
  • 14. Class Model Bank account <id> bank account nr.: Num <9> Account type: String <6> Class/Object relationships Amount: Num <15> DepositAmount(Amount): • Association RemitAmount(Amount): ShowBalance():Amount • Aggregation • Composition Or • Generalization Bank account September 18, 2008 ISMA-3 14
  • 15. Objects and Classes  How to identify Data Functions based on the OO Class Model  Class: the definition of the attributes and the operations (“methods”) of similar Objects  Object: concrete or abstract “ things” from the real world  Sounds like Entity (Occurrence) and Entity Type  Approach: Analyse the Class Model using the FPA rules and guidelines for identifying Logical Files in an Entity (Relationship) Model September 18, 2008 ISMA-3 15
  • 16. Guidelines Exclude the Code Data Exclude Association Classes without attributes: (“Key-Key entities”): do not occur Include Association Classes with attributes (“Key-Key with attributes”) Analyse type and optionality of the relationship (dependent/independent) and group September 18, 2008 ISMA-3 16
  • 17. Guidelines Employee 1 Association and Aggregation: 0..* • Mutually a 1  1 Logical File Dependant • Mutually a 0  2 Logical Files • A 0 on one side?  “delete rule” Team (class dependence/independence) 0..1 0..* Player September 18, 2008 ISMA-3 17
  • 18. Guidelines Order Composition 1 • Together always 1 logical file 1..* Order line Motor vehicle Generalization • Separate “discrete” items? Then 2 Logical files Car Truck September 18, 2008 ISMA-3 18
  • 19. FPA applied to UML/Use Cases Guide Guide “FPA applied to UML/Use Cases” www.nesma.nl/english (Free download) office@nesma.nl Adri.Timp@nesma.nl September 18, 2008 ISMA-3 19