SlideShare ist ein Scribd-Unternehmen logo
1 von 39
Downloaden Sie, um offline zu lesen
From Muddling
      to Modelling
in software, economics, engineering, science
instance ?                       class ?

      encrypting ?    coding ?

      modelling ?    muddling ?


    Golf
                                  ABC 123



 model ?                         object ?
Dictionary definition: to code
express (a statement or communication) in an indirect
way

Coding can be viewed as having to deal with
someone else’s representation (program notation
or otherwise)

Dictionary definition: to model
devise a representation, especially a mathematical one
of (a phenomenon or system)

Modelling can be viewed as dealing with a
representation that is fit for purpose
Notation    Semantics ?




    Golf




  ABC 123          ABC 12
                         3
Golf             ABC 123




       ABC 1
            23                   3
                           ABC 12
A familiar setting from
elementary school maths




            ABC 1
                 23              3
                           ABC 12
cars




Observation:
Modelling of abstractions relies on concepts from
pure mathematics, it requires no statistics or
other applied mathematics

                       ABC 1
                            23                      3
                                              ABC 12
Observation: Models are a way of referring
    to useful sets or subsets in a domain
                        Observation:
                        The elements of a set may
                        change over time
                        Definition:
             Golf       A query is a function that
Golf                    returns the content of a set at
cars                    a given point in time
Observation: Only one car with
      reg # ABC 123 can exist at any given time




                          cars with
                            reg #          ABC 123

                          ABC 123
Definition:
An instance is a set
that contains one and
                            ABC 1
only one element at              23
                                                     ABC 12
                                                           3



any given point in time
model
Adding another
level of subsets

                   model




                           instance
         model
            Golf
                            ABC 123
Definition:
Instantiation is a       model
function that returns
an instance
                         model




                                        instance
           model
                        instantiation
              Golf
                             of          ABC 123
model



                                     instantiation
                                of
Observation: If the
intermediate subsets cars
and Golf are not relevant to
                                      instance
our model, we can use an
instantiation function from a
higher level of abstraction             ABC 123
Simplifying the
notation

              subset of




        subset of

           Golf
                                  ABC 123
                    instance of
View points

                subset of




        subset of

              Golf
                        sales            ABC 123

                        person
                      ABC 123 is an instance of Golf
View points

                subset of




                            Golf is an instance of cars
                            engineer
              Golf
                        sales            ABC 123

                        person
                      ABC 123 is an instance of Golf
View points

cars is an instance of objects      software platform




                             Golf is an instance of cars
                             engineer
               Golf
                            sales            ABC 123

                            person
                          ABC 123 is an instance of Golf
engineer
               Golf             Golf
                   is an
                  ABC instance
                        123      of ca
                            is an      rs
                                  insta
                                        nce o
                                              f   Golf
                                                         Communication ?




                      ABC 123
                                              Golf




sales person
Abstractions must be validated via instantiation


                                               Golf

                       abstract

                                        instantiate


                                     ABC 1
                                          23




       engineer                   sales person
Notation    Semantics




    Golf




             ABC 1
  ABC 123         23
No support for multi-level instantiation in any
industry standard modelling/programming language !


                         cars is an instance of objects



                                 engineer
        Golf             Golf is an instance of cars


                               sales person
                         ABC 123 is an instance of Golf
      ABC 123
Pragmatic kludge:                                                                 design time
The Power Type pattern
                                                                      Class : Mammal
Class : AnimalSpecies
                                                                  dateOfBirth
maxAge                    [1]                               [*]




                            configuration
A.S. : Dog
{20 years}
                               time?               Class : Dog
                                           isPoliceDog                      [2]
                                                                                         Class : Cat
                                                                                                              [2]
             A.S. : Cat
             {30 years}                                                     [*]                               [*]




                                           Dog : Jack                              Cat : Coco


 Observation: Today’s
                                           {1/5/03, yes}                           {4/3/07}


                                                           Dog : Susie                          Cat : Peter

 software contains a                                       {1/2/00, no}                         {10/9/98}




 significant amount of
 avoidable, spurious
 complexity                                                                            run time
Some
familiar
subsets




Golf
Notation matters, often less is more

           ?
                          U
                                   not quite
           ?                       correct ...
                          U

           ?                           U
                          U    (            )
Potentially useful semantics


        <=> (     ABC 123   :         ) U ( ... ) U ...
                                Joe




        <=> (     ABC 123   :         ) U ( ... ) U ...
                                Joe




        <=> (               :(
                                         U
                  ABC 123
                                                 )) U ...
                                          Joe
We constantly rely on speculative interpretation


         <=>        airplane or aircraft ?

         <=>        commercial aircraft ?

         <=>        ship or boat ?

         <=>       ferry or cruise ship ?

         <=>       car ferry ?

         <=>       paddler or boat ?
         Observation: It works 80% of the time
Perhaps 80% is not quite good enough
for software specification !

                                    Golf

             abstract

                             instantiate


                          ABC 1
                               23




           Observation: We need less
           speculation and much more
           validation via instantiation !
Is natural language any better?




use case step (end user needs)
Is code any better?




