SlideShare a Scribd company logo
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

More Related Content

Viewers also liked

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ú
 
Herramientas web 9 ''A''
Herramientas web 9 ''A''Herramientas web 9 ''A''
Herramientas web 9 ''A''
Ariana Gonzabay Aldaz
 
Activists guide to the EU
Activists guide to the EUActivists guide to the EU
Activists guide to the EU
Kirsten 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
 
GPREC IEI Chapter Inaugural Keynote
GPREC IEI Chapter Inaugural KeynoteGPREC IEI Chapter Inaugural Keynote
GPREC IEI Chapter Inaugural Keynote
Venkateswar Reddy Melachervu
 
Otvoreni podaci u funkciji razvoja
Otvoreni podaci u funkciji razvojaOtvoreni podaci u funkciji razvoja
Otvoreni podaci u funkciji razvoja
Point_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 Brochure
FPD Group Ltd
 
Transformando nuestra ciudad - Villavicencio
Transformando nuestra ciudad - VillavicencioTransformando nuestra ciudad - Villavicencio
Transformando nuestra ciudad - Villavicencio
gbarrero
 
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
sergi123
 
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égico
StraTgia
 
Componentes principales de una computadora
Componentes  principales de  una computadoraComponentes  principales de  una computadora
Componentes principales de una computadora
Ruben Cuesta Moran
 
C:\Fakepath\Segundo Parcial
C:\Fakepath\Segundo ParcialC:\Fakepath\Segundo Parcial
C:\Fakepath\Segundo Parcial
Marilyn Vivas
 
Summary book 'Convivial toolbox'
Summary book 'Convivial toolbox' Summary book 'Convivial toolbox'
Summary book 'Convivial toolbox'
lcoorevits
 
Silabo programación ii 2015-i
Silabo programación ii 2015-iSilabo programación ii 2015-i
Silabo programación ii 2015-i
nomegustaestascosas
 

