SlideShare ist ein Scribd-Unternehmen logo
1 von 21
Downloaden Sie, um offline zu lesen
Artefacts
Bringing Clarity & Simplicity to Modelling

           The Fourth KISS Workshop
           17 November 2009 @ ASE
             Auckland, New Zealand
   www.industrialized-software.org/kiss-ase-2009
Are use cases the only legitimate software
    requirements artefacts?




2                  Software requirements artefacts
Observations
    •   We pack non-functional requirements into supplementary
        requirements documents

    •   Domain experts submit arbitrary specifications in various
        formats

    •   We make extensive use of emails, wikis, and other “web 2.0”
        artefacts

    •   Additionally we rely on verbal communication

        ★   saying A (nice and short)

        ★   actually meaning B
            (the fuzzy story in the back of our head)

        ★   and being interpreted as having said C
            (the minimum design that can be passed off as meeting
            requirement A)




3                         Software requirements artefacts
Are classes and interfaces the only
    legitimate software specification artefacts?




4                   Software specification artefacts
Observations
    •   Architecture and technology decisions are recorded in
        software design documents

    •   MDD practitioners think it’s cool to put some decisions into
        models

    •   When the decision binding time is late we invent ad-hoc
        configuration files

    •   When the decision binding time is even later we stuff
        specifications into databases




5                         Software specification artefacts
Are business objects the only legitimate
    application data artefacts?




6                         Application data artefacts
Observations
    •   When the number of objects is large we translate objects
        into database rows

    •   When the number of objects is small we translate objects
        into files (XML, ...)

    •   We reluctantly deal with spreadsheets created by domain
        experts

    •   We acknowledge and deal with the existence of links
        between business objects




7                                 Application data artefacts
Are we any good at managing the
    dependencies between all these artefacts?




8       Managing dependencies between artefacts
Observations
    •   Commercial tools for managing artefacts are a band aid at
        best

    •   We treat artefacts differently depending on their
        technological format

    •   We make naive assumptions about the way artefacts
        change over time

        ★   As if version control tools provide a satisfactory answer

        ★   As if artefacts can’t have different levels of completeness

        ★   As if the structure of an artefact does not vary over time

        ★   As if it is okay to manually ensure referential integrity
            between artefacts




9        Managing dependencies between artefacts
What is an artefact?
     •   An artefact is a container of information

     •   An artefact is instantiated by a specific actor
         (human or a system)

     •   An artefact is consumed by at least one actor
         (human or system)

     •   An artefact represents a natural unit of work
         (for the instantiating and consuming actors)

     •   An artefact may contain links to other artefacts

     •   An artefact has a state and a lifecycle




10                                                   A basic definition
Candidate Artefacts
     •   Emails?

     •   Documents?

     •   Models?

     •   Files?

     •   ...




11                 How do we measure artefact quality?
Observations
            •   Reducing the granularity of artefacts shifts complexity to the
                dependency graph between artefacts

            •   Increasing the granularity of artefacts shifts complexity into
                the individual artefacts

            •   The dependency graph between artefacts must be
                considered as an artefact as well

            •   The granularity of artefacts must be optimised with respect
                to overall complexity, it must not be dictated by technology

            •   Artefacts that are connected by a circuit of links do not
                qualify as a modular design

            •   Artefact value tends towards zero if the links between
                artefacts are unreliable




12   Complexity and artefact modularity are closely related
Models
     •   When does a model start to be too big?

     •   When does a model start to be too small?

     •   Is there any difference between model and code?

     •   Should we apply version control to individual model
         elements, or to a larger set of related model elements, or to
         sets of sets of model elements?

     •   How do we handle links between models?

     •   A model is supposed to be a representation, especially a
         mathematical one of (a phenomenon or system). How many
         modelling languages are enough? Which ones lead to good
         representations?




13                                     Modelling or Muddling?
Formal artefacts
     •   A formal artefact has all characteristics of an artefact

     •   A formal artefact is instantiated with the help of a software
         tool that enforces specific instantiation semantics

     •   The information contained in a formal artefact can be easily
         processed by software tools

     •   Referential integrity between formal artefacts is preserved
         at all times with the help of a software tool

     •   No circular links between formal artefacts are allowed at
         any time

     •   The lifecycle of a formal artefact is described in a state
         machine

     •   The events consumed and produced by the artefact state
         machine are available for processing in software tools




14                             A practically useful definition
Disqualified candidate formal artefacts
     •   Emails (contained information can’t easily be processed)

     •   Text documents (a set of text documents may contain
         circular references)

     •   UML models (referential integrity between UML models is
         usually not guaranteed)

     •   Database rows (granularity is too small)

     •   Source code files (referential integrity is not guaranteed at
         all times)

     •   In-memory objects (artefact boundaries are not well defined)

     •   ...