use case step (end user needs)


software design (voodoo)
whizBangTech.createStandardOrder(whizBangTech.createPartner(“Joe”), vwGolf, blue, 1);
code (implementation)
Is code any better?
The code is the design.


                                                                               Yeah, right!


use case step (end user needs)


software design (voodoo)
whizBangTech.createStandardOrder(whizBangTech.createPartner(“Joe”), vwGolf, blue, 1);
code (implementation)
model (specification)




use case step (end user needs)

Automation (generation, execution)

whizBangTech.createStandardOrder(whizBangTech.createPartner(“Joe”), vwGolf, blue, 1);
code (implementation)
model (specification)




use case step (end user needs)




whizBangTech.createStandardOrder(whizBangTech.createPartner(“Joe”), vwGolf, blue, 1));
code (implementation)
Observation: Instantiation links do not adhere to the
simplistic rules of the traditional class/object paradigm ...

                                                   under-specified
                                                 instance of the VWGolf
                                                      product line




                                                 nearly fully-specified instance




                     only here the instance is
                         fully-specified




Observation:
Partial, incremental instantiation is common in product lines
A typical problem
object oriented model A                                                        object oriented model B
         (modelling instantiation via association)                                 (modelling instantiation via specialisation)

                                                                                                               Class : Mammal
Class : AnimalSpecies                              Class : Animal
                                                                             [2]                           dateOfBirth
maxAge                                        dateOfBirth
                               [1]      [*]                                                                                                 problem
                                                                                                                                            no species
                                                                             [*]
                                                                                                                                               data




A.S. : Dog
{20 years}                                                                                  Class : Dog                          Class : Cat
                                                                                    isPoliceDog                      [2]                                 [2]
             A.S. : Cat
             {30 years}                                                                                              [*]                                 [*]




                                                                                    Dog : Jack                             Cat : Coco
 Animal : Jack                       Animal : Coco                                  {1/5/03, yes}                          {4/3/07}
 {1/5/03}                            {4/3/07}

                                                                                                    Dog : Susie                         Cat : Peter
              Animal : Susie                                Animal : Peter                          {1/2/00, no}                        {10/9/98}
              {1/2/00}                                      {10/9/98}




     problem
 no species-specific
   instance data                        problem
                                     precision of links
object oriented model C
                                     (Power Type pattern)

                                                                                            Class : Mammal
Class : AnimalSpecies
                                                                                        dateOfBirth
maxAge                    [1]                                                     [*]




                                                 problem
                                              Fragmentation of
                                                  concepts
A.S. : Dog
{20 years}                                                               Class : Dog                          Class : Cat
                                                                 isPoliceDog                      [2]                              [2]
             A.S. : Cat
             {30 years}                                                                           [*]                              [*]



                                          problem
                                     Spurious complexity

                                                                 Dog : Jack                             Cat : Coco
                                                                 {1/5/03, yes}                          {4/3/07}


                                                                                 Dog : Susie                         Cat : Peter
                                                                                 {1/2/00, no}                        {10/9/98}
object oriented model C                                            design time
                                     (Power Type pattern)

                                                                                       Class : Mammal
Class : AnimalSpecies
                                                                                   dateOfBirth
maxAge                    [1]                                                [*]




                            configuration
A.S. : Dog
{20 years}
                               time?                                Class : Dog
                                                            isPoliceDog                      [2]
                                                                                                          Class : Cat
                                                                                                                               [2]
             A.S. : Cat
             {30 years}                                                                      [*]                               [*]




                                                            Dog : Jack                              Cat : Coco
                                                            {1/5/03, yes}                           {4/3/07}


                                                                            Dog : Susie                          Cat : Peter
                                                                            {1/2/00, no}                         {10/9/98}




                                                                                                        run time
The solution
multi-level modelling                                           Vertex : AnimalSpecies                               system
 precise instantiation semantics
    role based binding times
                                                              maxAge
                                                              isAbstract : no                                    design time
           modularity
           simplicity



          instantiation ...
                                                               AnimalSpecies : Mammal                                species
establishes connections between
 two levels of abstraction that
    define different binding times
                                                               maxAge : 150
                                                               isAbstract : yes
                                                               dateOfBirth
                                                                                                                configuration
                                                                                                                       time
generalisation/specialisation ...
expresses the commonalities and                                                                                      a consistent instantiation
variabilities between the concepts                                                                                       mechanism at all levels
  relevant to a specific binding time                                                                                   and unlimited levels of
                                        AnimalSpecies : Dog                        AnimalSpecies : Cat
                                                                                                                            instantiation
                                       maxAge : 20                          [2]   maxAge : 30             [2]
                                       isAbstract : no                            isAbstract : no
                                       isPoliceDog                          [*]                           [*]




                                                                                                         treatment time
              Dog : Jack                       Dog : Susie                                 Cat : Coco                    Cat : Peter
      dateOfBirth : 1/5/03             dateOfBirth : 1/2/00                       dateOfBirth : 4/3/07           dateOfBirth : 10/9/98
      isPoliceDog : yes                isPoliceDog : no
More Information

