SlideShare a Scribd company logo
1 of 28
Download to read offline
Versioning of
TM Templates
and Scalability

 M. Ueberall,
 O. Drobnik

Introduction

Structuring       Versioning of Topic Map Templates
Versioning

Scalability
                            and Scalability
Proc. Model

Ongoing Work
                              M. Ueberall, O. Drobnik

                       Telematics Group, Institute of Computer Science
                      J. W. Goethe-University, Frankfurt/Main, Germany


                                     2007 / 10 / 12
Versioning of
TM Templates
and Scalability                   Motivation and Objective
 M. Ueberall,
 O. Drobnik

Introduction

Structuring       • Problems in the context of software development
Versioning          processes:
Scalability           • participants use concepts from different knowledge
Proc. Model             domains → information overflow
Ongoing Work          • insufficient communications → traceability deficits


                  • Our approach is based on
                      • Templates consisting of Topic Map Objects →
                        lightweight representation
                      • version management → traceability
                      • meta process model → communications support
                      • role-based filtering → scalability
Versioning of
TM Templates
and Scalability                                                (Nested) Templates
 M. Ueberall,
 O. Drobnik
                                                                                           Example

Introduction

Structuring

Versioning
                                                                          Semi-formal Representation
Scalability        Use Case                                 <<actor>>     (Template containing Topic Map Objects)
                                                          BookingSystem
Proc. Model
                                                                                  Name           ...
Ongoing Work
                                                                                  UseCase        FlightBooking
                                                                                  Actor          ...
                                            Book flight                           Precondition ...
                                                                                  Action         ...
                                                                                  Postcondition ...
                         Customer

                  Name:          Customer
                  Type:          Person
                  Description:   ...
Versioning of
TM Templates
and Scalability                                                (Nested) Templates
 M. Ueberall,
 O. Drobnik
                                                                             Nesting Example

Introduction

Structuring

Versioning
                                                                          Semi-formal Representation
Scalability        Use Case                                 <<actor>>     (Template containing Topic Map Objects)
                                                          BookingSystem
Proc. Model
                                                                                  Name           ...
Ongoing Work
                                                                                  UseCase        FlightBooking

                                                                                            Name:          Customer
                                            Book flight                           Actor     Type: ...      Person
                                                                                            Description:   ...

                                                                                  Precondition ...
                         Customer
                                                                                  Action         ...
                                                                                  Postcondition ...
                  Name:          Customer
                  Type:          Person
                  Description:   ...
Versioning of
TM Templates
and Scalability           Usage Restrictions for Templates
 M. Ueberall,
 O. Drobnik
                                                Constraints in LTM notation

Introduction

Structuring

Versioning

Scalability       [person : topic-type = "Person"]
Proc. Model       [age : occurrence-type = "Age" = "Person’s Age" /person ~toc1]
Ongoing Work

                  [toc1 : topic-occurrence-constraint =
                      "Topic Occurrence Constraint Label for Occurrence ’Age’"]
                  {toc1, max-cardinality, [[1]]}

                    • embedded constraints as opposed to linked/embedded
                      schemas allow for unified handling of versioning
Versioning of
TM Templates
and Scalability   Faceted Classification
 M. Ueberall,
 O. Drobnik
                            Browser Example

Introduction

Structuring

Versioning

Scalability

Proc. Model

Ongoing Work
Versioning of
TM Templates
and Scalability                             Faceted classification
 M. Ueberall,
 O. Drobnik
                                                              LTM notation (1)

Introduction

Structuring
                  // cf. [Ahmed2003] (Proc. Extreme Markup Languages)
Versioning
                  #PREFIX tmhd @"http://www.techquila.com/psi/hierarchy/#"
Scalability

Proc. Model
                  #PREFIX tmtd @"http://www.techquila.com/psi/thesaurus/#"
Ongoing Work
                  #PREFIX tmfd @"http://www.techquila.com/psi/faceted-classification/#"

                  [all-templates : tmfd:facet = "Set of all Templates"]
                  [template-facet : tmfd:facet = "Template Facet"]

                  tmfd:facet-has-hierarchy-type(template-facet : tmfd:facet,
                      tmfd:subcategory-supercategory : tmfd:facet-hierarchy-type)
                  tmfd:facet-has-root(template-facet : tmfd:facet,
                      all-templates : tmfd:facet-root)
Versioning of
TM Templates
and Scalability                           Faceted classification
 M. Ueberall,
 O. Drobnik
                                                         LTM notation (2)

Introduction

Structuring
                  // taken from the UML Superstructure specification, cf. [UD06]
Versioning
                  [actor : template-class = "Actor"]
Scalability

Proc. Model

Ongoing Work
                  tmfd:subcategory-supercategory(actor : tmhd:subcategory,
                      all-templates : tmhd:supercategory)
                  tmfd:subcategory-supercategory(person : tmhd:subcategory,
                      actor : tmhd:supercategory)
                  tmfd:subcategory-supercategory(legal-entity :
                      tmhd:subcategory, actor : tmhd:supercategory)

                  tmtd:part-whole(actor : tmtd:whole, role : tmtd:part)
                  tmtd:part-whole(person : tmtd:whole, age : tmtd:part)
Versioning of
TM Templates
and Scalability                               Versioning
 M. Ueberall,
 O. Drobnik
                                 Example: Proxy Design Pattern

Introduction                    uses                    Service
                  Client
Structuring
                                                action()
                           V1
Versioning                                                        V1
                                                  Service-
Scalability                                       Annotation

Proc. Model
                                                           V1

Ongoing Work
Versioning of
TM Templates
and Scalability                                            Versioning
 M. Ueberall,
 O. Drobnik
                                           Example: Proxy Design Pattern

Introduction                              uses                           Service
                  Client
Structuring
                                                                 action()
                           V1
Versioning                                                                                   V1
                                                                   Service-
Scalability                                decoupling              Annotation

Proc. Model
                                                                            V1

Ongoing Work
                                                               «interface»
                                          uses                  ServiceIF
                  Client
                                                          action()
                           V1                             ...
                                                                                     V1
                            Client-
                            Annotation

                                     V1          V1                                               V2
                                                  ServiceProxy                       Service
                                                  action()                        action()


                                                                                Service-
                                                                                Annotation
                                                                                          V1
Versioning of
TM Templates
and Scalability                                                Versioning
 M. Ueberall,
 O. Drobnik
                                                       Granularity of Objects

Introduction

Structuring
                  Name           ...                    Name            ...
Versioning        UseCase        FlightBooking          UseCase         FlightBooking

Scalability       Description    Statement A            Description
                                 Statement B             Description1     Statement A