15                             Formal artefacts are still rare!
The future
     •   Tools for incrementally transforming informal artefacts into
         formal artefacts

     •   Collaboration based on formal artefacts

     •   Transformation & generation technologies used to integrate
         formal artefacts with legacy systems

     •   Systems conceived from the ground up in terms of
         collaborating formal artefact state machines

     •   Collaborating software tools that implement complementary
         partial semantics for formal artefacts




16                 Formal artefacts have huge potential
Today
     •   Manual formalisation of artefacts

     •   Formal artefacts are used in specialised domains

     •   Transformation & generation technologies are already used
         to integrate formal artefacts with legacy systems

     •   Only few software tools provide repositories for formal
         artefacts that enforce referential integrity and that provide
         adequate means for artefact modularity

         ★   Lacking repository functionality can be built into editors

         ★   Artefact modularity can be achieved by adhering to the
             KISS principles related to formal artefact modularity

     •   Interoperability between software tools for managing formal
         artefacts is largely lacking

         ★   But transformation technologies enable DIY solutions



17                    Formal artefacts are gaining ground
Observations
     •   The problem of referential integrity was solved many years
         ago by database and CASE tool vendors

     •   We need to apply the lessons from data management to
         software specification management, but we need to apply
         them intelligently

     •   The KISS principles and guidelines are a starting point

     •   To date the role of artefacts as natural units of work has
         been neglected




18                                       Lessons to be applied
Work to be done
     •   Most database rows are much too small to qualify as
         artefacts

     •   Many artefacts are either too small or too large

     •   No concensus yet in the modelling community on banning
         circular references between artefacts

     •   All artefact changes need to be proper transactions

     •   When using traditional artefacts, the deployment of a
         software change feels more like an earthquake than a
         transaction

         ★   Practical impossibility to stengthen QA measures to
             complely avoid damage

         ★   The larger the change the higher the likelyhood of
             aftershocks




19       Incrementally replacing traditional artefacts
Summary
     •   Renaming artefacts every few years to conform to the latest
         technology jargon (service, component, object, entity, ...)
         makes little sense

     •   Traditional artefacts often lack modularity and some may
         even have circular references

     •   In the absence of formal artefacts, each technology binding
         makes its own assumption about artefact boundaries

     •   Software users experience the use of software as the
         execution of a series of mysterious rituals

     •   Software change should always be as low-risk as a
         database transaction




20                                            The business case
Thank you!
   Jorn Bettin
jbe @ sofismo.ch
Skype jorn_bettin
+41 62 891 0987

Weitere ähnliche Inhalte

Andere mochten auch

Programa corporativo de salud preventiva y bienestar laboral. sara sara.
Programa corporativo de salud preventiva y bienestar laboral. sara sara.Programa corporativo de salud preventiva y bienestar laboral. sara sara.
Programa corporativo de salud preventiva y bienestar laboral. sara sara.Sara Sara Perú
 
Activists guide to the EU
Activists guide to the EUActivists guide to the EU
Activists guide to the EUKirsten Fiedler
 
K Roio Con Dios (Encuesta Dios Nuestro SeñOr)
K Roio Con Dios (Encuesta Dios Nuestro SeñOr)K Roio Con Dios (Encuesta Dios Nuestro SeñOr)
K Roio Con Dios (Encuesta Dios Nuestro SeñOr)Pko Zlk
 
Otvoreni podaci u funkciji razvoja
Otvoreni podaci u funkciji razvojaOtvoreni podaci u funkciji razvoja
Otvoreni podaci u funkciji razvojaPoint_conference
 
Prueba corta de maternidad
Prueba   corta de  maternidadPrueba   corta de  maternidad
Prueba corta de maternidadNilda De Jesus
 
Estudio de Vulnerabilidad de la Cuenca del Manubles a la Concesión Directa de...
Estudio de Vulnerabilidad de la Cuenca del Manubles a la Concesión Directa de...Estudio de Vulnerabilidad de la Cuenca del Manubles a la Concesión Directa de...
Estudio de Vulnerabilidad de la Cuenca del Manubles a la Concesión Directa de...sialaminadeborobia
 
Drug Trolley Brochure
Drug Trolley BrochureDrug Trolley Brochure
Drug Trolley BrochureFPD Group Ltd
 
Transformando nuestra ciudad - Villavicencio
Transformando nuestra ciudad - VillavicencioTransformando nuestra ciudad - Villavicencio
Transformando nuestra ciudad - Villavicenciogbarrero
 
