SlideShare une entreprise Scribd logo
1  sur  21
Télécharger pour lire hors ligne
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

Contenu connexe

En vedette

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
 

En vedette (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
 

Similaire à 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
 

Similaire à 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
 

Plus de 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
 

Plus de 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
 

Dernier

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
 
👉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
 
B.COM Unit – 4 ( CORPORATE SOCIAL RESPONSIBILITY ( CSR ).pptx
B.COM Unit – 4 ( CORPORATE SOCIAL RESPONSIBILITY ( CSR ).pptxB.COM Unit – 4 ( CORPORATE SOCIAL RESPONSIBILITY ( CSR ).pptx
B.COM Unit – 4 ( CORPORATE SOCIAL RESPONSIBILITY ( CSR ).pptxpriyanshujha201
 
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
 
0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdf0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdfRenandantas16
 
FULL ENJOY Call Girls In Majnu Ka Tilla, Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Majnu Ka Tilla, Delhi Contact Us 8377877756FULL ENJOY Call Girls In Majnu Ka Tilla, Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Majnu Ka Tilla, Delhi Contact Us 8377877756dollysharma2066
 
Katrina Personal Brand Project and portfolio 1
Katrina Personal Brand Project and portfolio 1Katrina Personal Brand Project and portfolio 1
Katrina Personal Brand Project and portfolio 1kcpayne
 
Phases of negotiation .pptx
 Phases of negotiation .pptx Phases of negotiation .pptx
Phases of negotiation .pptxnandhinijagan9867
 
Uneak White's Personal Brand Exploration Presentation
Uneak White's Personal Brand Exploration PresentationUneak White's Personal Brand Exploration Presentation
Uneak White's Personal Brand Exploration Presentationuneakwhite
 
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableCall Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableSeo
 
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
 
Call Girls Service In Old Town Dubai ((0551707352)) Old Town Dubai Call Girl ...
Call Girls Service In Old Town Dubai ((0551707352)) Old Town Dubai Call Girl ...Call Girls Service In Old Town Dubai ((0551707352)) Old Town Dubai Call Girl ...
Call Girls Service In Old Town Dubai ((0551707352)) Old Town Dubai Call Girl ...allensay1
 
Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...
Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...
Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...Dipal Arora
 
Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876
Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876
Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876dlhescort
 
Cracking the Cultural Competence Code.pptx
Cracking the Cultural Competence Code.pptxCracking the Cultural Competence Code.pptx
Cracking the Cultural Competence Code.pptxWorkforce Group
 
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
 
How to Get Started in Social Media for Art League City
How to Get Started in Social Media for Art League CityHow to Get Started in Social Media for Art League City
How to Get Started in Social Media for Art League CityEric T. Tung
 

Dernier (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
 
👉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...
 
B.COM Unit – 4 ( CORPORATE SOCIAL RESPONSIBILITY ( CSR ).pptx
B.COM Unit – 4 ( CORPORATE SOCIAL RESPONSIBILITY ( CSR ).pptxB.COM Unit – 4 ( CORPORATE SOCIAL RESPONSIBILITY ( CSR ).pptx
B.COM Unit – 4 ( CORPORATE SOCIAL RESPONSIBILITY ( CSR ).pptx
 
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
 
0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdf0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdf
 
FULL ENJOY Call Girls In Majnu Ka Tilla, Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Majnu Ka Tilla, Delhi Contact Us 8377877756FULL ENJOY Call Girls In Majnu Ka Tilla, Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Majnu Ka Tilla, Delhi Contact Us 8377877756
 
Katrina Personal Brand Project and portfolio 1
Katrina Personal Brand Project and portfolio 1Katrina Personal Brand Project and portfolio 1
Katrina Personal Brand Project and portfolio 1
 
Phases of negotiation .pptx
 Phases of negotiation .pptx Phases of negotiation .pptx
Phases of negotiation .pptx
 
VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
 
Uneak White's Personal Brand Exploration Presentation
Uneak White's Personal Brand Exploration PresentationUneak White's Personal Brand Exploration Presentation
Uneak White's Personal Brand Exploration Presentation
 
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableCall Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
 
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...
 
Call Girls Service In Old Town Dubai ((0551707352)) Old Town Dubai Call Girl ...
Call Girls Service In Old Town Dubai ((0551707352)) Old Town Dubai Call Girl ...Call Girls Service In Old Town Dubai ((0551707352)) Old Town Dubai Call Girl ...
Call Girls Service In Old Town Dubai ((0551707352)) Old Town Dubai Call Girl ...
 
Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...
Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...
Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...
 
Forklift Operations: Safety through Cartoons
Forklift Operations: Safety through CartoonsForklift Operations: Safety through Cartoons
Forklift Operations: Safety through Cartoons
 
Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876
Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876
Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876
 
Cracking the Cultural Competence Code.pptx
Cracking the Cultural Competence Code.pptxCracking the Cultural Competence Code.pptx
Cracking the Cultural Competence Code.pptx
 
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
 
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
 
How to Get Started in Social Media for Art League City
How to Get Started in Social Media for Art League CityHow to Get Started in Social Media for Art League City
How to Get Started in Social Media for Art League City
 

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