Proc. Model                      Statement C
                                                         Description2     Statement B

Ongoing Work      Precondition ...                       Description3     Statement C
                  Action         ...                    Precondition ...
                  Postcondition ...                     Action          ...
                                                        Postcondition ...



                   • rule-of-thumb: any statement which is explicitly
                         referenced has to be reified
                   • ordering accomplishable by means of “sortkey”
                         concept, cf. [Grønmo93]
Versioning of
TM Templates
and Scalability                                             Versioning
 M. Ueberall,
 O. Drobnik
                              Metadata for Units of Information, LTM notation

Introduction

Structuring       // <occurrence | association> ~object-ref
Versioning

Scalability       // dc: cf. http://dublincore.org/documents/dces (Dublin Core)
Proc. Model
                  {object-ref, dc:creation-date, [[2007-06-04T2359:59+01:00]]}
Ongoing Work
                  {object-ref, dc:version, [[version-id]]}
                  {object-ref, dc:author, [[user-id]]}
                  // skos: cf. http://w3.org/2004/02/skos (SKOS)
                  {object-ref, skos:changeNote, [[description]]}
                  ...

                  is-replaced-by(object-ref1 :old-obj, object-ref2 :new-obj)
                  is-deprecated(object-ref3 :obj)
                  is-deleted(object-ref4 :obj)
Versioning of
TM Templates
and Scalability                                              Versioning and Scalability
 M. Ueberall,
 O. Drobnik
                                                                      Software Development Scenario

Introduction

Structuring         Phases / Artefacts                       Information Flow                                                Visualisations
                                                                                           domain specific                              forms-based
Versioning        Requirements Analysis Phase
                                                                                                               Annotation
                                                                                    Flight                                              UseCase       FlightBooking
Scalability                                                                                                                             Precond.      ...
                  - Use Cases                Status: . . .                         FlightBooking
                                                                                                    exte
                                                                                                         nds                            Postcond.      ...
                                                                                                                                        Depend.       ...
Proc. Model       - Business Cases                                                                                                      Conflicts     ...
                                                                                                                                        Actors         ...
                                                                                                   PrintTicket                          Requirem.     High-availability

Ongoing Work

                  Design Phase
                                                                                                                                        DesignPatt. Proxy
                                                                                                               «interface»
                                                                                                                                                    Comm. Decoupling
                  - Architectural Patterns   Status: . . .                Client
                                                                                           uses                 ServiceIF
                                                                                                           action()
                                                                                                                                        Purpose
                                                                                                                                        Synonyms     ...
                  - Design Patterns                                                                        ...                          Uses
                                                                                                                                        Structure
                                                                                                                                                    ...
                                                                                                                                                    ...
                                                                                   Annot                                                Depend.     ...
                                                                                   ation
                                                                                                                                        Conflicts    ...




                  Implementation Phase
                                                                                                      Annotation
                                                                                                                                        Implement.    TicketingService
                  - Packages                                                                                                            Precond.       ...
                                                                                                                                        Postcond.     ...
                  - Classes                                                                                                             Depend.       ...
                  - Code                     Status: . . .
                                                                                                                                        Conflicts
                                                                                                                                        DesignPatt.
                                                                                                                                                      ...
                                                                                                                                                      Proxy, ...
                                                                                   Package 1                     Package 2              Uses           ...
Versioning of
TM Templates
and Scalability                                              Versioning and Scalability
 M. Ueberall,
 O. Drobnik
                                                                      Software Development Scenario

Introduction

Structuring         Phases / Artefacts                       Information Flow                                                              Visualisations
                                                                                                  domain specific                                     forms-based
Versioning        Requirements Analysis Phase
                                                                                                                         Annotation
                                                                                           Flight                                                     UseCase       FlightBooking
Scalability                                                                                                                                           Precond.      ...
                  - Use Cases                Status: . . .                                FlightBooking
                                                                                                              exte
                                                                                                                   nds                                Postcond.      ...
                                                                                                                                                      Depend.       ...
Proc. Model       - Business Cases                                                                                                                    Conflicts     ...
                                                                                                                                                      Actors         ...
                                                                                                          PrintTicket                                 Requirem.     High-availability

Ongoing Work

                  Design Phase                                                                                    «interface»
                                                                                           uses                    ServiceIF
                                                                         Client                                  action()                             DesignPatt. Proxy
                                                                                                                 ...
                                             Decision: Use of                                                                                                     Comm. Decoupling
                  - Architectural Patterns                                                                                                            Purpose
                                                                                                                                                      Synonyms     ...
                                             proxy pattern for
                  - Design Patterns
                                                                                  Annot
                                                                                  ation                                                               Uses        ...
                                             client-server comm.                                                                                      Structure   ...
                                                                                                                                                      Depend.     ...
                                                                                                   ServiceProxy                 Service
                                                                                                                                                      Conflicts    ...
                                                                                                   action()                     action()




                  Implementation Phase
                                                                                                               Annotation
                                                                                                                                                      Implement.    TicketingService
                  - Packages                                                                                                                          Precond.       ...
                                                                                                                                                      Postcond.     ...
                  - Classes                                                                                                                           Depend.       ...
                  - Code                     Status: . . .
                                                                                                                                                      Conflicts
                                                                                                                                                      DesignPatt.
                                                                                                                                                                    ...
                                                                                                                                                                    Proxy, ...
                                                                                          Package 1                         Package 2                 Uses           ...
Versioning of
TM Templates
and Scalability                                              Versioning and Scalability
 M. Ueberall,
 O. Drobnik
                                                                      Software Development Scenario

Introduction

Structuring         Phases / Artefacts                       Information Flow                                                              Visualisations
                                                                                                  domain specific                                     forms-based
Versioning        Requirements Analysis Phase
                                                                                                                         Annotation
                                                                                           Flight                                                     UseCase       FlightBooking
Scalability                                                                                                                                           Precond.      ...
                  - Use Cases                Status: . . .                                FlightBooking
                                                                                                              exte
                                                                                                                   nds                                Postcond.      ...
                                                                                                                                                      Depend.       ...
Proc. Model       - Business Cases                                                                                                                    Conflicts     ...
                                                                                                                                                      Actors         ...
                                                                                                          PrintTicket                                 Requirem.     High-availability