ABB Novedades Producto Jornadas TéCnicas 2010
ABB Novedades Producto   Jornadas TéCnicas 2010ABB Novedades Producto   Jornadas TéCnicas 2010
ABB Novedades Producto Jornadas TéCnicas 2010sergi123
 
Connecting morse key to pc using an optical mouse.
Connecting morse key to pc using an optical mouse.Connecting morse key to pc using an optical mouse.
Connecting morse key to pc using an optical mouse.Parvesh Taneja
 
Creando tendencias a través del planeamiento estratégico
Creando tendencias a través del planeamiento estratégicoCreando tendencias a través del planeamiento estratégico
Creando tendencias a través del planeamiento estratégicoStraTgia
 
Componentes principales de una computadora
Componentes  principales de  una computadoraComponentes  principales de  una computadora
Componentes principales de una computadoraRuben Cuesta Moran
 
C:\Fakepath\Segundo Parcial
C:\Fakepath\Segundo ParcialC:\Fakepath\Segundo Parcial
C:\Fakepath\Segundo ParcialMarilyn Vivas
 
Summary book 'Convivial toolbox'
Summary book 'Convivial toolbox' Summary book 'Convivial toolbox'
Summary book 'Convivial toolbox' lcoorevits
 

Andere mochten auch (19)

Internetbasico
InternetbasicoInternetbasico
Internetbasico
 
Programa corporativo de salud preventiva y bienestar laboral. sara sara.
Programa corporativo de salud preventiva y bienestar laboral. sara sara.Programa corporativo de salud preventiva y bienestar laboral. sara sara.
Programa corporativo de salud preventiva y bienestar laboral. sara sara.
 
Herramientas web 9 ''A''
Herramientas web 9 ''A''Herramientas web 9 ''A''
Herramientas web 9 ''A''
 
Activists guide to the EU
Activists guide to the EUActivists guide to the EU
Activists guide to the EU
 
K Roio Con Dios (Encuesta Dios Nuestro SeñOr)
K Roio Con Dios (Encuesta Dios Nuestro SeñOr)K Roio Con Dios (Encuesta Dios Nuestro SeñOr)
K Roio Con Dios (Encuesta Dios Nuestro SeñOr)
 
GPREC IEI Chapter Inaugural Keynote
GPREC IEI Chapter Inaugural KeynoteGPREC IEI Chapter Inaugural Keynote
GPREC IEI Chapter Inaugural Keynote
 
Otvoreni podaci u funkciji razvoja
Otvoreni podaci u funkciji razvojaOtvoreni podaci u funkciji razvoja
Otvoreni podaci u funkciji razvoja
 
Prueba corta de maternidad
Prueba   corta de  maternidadPrueba   corta de  maternidad
Prueba corta de maternidad
 
Bmc l ward
Bmc  l wardBmc  l ward
Bmc l ward
 
Estudio de Vulnerabilidad de la Cuenca del Manubles a la Concesión Directa de...
Estudio de Vulnerabilidad de la Cuenca del Manubles a la Concesión Directa de...Estudio de Vulnerabilidad de la Cuenca del Manubles a la Concesión Directa de...
Estudio de Vulnerabilidad de la Cuenca del Manubles a la Concesión Directa de...
 
Drug Trolley Brochure
Drug Trolley BrochureDrug Trolley Brochure
Drug Trolley Brochure
 
Transformando nuestra ciudad - Villavicencio
Transformando nuestra ciudad - VillavicencioTransformando nuestra ciudad - Villavicencio
Transformando nuestra ciudad - Villavicencio
 
ABB Novedades Producto Jornadas TéCnicas 2010
ABB Novedades Producto   Jornadas TéCnicas 2010ABB Novedades Producto   Jornadas TéCnicas 2010
ABB Novedades Producto Jornadas TéCnicas 2010
 
Connecting morse key to pc using an optical mouse.
Connecting morse key to pc using an optical mouse.Connecting morse key to pc using an optical mouse.
Connecting morse key to pc using an optical mouse.
 
Creando tendencias a través del planeamiento estratégico
Creando tendencias a través del planeamiento estratégicoCreando tendencias a través del planeamiento estratégico
Creando tendencias a través del planeamiento estratégico
 
Componentes principales de una computadora
Componentes  principales de  una computadoraComponentes  principales de  una computadora
Componentes principales de una computadora
 
C:\Fakepath\Segundo Parcial
C:\Fakepath\Segundo ParcialC:\Fakepath\Segundo Parcial
C:\Fakepath\Segundo Parcial
 
Summary book 'Convivial toolbox'
Summary book 'Convivial toolbox' Summary book 'Convivial toolbox'
Summary book 'Convivial toolbox'
 
Silabo programación ii 2015-i
Silabo programación ii 2015-iSilabo programación ii 2015-i
Silabo programación ii 2015-i
 