The role of artefacts           tiny.cc/artefacts
Model Oriented Domain Analysis tiny.cc/domainanalysis
Multi-Level Modelling           tiny.cc/gmodel
                                tiny.cc/sematpos_jbe,
SEMAT
                                tiny.cc/sematslides_jbe
Denotational Semantics          tiny.cc/densem


                   Thank you!

                    Jorn Bettin
                 jbe @ sofismo.ch

Weitere ähnliche Inhalte

Andere mochten auch

Nzcom writing for the journal.pptx with sound
Nzcom writing for the journal.pptx with soundNzcom writing for the journal.pptx with sound
Nzcom writing for the journal.pptx with soundNZCollegeofMidwives
 
The nature of management, managers and their
The nature of management, managers and theirThe nature of management, managers and their
The nature of management, managers and theirMuXamil Haider
 
Applying a public policy lens to environmental decision making
Applying a public policy lens to environmental decision makingApplying a public policy lens to environmental decision making
Applying a public policy lens to environmental decision makingMegan Evans
 
Dissertation in Politics - US Foreign Policy Decision Making in Iraq
Dissertation in Politics - US Foreign Policy Decision Making in IraqDissertation in Politics - US Foreign Policy Decision Making in Iraq
Dissertation in Politics - US Foreign Policy Decision Making in IraqVijay Luhan
 
Turning Shared Decision Making Policy into a Reality: Can We Really Improve t...
Turning Shared Decision Making Policy into a Reality: Can We Really Improve t...Turning Shared Decision Making Policy into a Reality: Can We Really Improve t...
Turning Shared Decision Making Policy into a Reality: Can We Really Improve t...Informed Medical Decisions Foundation
 
Charles E. Lindblom: The science of muddling through.
Charles E. Lindblom: The science of muddling through. Charles E. Lindblom: The science of muddling through.
Charles E. Lindblom: The science of muddling through. Chalitha Priyadarshani
 
Ppt science muddling_critique(joseph)
Ppt science muddling_critique(joseph)Ppt science muddling_critique(joseph)
Ppt science muddling_critique(joseph)nida19
 
Decision making theory and process
Decision making theory and processDecision making theory and process
Decision making theory and processArdha
 
Decision making in administration
Decision making in administrationDecision making in administration
Decision making in administrationtaratoot
 
Public Policy Philippines
Public Policy PhilippinesPublic Policy Philippines
Public Policy PhilippinesKaren S.
 
Incremental model presentation
Incremental model presentationIncremental model presentation
Incremental model presentationNiat Murad
 
Models of policy making and the concept of power in policy
Models of policy making and the concept of power in policyModels of policy making and the concept of power in policy
Models of policy making and the concept of power in policyNayyar Kazmi
 
21. Decision making model
21. Decision making model21. Decision making model
21. Decision making modelNBHS
 
Decision Making PowerPoint PPT Content Modern Sample
Decision Making PowerPoint PPT Content Modern SampleDecision Making PowerPoint PPT Content Modern Sample
Decision Making PowerPoint PPT Content Modern SampleAndrew Schwartz
 
Decision Making Process
Decision Making ProcessDecision Making Process
Decision Making ProcessAima Masood
 
Decision Making Process
Decision Making ProcessDecision Making Process
Decision Making ProcessJolene Rennie
 

Andere mochten auch (20)

Nzcom writing for the journal.pptx with sound
Nzcom writing for the journal.pptx with soundNzcom writing for the journal.pptx with sound
Nzcom writing for the journal.pptx with sound
 
The nature of management, managers and their
The nature of management, managers and theirThe nature of management, managers and their
The nature of management, managers and their
 
Applying a public policy lens to environmental decision making
Applying a public policy lens to environmental decision makingApplying a public policy lens to environmental decision making
Applying a public policy lens to environmental decision making
 
Dissertation in Politics - US Foreign Policy Decision Making in Iraq
Dissertation in Politics - US Foreign Policy Decision Making in IraqDissertation in Politics - US Foreign Policy Decision Making in Iraq
Dissertation in Politics - US Foreign Policy Decision Making in Iraq
 
Turning Shared Decision Making Policy into a Reality: Can We Really Improve t...
Turning Shared Decision Making Policy into a Reality: Can We Really Improve t...Turning Shared Decision Making Policy into a Reality: Can We Really Improve t...
Turning Shared Decision Making Policy into a Reality: Can We Really Improve t...
 
03 conceptual framework for policy making
03 conceptual framework for policy making03 conceptual framework for policy making
03 conceptual framework for policy making
 
02 Policy making models - Approaches
02 Policy making models - Approaches02 Policy making models - Approaches
02 Policy making models - Approaches
 
Charles E. Lindblom: The science of muddling through.
Charles E. Lindblom: The science of muddling through. Charles E. Lindblom: The science of muddling through.
Charles E. Lindblom: The science of muddling through.
 
Ppt science muddling_critique(joseph)
Ppt science muddling_critique(joseph)Ppt science muddling_critique(joseph)
Ppt science muddling_critique(joseph)
 
Decision making theory and process
Decision making theory and processDecision making theory and process
Decision making theory and process
 