Ongoing Work

                  Design Phase                                                                                    «interface»
                                                                                           uses                    ServiceIF
                                                                         Client                                  action()                             DesignPatt. Proxy
                                                                                                                 ...
                                             Decision: Use of                                                                                                     Comm. Decoupling
                  - Architectural Patterns                                                                                                            Purpose
                                                                                                                                                      Synonyms     ...
                                             proxy pattern for
                  - Design Patterns
                                                                                  Annot
                                                                                  ation                                                               Uses        ...
                                             client-server comm.                                                                                      Structure   ...
                                                                                                                                                      Depend.     ...
                                                                                                   ServiceProxy                 Service
                                                                                                                                                      Conflicts    ...
                                                                                                   action()                     action()




                  Implementation Phase
                                                                                                               Annotation
                                                                                                                                                      Implement.    TicketingService
                  - Packages                                                                                                                          Precond.       ...
                                                                                                                                                      Postcond.     ...
                  - Classes                                                                                                                           Depend.       ...
                  - Code                     Status: . . .
                                                                                                                                                      Conflicts
                                                                                                                                                      DesignPatt.
                                                                                                                                                                    ...
                                                                                                                                                                    Proxy, ...
                                                                                          Package 1                         Package 2                 Uses           ...
Versioning of
TM Templates
and Scalability                                              Versioning and Scalability
 M. Ueberall,
 O. Drobnik
                                                                      Software Development Scenario

Introduction

Structuring         Phases / Artefacts                       Information Flow                                                              Visualisations
                                                                                                  domain specific                                     forms-based
Versioning        Requirements Analysis Phase
                                                                                                                         Annotation
                                                                                           Flight                                                     UseCase       FlightBooking
Scalability                                                                                                                                           Precond.      ...
                  - Use Cases                Status: . . .                                FlightBooking
                                                                                                              exte
                                                                                                                   nds                                Postcond.      ...
                                                                                                                                                      Depend.       ...
Proc. Model       - Business Cases                                                                                                                    Conflicts     ...
                                                                                                                                                      Actors         ...
                                                                                                          PrintTicket                                 Requirem.     High-availability

Ongoing Work

                  Design Phase                                                                                    «interface»
                                                                                           uses                    ServiceIF
                                                                         Client                                  action()                             DesignPatt. Proxy
                                                                                                                 ...
                                             Decision: Use of                                                                                                     Comm. Decoupling
                  - Architectural Patterns                                                                                                            Purpose
                                                                                                                                                      Synonyms     ...
                                             proxy pattern for
                  - Design Patterns
                                                                                  Annot
                                                                                  ation                                                               Uses        ...
                                             client-server comm.                                                                                      Structure   ...
                                                                                                                                                      Depend.     ...
                                                                                                   ServiceProxy                 Service
                                                                                                                                                      Conflicts    ...
                                                                                                   action()                     action()




                  Implementation Phase
                                                                                                               Annotation
                                                                                                                                                      Implement.    TicketingService
                  - Packages                                                                                                                          Precond.       ...
                                             Constraint violation:                                                                                    Postcond.     ...
                  - Classes                                                                                                                           Depend.       ...
                                             Implementation not in
                  - Code                                                                                                                              Conflicts
                                                                                                                                                      DesignPatt.
                                                                                                                                                                    ...
                                                                                                                                                                    Proxy, ...
                                             sync with new Design                         Package 1                         Package 2                 Uses           ...
                                             Pattern
Versioning of
TM Templates
and Scalability                                        Versioning and Scalability
 M. Ueberall,
 O. Drobnik
                                                                     Software Development Scenario

Introduction

Structuring         Phases / Artefacts                    Information Flow                                                               Visualisations
                                                                                                domain specific                                     forms-based
Versioning        Requirements Analysis Phase
                                                                                                                       Annotation
                                                                                         Flight
                                             Status: Use case                                                                                       UseCase       FlightBooking
Scalability                                                                                                                                         Precond.      ...
                  - Use Cases                addressed, but not                         FlightBooking
                                                                                                            exte
                                                                                                                 nds                                Postcond.      ...
                                             implemented yet                                                                                        Depend.       ...
Proc. Model       - Business Cases                                                                                                                  Conflicts     ...
                                                                                                                                                    Actors         ...
                                                                                                        PrintTicket                                 Requirem.     High-availability

Ongoing Work

                  Design Phase                                                                                  «interface»
                                                                                         uses                    ServiceIF
                                                                       Client                                  action()                             DesignPatt. Proxy
                                                                                                               ...
                                             Decision: Use of                                                                                                   Comm. Decoupling
                  - Architectural Patterns                                                                                                          Purpose
                                                                                                                                                    Synonyms     ...
                                             proxy pattern for
                  - Design Patterns
                                                                                Annot
                                                                                ation                                                               Uses        ...
                                             client-server comm.                                                                                    Structure   ...
                                                                                                                                                    Depend.     ...
                                                                                                 ServiceProxy                 Service
                                                                                                                                                    Conflicts    ...
                                                                                                 action()                     action()




                  Implementation Phase
                                                                                                             Annotation
                                                                                                                                                    Implement.    TicketingService
                  - Packages                                                                                                                        Precond.       ...
                                             Constraint violation:                                                                                  Postcond.     ...
                  - Classes                                                                                                                         Depend.       ...
                                             Implementation not in
                  - Code                                                                                                                            Conflicts
                                                                                                                                                    DesignPatt.
                                                                                                                                                                  ...
                                                                                                                                                                  Proxy, ...
                                             sync with new Design                       Package 1                         Package 2                 Uses           ...
                                             Pattern
Versioning of
TM Templates
and Scalability                  Versioning and Scalability
 M. Ueberall,
 O. Drobnik

Introduction      • The key to Scalability is always some kind of
Structuring         “divide-and-conquer” method
Versioning
                  • In our case → exploitation of combined known
Scalability
                    advantages of both Topic Map based representations
Proc. Model
                    and hierarchical structuring:
Ongoing Work
                      • Querying and Filtering: each participant is presented a
                        view which contains concepts from his domain of
                        knowledge
                      • Interlinked Representations: all changes are
                        propagated (and thereby “mapped” according to
                        pre-defined/user-supplied constraints) and require
                        reconcilliation
                      • Communication Complexity: i.e., modifications can be
                        exchanged by means of Topic Map Fragments
                        → Meta Process Model
Versioning of
TM Templates
and Scalability                        Meta Process Model
 M. Ueberall,
 O. Drobnik

Introduction

Structuring

Versioning
                  • Simple approach consists of two alternating
Scalability

Proc. Model
                    subphases:
Ongoing Work
                      • summarisation: annotation of own modifications
                      • exploration: finding of others’ modifications

                  • Conflicts can be resolved using, e.g.,
                      • computer-driven matchings of concepts
                      • computer-aided reconcillation
Versioning of
TM Templates
and Scalability                    Prototype: Ongoing Work
 M. Ueberall,
 O. Drobnik