Ähnlich wie Artefacts - Bringing Clarity & Simplicity to Modelling

Domain driven design and model driven development
Domain driven design and model driven developmentDomain driven design and model driven development
Domain driven design and model driven developmentDmitry Geyzersky
 
Domain Driven Design Demonstrated
Domain Driven Design Demonstrated Domain Driven Design Demonstrated
Domain Driven Design Demonstrated Alan Christensen
 
JDD 2016 - Ademar Aguiar - To Document Or Not Document - That Is The Question
JDD 2016 - Ademar Aguiar - To Document Or Not Document - That Is The QuestionJDD 2016 - Ademar Aguiar - To Document Or Not Document - That Is The Question
JDD 2016 - Ademar Aguiar - To Document Or Not Document - That Is The QuestionPROIDEA
 
Onion Architecture / Clean Architecture
Onion Architecture / Clean ArchitectureOnion Architecture / Clean Architecture
Onion Architecture / Clean ArchitectureAttila Bertók
 
Building a Digital Learning Object w/ Articulate Storyline 2
Building a Digital Learning Object w/ Articulate Storyline 2Building a Digital Learning Object w/ Articulate Storyline 2
Building a Digital Learning Object w/ Articulate Storyline 2Shalin Hai-Jew
 
History of Object Orientation in OOP.ppt
History of Object Orientation in OOP.pptHistory of Object Orientation in OOP.ppt
History of Object Orientation in OOP.pptathar549116
 
History of Object Orientation in OOP.ppt
History of Object Orientation in OOP.pptHistory of Object Orientation in OOP.ppt
History of Object Orientation in OOP.pptMuhammad Athar
 
Switch! Recommending Artifacts Needed Next Based on Personal and Shared Context
Switch! Recommending Artifacts Needed Next Based on Personal and Shared ContextSwitch! Recommending Artifacts Needed Next Based on Personal and Shared Context
Switch! Recommending Artifacts Needed Next Based on Personal and Shared Contextalexandersahm
 
Domain Driven Design (DDD)
Domain Driven Design (DDD)Domain Driven Design (DDD)
Domain Driven Design (DDD)Tom Kocjan
 
Marco Mancuso - Data Context Interaction
Marco Mancuso - Data Context InteractionMarco Mancuso - Data Context Interaction
Marco Mancuso - Data Context InteractioncosenzaLab
 
Katherine Kott Slides for DLF PM Group 2011
Katherine Kott Slides for DLF PM Group 2011Katherine Kott Slides for DLF PM Group 2011
Katherine Kott Slides for DLF PM Group 2011DLFCLIR
 
Software Architectures, Week 1 - Monolithic Architectures
Software Architectures, Week 1 - Monolithic ArchitecturesSoftware Architectures, Week 1 - Monolithic Architectures
Software Architectures, Week 1 - Monolithic ArchitecturesAngelos Kapsimanis
 
Lipstick on a Pig: Integrated Library Systems
Lipstick on a Pig: Integrated Library SystemsLipstick on a Pig: Integrated Library Systems
Lipstick on a Pig: Integrated Library SystemsDorothea Salo
 
Digital projects best practices [xxxiii reunión nacional de archivos 201111]
Digital projects best practices [xxxiii reunión nacional de archivos 201111]Digital projects best practices [xxxiii reunión nacional de archivos 201111]
Digital projects best practices [xxxiii reunión nacional de archivos 201111]Frederick Zarndt
 
2010 05-21, object-relational mapping using hibernate v2
2010 05-21, object-relational mapping using hibernate v22010 05-21, object-relational mapping using hibernate v2
2010 05-21, object-relational mapping using hibernate v2alvaro alcocer sotil
 
The Economies of Scaling Software
The Economies of Scaling SoftwareThe Economies of Scaling Software
The Economies of Scaling SoftwareAbdelmonaim Remani
 
The economies of scaling software - Abdel Remani
The economies of scaling software - Abdel RemaniThe economies of scaling software - Abdel Remani
The economies of scaling software - Abdel Remanijaxconf
 

Ähnlich wie Artefacts - Bringing Clarity & Simplicity to Modelling (20)

Domain driven design and model driven development
Domain driven design and model driven developmentDomain driven design and model driven development
Domain driven design and model driven development
 
Domain Driven Design Demonstrated
Domain Driven Design Demonstrated Domain Driven Design Demonstrated
Domain Driven Design Demonstrated
 
JDD 2016 - Ademar Aguiar - To Document Or Not Document - That Is The Question
JDD 2016 - Ademar Aguiar - To Document Or Not Document - That Is The QuestionJDD 2016 - Ademar Aguiar - To Document Or Not Document - That Is The Question
JDD 2016 - Ademar Aguiar - To Document Or Not Document - That Is The Question
 