Decision making in administration
Decision making in administrationDecision making in administration
Decision making in administration
 
Public Policy Philippines
Public Policy PhilippinesPublic Policy Philippines
Public Policy Philippines
 
Incremental model presentation
Incremental model presentationIncremental model presentation
Incremental model presentation
 
Models of policy making and the concept of power in policy
Models of policy making and the concept of power in policyModels of policy making and the concept of power in policy
Models of policy making and the concept of power in policy
 
Decision making
Decision makingDecision making
Decision making
 
21. Decision making model
21. Decision making model21. Decision making model
21. Decision making model
 
Decision Making PowerPoint PPT Content Modern Sample
Decision Making PowerPoint PPT Content Modern SampleDecision Making PowerPoint PPT Content Modern Sample
Decision Making PowerPoint PPT Content Modern Sample
 
Decision Making Process
Decision Making ProcessDecision Making Process
Decision Making Process
 
Decision Making Process
Decision Making ProcessDecision Making Process
Decision Making Process
 
Decision making
Decision makingDecision making
Decision making
 

Mehr von Jorn Bettin

From collective insanity to organisational learning 2019 03 11 brisbane bus...
From collective insanity to organisational learning   2019 03 11 brisbane bus...From collective insanity to organisational learning   2019 03 11 brisbane bus...
From collective insanity to organisational learning 2019 03 11 brisbane bus...Jorn Bettin
 
From artificially intelligent systems towards real thinking tools and human s...
From artificially intelligent systems towards real thinking tools and human s...From artificially intelligent systems towards real thinking tools and human s...
From artificially intelligent systems towards real thinking tools and human s...Jorn Bettin
 
From collective insanity to organisational learning
From collective insanity to organisational learningFrom collective insanity to organisational learning
From collective insanity to organisational learningJorn Bettin
 
From artificially intelligent systems towards real thinking tools and human s...
From artificially intelligent systems towards real thinking tools and human s...From artificially intelligent systems towards real thinking tools and human s...
From artificially intelligent systems towards real thinking tools and human s...Jorn Bettin
 
From project to product mindset and onwards to product platform architectures
From project to product mindset and onwards to product platform architecturesFrom project to product mindset and onwards to product platform architectures
From project to product mindset and onwards to product platform architecturesJorn Bettin
 
Semantic Search – Do you know what I mean?
Semantic Search – Do you know what I mean?Semantic Search – Do you know what I mean?
Semantic Search – Do you know what I mean?Jorn Bettin
 
The Story of Life is Language
The Story of Life is LanguageThe Story of Life is Language
The Story of Life is LanguageJorn Bettin
 
Curation of information and knowledge
Curation of information and knowledgeCuration of information and knowledge
Curation of information and knowledgeJorn Bettin
 
Advanced modelling made simple with the Gmodel metalanguage
Advanced modelling made simple with the Gmodel metalanguageAdvanced modelling made simple with the Gmodel metalanguage
Advanced modelling made simple with the Gmodel metalanguageJorn Bettin
 
Model Oriented Domain Analysis - Industrialized Software Specifications
Model Oriented Domain Analysis - Industrialized Software SpecificationsModel Oriented Domain Analysis - Industrialized Software Specifications
Model Oriented Domain Analysis - Industrialized Software SpecificationsJorn Bettin
 

Mehr von Jorn Bettin (10)

From collective insanity to organisational learning 2019 03 11 brisbane bus...
From collective insanity to organisational learning   2019 03 11 brisbane bus...From collective insanity to organisational learning   2019 03 11 brisbane bus...
From collective insanity to organisational learning 2019 03 11 brisbane bus...
 
From artificially intelligent systems towards real thinking tools and human s...
From artificially intelligent systems towards real thinking tools and human s...From artificially intelligent systems towards real thinking tools and human s...
From artificially intelligent systems towards real thinking tools and human s...
 
From collective insanity to organisational learning
From collective insanity to organisational learningFrom collective insanity to organisational learning
From collective insanity to organisational learning
 
From artificially intelligent systems towards real thinking tools and human s...
From artificially intelligent systems towards real thinking tools and human s...From artificially intelligent systems towards real thinking tools and human s...
From artificially intelligent systems towards real thinking tools and human s...
 
From project to product mindset and onwards to product platform architectures
From project to product mindset and onwards to product platform architecturesFrom project to product mindset and onwards to product platform architectures
From project to product mindset and onwards to product platform architectures
 
Semantic Search – Do you know what I mean?
Semantic Search – Do you know what I mean?Semantic Search – Do you know what I mean?
Semantic Search – Do you know what I mean?
 
The Story of Life is Language
The Story of Life is LanguageThe Story of Life is Language
The Story of Life is Language
 
Curation of information and knowledge
Curation of information and knowledgeCuration of information and knowledge
Curation of information and knowledge
 
Advanced modelling made simple with the Gmodel metalanguage
Advanced modelling made simple with the Gmodel metalanguageAdvanced modelling made simple with the Gmodel metalanguage
Advanced modelling made simple with the Gmodel metalanguage
 