Introduction

Structuring       • modularised querying/filtering support for preliminary
Versioning          prototype
Scalability           • evaluation with regard to more complex development
Proc. Model             scenarios
Ongoing Work          • combination with other Eclipse plugins, e.g., pattern
                        scanners
                  • medium-term objective: support for coping with
                    ontology changes and/or mergers within meta process
                    model subphases
                  • long-term objective: support of operations as needed
                    for decentralised version management (n-way merge)
Versioning of
TM Templates
and Scalability

 M. Ueberall,
 O. Drobnik

Introduction

Structuring

Versioning

Scalability

Proc. Model

Ongoing Work


                  Thank you!

                  e-mail to:
                  ueberall@tm.informatik.uni-frankfurt.de
Versioning of
TM Templates
and Scalability                           (Nested) Templates
 M. Ueberall,
 O. Drobnik
                                                               Definition

Introduction

Structuring
                  • A Template consists of any combination of related
Versioning

Scalability
                    individual Topic Map Objects
Proc. Model
                      • used for instantiation of concepts as identifyable objects
                      • important component: human-readalbe description of
Ongoing Work
                        the underlying semantics
                  • Nested Templates are Templates which include
                    references to other Templates
                      • derivation of new definitions through extension and/or
                        combination of existing (base) concepts
                        (analogous to the underlying principle for DITA (Darwin
                        Information Typing Architecture), though the latter does
                        not support, e.g., typed associations
Versioning of
TM Templates
and Scalability                                       Constraints
 M. Ueberall,
 O. Drobnik
                                                              Definition

Introduction

Structuring

Versioning
                  • constraints are particularly usage restrictions
Scalability       • basic types of constraints include:
Proc. Model           • cardinality constraints: define the allowed cardinalities
Ongoing Work            of instances of a Topic Map object (e.g., a certain role
                        within an association)
                      • type/role constraints: ensure that Topic Map objects are
                        used according to their initial semantic definition (cf.
                        NCPL occurrence-type, topic-type)
                      • scope: can be seen as extension of the foremention
                        item, if applicable using the scope operator (e.g.,
                        context-sensitive description of roles: person’s age,
                        age)
Versioning of
TM Templates
and Scalability              Usage Restrictions for Templates
 M. Ueberall,
 O. Drobnik
                                                                                      Constraints Example

Introduction

Structuring

Versioning                    Name            ...                Name           ...                Name          ...
                              UseCase         FlightBooking      UseCase        FlightBooking      UseCase       FlightBooking
Scalability
                                       Name:          Customer            Name:         Customer            Name:         Customer
                                       Type:          Person              Type: ...     Person              Type: ...     Person
Proc. Model                   Actor    Age: ...       18         Actor                             Actor
                                                                          Person’s age: 18                  Person’s age: 18
                                       Age:           30
Ongoing Work                  Precondition ...                   Precondition ...                  Precondition ...
                  Customer    Action          ...                Action         ...                Action        ...
                              Postcondition ...                  Postcondition ...                 Age:



                              (a)                                (b)                               (c)



                  (a) cardinality constraint for “Age”
                  (b) context-sensitive labeling
                  (c) occurrence-type cannot be used as template attribute
Versioning of
TM Templates
and Scalability                     Hierarchical Structuring
 M. Ueberall,
 O. Drobnik

Introduction

Structuring

Versioning        • Hierarchical structuring facilitates the underlying
Scalability         application logics, which are needed for nested
Proc. Model         template support (e.g., for dealing with
Ongoing Work        context-sensitive handling of inputs)
                  • the TMDM (Topic Map Data Model) specification only
                    lists basic relations like supertype-subtype which
                    are not flexible enough (for our purposes)
                  • in particular, the faceted classification system comes in
                    handy
Versioning of
TM Templates
and Scalability                     Hierarchical Structuring
 M. Ueberall,
 O. Drobnik
                                         Faceted classification: Definition

Introduction

Structuring

Versioning        • A faceted classification system allows the assignment
Scalability         of multiple classifications to an object
Proc. Model
                  • this enables the classifications to be ordered in multiple
Ongoing Work
                    ways, rather than in a single, pre-determined,
                    taxonomic order
                  • The most prominent use of faceted classification is in
                    faceted navigation systems that enable a user to
                    navigate information hierarchically, going from a
                    category to its sub-categories, but choosing the order in
                    which the categories are presented
Versioning of
TM Templates
and Scalability                                         Versioning
 M. Ueberall,
 O. Drobnik
                                                               Definition

Introduction

Structuring

Versioning

Scalability
                  • Versioning is conceived as management of multiple
Proc. Model
                    revisions of the “same” unit of information
Ongoing Work
                      • in our context: unit of information = template/instance

                  • Minimum requirement: unique version id (not
                    necessarily human-readable) and ancestor information
                      • in practice (collaborative environments), additional
                        metadata (author, date, comment, ...) is essential
Versioning of
TM Templates
and Scalability                                               Versioning
 M. Ueberall,
 O. Drobnik
                       Importance of the Directed Acyclic Graph structure

Introduction                                  branch (copy)
                                   1.7                          1.7.1.1
Structuring

Versioning

Scalability                                                     1.7.1.2
Proc. Model                        1.8
                                                 merge
Ongoing Work                                                    1.7.1.3
                                   1.9


                                  1.10
                                                 merge
                                                                1.7.1.4


                                                                1.7.1.5
                                                merge
                                  1.11

                  (cf. http://www.kerneltraffic.org/kernel-traffic/kt20030323_210.txt)

More Related Content

Similar to Versioning of TM Templates and Scalability

Agile comparison with requriement approaches
Agile comparison with requriement approachesAgile comparison with requriement approaches
Agile comparison with requriement approachesfungfung Chen
 
Overcoming The Impedance Mismatch Between Source Code And Architecture
Overcoming The Impedance Mismatch Between Source Code And ArchitectureOvercoming The Impedance Mismatch Between Source Code And Architecture
Overcoming The Impedance Mismatch Between Source Code And ArchitecturePeter Friese
 
Azure Service Fabric and the Actor Model: when did we forget Object Orientation?
Azure Service Fabric and the Actor Model: when did we forget Object Orientation?Azure Service Fabric and the Actor Model: when did we forget Object Orientation?
Azure Service Fabric and the Actor Model: when did we forget Object Orientation?João Pedro Martins
 
SSTC-2012 BenKBovée 2933 Mapping & Modeling Defense Domain Architectures 26-Apr
SSTC-2012 BenKBovée 2933 Mapping & Modeling Defense Domain Architectures 26-AprSSTC-2012 BenKBovée 2933 Mapping & Modeling Defense Domain Architectures 26-Apr
SSTC-2012 BenKBovée 2933 Mapping & Modeling Defense Domain Architectures 26-AprBenton "Ben" Bovée
 
Extending Rotor with Structural Reflection to support Reflective Languages
Extending Rotor with Structural Reflection to support Reflective LanguagesExtending Rotor with Structural Reflection to support Reflective Languages
Extending Rotor with Structural Reflection to support Reflective Languagesfranciscoortin
 
Event-driven Model Transformations in Domain-specific Modeling Languages
Event-driven Model Transformations in Domain-specific Modeling LanguagesEvent-driven Model Transformations in Domain-specific Modeling Languages
Event-driven Model Transformations in Domain-specific Modeling LanguagesIstvan Rath
 
TAO DAYS - Integration of 3rd party components into TAO
TAO DAYS - Integration of 3rd party components into TAOTAO DAYS - Integration of 3rd party components into TAO
TAO DAYS - Integration of 3rd party components into TAOOpen Assessment Technologies
 
SiriusCon 2015 - Breathe Life into Your Designer!
SiriusCon 2015 - Breathe Life into Your Designer!SiriusCon 2015 - Breathe Life into Your Designer!
SiriusCon 2015 - Breathe Life into Your Designer!melbats
 
Zotonic presentation Erlang Camp Boston, august 2011
Zotonic presentation Erlang Camp Boston, august 2011Zotonic presentation Erlang Camp Boston, august 2011
Zotonic presentation Erlang Camp Boston, august 2011Arjan
 
Object oriented design-UNIT V
Object oriented design-UNIT VObject oriented design-UNIT V
Object oriented design-UNIT VAzhar Shaik
 
Framework Engineering Revisited
Framework Engineering RevisitedFramework Engineering Revisited
Framework Engineering RevisitedYoungSu Son
 
Model-Driven Development in the context of Software Product Lines
Model-Driven Development in the context of Software Product LinesModel-Driven Development in the context of Software Product Lines
Model-Driven Development in the context of Software Product LinesMarkus Voelter
 
Business processes, business rules, complex event processing, the JBoss way
Business processes, business rules, complex event processing, the JBoss wayBusiness processes, business rules, complex event processing, the JBoss way
Business processes, business rules, complex event processing, the JBoss wayKris Verlaenen
 
JSUG - Filthy Flex by Christoph Pickl
JSUG - Filthy Flex by Christoph PicklJSUG - Filthy Flex by Christoph Pickl
JSUG - Filthy Flex by Christoph PicklChristoph Pickl
 
ActiveTM - A Topic Maps - Object Mapper
ActiveTM - A Topic Maps - Object MapperActiveTM - A Topic Maps - Object Mapper
ActiveTM - A Topic Maps - Object Mappertmra
 
JUSG - Event Driven Architectures by Alexander Schatten
JUSG - Event Driven Architectures by Alexander SchattenJUSG - Event Driven Architectures by Alexander Schatten
JUSG - Event Driven Architectures by Alexander SchattenChristoph Pickl
 
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptUNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptVGaneshKarthikeyan
 
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptUNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptVGaneshKarthikeyan
 

Similar to Versioning of TM Templates and Scalability (20)

Unified Modeling Language
Unified Modeling LanguageUnified Modeling Language
Unified Modeling Language
 
Agile comparison with requriement approaches
Agile comparison with requriement approachesAgile comparison with requriement approaches
Agile comparison with requriement approaches
 
Overcoming The Impedance Mismatch Between Source Code And Architecture
Overcoming The Impedance Mismatch Between Source Code And ArchitectureOvercoming The Impedance Mismatch Between Source Code And Architecture
Overcoming The Impedance Mismatch Between Source Code And Architecture
 
Azure Service Fabric and the Actor Model: when did we forget Object Orientation?
Azure Service Fabric and the Actor Model: when did we forget Object Orientation?Azure Service Fabric and the Actor Model: when did we forget Object Orientation?
Azure Service Fabric and the Actor Model: when did we forget Object Orientation?
 
SSTC-2012 BenKBovée 2933 Mapping & Modeling Defense Domain Architectures 26-Apr
SSTC-2012 BenKBovée 2933 Mapping & Modeling Defense Domain Architectures 26-AprSSTC-2012 BenKBovée 2933 Mapping & Modeling Defense Domain Architectures 26-Apr
SSTC-2012 BenKBovée 2933 Mapping & Modeling Defense Domain Architectures 26-Apr
 
Extending Rotor with Structural Reflection to support Reflective Languages
Extending Rotor with Structural Reflection to support Reflective LanguagesExtending Rotor with Structural Reflection to support Reflective Languages
Extending Rotor with Structural Reflection to support Reflective Languages
 
Event-driven Model Transformations in Domain-specific Modeling Languages
Event-driven Model Transformations in Domain-specific Modeling LanguagesEvent-driven Model Transformations in Domain-specific Modeling Languages
Event-driven Model Transformations in Domain-specific Modeling Languages
 
TAO DAYS - Integration of 3rd party components into TAO
TAO DAYS - Integration of 3rd party components into TAOTAO DAYS - Integration of 3rd party components into TAO
TAO DAYS - Integration of 3rd party components into TAO
 
SiriusCon 2015 - Breathe Life into Your Designer!
SiriusCon 2015 - Breathe Life into Your Designer!SiriusCon 2015 - Breathe Life into Your Designer!
SiriusCon 2015 - Breathe Life into Your Designer!
 
Zotonic presentation Erlang Camp Boston, august 2011
Zotonic presentation Erlang Camp Boston, august 2011Zotonic presentation Erlang Camp Boston, august 2011
Zotonic presentation Erlang Camp Boston, august 2011
 
Object oriented design-UNIT V
Object oriented design-UNIT VObject oriented design-UNIT V
Object oriented design-UNIT V
 
Framework Engineering Revisited
Framework Engineering RevisitedFramework Engineering Revisited
Framework Engineering Revisited
 
Model-Driven Development in the context of Software Product Lines
Model-Driven Development in the context of Software Product LinesModel-Driven Development in the context of Software Product Lines
Model-Driven Development in the context of Software Product Lines
 
Business processes, business rules, complex event processing, the JBoss way
Business processes, business rules, complex event processing, the JBoss wayBusiness processes, business rules, complex event processing, the JBoss way
Business processes, business rules, complex event processing, the JBoss way
 
JSUG - Filthy Flex by Christoph Pickl
JSUG - Filthy Flex by Christoph PicklJSUG - Filthy Flex by Christoph Pickl
JSUG - Filthy Flex by Christoph Pickl
 
Windows phone and azure
Windows phone and azureWindows phone and azure
Windows phone and azure
 
ActiveTM - A Topic Maps - Object Mapper
ActiveTM - A Topic Maps - Object MapperActiveTM - A Topic Maps - Object Mapper
ActiveTM - A Topic Maps - Object Mapper
 
JUSG - Event Driven Architectures by Alexander Schatten
JUSG - Event Driven Architectures by Alexander SchattenJUSG - Event Driven Architectures by Alexander Schatten
JUSG - Event Driven Architectures by Alexander Schatten
 
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptUNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
 
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptUNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
 

Recently uploaded

Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesFatimaKhan178732
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfchloefrazer622
 
Micromeritics - Fundamental and Derived Properties of Powders
Micromeritics - Fundamental and Derived Properties of PowdersMicromeritics - Fundamental and Derived Properties of Powders
Micromeritics - Fundamental and Derived Properties of PowdersChitralekhaTherkar
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdfssuser54595a
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdfSoniaTolstoy
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptxVS Mahajan Coaching Centre
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfsanyamsingh5019
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...Marc Dusseiller Dusjagr
 
PSYCHIATRIC History collection FORMAT.pptx
PSYCHIATRIC   History collection FORMAT.pptxPSYCHIATRIC   History collection FORMAT.pptx
PSYCHIATRIC History collection FORMAT.pptxPoojaSen20
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentInMediaRes1
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxGaneshChakor2
 
URLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppURLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppCeline George
 
Science 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsScience 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsKarinaGenton
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxOH TEIK BIN
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionSafetyChain Software
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxpboyjonauth
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxRoyAbrique
 

Recently uploaded (20)

Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and Actinides
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdf
 
Micromeritics - Fundamental and Derived Properties of Powders
Micromeritics - Fundamental and Derived Properties of PowdersMicromeritics - Fundamental and Derived Properties of Powders
Micromeritics - Fundamental and Derived Properties of Powders
 
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdf
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
 
PSYCHIATRIC History collection FORMAT.pptx
PSYCHIATRIC   History collection FORMAT.pptxPSYCHIATRIC   History collection FORMAT.pptx
PSYCHIATRIC History collection FORMAT.pptx
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media Component
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptx
 
URLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppURLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website App
 
Science 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsScience 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its Characteristics
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptx
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory Inspection
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptx
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
 

Versioning of TM Templates and Scalability

  • 1. Versioning of TM Templates and Scalability M. Ueberall, O. Drobnik Introduction Structuring Versioning of Topic Map Templates Versioning Scalability and Scalability Proc. Model Ongoing Work M. Ueberall, O. Drobnik Telematics Group, Institute of Computer Science J. W. Goethe-University, Frankfurt/Main, Germany 2007 / 10 / 12
  • 2. Versioning of TM Templates and Scalability Motivation and Objective M. Ueberall, O. Drobnik Introduction Structuring • Problems in the context of software development Versioning processes: Scalability • participants use concepts from different knowledge Proc. Model domains → information overflow Ongoing Work • insufficient communications → traceability deficits • Our approach is based on • Templates consisting of Topic Map Objects → lightweight representation • version management → traceability • meta process model → communications support • role-based filtering → scalability
  • 3. Versioning of TM Templates and Scalability (Nested) Templates M. Ueberall, O. Drobnik Example Introduction Structuring Versioning Semi-formal Representation Scalability Use Case <<actor>> (Template containing Topic Map Objects) BookingSystem Proc. Model Name ... Ongoing Work UseCase FlightBooking Actor ... Book flight Precondition ... Action ... Postcondition ... Customer Name: Customer Type: Person Description: ...
  • 4. Versioning of TM Templates and Scalability (Nested) Templates M. Ueberall, O. Drobnik Nesting Example Introduction Structuring Versioning Semi-formal Representation Scalability Use Case <<actor>> (Template containing Topic Map Objects) BookingSystem Proc. Model Name ... Ongoing Work UseCase FlightBooking Name: Customer Book flight Actor Type: ... Person Description: ... Precondition ... Customer Action ... Postcondition ... Name: Customer Type: Person Description: ...
  • 5. Versioning of TM Templates and Scalability Usage Restrictions for Templates M. Ueberall, O. Drobnik Constraints in LTM notation Introduction Structuring Versioning Scalability [person : topic-type = "Person"] Proc. Model [age : occurrence-type = "Age" = "Person’s Age" /person ~toc1] Ongoing Work [toc1 : topic-occurrence-constraint = "Topic Occurrence Constraint Label for Occurrence ’Age’"] {toc1, max-cardinality, [[1]]} • embedded constraints as opposed to linked/embedded schemas allow for unified handling of versioning
  • 6. Versioning of TM Templates and Scalability Faceted Classification M. Ueberall, O. Drobnik Browser Example Introduction Structuring Versioning Scalability Proc. Model Ongoing Work
  • 7. Versioning of TM Templates and Scalability Faceted classification M. Ueberall, O. Drobnik LTM notation (1) Introduction Structuring // cf. [Ahmed2003] (Proc. Extreme Markup Languages) Versioning #PREFIX tmhd @"http://www.techquila.com/psi/hierarchy/#" Scalability Proc. Model #PREFIX tmtd @"http://www.techquila.com/psi/thesaurus/#" Ongoing Work #PREFIX tmfd @"http://www.techquila.com/psi/faceted-classification/#" [all-templates : tmfd:facet = "Set of all Templates"] [template-facet : tmfd:facet = "Template Facet"] tmfd:facet-has-hierarchy-type(template-facet : tmfd:facet, tmfd:subcategory-supercategory : tmfd:facet-hierarchy-type) tmfd:facet-has-root(template-facet : tmfd:facet, all-templates : tmfd:facet-root)
  • 8. Versioning of TM Templates and Scalability Faceted classification M. Ueberall, O. Drobnik LTM notation (2) Introduction Structuring // taken from the UML Superstructure specification, cf. [UD06] Versioning [actor : template-class = "Actor"] Scalability Proc. Model Ongoing Work tmfd:subcategory-supercategory(actor : tmhd:subcategory, all-templates : tmhd:supercategory) tmfd:subcategory-supercategory(person : tmhd:subcategory, actor : tmhd:supercategory) tmfd:subcategory-supercategory(legal-entity : tmhd:subcategory, actor : tmhd:supercategory) tmtd:part-whole(actor : tmtd:whole, role : tmtd:part) tmtd:part-whole(person : tmtd:whole, age : tmtd:part)
  • 9. Versioning of TM Templates and Scalability Versioning M. Ueberall, O. Drobnik Example: Proxy Design Pattern Introduction uses Service Client Structuring action() V1 Versioning V1 Service- Scalability Annotation Proc. Model V1 Ongoing Work
  • 10. Versioning of TM Templates and Scalability Versioning M. Ueberall, O. Drobnik Example: Proxy Design Pattern Introduction uses Service Client Structuring action() V1 Versioning V1 Service- Scalability decoupling Annotation Proc. Model V1 Ongoing Work «interface» uses ServiceIF Client action() V1 ... V1 Client- Annotation V1 V1 V2 ServiceProxy Service action() action() Service- Annotation V1
  • 11. Versioning of TM Templates and Scalability Versioning M. Ueberall, O. Drobnik Granularity of Objects Introduction Structuring Name ... Name ... Versioning UseCase FlightBooking UseCase FlightBooking Scalability Description Statement A Description Statement B Description1 Statement A Proc. Model Statement C Description2 Statement B Ongoing Work Precondition ... Description3 Statement C Action ... Precondition ... Postcondition ... Action ... Postcondition ... • rule-of-thumb: any statement which is explicitly referenced has to be reified • ordering accomplishable by means of “sortkey” concept, cf. [Grønmo93]
  • 12. Versioning of TM Templates and Scalability Versioning M. Ueberall, O. Drobnik Metadata for Units of Information, LTM notation Introduction Structuring // <occurrence | association> ~object-ref Versioning Scalability // dc: cf. http://dublincore.org/documents/dces (Dublin Core) Proc. Model {object-ref, dc:creation-date, [[2007-06-04T2359:59+01:00]]} Ongoing Work {object-ref, dc:version, [[version-id]]} {object-ref, dc:author, [[user-id]]} // skos: cf. http://w3.org/2004/02/skos (SKOS) {object-ref, skos:changeNote, [[description]]} ... is-replaced-by(object-ref1 :old-obj, object-ref2 :new-obj) is-deprecated(object-ref3 :obj) is-deleted(object-ref4 :obj)
  • 13. Versioning of TM Templates and Scalability Versioning and Scalability M. Ueberall, O. Drobnik Software Development Scenario Introduction Structuring Phases / Artefacts Information Flow Visualisations domain specific forms-based Versioning Requirements Analysis Phase Annotation Flight UseCase FlightBooking Scalability Precond. ... - Use Cases Status: . . . FlightBooking exte nds Postcond. ... Depend. ... Proc. Model - Business Cases Conflicts ... Actors ... PrintTicket Requirem. High-availability Ongoing Work Design Phase DesignPatt. Proxy «interface» Comm. Decoupling - Architectural Patterns Status: . . . Client uses ServiceIF action() Purpose Synonyms ... - Design Patterns ... Uses Structure ... ... Annot Depend. ... ation Conflicts ... Implementation Phase Annotation Implement. TicketingService - Packages Precond. ... Postcond. ... - Classes Depend. ... - Code Status: . . . Conflicts DesignPatt. ... Proxy, ... Package 1 Package 2 Uses ...
  • 14. Versioning of TM Templates and Scalability Versioning and Scalability M. Ueberall, O. Drobnik Software Development Scenario Introduction Structuring Phases / Artefacts Information Flow Visualisations domain specific forms-based Versioning Requirements Analysis Phase Annotation Flight UseCase FlightBooking Scalability Precond. ... - Use Cases Status: . . . FlightBooking exte nds Postcond. ... Depend. ... Proc. Model - Business Cases Conflicts ... Actors ... PrintTicket Requirem. High-availability Ongoing Work Design Phase «interface» uses ServiceIF Client action() DesignPatt. Proxy ... Decision: Use of Comm. Decoupling - Architectural Patterns Purpose Synonyms ... proxy pattern for - Design Patterns Annot ation Uses ... client-server comm. Structure ... Depend. ... ServiceProxy Service Conflicts ... action() action() Implementation Phase Annotation Implement. TicketingService - Packages Precond. ... Postcond. ... - Classes Depend. ... - Code Status: . . . Conflicts DesignPatt. ... Proxy, ... Package 1 Package 2 Uses ...
  • 15. Versioning of TM Templates and Scalability Versioning and Scalability M. Ueberall, O. Drobnik Software Development Scenario Introduction Structuring Phases / Artefacts Information Flow Visualisations domain specific forms-based Versioning Requirements Analysis Phase Annotation Flight UseCase FlightBooking Scalability Precond. ... - Use Cases Status: . . . FlightBooking exte nds Postcond. ... Depend. ... Proc. Model - Business Cases Conflicts ... Actors ... PrintTicket Requirem. High-availability Ongoing Work Design Phase «interface» uses ServiceIF Client action() DesignPatt. Proxy ... Decision: Use of Comm. Decoupling - Architectural Patterns Purpose Synonyms ... proxy pattern for - Design Patterns Annot ation Uses ... client-server comm. Structure ... Depend. ... ServiceProxy Service Conflicts ... action() action() Implementation Phase Annotation Implement. TicketingService - Packages Precond. ... Postcond. ... - Classes Depend. ... - Code Status: . . . Conflicts DesignPatt. ... Proxy, ... Package 1 Package 2 Uses ...
  • 16. Versioning of TM Templates and Scalability Versioning and Scalability M. Ueberall, O. Drobnik Software Development Scenario Introduction Structuring Phases / Artefacts Information Flow Visualisations domain specific forms-based Versioning Requirements Analysis Phase Annotation Flight UseCase FlightBooking Scalability Precond. ... - Use Cases Status: . . . FlightBooking exte nds Postcond. ... Depend. ... Proc. Model - Business Cases Conflicts ... Actors ... PrintTicket Requirem. High-availability Ongoing Work Design Phase «interface» uses ServiceIF Client action() DesignPatt. Proxy ... Decision: Use of Comm. Decoupling - Architectural Patterns Purpose Synonyms ... proxy pattern for - Design Patterns Annot ation Uses ... client-server comm. Structure ... Depend. ... ServiceProxy Service Conflicts ... action() action() Implementation Phase Annotation Implement. TicketingService - Packages Precond. ... Constraint violation: Postcond. ... - Classes Depend. ... Implementation not in - Code Conflicts DesignPatt. ... Proxy, ... sync with new Design Package 1 Package 2 Uses ... Pattern
  • 17. Versioning of TM Templates and Scalability Versioning and Scalability M. Ueberall, O. Drobnik Software Development Scenario Introduction Structuring Phases / Artefacts Information Flow Visualisations domain specific forms-based Versioning Requirements Analysis Phase Annotation Flight Status: Use case UseCase FlightBooking Scalability Precond. ... - Use Cases addressed, but not FlightBooking exte nds Postcond. ... implemented yet Depend. ... Proc. Model - Business Cases Conflicts ... Actors ... PrintTicket Requirem. High-availability Ongoing Work Design Phase «interface» uses ServiceIF Client action() DesignPatt. Proxy ... Decision: Use of Comm. Decoupling - Architectural Patterns Purpose Synonyms ... proxy pattern for - Design Patterns Annot ation Uses ... client-server comm. Structure ... Depend. ... ServiceProxy Service Conflicts ... action() action() Implementation Phase Annotation Implement. TicketingService - Packages Precond. ... Constraint violation: Postcond. ... - Classes Depend. ... Implementation not in - Code Conflicts DesignPatt. ... Proxy, ... sync with new Design Package 1 Package 2 Uses ... Pattern
  • 18. Versioning of TM Templates and Scalability Versioning and Scalability M. Ueberall, O. Drobnik Introduction • The key to Scalability is always some kind of Structuring “divide-and-conquer” method Versioning • In our case → exploitation of combined known Scalability advantages of both Topic Map based representations Proc. Model and hierarchical structuring: Ongoing Work • Querying and Filtering: each participant is presented a view which contains concepts from his domain of knowledge • Interlinked Representations: all changes are propagated (and thereby “mapped” according to pre-defined/user-supplied constraints) and require reconcilliation • Communication Complexity: i.e., modifications can be exchanged by means of Topic Map Fragments → Meta Process Model
  • 19. Versioning of TM Templates and Scalability Meta Process Model M. Ueberall, O. Drobnik Introduction Structuring Versioning • Simple approach consists of two alternating Scalability Proc. Model subphases: Ongoing Work • summarisation: annotation of own modifications • exploration: finding of others’ modifications • Conflicts can be resolved using, e.g., • computer-driven matchings of concepts • computer-aided reconcillation
  • 20. Versioning of TM Templates and Scalability Prototype: Ongoing Work M. Ueberall, O. Drobnik Introduction Structuring • modularised querying/filtering support for preliminary Versioning prototype Scalability • evaluation with regard to more complex development Proc. Model scenarios Ongoing Work • combination with other Eclipse plugins, e.g., pattern scanners • medium-term objective: support for coping with ontology changes and/or mergers within meta process model subphases • long-term objective: support of operations as needed for decentralised version management (n-way merge)
  • 21. Versioning of TM Templates and Scalability M. Ueberall, O. Drobnik Introduction Structuring Versioning Scalability Proc. Model Ongoing Work Thank you! e-mail to: ueberall@tm.informatik.uni-frankfurt.de
  • 22. Versioning of TM Templates and Scalability (Nested) Templates M. Ueberall, O. Drobnik Definition Introduction Structuring • A Template consists of any combination of related Versioning Scalability individual Topic Map Objects Proc. Model • used for instantiation of concepts as identifyable objects • important component: human-readalbe description of Ongoing Work the underlying semantics • Nested Templates are Templates which include references to other Templates • derivation of new definitions through extension and/or combination of existing (base) concepts (analogous to the underlying principle for DITA (Darwin Information Typing Architecture), though the latter does not support, e.g., typed associations
  • 23. Versioning of TM Templates and Scalability Constraints M. Ueberall, O. Drobnik Definition Introduction Structuring Versioning • constraints are particularly usage restrictions Scalability • basic types of constraints include: Proc. Model • cardinality constraints: define the allowed cardinalities Ongoing Work of instances of a Topic Map object (e.g., a certain role within an association) • type/role constraints: ensure that Topic Map objects are used according to their initial semantic definition (cf. NCPL occurrence-type, topic-type) • scope: can be seen as extension of the foremention item, if applicable using the scope operator (e.g., context-sensitive description of roles: person’s age, age)
  • 24. Versioning of TM Templates and Scalability Usage Restrictions for Templates M. Ueberall, O. Drobnik Constraints Example Introduction Structuring Versioning Name ... Name ... Name ... UseCase FlightBooking UseCase FlightBooking UseCase FlightBooking Scalability Name: Customer Name: Customer Name: Customer Type: Person Type: ... Person Type: ... Person Proc. Model Actor Age: ... 18 Actor Actor Person’s age: 18 Person’s age: 18 Age: 30 Ongoing Work Precondition ... Precondition ... Precondition ... Customer Action ... Action ... Action ... Postcondition ... Postcondition ... Age: (a) (b) (c) (a) cardinality constraint for “Age” (b) context-sensitive labeling (c) occurrence-type cannot be used as template attribute
  • 25. Versioning of TM Templates and Scalability Hierarchical Structuring M. Ueberall, O. Drobnik Introduction Structuring Versioning • Hierarchical structuring facilitates the underlying Scalability application logics, which are needed for nested Proc. Model template support (e.g., for dealing with Ongoing Work context-sensitive handling of inputs) • the TMDM (Topic Map Data Model) specification only lists basic relations like supertype-subtype which are not flexible enough (for our purposes) • in particular, the faceted classification system comes in handy
  • 26. Versioning of TM Templates and Scalability Hierarchical Structuring M. Ueberall, O. Drobnik Faceted classification: Definition Introduction Structuring Versioning • A faceted classification system allows the assignment Scalability of multiple classifications to an object Proc. Model • this enables the classifications to be ordered in multiple Ongoing Work ways, rather than in a single, pre-determined, taxonomic order • The most prominent use of faceted classification is in faceted navigation systems that enable a user to navigate information hierarchically, going from a category to its sub-categories, but choosing the order in which the categories are presented
  • 27. Versioning of TM Templates and Scalability Versioning M. Ueberall, O. Drobnik Definition Introduction Structuring Versioning Scalability • Versioning is conceived as management of multiple Proc. Model revisions of the “same” unit of information Ongoing Work • in our context: unit of information = template/instance • Minimum requirement: unique version id (not necessarily human-readable) and ancestor information • in practice (collaborative environments), additional metadata (author, date, comment, ...) is essential
  • 28. Versioning of TM Templates and Scalability Versioning M. Ueberall, O. Drobnik Importance of the Directed Acyclic Graph structure Introduction branch (copy) 1.7 1.7.1.1 Structuring Versioning Scalability 1.7.1.2 Proc. Model 1.8 merge Ongoing Work 1.7.1.3 1.9 1.10 merge 1.7.1.4 1.7.1.5 merge 1.11 (cf. http://www.kerneltraffic.org/kernel-traffic/kt20030323_210.txt)