Onion Architecture / Clean Architecture
Onion Architecture / Clean ArchitectureOnion Architecture / Clean Architecture
Onion Architecture / Clean Architecture
 
Building a Digital Learning Object w/ Articulate Storyline 2
Building a Digital Learning Object w/ Articulate Storyline 2Building a Digital Learning Object w/ Articulate Storyline 2
Building a Digital Learning Object w/ Articulate Storyline 2
 
History of Object Orientation in OOP.ppt
History of Object Orientation in OOP.pptHistory of Object Orientation in OOP.ppt
History of Object Orientation in OOP.ppt
 
History of Object Orientation in OOP.ppt
History of Object Orientation in OOP.pptHistory of Object Orientation in OOP.ppt
History of Object Orientation in OOP.ppt
 
Switch! Recommending Artifacts Needed Next Based on Personal and Shared Context
Switch! Recommending Artifacts Needed Next Based on Personal and Shared ContextSwitch! Recommending Artifacts Needed Next Based on Personal and Shared Context
Switch! Recommending Artifacts Needed Next Based on Personal and Shared Context
 
Domain Driven Design (DDD)
Domain Driven Design (DDD)Domain Driven Design (DDD)
Domain Driven Design (DDD)
 
Marco Mancuso - Data Context Interaction
Marco Mancuso - Data Context InteractionMarco Mancuso - Data Context Interaction
Marco Mancuso - Data Context Interaction
 
Katherine Kott Slides for DLF PM Group 2011
Katherine Kott Slides for DLF PM Group 2011Katherine Kott Slides for DLF PM Group 2011
Katherine Kott Slides for DLF PM Group 2011
 
Software Architectures, Week 1 - Monolithic Architectures
Software Architectures, Week 1 - Monolithic ArchitecturesSoftware Architectures, Week 1 - Monolithic Architectures
Software Architectures, Week 1 - Monolithic Architectures
 
Lipstick on a Pig: Integrated Library Systems
Lipstick on a Pig: Integrated Library SystemsLipstick on a Pig: Integrated Library Systems
Lipstick on a Pig: Integrated Library Systems
 
Digital projects best practices [xxxiii reunión nacional de archivos 201111]
Digital projects best practices [xxxiii reunión nacional de archivos 201111]Digital projects best practices [xxxiii reunión nacional de archivos 201111]
Digital projects best practices [xxxiii reunión nacional de archivos 201111]
 
CPP19 - Revision
CPP19 - RevisionCPP19 - Revision
CPP19 - Revision
 
2010 05-21, object-relational mapping using hibernate v2
2010 05-21, object-relational mapping using hibernate v22010 05-21, object-relational mapping using hibernate v2
2010 05-21, object-relational mapping using hibernate v2
 
The Economies of Scaling Software
The Economies of Scaling SoftwareThe Economies of Scaling Software
The Economies of Scaling Software
 
The economies of scaling software - Abdel Remani
The economies of scaling software - Abdel RemaniThe economies of scaling software - Abdel Remani
The economies of scaling software - Abdel Remani
 
The Developers World
The Developers WorldThe Developers World
The Developers World
 
Designing and prototyping
Designing and prototypingDesigning and prototyping
Designing and prototyping
 

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
 
Software, from Code into the Clouds
Software, from Code into the CloudsSoftware, from Code into the Clouds
Software, from Code into the CloudsJorn Bettin
 
Multi Level Modelling
Multi Level ModellingMulti Level Modelling
Multi Level ModellingJorn 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 (12)

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
 
Software, from Code into the Clouds
Software, from Code into the CloudsSoftware, from Code into the Clouds
Software, from Code into the Clouds
 
Multi Level Modelling
Multi Level ModellingMulti Level Modelling
Multi Level Modelling
 
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

Famous Olympic Siblings from the 21st Century
Famous Olympic Siblings from the 21st CenturyFamous Olympic Siblings from the 21st Century
Famous Olympic Siblings from the 21st Centuryrwgiffor
 
0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdf0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdfRenandantas16
 
Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023Neil Kimberley
 
Call Girls in Gomti Nagar - 7388211116 - With room Service
Call Girls in Gomti Nagar - 7388211116  - With room ServiceCall Girls in Gomti Nagar - 7388211116  - With room Service
Call Girls in Gomti Nagar - 7388211116 - With room Servicediscovermytutordmt
 
Call Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine ServiceCall Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine Serviceritikaroy0888
 
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...Dave Litwiller
 