Model Oriented Domain Analysis - Industrialized Software Specifications
Model Oriented Domain Analysis - Industrialized Software SpecificationsModel Oriented Domain Analysis - Industrialized Software Specifications
Model Oriented Domain Analysis - Industrialized Software Specifications
 

Kürzlich hochgeladen

Puri CALL GIRL ❤️8084732287❤️ CALL GIRLS IN ESCORT SERVICE WE ARW PROVIDING
Puri CALL GIRL ❤️8084732287❤️ CALL GIRLS IN ESCORT SERVICE WE ARW PROVIDINGPuri CALL GIRL ❤️8084732287❤️ CALL GIRLS IN ESCORT SERVICE WE ARW PROVIDING
Puri CALL GIRL ❤️8084732287❤️ CALL GIRLS IN ESCORT SERVICE WE ARW PROVIDINGpriyakumari801827
 
Berhampur Call Girl Just Call 8084732287 Top Class Call Girl Service Available
Berhampur Call Girl Just Call 8084732287 Top Class Call Girl Service AvailableBerhampur Call Girl Just Call 8084732287 Top Class Call Girl Service Available
Berhampur Call Girl Just Call 8084732287 Top Class Call Girl Service Availablepr788182
 
Paradip CALL GIRL❤7091819311❤CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDING
Paradip CALL GIRL❤7091819311❤CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDINGParadip CALL GIRL❤7091819311❤CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDING
Paradip CALL GIRL❤7091819311❤CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDINGpr788182
 
Chennai Call Gril 80022//12248 Only For Sex And High Profile Best Gril Sex Av...
Chennai Call Gril 80022//12248 Only For Sex And High Profile Best Gril Sex Av...Chennai Call Gril 80022//12248 Only For Sex And High Profile Best Gril Sex Av...
Chennai Call Gril 80022//12248 Only For Sex And High Profile Best Gril Sex Av...Puja Sharma
 
Berhampur CALL GIRL❤7091819311❤CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDING
Berhampur CALL GIRL❤7091819311❤CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDINGBerhampur CALL GIRL❤7091819311❤CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDING
Berhampur CALL GIRL❤7091819311❤CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDINGpr788182
 
KALYANI 💋 Call Girl 9827461493 Call Girls in Escort service book now
KALYANI 💋 Call Girl 9827461493 Call Girls in  Escort service book nowKALYANI 💋 Call Girl 9827461493 Call Girls in  Escort service book now
KALYANI 💋 Call Girl 9827461493 Call Girls in Escort service book nowkapoorjyoti4444
 
Challenges and Opportunities: A Qualitative Study on Tax Compliance in Pakistan
Challenges and Opportunities: A Qualitative Study on Tax Compliance in PakistanChallenges and Opportunities: A Qualitative Study on Tax Compliance in Pakistan
Challenges and Opportunities: A Qualitative Study on Tax Compliance in Pakistanvineshkumarsajnani12
 
Lundin Gold - Q1 2024 Conference Call Presentation (Revised)
Lundin Gold - Q1 2024 Conference Call Presentation (Revised)Lundin Gold - Q1 2024 Conference Call Presentation (Revised)
Lundin Gold - Q1 2024 Conference Call Presentation (Revised)Adnet Communications
 
Berhampur 70918*19311 CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDING
Berhampur 70918*19311 CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDINGBerhampur 70918*19311 CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDING
Berhampur 70918*19311 CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDINGpr788182
 
The Abortion pills for sale in Qatar@Doha [+27737758557] []Deira Dubai Kuwait
The Abortion pills for sale in Qatar@Doha [+27737758557] []Deira Dubai KuwaitThe Abortion pills for sale in Qatar@Doha [+27737758557] []Deira Dubai Kuwait
The Abortion pills for sale in Qatar@Doha [+27737758557] []Deira Dubai Kuwaitdaisycvs
 
Marel Q1 2024 Investor Presentation from May 8, 2024
Marel Q1 2024 Investor Presentation from May 8, 2024Marel Q1 2024 Investor Presentation from May 8, 2024
Marel Q1 2024 Investor Presentation from May 8, 2024Marel
 
Falcon Invoice Discounting: Unlock Your Business Potential
Falcon Invoice Discounting: Unlock Your Business PotentialFalcon Invoice Discounting: Unlock Your Business Potential
Falcon Invoice Discounting: Unlock Your Business PotentialFalcon investment
 
Phases of Negotiation .pptx
 Phases of Negotiation .pptx Phases of Negotiation .pptx
Phases of Negotiation .pptxnandhinijagan9867
 
Unveiling Falcon Invoice Discounting: Leading the Way as India's Premier Bill...
Unveiling Falcon Invoice Discounting: Leading the Way as India's Premier Bill...Unveiling Falcon Invoice Discounting: Leading the Way as India's Premier Bill...
Unveiling Falcon Invoice Discounting: Leading the Way as India's Premier Bill...Falcon Invoice Discounting
 
GUWAHATI 💋 Call Girl 9827461493 Call Girls in Escort service book now
GUWAHATI 💋 Call Girl 9827461493 Call Girls in  Escort service book nowGUWAHATI 💋 Call Girl 9827461493 Call Girls in  Escort service book now
GUWAHATI 💋 Call Girl 9827461493 Call Girls in Escort service book nowkapoorjyoti4444
 