Viewers also liked (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
 

Similar to 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 development
Dmitry 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 Question
PROIDEA
 
Onion Architecture / Clean Architecture
Onion Architecture / Clean ArchitectureOnion Architecture / Clean Architecture
Onion Architecture / Clean Architecture
Attila 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 2
Shalin 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.ppt
athar549116
 
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
Muhammad 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 Context
alexandersahm
 
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 Systems
Dorothea 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
 
CPP19 - Revision
CPP19 - RevisionCPP19 - Revision
CPP19 - Revision
Michael Heron
 
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
alvaro alcocer sotil
 
The Economies of Scaling Software
The Economies of Scaling SoftwareThe Economies of Scaling Software
The Economies of Scaling Software
Abdelmonaim 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 Remani
jaxconf
 
The Developers World
The Developers WorldThe Developers World
The Developers World
Ronald Northrip
 
Designing and prototyping
Designing and prototypingDesigning and prototyping
Designing and prototyping
Andres Baravalle
 

Similar to 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
 

More from 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 learning
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 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
Jorn 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 Language
Jorn 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 metalanguage
Jorn Bettin
 
Software, from Code into the Clouds
Software, from Code into the CloudsSoftware, from Code into the Clouds
Software, from Code into the Clouds
Jorn Bettin
 
Multi Level Modelling
Multi Level ModellingMulti Level Modelling
Multi Level Modelling
Jorn 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
 

More from 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
 

Recently uploaded

Enterprise Excellence is Inclusive Excellence.pdf
Enterprise Excellence is Inclusive Excellence.pdfEnterprise Excellence is Inclusive Excellence.pdf
Enterprise Excellence is Inclusive Excellence.pdf
KaiNexus
 
Buy Verified PayPal Account | Buy Google 5 Star Reviews
Buy Verified PayPal Account | Buy Google 5 Star ReviewsBuy Verified PayPal Account | Buy Google 5 Star Reviews
Buy Verified PayPal Account | Buy Google 5 Star Reviews
usawebmarket
 
Introduction to Amazon company 111111111111
Introduction to Amazon company 111111111111Introduction to Amazon company 111111111111
Introduction to Amazon company 111111111111
zoyaansari11365
 
amptalk_RecruitingDeck_english_2024.06.05
amptalk_RecruitingDeck_english_2024.06.05amptalk_RecruitingDeck_english_2024.06.05
amptalk_RecruitingDeck_english_2024.06.05
marketing317746
 
ikea_woodgreen_petscharity_dog-alogue_digital.pdf
ikea_woodgreen_petscharity_dog-alogue_digital.pdfikea_woodgreen_petscharity_dog-alogue_digital.pdf
ikea_woodgreen_petscharity_dog-alogue_digital.pdf
agatadrynko
 
Maksym Vyshnivetskyi: PMO Quality Management (UA)
Maksym Vyshnivetskyi: PMO Quality Management (UA)Maksym Vyshnivetskyi: PMO Quality Management (UA)
Maksym Vyshnivetskyi: PMO Quality Management (UA)
Lviv Startup Club
 
What is the TDS Return Filing Due Date for FY 2024-25.pdf
What is the TDS Return Filing Due Date for FY 2024-25.pdfWhat is the TDS Return Filing Due Date for FY 2024-25.pdf
What is the TDS Return Filing Due Date for FY 2024-25.pdf
seoforlegalpillers
 
What are the main advantages of using HR recruiter services.pdf
What are the main advantages of using HR recruiter services.pdfWhat are the main advantages of using HR recruiter services.pdf
What are the main advantages of using HR recruiter services.pdf
HumanResourceDimensi1
 
The Influence of Marketing Strategy and Market Competition on Business Perfor...
The Influence of Marketing Strategy and Market Competition on Business Perfor...The Influence of Marketing Strategy and Market Competition on Business Perfor...
The Influence of Marketing Strategy and Market Competition on Business Perfor...
Adam Smith
 
Cree_Rey_BrandIdentityKit.PDF_PersonalBd
Cree_Rey_BrandIdentityKit.PDF_PersonalBdCree_Rey_BrandIdentityKit.PDF_PersonalBd
Cree_Rey_BrandIdentityKit.PDF_PersonalBd
creerey
 
falcon-invoice-discounting-a-premier-platform-for-investors-in-india
falcon-invoice-discounting-a-premier-platform-for-investors-in-indiafalcon-invoice-discounting-a-premier-platform-for-investors-in-india
falcon-invoice-discounting-a-premier-platform-for-investors-in-india
Falcon Invoice Discounting
 
Project File Report BBA 6th semester.pdf
Project File Report BBA 6th semester.pdfProject File Report BBA 6th semester.pdf
Project File Report BBA 6th semester.pdf
RajPriye
 
Exploring Patterns of Connection with Social Dreaming
Exploring Patterns of Connection with Social DreamingExploring Patterns of Connection with Social Dreaming
Exploring Patterns of Connection with Social Dreaming
Nicola Wreford-Howard
 
The Parable of the Pipeline a book every new businessman or business student ...
The Parable of the Pipeline a book every new businessman or business student ...The Parable of the Pipeline a book every new businessman or business student ...
The Parable of the Pipeline a book every new businessman or business student ...
awaisafdar
 
5 Things You Need To Know Before Hiring a Videographer
5 Things You Need To Know Before Hiring a Videographer5 Things You Need To Know Before Hiring a Videographer
5 Things You Need To Know Before Hiring a Videographer
ofm712785
 
Putting the SPARK into Virtual Training.pptx
Putting the SPARK into Virtual Training.pptxPutting the SPARK into Virtual Training.pptx
Putting the SPARK into Virtual Training.pptx
Cynthia Clay
 
LA HUG - Video Testimonials with Chynna Morgan - June 2024
LA HUG - Video Testimonials with Chynna Morgan - June 2024LA HUG - Video Testimonials with Chynna Morgan - June 2024
LA HUG - Video Testimonials with Chynna Morgan - June 2024
Lital Barkan
 
Tata Group Dials Taiwan for Its Chipmaking Ambition in Gujarat’s Dholera
Tata Group Dials Taiwan for Its Chipmaking Ambition in Gujarat’s DholeraTata Group Dials Taiwan for Its Chipmaking Ambition in Gujarat’s Dholera
Tata Group Dials Taiwan for Its Chipmaking Ambition in Gujarat’s Dholera
Avirahi City Dholera
 
FINAL PRESENTATION.pptx12143241324134134
FINAL PRESENTATION.pptx12143241324134134FINAL PRESENTATION.pptx12143241324134134
FINAL PRESENTATION.pptx12143241324134134
LR1709MUSIC
 
20240425_ TJ Communications Credentials_compressed.pdf
20240425_ TJ Communications Credentials_compressed.pdf20240425_ TJ Communications Credentials_compressed.pdf
20240425_ TJ Communications Credentials_compressed.pdf
tjcomstrang
 

Recently uploaded (20)

Enterprise Excellence is Inclusive Excellence.pdf
Enterprise Excellence is Inclusive Excellence.pdfEnterprise Excellence is Inclusive Excellence.pdf
Enterprise Excellence is Inclusive Excellence.pdf
 
Buy Verified PayPal Account | Buy Google 5 Star Reviews
Buy Verified PayPal Account | Buy Google 5 Star ReviewsBuy Verified PayPal Account | Buy Google 5 Star Reviews
Buy Verified PayPal Account | Buy Google 5 Star Reviews
 
Introduction to Amazon company 111111111111
Introduction to Amazon company 111111111111Introduction to Amazon company 111111111111
Introduction to Amazon company 111111111111
 
amptalk_RecruitingDeck_english_2024.06.05
amptalk_RecruitingDeck_english_2024.06.05amptalk_RecruitingDeck_english_2024.06.05
amptalk_RecruitingDeck_english_2024.06.05
 
ikea_woodgreen_petscharity_dog-alogue_digital.pdf
ikea_woodgreen_petscharity_dog-alogue_digital.pdfikea_woodgreen_petscharity_dog-alogue_digital.pdf
ikea_woodgreen_petscharity_dog-alogue_digital.pdf
 
Maksym Vyshnivetskyi: PMO Quality Management (UA)
Maksym Vyshnivetskyi: PMO Quality Management (UA)Maksym Vyshnivetskyi: PMO Quality Management (UA)
Maksym Vyshnivetskyi: PMO Quality Management (UA)
 
What is the TDS Return Filing Due Date for FY 2024-25.pdf
What is the TDS Return Filing Due Date for FY 2024-25.pdfWhat is the TDS Return Filing Due Date for FY 2024-25.pdf
What is the TDS Return Filing Due Date for FY 2024-25.pdf
 
What are the main advantages of using HR recruiter services.pdf
What are the main advantages of using HR recruiter services.pdfWhat are the main advantages of using HR recruiter services.pdf
What are the main advantages of using HR recruiter services.pdf
 
The Influence of Marketing Strategy and Market Competition on Business Perfor...
The Influence of Marketing Strategy and Market Competition on Business Perfor...The Influence of Marketing Strategy and Market Competition on Business Perfor...
The Influence of Marketing Strategy and Market Competition on Business Perfor...
 
Cree_Rey_BrandIdentityKit.PDF_PersonalBd
Cree_Rey_BrandIdentityKit.PDF_PersonalBdCree_Rey_BrandIdentityKit.PDF_PersonalBd
Cree_Rey_BrandIdentityKit.PDF_PersonalBd
 
falcon-invoice-discounting-a-premier-platform-for-investors-in-india
falcon-invoice-discounting-a-premier-platform-for-investors-in-indiafalcon-invoice-discounting-a-premier-platform-for-investors-in-india
falcon-invoice-discounting-a-premier-platform-for-investors-in-india
 
Project File Report BBA 6th semester.pdf
Project File Report BBA 6th semester.pdfProject File Report BBA 6th semester.pdf
Project File Report BBA 6th semester.pdf
 
Exploring Patterns of Connection with Social Dreaming
Exploring Patterns of Connection with Social DreamingExploring Patterns of Connection with Social Dreaming
Exploring Patterns of Connection with Social Dreaming
 
The Parable of the Pipeline a book every new businessman or business student ...
The Parable of the Pipeline a book every new businessman or business student ...The Parable of the Pipeline a book every new businessman or business student ...
The Parable of the Pipeline a book every new businessman or business student ...
 
5 Things You Need To Know Before Hiring a Videographer
5 Things You Need To Know Before Hiring a Videographer5 Things You Need To Know Before Hiring a Videographer
5 Things You Need To Know Before Hiring a Videographer
 
Putting the SPARK into Virtual Training.pptx
Putting the SPARK into Virtual Training.pptxPutting the SPARK into Virtual Training.pptx
Putting the SPARK into Virtual Training.pptx
 
LA HUG - Video Testimonials with Chynna Morgan - June 2024
LA HUG - Video Testimonials with Chynna Morgan - June 2024LA HUG - Video Testimonials with Chynna Morgan - June 2024
LA HUG - Video Testimonials with Chynna Morgan - June 2024
 
Tata Group Dials Taiwan for Its Chipmaking Ambition in Gujarat’s Dholera
Tata Group Dials Taiwan for Its Chipmaking Ambition in Gujarat’s DholeraTata Group Dials Taiwan for Its Chipmaking Ambition in Gujarat’s Dholera
Tata Group Dials Taiwan for Its Chipmaking Ambition in Gujarat’s Dholera
 
FINAL PRESENTATION.pptx12143241324134134
FINAL PRESENTATION.pptx12143241324134134FINAL PRESENTATION.pptx12143241324134134
FINAL PRESENTATION.pptx12143241324134134
 
20240425_ TJ Communications Credentials_compressed.pdf
20240425_ TJ Communications Credentials_compressed.pdf20240425_ TJ Communications Credentials_compressed.pdf
20240425_ TJ Communications Credentials_compressed.pdf
 

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