The Coffee Bean & Tea Leaf(CBTL), Business strategy case study
The Coffee Bean & Tea Leaf(CBTL), Business strategy case studyThe Coffee Bean & Tea Leaf(CBTL), Business strategy case study
The Coffee Bean & Tea Leaf(CBTL), Business strategy case studyEthan lee
 
Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...
Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...
Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...Lviv Startup Club
 
Monthly Social Media Update April 2024 pptx.pptx
Monthly Social Media Update April 2024 pptx.pptxMonthly Social Media Update April 2024 pptx.pptx
Monthly Social Media Update April 2024 pptx.pptxAndy Lambert
 
A DAY IN THE LIFE OF A SALESMAN / WOMAN
A DAY IN THE LIFE OF A  SALESMAN / WOMANA DAY IN THE LIFE OF A  SALESMAN / WOMAN
A DAY IN THE LIFE OF A SALESMAN / WOMANIlamathiKannappan
 
Lucknow 💋 Escorts in Lucknow - 450+ Call Girl Cash Payment 8923113531 Neha Th...
Lucknow 💋 Escorts in Lucknow - 450+ Call Girl Cash Payment 8923113531 Neha Th...Lucknow 💋 Escorts in Lucknow - 450+ Call Girl Cash Payment 8923113531 Neha Th...
Lucknow 💋 Escorts in Lucknow - 450+ Call Girl Cash Payment 8923113531 Neha Th...anilsa9823
 
VIP Call Girls In Saharaganj ( Lucknow ) 🔝 8923113531 🔝 Cash Payment (COD) 👒
VIP Call Girls In Saharaganj ( Lucknow  ) 🔝 8923113531 🔝  Cash Payment (COD) 👒VIP Call Girls In Saharaganj ( Lucknow  ) 🔝 8923113531 🔝  Cash Payment (COD) 👒
VIP Call Girls In Saharaganj ( Lucknow ) 🔝 8923113531 🔝 Cash Payment (COD) 👒anilsa9823
 
Organizational Transformation Lead with Culture
Organizational Transformation Lead with CultureOrganizational Transformation Lead with Culture
Organizational Transformation Lead with CultureSeta Wicaksana
 
Grateful 7 speech thanking everyone that has helped.pdf
Grateful 7 speech thanking everyone that has helped.pdfGrateful 7 speech thanking everyone that has helped.pdf
Grateful 7 speech thanking everyone that has helped.pdfPaul Menig
 
7.pdf This presentation captures many uses and the significance of the number...
7.pdf This presentation captures many uses and the significance of the number...7.pdf This presentation captures many uses and the significance of the number...
7.pdf This presentation captures many uses and the significance of the number...Paul Menig
 
Ensure the security of your HCL environment by applying the Zero Trust princi...
Ensure the security of your HCL environment by applying the Zero Trust princi...Ensure the security of your HCL environment by applying the Zero Trust princi...
Ensure the security of your HCL environment by applying the Zero Trust princi...Roland Driesen
 
👉Chandigarh Call Girls 👉9878799926👉Just Call👉Chandigarh Call Girl In Chandiga...
👉Chandigarh Call Girls 👉9878799926👉Just Call👉Chandigarh Call Girl In Chandiga...👉Chandigarh Call Girls 👉9878799926👉Just Call👉Chandigarh Call Girl In Chandiga...
👉Chandigarh Call Girls 👉9878799926👉Just Call👉Chandigarh Call Girl In Chandiga...rajveerescorts2022
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756dollysharma2066
 
It will be International Nurses' Day on 12 May
It will be International Nurses' Day on 12 MayIt will be International Nurses' Day on 12 May
It will be International Nurses' Day on 12 MayNZSG
 

Kürzlich hochgeladen (20)

Famous Olympic Siblings from the 21st Century
Famous Olympic Siblings from the 21st CenturyFamous Olympic Siblings from the 21st Century
Famous Olympic Siblings from the 21st Century
 
0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdf0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdf
 
Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023
 
Call Girls in Gomti Nagar - 7388211116 - With room Service
Call Girls in Gomti Nagar - 7388211116  - With room ServiceCall Girls in Gomti Nagar - 7388211116  - With room Service
Call Girls in Gomti Nagar - 7388211116 - With room Service
 
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabiunwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
 
Call Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine ServiceCall Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine Service
 
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
 
The Coffee Bean & Tea Leaf(CBTL), Business strategy case study
The Coffee Bean & Tea Leaf(CBTL), Business strategy case studyThe Coffee Bean & Tea Leaf(CBTL), Business strategy case study
The Coffee Bean & Tea Leaf(CBTL), Business strategy case study
 
Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...
Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...
Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...
 
Monthly Social Media Update April 2024 pptx.pptx
Monthly Social Media Update April 2024 pptx.pptxMonthly Social Media Update April 2024 pptx.pptx
Monthly Social Media Update April 2024 pptx.pptx
 