Nanded Call Girl Just Call 8084732287 Top Class Call Girl Service Available
Nanded Call Girl Just Call 8084732287 Top Class Call Girl Service AvailableNanded Call Girl Just Call 8084732287 Top Class Call Girl Service Available
Nanded Call Girl Just Call 8084732287 Top Class Call Girl Service Availablepr788182
 
Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...
Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...
Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...daisycvs
 
Falcon Invoice Discounting: The best investment platform in india for investors
Falcon Invoice Discounting: The best investment platform in india for investorsFalcon Invoice Discounting: The best investment platform in india for investors
Falcon Invoice Discounting: The best investment platform in india for investorsFalcon Invoice Discounting
 
PHX May 2024 Corporate Presentation Final
PHX May 2024 Corporate Presentation FinalPHX May 2024 Corporate Presentation Final
PHX May 2024 Corporate Presentation FinalPanhandleOilandGas
 
Arti Languages Pre Seed Teaser Deck 2024.pdf
Arti Languages Pre Seed Teaser Deck 2024.pdfArti Languages Pre Seed Teaser Deck 2024.pdf
Arti Languages Pre Seed Teaser Deck 2024.pdfwill854175
 

Kürzlich hochgeladen (20)

Puri CALL GIRL ❤️8084732287❤️ CALL GIRLS IN ESCORT SERVICE WE ARW PROVIDING
Puri CALL GIRL ❤️8084732287❤️ CALL GIRLS IN ESCORT SERVICE WE ARW PROVIDINGPuri CALL GIRL ❤️8084732287❤️ CALL GIRLS IN ESCORT SERVICE WE ARW PROVIDING
Puri CALL GIRL ❤️8084732287❤️ CALL GIRLS IN ESCORT SERVICE WE ARW PROVIDING
 
Berhampur Call Girl Just Call 8084732287 Top Class Call Girl Service Available
Berhampur Call Girl Just Call 8084732287 Top Class Call Girl Service AvailableBerhampur Call Girl Just Call 8084732287 Top Class Call Girl Service Available
Berhampur Call Girl Just Call 8084732287 Top Class Call Girl Service Available
 
Paradip CALL GIRL❤7091819311❤CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDING
Paradip CALL GIRL❤7091819311❤CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDINGParadip CALL GIRL❤7091819311❤CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDING
Paradip CALL GIRL❤7091819311❤CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDING
 
Chennai Call Gril 80022//12248 Only For Sex And High Profile Best Gril Sex Av...
Chennai Call Gril 80022//12248 Only For Sex And High Profile Best Gril Sex Av...Chennai Call Gril 80022//12248 Only For Sex And High Profile Best Gril Sex Av...
Chennai Call Gril 80022//12248 Only For Sex And High Profile Best Gril Sex Av...
 
Berhampur CALL GIRL❤7091819311❤CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDING
Berhampur CALL GIRL❤7091819311❤CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDINGBerhampur CALL GIRL❤7091819311❤CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDING
Berhampur CALL GIRL❤7091819311❤CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDING
 
KALYANI 💋 Call Girl 9827461493 Call Girls in Escort service book now
KALYANI 💋 Call Girl 9827461493 Call Girls in  Escort service book nowKALYANI 💋 Call Girl 9827461493 Call Girls in  Escort service book now
KALYANI 💋 Call Girl 9827461493 Call Girls in Escort service book now
 
Challenges and Opportunities: A Qualitative Study on Tax Compliance in Pakistan
Challenges and Opportunities: A Qualitative Study on Tax Compliance in PakistanChallenges and Opportunities: A Qualitative Study on Tax Compliance in Pakistan
Challenges and Opportunities: A Qualitative Study on Tax Compliance in Pakistan
 
Lundin Gold - Q1 2024 Conference Call Presentation (Revised)
Lundin Gold - Q1 2024 Conference Call Presentation (Revised)Lundin Gold - Q1 2024 Conference Call Presentation (Revised)
Lundin Gold - Q1 2024 Conference Call Presentation (Revised)
 
Berhampur 70918*19311 CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDING
Berhampur 70918*19311 CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDINGBerhampur 70918*19311 CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDING
Berhampur 70918*19311 CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDING
 
The Abortion pills for sale in Qatar@Doha [+27737758557] []Deira Dubai Kuwait
The Abortion pills for sale in Qatar@Doha [+27737758557] []Deira Dubai KuwaitThe Abortion pills for sale in Qatar@Doha [+27737758557] []Deira Dubai Kuwait
The Abortion pills for sale in Qatar@Doha [+27737758557] []Deira Dubai Kuwait
 
Marel Q1 2024 Investor Presentation from May 8, 2024
Marel Q1 2024 Investor Presentation from May 8, 2024Marel Q1 2024 Investor Presentation from May 8, 2024
Marel Q1 2024 Investor Presentation from May 8, 2024
 
Falcon Invoice Discounting: Unlock Your Business Potential
Falcon Invoice Discounting: Unlock Your Business PotentialFalcon Invoice Discounting: Unlock Your Business Potential
Falcon Invoice Discounting: Unlock Your Business Potential
 
Phases of Negotiation .pptx
 Phases of Negotiation .pptx Phases of Negotiation .pptx
Phases of Negotiation .pptx
 
Unveiling Falcon Invoice Discounting: Leading the Way as India's Premier Bill...
Unveiling Falcon Invoice Discounting: Leading the Way as India's Premier Bill...Unveiling Falcon Invoice Discounting: Leading the Way as India's Premier Bill...
Unveiling Falcon Invoice Discounting: Leading the Way as India's Premier Bill...
 
GUWAHATI 💋 Call Girl 9827461493 Call Girls in Escort service book now
GUWAHATI 💋 Call Girl 9827461493 Call Girls in  Escort service book nowGUWAHATI 💋 Call Girl 9827461493 Call Girls in  Escort service book now
GUWAHATI 💋 Call Girl 9827461493 Call Girls in Escort service book now
 
Nanded Call Girl Just Call 8084732287 Top Class Call Girl Service Available
Nanded Call Girl Just Call 8084732287 Top Class Call Girl Service AvailableNanded Call Girl Just Call 8084732287 Top Class Call Girl Service Available
Nanded Call Girl Just Call 8084732287 Top Class Call Girl Service Available
 
Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...
Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...
Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...
 
Falcon Invoice Discounting: The best investment platform in india for investors
Falcon Invoice Discounting: The best investment platform in india for investorsFalcon Invoice Discounting: The best investment platform in india for investors
Falcon Invoice Discounting: The best investment platform in india for investors
 
PHX May 2024 Corporate Presentation Final
PHX May 2024 Corporate Presentation FinalPHX May 2024 Corporate Presentation Final
PHX May 2024 Corporate Presentation Final
 
Arti Languages Pre Seed Teaser Deck 2024.pdf
Arti Languages Pre Seed Teaser Deck 2024.pdfArti Languages Pre Seed Teaser Deck 2024.pdf
Arti Languages Pre Seed Teaser Deck 2024.pdf
 