A DAY IN THE LIFE OF A SALESMAN / WOMAN
A DAY IN THE LIFE OF A  SALESMAN / WOMANA DAY IN THE LIFE OF A  SALESMAN / WOMAN
A DAY IN THE LIFE OF A SALESMAN / WOMAN
 
Lucknow 💋 Escorts in Lucknow - 450+ Call Girl Cash Payment 8923113531 Neha Th...
Lucknow 💋 Escorts in Lucknow - 450+ Call Girl Cash Payment 8923113531 Neha Th...Lucknow 💋 Escorts in Lucknow - 450+ Call Girl Cash Payment 8923113531 Neha Th...
Lucknow 💋 Escorts in Lucknow - 450+ Call Girl Cash Payment 8923113531 Neha Th...
 
VIP Call Girls In Saharaganj ( Lucknow ) 🔝 8923113531 🔝 Cash Payment (COD) 👒
VIP Call Girls In Saharaganj ( Lucknow  ) 🔝 8923113531 🔝  Cash Payment (COD) 👒VIP Call Girls In Saharaganj ( Lucknow  ) 🔝 8923113531 🔝  Cash Payment (COD) 👒
VIP Call Girls In Saharaganj ( Lucknow ) 🔝 8923113531 🔝 Cash Payment (COD) 👒
 
Organizational Transformation Lead with Culture
Organizational Transformation Lead with CultureOrganizational Transformation Lead with Culture
Organizational Transformation Lead with Culture
 
Grateful 7 speech thanking everyone that has helped.pdf
Grateful 7 speech thanking everyone that has helped.pdfGrateful 7 speech thanking everyone that has helped.pdf
Grateful 7 speech thanking everyone that has helped.pdf
 
7.pdf This presentation captures many uses and the significance of the number...
7.pdf This presentation captures many uses and the significance of the number...7.pdf This presentation captures many uses and the significance of the number...
7.pdf This presentation captures many uses and the significance of the number...
 
Ensure the security of your HCL environment by applying the Zero Trust princi...
Ensure the security of your HCL environment by applying the Zero Trust princi...Ensure the security of your HCL environment by applying the Zero Trust princi...
Ensure the security of your HCL environment by applying the Zero Trust princi...
 
👉Chandigarh Call Girls 👉9878799926👉Just Call👉Chandigarh Call Girl In Chandiga...
👉Chandigarh Call Girls 👉9878799926👉Just Call👉Chandigarh Call Girl In Chandiga...👉Chandigarh Call Girls 👉9878799926👉Just Call👉Chandigarh Call Girl In Chandiga...
👉Chandigarh Call Girls 👉9878799926👉Just Call👉Chandigarh Call Girl In Chandiga...
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
 
It will be International Nurses' Day on 12 May
It will be International Nurses' Day on 12 MayIt will be International Nurses' Day on 12 May
It will be International Nurses' Day on 12 May
 