From Muddling to Modelling

  • 1. From Muddling to Modelling in software, economics, engineering, science
  • 2. instance ? class ? encrypting ? coding ? modelling ? muddling ? Golf ABC 123 model ? object ?
  • 3. Dictionary definition: to code express (a statement or communication) in an indirect way Coding can be viewed as having to deal with someone else’s representation (program notation or otherwise) Dictionary definition: to model devise a representation, especially a mathematical one of (a phenomenon or system) Modelling can be viewed as dealing with a representation that is fit for purpose
  • 4. Notation Semantics ? Golf ABC 123 ABC 12 3
  • 5. Golf ABC 123 ABC 1 23 3 ABC 12
  • 6. A familiar setting from elementary school maths ABC 1 23 3 ABC 12
  • 7. cars Observation: Modelling of abstractions relies on concepts from pure mathematics, it requires no statistics or other applied mathematics ABC 1 23 3 ABC 12
  • 8. Observation: Models are a way of referring to useful sets or subsets in a domain Observation: The elements of a set may change over time Definition: Golf A query is a function that Golf returns the content of a set at cars a given point in time
  • 9. Observation: Only one car with reg # ABC 123 can exist at any given time cars with reg # ABC 123 ABC 123 Definition: An instance is a set that contains one and ABC 1 only one element at 23 ABC 12 3 any given point in time
  • 10. model Adding another level of subsets model instance model Golf ABC 123
  • 11. Definition: Instantiation is a model function that returns an instance model instance model instantiation Golf of ABC 123
  • 12. model instantiation of Observation: If the intermediate subsets cars and Golf are not relevant to instance our model, we can use an instantiation function from a higher level of abstraction ABC 123
  • 13. Simplifying the notation subset of subset of Golf ABC 123 instance of
  • 14. View points subset of subset of Golf sales ABC 123 person ABC 123 is an instance of Golf
  • 15. View points subset of Golf is an instance of cars engineer Golf sales ABC 123 person ABC 123 is an instance of Golf
  • 16. View points cars is an instance of objects software platform Golf is an instance of cars engineer Golf sales ABC 123 person ABC 123 is an instance of Golf
  • 17. engineer Golf Golf is an ABC instance 123 of ca is an rs insta nce o f Golf Communication ? ABC 123 Golf sales person
  • 18. Abstractions must be validated via instantiation Golf abstract instantiate ABC 1 23 engineer sales person
  • 19. Notation Semantics Golf ABC 1 ABC 123 23
  • 20. No support for multi-level instantiation in any industry standard modelling/programming language ! cars is an instance of objects engineer Golf Golf is an instance of cars sales person ABC 123 is an instance of Golf ABC 123
  • 21. Pragmatic kludge: design time The Power Type pattern Class : Mammal Class : AnimalSpecies dateOfBirth maxAge [1] [*] configuration A.S. : Dog {20 years} time? Class : Dog isPoliceDog [2] Class : Cat [2] A.S. : Cat {30 years} [*] [*] Dog : Jack Cat : Coco Observation: Today’s {1/5/03, yes} {4/3/07} Dog : Susie Cat : Peter software contains a {1/2/00, no} {10/9/98} significant amount of avoidable, spurious complexity run time
  • 23. Notation matters, often less is more ? U not quite ? correct ... U ? U U ( )
  • 24. Potentially useful semantics <=> ( ABC 123 : ) U ( ... ) U ... Joe <=> ( ABC 123 : ) U ( ... ) U ... Joe <=> ( :( U ABC 123 )) U ... Joe
  • 25. We constantly rely on speculative interpretation <=> airplane or aircraft ? <=> commercial aircraft ? <=> ship or boat ? <=> ferry or cruise ship ? <=> car ferry ? <=> paddler or boat ? Observation: It works 80% of the time
  • 26. Perhaps 80% is not quite good enough for software specification ! Golf abstract instantiate ABC 1 23 Observation: We need less speculation and much more validation via instantiation !
  • 27. Is natural language any better? use case step (end user needs)
  • 28. Is code any better? use case step (end user needs) software design (voodoo) whizBangTech.createStandardOrder(whizBangTech.createPartner(“Joe”), vwGolf, blue, 1); code (implementation)
  • 29. Is code any better? The code is the design. Yeah, right! use case step (end user needs) software design (voodoo) whizBangTech.createStandardOrder(whizBangTech.createPartner(“Joe”), vwGolf, blue, 1); code (implementation)
  • 30. model (specification) use case step (end user needs) Automation (generation, execution) whizBangTech.createStandardOrder(whizBangTech.createPartner(“Joe”), vwGolf, blue, 1); code (implementation)
  • 31. model (specification) use case step (end user needs) whizBangTech.createStandardOrder(whizBangTech.createPartner(“Joe”), vwGolf, blue, 1)); code (implementation)
  • 32. Observation: Instantiation links do not adhere to the simplistic rules of the traditional class/object paradigm ... under-specified instance of the VWGolf product line nearly fully-specified instance only here the instance is fully-specified Observation: Partial, incremental instantiation is common in product lines
  • 34. object oriented model A object oriented model B (modelling instantiation via association) (modelling instantiation via specialisation) Class : Mammal Class : AnimalSpecies Class : Animal [2] dateOfBirth maxAge dateOfBirth [1] [*] problem no species [*] data A.S. : Dog {20 years} Class : Dog Class : Cat isPoliceDog [2] [2] A.S. : Cat {30 years} [*] [*] Dog : Jack Cat : Coco Animal : Jack Animal : Coco {1/5/03, yes} {4/3/07} {1/5/03} {4/3/07} Dog : Susie Cat : Peter Animal : Susie Animal : Peter {1/2/00, no} {10/9/98} {1/2/00} {10/9/98} problem no species-specific instance data problem precision of links
  • 35. object oriented model C (Power Type pattern) Class : Mammal Class : AnimalSpecies dateOfBirth maxAge [1] [*] problem Fragmentation of concepts A.S. : Dog {20 years} Class : Dog Class : Cat isPoliceDog [2] [2] A.S. : Cat {30 years} [*] [*] problem Spurious complexity Dog : Jack Cat : Coco {1/5/03, yes} {4/3/07} Dog : Susie Cat : Peter {1/2/00, no} {10/9/98}
  • 36. object oriented model C design time (Power Type pattern) Class : Mammal Class : AnimalSpecies dateOfBirth maxAge [1] [*] configuration A.S. : Dog {20 years} time? Class : Dog isPoliceDog [2] Class : Cat [2] A.S. : Cat {30 years} [*] [*] Dog : Jack Cat : Coco {1/5/03, yes} {4/3/07} Dog : Susie Cat : Peter {1/2/00, no} {10/9/98} run time
  • 38. multi-level modelling Vertex : AnimalSpecies system precise instantiation semantics role based binding times maxAge isAbstract : no design time modularity simplicity instantiation ... AnimalSpecies : Mammal species establishes connections between two levels of abstraction that define different binding times maxAge : 150 isAbstract : yes dateOfBirth configuration time generalisation/specialisation ... expresses the commonalities and a consistent instantiation variabilities between the concepts mechanism at all levels relevant to a specific binding time and unlimited levels of AnimalSpecies : Dog AnimalSpecies : Cat instantiation maxAge : 20 [2] maxAge : 30 [2] isAbstract : no isAbstract : no isPoliceDog [*] [*] treatment time Dog : Jack Dog : Susie Cat : Coco Cat : Peter dateOfBirth : 1/5/03 dateOfBirth : 1/2/00 dateOfBirth : 4/3/07 dateOfBirth : 10/9/98 isPoliceDog : yes isPoliceDog : no
  • 39. More Information The role of artefacts tiny.cc/artefacts Model Oriented Domain Analysis tiny.cc/domainanalysis Multi-Level Modelling tiny.cc/gmodel tiny.cc/sematpos_jbe, SEMAT tiny.cc/sematslides_jbe Denotational Semantics tiny.cc/densem Thank you! Jorn Bettin jbe @ sofismo.ch