Artefacts - Bringing Clarity & Simplicity to Modelling

  • 1. Artefacts Bringing Clarity & Simplicity to Modelling The Fourth KISS Workshop 17 November 2009 @ ASE Auckland, New Zealand www.industrialized-software.org/kiss-ase-2009
  • 2. Are use cases the only legitimate software requirements artefacts? 2 Software requirements artefacts
  • 3. Observations • We pack non-functional requirements into supplementary requirements documents • Domain experts submit arbitrary specifications in various formats • We make extensive use of emails, wikis, and other “web 2.0” artefacts • Additionally we rely on verbal communication ★ saying A (nice and short) ★ actually meaning B (the fuzzy story in the back of our head) ★ and being interpreted as having said C (the minimum design that can be passed off as meeting requirement A) 3 Software requirements artefacts
  • 4. Are classes and interfaces the only legitimate software specification artefacts? 4 Software specification artefacts
  • 5. Observations • Architecture and technology decisions are recorded in software design documents • MDD practitioners think it’s cool to put some decisions into models • When the decision binding time is late we invent ad-hoc configuration files • When the decision binding time is even later we stuff specifications into databases 5 Software specification artefacts
  • 6. Are business objects the only legitimate application data artefacts? 6 Application data artefacts
  • 7. Observations • When the number of objects is large we translate objects into database rows • When the number of objects is small we translate objects into files (XML, ...) • We reluctantly deal with spreadsheets created by domain experts • We acknowledge and deal with the existence of links between business objects 7 Application data artefacts
  • 8. Are we any good at managing the dependencies between all these artefacts? 8 Managing dependencies between artefacts
  • 9. Observations • Commercial tools for managing artefacts are a band aid at best • We treat artefacts differently depending on their technological format • We make naive assumptions about the way artefacts change over time ★ As if version control tools provide a satisfactory answer ★ As if artefacts can’t have different levels of completeness ★ As if the structure of an artefact does not vary over time ★ As if it is okay to manually ensure referential integrity between artefacts 9 Managing dependencies between artefacts
  • 10. What is an artefact? • An artefact is a container of information • An artefact is instantiated by a specific actor (human or a system) • An artefact is consumed by at least one actor (human or system) • An artefact represents a natural unit of work (for the instantiating and consuming actors) • An artefact may contain links to other artefacts • An artefact has a state and a lifecycle 10 A basic definition
  • 11. Candidate Artefacts • Emails? • Documents? • Models? • Files? • ... 11 How do we measure artefact quality?
  • 12. Observations • Reducing the granularity of artefacts shifts complexity to the dependency graph between artefacts • Increasing the granularity of artefacts shifts complexity into the individual artefacts • The dependency graph between artefacts must be considered as an artefact as well • The granularity of artefacts must be optimised with respect to overall complexity, it must not be dictated by technology • Artefacts that are connected by a circuit of links do not qualify as a modular design • Artefact value tends towards zero if the links between artefacts are unreliable 12 Complexity and artefact modularity are closely related
  • 13. Models • When does a model start to be too big? • When does a model start to be too small? • Is there any difference between model and code? • Should we apply version control to individual model elements, or to a larger set of related model elements, or to sets of sets of model elements? • How do we handle links between models? • A model is supposed to be a representation, especially a mathematical one of (a phenomenon or system). How many modelling languages are enough? Which ones lead to good representations? 13 Modelling or Muddling?
  • 14. Formal artefacts • A formal artefact has all characteristics of an artefact • A formal artefact is instantiated with the help of a software tool that enforces specific instantiation semantics • The information contained in a formal artefact can be easily processed by software tools • Referential integrity between formal artefacts is preserved at all times with the help of a software tool • No circular links between formal artefacts are allowed at any time • The lifecycle of a formal artefact is described in a state machine • The events consumed and produced by the artefact state machine are available for processing in software tools 14 A practically useful definition
  • 15. Disqualified candidate formal artefacts • Emails (contained information can’t easily be processed) • Text documents (a set of text documents may contain circular references) • UML models (referential integrity between UML models is usually not guaranteed) • Database rows (granularity is too small) • Source code files (referential integrity is not guaranteed at all times) • In-memory objects (artefact boundaries are not well defined) • ... 15 Formal artefacts are still rare!
  • 16. The future • Tools for incrementally transforming informal artefacts into formal artefacts • Collaboration based on formal artefacts • Transformation & generation technologies used to integrate formal artefacts with legacy systems • Systems conceived from the ground up in terms of collaborating formal artefact state machines • Collaborating software tools that implement complementary partial semantics for formal artefacts 16 Formal artefacts have huge potential
  • 17. Today • Manual formalisation of artefacts • Formal artefacts are used in specialised domains • Transformation & generation technologies are already used to integrate formal artefacts with legacy systems • Only few software tools provide repositories for formal artefacts that enforce referential integrity and that provide adequate means for artefact modularity ★ Lacking repository functionality can be built into editors ★ Artefact modularity can be achieved by adhering to the KISS principles related to formal artefact modularity • Interoperability between software tools for managing formal artefacts is largely lacking ★ But transformation technologies enable DIY solutions 17 Formal artefacts are gaining ground
  • 18. Observations • The problem of referential integrity was solved many years ago by database and CASE tool vendors • We need to apply the lessons from data management to software specification management, but we need to apply them intelligently • The KISS principles and guidelines are a starting point • To date the role of artefacts as natural units of work has been neglected 18 Lessons to be applied
  • 19. Work to be done • Most database rows are much too small to qualify as artefacts • Many artefacts are either too small or too large • No concensus yet in the modelling community on banning circular references between artefacts • All artefact changes need to be proper transactions • When using traditional artefacts, the deployment of a software change feels more like an earthquake than a transaction ★ Practical impossibility to stengthen QA measures to complely avoid damage ★ The larger the change the higher the likelyhood of aftershocks 19 Incrementally replacing traditional artefacts
  • 20. Summary • Renaming artefacts every few years to conform to the latest technology jargon (service, component, object, entity, ...) makes little sense • Traditional artefacts often lack modularity and some may even have circular references • In the absence of formal artefacts, each technology binding makes its own assumption about artefact boundaries • Software users experience the use of software as the execution of a series of mysterious rituals • Software change should always be as low-risk as a database transaction 20 The business case
  • 21. Thank you! Jorn Bettin jbe @ sofismo.ch Skype jorn_bettin +41 62 891 0987