SlideShare ist ein Scribd-Unternehmen logo
1 von 25
Downloaden Sie, um offline zu lesen
TM Templates
     and
 Traceability

 O. Drobnik,
 M. Ueberall

Introduction

Templates

Traceability    On Topic Map Templates and Traceability
Phase
Transitions

Navigation
                             O. Drobnik, M. Ueberall
Conclusion

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


                                    2006 / 10 / 11
TM Templates
     and
 Traceability                        Motivation and Objective
 O. Drobnik,
 M. Ueberall

Introduction

Templates
                Problems in Software Development:
Traceability      • participants (e.g., stakeholders, designers,
Phase               programmers) with different objectives and domain
Transitions
                    knowledge (consistent conceptualisations)
Navigation

Conclusion        • any loss of information to be considered fatal
                    (traceability)
                  • semantics-preserving phase transitions

                Own approach based on:
                  • use of lightweight representations (Topic Maps!)
                  • development process guidance by means of Templates
TM Templates
     and
 Traceability                                       Approach: Overview
 O. Drobnik,
 M. Ueberall
                                                                                 Annotation
Introduction                                                                                    (forms-based template)
                                                    Flight                                        …          ……………...
Templates                                                                                         …          ……………...
                Requirements                       FlightBooking
                                                                    exte
                                                                           nds                    …          ……………...
                                                                                                                           Stake-
                                                                                                  …          ……………...
Traceability     Engineering       Use Cases                                                      …          ……………...     holders
                   Phase                                           PrintTicket
                                                                                                  …
                                                                                                  ...
                                                                                                             ……………...
Phase
Transitions

Navigation
                                                                                 Annotation
Conclusion
                                                                                                  …          ……………...
                                                                                                  …          ……………...
                   Design            Models                                                       …          ……………...
                                                                                                  …          ……………...    Designers
                   Phase         Design Patterns                                                  …          ……………...
                                                                                                  …          ……………...
                                                                                                  ...




                                                                   Annotation
                                                                                                  …          ……………...
                                                                                                  …          ……………...
                Implementation       Packages                                                     …
                                                                                                  …
                                                                                                             ……………...
                                                                                                             ……………...
                                                                                                                         Program-
                    Phase             Classes                                                     …          ……………...      mers
                                                                                                  …          ……………...
                                                   Package 1                        Package 2     ...
TM Templates
     and
 Traceability                       Use Case Specification
 O. Drobnik,
 M. Ueberall

Introduction

Templates       Concepts from the UML 2.0 Superstructure are, e.g.:
Traceability
                  • use case: specification of a set of actions performed by
Phase
Transitions         a system, yielding an observable result of value for one
Navigation          or more actors
Conclusion
                  • actor: role played by a user or any other system that
                    interacts with the subject
                  • extend: relationship specifying that the behaviour of a
                    use case may be extended by that of another
                  • include: relationship defining that a use case contains
                    the behaviour in another one
TM Templates
     and
 Traceability                                             Use Case Example
 O. Drobnik,
 M. Ueberall

Introduction

Templates

Traceability
                                             Annotation
Phase
Transitions

Navigation        Flight
Conclusion
                FlightBooking
                                exte
                                       nds

                                PrintTicket



                     (a) UML notation
TM Templates
     and
 Traceability                                             Use Case Example
 O. Drobnik,
 M. Ueberall

Introduction

Templates

Traceability
                                                                                                              Actor
                                             Annotation                                        ent
Phase                                                                                   lvem ent
Transitions                                                           extends       invo         m
                                                                                             olve
                                                                                         inv             comment
Navigation        Flight
Conclusion                                                                                      ~                     i
                FlightBooking
                                exte                         FlightBooking       PrintTicket
                                       nds                                                           Flight    Annotation
                                                           ExtendedUseCase   ExtendingUseCase

                                PrintTicket



                     (a) UML notation                              (b) TM representation
TM Templates
     and
 Traceability                       Templates: Definitions
 O. Drobnik,
 M. Ueberall

Introduction

Templates

Traceability
                • A Topic Map Template is a Topic Map “that only
Phase             consists of topics that are declared in order to be used
Transitions
                  as types in a class of topic maps” [ISO working group]
Navigation

Conclusion
                • Association Templates are models that introduce
                  constraints [Biezunski/Newcomb]

                • A single Template is “the formal declaration of a
                  required Pattern for a given association type”, a Pattern
                  is “the structure of an individual association” [Vatant]
TM Templates
     and
 Traceability       Templates: Generic Basic Types
 O. Drobnik,
 M. Ueberall

Introduction

Templates

Traceability

Phase                                  Comment              supports
Transitions          Question

Navigation                                                contradicts
                    Information         Creator
Conclusion
                      Theory                                leads-to
                                        Version
                     Problem                             connected-with


                Topic Types       Occurrence Types   Association Types
TM Templates
     and
 Traceability                          Flight Booking Example
 O. Drobnik,
 M. Ueberall
                                                               LTM notation

Introduction    // topic types
Templates
                [Actor = "Actor" @"http://.../UML_Superstructure/UseCases/#Actor"]
                [UseCase = "UseCase" @"http://.../UML_Superstructure/UseCases/#UseCase"]
Traceability

Phase           // role definitions
Transitions
                [placeholder = "placeholder" @"http://.../Templates/#Placeholder"]
Navigation      [ExtendingUseCase : UseCase = "ExtendingUseCase" @"http://..."]
Conclusion      [ExtendedUseCase : UseCase = "ExtendedUseCase" @"http://..."]
                [IncludingUseCase : UseCase = "IncludingUseCase" @"http://..."]
                [IncludedUseCase : UseCase = "IncludedUseCase" @"http://..."]

                // association types
                [extends = "extends" @"http://.../UML_Superstructure/UseCases/#Extend"]
                [includes = "includes" @"http://.../UML_Superstructure/UseCases/#Include"]

                // “examples” of associations
                extends(placeholder : ExtendedUseCase, placeholder : ExtendingUseCase)
                includes(placeholder : IncludingUseCase, placeholder : IncludedUseCase)
TM Templates
     and
 Traceability                               Nested Templates Example
 O. Drobnik,
 M. Ueberall

Introduction

Templates
                   domain                                                               Name
                            [ :UseCaseDescription]
Traceability                                                                            UseCase
                independent is-part-of( :UseCaseDescription, :UseCase)       leads-to
                                                                                        Actor                       empty
                               is-part-of( :UseCaseDescription, :Actor)
Phase                                                                                   Precond.                    mask
                               Is-part-of( :UseCaseDescription, :Precond)
Transitions                                                                             Action
                  domain       Is-part-of( :UseCaseDescription, :Action)
                                                                                        Postcond.
                  specific     Is-part-of( :UseCaseDescription, :Postcond)
Navigation                                                                              ...

Conclusion                            instance-of                                        instance-of


                                UseCaseDescription-related templates                    UseCaseDescription form


                   domain                                                               Name     FlightBookingDsc
                            [FlightBookingDsc:UseCaseDescription]
                                                                                        UseCase FlightBooking
                independent is-part-of(FlightBookingDsc,FlightBooking)       leads-to                               filled-in
                                                                                        Actor     Customer
                               is-part-of(FlightBookingDsc,Customer)                                                  form
                                                                                        Precond. „Ticket needed“
                               is-part-of(FlightBookingDsc,_preF.B.Dsc)
                                                                                        Action    „contact FRS“
                  domain       is-part-of(FlightBookingDsc,_actF.B.Dsc)
                                                                                        Postcond. „got Ticket“
                  specific     is-part-of(FlightBookingDsc,_postF.B.Dsc)
                                                                                        ...
                                                          Instance-of
TM Templates
     and
 Traceability                      Flight Booking Example (I)
 O. Drobnik,
 M. Ueberall
                                                               LTM notation

Introduction    // initial use case with actor
Templates
                [FlightBooking : UseCase = "FlightBooking" @"http://.../#FlightBooking"]
                [Customer = "Customer" @"http://.../#Customer"]
Traceability
                tmdm:supertype-subtype(Actor, Customer)
Phase
Transitions
                // a complete use case description links use cases and actors
Navigation      [UseCaseDescription]
Conclusion      exmpltm:is-part-of(placeholder:UseCaseDescription, placeholder:UseCase)
                exmpltm:is-part-of(placeholder:UseCaseDescription, placeholder:Actor)

                // a customer is an individual person with certain attributes
                [Person = "Person" @"http://.../#Person"]
                [Address = "Address" @"http://.../#Person_Address"]
                [Age = "Age" @"http://.../#Person_Age"]
                [BankingAccount = "BankingAccount" @"http://.../#Person_BankingAccount"]
                exmpltm:has-attribute(placeholder : Person, placeholder : Address)
                exmpltm:has-attribute(placeholder : Person, placeholder : Age)
                exmpltm:has-attribute(placeholder : Person, placeholder : BankingAccount)
                tmdm:supertype-subtype(Customer, Person)
TM Templates
     and
 Traceability                     Flight Booking Example (II)
 O. Drobnik,
 M. Ueberall
                                                               LTM notation

Introduction    // use case refinement
Templates
                [RC : UseCase = "RegisterCustomer" @"http://..."]
                [DT : UseCase = "DeliverTicket" @"http://..."]
Traceability
                ...
Phase
Transitions
                includes(FlightBooking : IncludingUseCase, RC : IncludedUseCase) ~ INCL
Navigation      extends(FlightBooking : ExtendedUseCase, DT : ExtendingUseCase) ~ EXTD
Conclusion
TM Templates
     and
 Traceability                      Traceability: Definitions
 O. Drobnik,
 M. Ueberall

Introduction

Templates

Traceability    • In the general sense, traceability denotes the ability to
Phase
Transitions
                  chronologically interrelate the uniquely identifiable
Navigation
                  entities to ensure the completeness of information
Conclusion        about every step within a process chain

                • In software development, the term refers to the ability to
                  link the requirements set forth at the beginning of a
                  project to the corresponding design artefacts, the
                  resulting software, and associated test cases
TM Templates
     and
 Traceability         Traceability and Requirements Engineering
 O. Drobnik,
 M. Ueberall

Introduction    Individual development steps must be comprehensible
Templates
                  • within the same phase of development (intra-phase)
Traceability

Phase             • between (consecutive) phases of development
Transitions
                    (inter-phase)
Navigation

Conclusion

                First, prevent incorrect use of concepts (cf. “extend”
                example earlier on)
                  • Templates have to be augmented by usage restrictions
                    (using constraints)
                  • Validation rules can be expressed in terms of (boolean)
                    predicates or queries
TM Templates
     and
 Traceability                               Intra-Phase Consistency
 O. Drobnik,
 M. Ueberall

                                                                                 Annotation
Introduction                                                                                    (forms-based template)

Templates                                           Flight                                        …          ……………...
                                                                                                  …          ……………...
                Requirements                       FlightBooking
                                                                    exte
                                                                           nds                    …          ……………...
                                                                                                                           Stake-
Traceability     Engineering       Use Cases                                                      …          ……………...
                                                                                                  …          ……………...     holders
Phase              Phase                                           PrintTicket
                                                                                                  …
                                                                                                  ...
                                                                                                             ……………...

Transitions

Navigation
                                                                                 Annotation
Conclusion
                                                                                                  …          ……………...
                                                                                                  …          ……………...
                   Design            Models                                                       …          ……………...
                                                                                                  …          ……………...    Designers
                   Phase         Design Patterns                                                  …          ……………...
                                                                                                  …          ……………...
                                                                                                  ...




                                                                   Annotation
                                                                                                  …          ……………...
                                                                                                  …          ……………...
                Implementation       Packages                                                     …
                                                                                                  …
                                                                                                             ……………...
                                                                                                             ……………...
                                                                                                                         Program-
                    Phase             Classes                                                     …          ……………...      mers
                                                                                                  …          ……………...
                                                   Package 1                        Package 2     ...
TM Templates
     and
 Traceability        Intra-Phase Consistency: Using Constraints
 O. Drobnik,
 M. Ueberall
                                                           OSL notation

Introduction

Templates
                [Constraint = "Constraint" @"http://.../Restrictions/#Constraint"]
Traceability
                {extends, Constraint, [[<association>
Phase
Transitions       <instanceOf><internalTopicRef href="#extends"/></instanceOf>
Navigation        <role min="1" max="1">
Conclusion          <instanceOf><internalTopicRef href="#ExtendingUseCase"/>
                      </instanceOf>
                    <player><internalTopicRef href="#UseCase"/></player>
                  </role>
                  <role min="1" max="1">
                    <instanceOf><internalTopicRef href="#ExtendedUseCase"/>
                      </instanceOf>
                    <player><internalTopicRef href="#UseCase"/></player></role>
                  </association>]]}
TM Templates
     and
 Traceability         Intra-Phase Consistency: Using Predicates
 O. Drobnik,
 M. Ueberall
                                                    TMQL/AsTMA= notation

Introduction

Templates

Traceability

Phase
                [Predicate = "Predicate" @"http://..."]
Transitions     {UseCase, Predicate, [[is-valid-indirect isa tmql_predicate where: """
Navigation        is-valid (UseCase: $usecase) &
Conclusion        not (extends(ExtendedUseCase: $usecase’,
                               ExtendingUseCase: $usecase) &
                  not(is-valid-indirect(UseCase: $usecase’))) &
                  not (includes(IncludedUseCase: $usecase’’,
                                IncludingUseCase: $usecase) &
                  not(is-valid-indirect(UseCase: $usecase’’))) """
                ]]}
TM Templates
     and
 Traceability       Consistency-preserving Phase Transitions
 O. Drobnik,
 M. Ueberall

Introduction
                • Phase Transitions require a consistent mapping (e.g.,
Templates
                  requirements have to be mapped to design artefacts)
Traceability

Phase
                • This kind of mapping can be supported by additional
Transitions
                  regulations concerning Templates from both phases
Navigation
                  (e.g., any use case instance has to be associated with
Conclusion
                  at least one design pattern instance)

                • Violations of these regulations have to be handled
                  differently (temporarily invalid constructs should not be
                  rejected at once)

                • Regulations (i.e., constraints) can also be used to make
                  sure that certain required steps during development
                  phase transitions are performed
TM Templates
     and
 Traceability                               Inter-Phase Consistency
 O. Drobnik,
 M. Ueberall

                                                                                 Annotation
Introduction                                                                                    (forms-based template)
                                                    Flight                                        …          ……………...
Templates                                                                                         …          ……………...
                Requirements                       FlightBooking
                                                                    exte
                                                                           nds                    …          ……………...
                                                                                                                           Stake-
Traceability     Engineering       Use Cases                                                      …          ……………...
                                                                                                  …          ……………...     holders
                   Phase                                                                          …          ……………...
Phase                                                              PrintTicket                    ...

Transitions

Navigation
                                                                                 Annotation
Conclusion
                                                                                                  …          ……………...
                                                                                                  …          ……………...
                   Design            Models                                                       …          ……………...
                                                                                                  …          ……………...    Designers
                   Phase         Design Patterns                                                  …          ……………...
                                                                                                  …          ……………...
                                                                                                  ...




                                                                   Annotation
                                                                                                  …          ……………...
                                                                                                  …          ……………...
                Implementation       Packages                                                     …
                                                                                                  …
                                                                                                             ……………...
                                                                                                             ……………...
                                                                                                                         Program-
                    Phase             Classes                                                     …          ……………...      mers
                                                                                                  …          ……………...
                                                   Package 1                        Package 2     ...
TM Templates
     and
 Traceability   Consistency-preserving Phase Transitions: Using Queries
 O. Drobnik,
 M. Ueberall

Introduction
                 [Query = "Query" @"http://..."]
Templates
                 [DesignPattern = "DesignPattern" @"http://..."]
Traceability
                 {UseCase, Query, [[
Phase
Transitions        SELECT $usecase WHERE
Navigation
                   applies-to($usecase : UseCase, $designpattern :
Conclusion
                              DesignPattern)]]}

                 [Component = "SoftwareComponent" @"http://..."]
                 {UseCase, Query, [[
                   SELECT $usecase WHERE
                   applies-to($usecase : UseCase, $designpattern :
                              DesignPattern) AND
                   is-implemented-by($designpattern : DesignPattern,
                                     $comp : Component)]]}
TM Templates
     and
 Traceability                             Navigation and Views
 O. Drobnik,
 M. Ueberall

Introduction
                Different views and objectives of participants involve, e.g.,
Templates

Traceability      • different (phase-dependent) concepts
Phase
Transitions
                  • different needs of details
Navigation        • different notations
Conclusion

                Therefore, flexible visualisation, (semantic) zooming and
                filtering capabilities are needed
                  • possible visualisations: Conceptual Graphs, UML
                    diagrams, code fragments
                  • predicate-based queries (also address scalability
                    aspects)
TM Templates
     and
 Traceability                       Navigation and Views: Overview
 O. Drobnik,
 M. Ueberall

                                                Status: not                                                       Status:
Introduction    req. eng. phase
                                               implemented                                                      implemented

Templates                          Name         xxxxxxxx           Name        xxxxxxxx            Name         xxxxxxxx
                                   UseCase      xxxxxxxx           UseCase     xxxxxxxx            UseCase      xxxxxxxx
                                   Actor        xxxxxxxx           Actor       xxxxxxxx            Actor        xxxxxxxx
Traceability                       Precond.     xxxxxxxx           Precond.    xxxxxxxx            Precond.     xxxxxxxx
                                   Action       xxxxxxxx           Action      xxxxxxxx            Action       xxxxxxxx
                                   Postcond.    xxxxxxxx           Postcond.   xxxxxxxx            Postcond.    xxxxxxxx
Phase                              ...                             ...                             ...

Transitions

Navigation                                                                                                applies-to
                design phase




Conclusion
                implement. phase




                                                              implemented-by      implemented-by        implemented-by




                                          xxxx                    xxxx             xxxx                  xxxx
                                                                                                                               pending
                                                                                                                              questions
TM Templates
     and
 Traceability                                        View Definitions
 O. Drobnik,
 M. Ueberall
                                                                 LTM notation

Introduction    [View = "View" @"http://..."]
Templates
                [JAR = "JavaArchive" @"http://.../Application/#JavaArchive"]
                [Filter : JAR = "FilterLogics" @"http://.../Application/#FilterLogics"]
Traceability
                [Display : JAR = "DisplayLogics" @"http://.../Application/#DisplayLogics"]
Phase
Transitions     [Editor : JAR = "EditorLogics" @"http://.../Application/#EditorLogics"]
Navigation      uses-layouter(placeholder:View, placeholder:Layouter)
Conclusion      has-filter(placeholder:View, placeholder:Filter)
                has-display(placeholder:View, placeholder:Template, placeholder:Display)
                has-editor(placeholder:View, placeholder:Template, placeholder:Editor)
                is-connected(placeholder:View, placeholder:View)

                [FormsEditor:Editor = %"http://.../Application/FormsEditor.jar"]
                [UseCaseDescView:View = @"http://.../Application/#UseCaseDescriptionView"]
                [DesignPatternView:View = @"http://.../Application/#DesignPatternView"]
                has-editor(UseCaseDescView, UseCaseDescription, FormsEditor)
                is-connected(UseCaseDescView, DesignPatternView)
                ...
TM Templates
     and
 Traceability                     State of Implementation
 O. Drobnik,
 M. Ueberall

Introduction
                • (Re-)Implementing a lightweight Topic Maps engine
Templates
                  with needed parsing/serialising facilities (using AOP
Traceability
                  techniques)
Phase
Transitions

Navigation      • Investigating rules to
Conclusion           • generate forms-driven dialogs from template definitions
                     • support traceability
                     • facilitate navigation and generate reports (“executive
                       summaries”)

                • Evaluating different query languages (cf. earlier slides)

                • Medium-term goal: Eclipse 3.2 Plugin
                  (Prototype: Q1/2007)
TM Templates
     and
 Traceability

 O. Drobnik,
 M. Ueberall

Introduction

Templates

Traceability

Phase
Transitions

Navigation

Conclusion

                Thank you!

                e-mail to:
                ueberall@tm.informatik.uni-frankfurt.de

Weitere ähnliche Inhalte

Andere mochten auch

Raffaello Talò Kunst Warenhaus Zurigo
Raffaello Talò Kunst Warenhaus ZurigoRaffaello Talò Kunst Warenhaus Zurigo
Raffaello Talò Kunst Warenhaus ZurigoRaffaello Talò
 
Curriculum Vitae - Luis Fernández del Campo
Curriculum Vitae - Luis Fernández del CampoCurriculum Vitae - Luis Fernández del Campo
Curriculum Vitae - Luis Fernández del CampoLuis Fernández del Campo
 
Javier Badaracco
Javier Badaracco Javier Badaracco
Javier Badaracco IAB México
 
Generalidades viaje china 15
Generalidades viaje china 15Generalidades viaje china 15
Generalidades viaje china 15Fabien Marcel
 
¿Qué es la Vitrificación de Óvulos?
¿Qué es la Vitrificación de Óvulos?¿Qué es la Vitrificación de Óvulos?
¿Qué es la Vitrificación de Óvulos?cliniferdf
 
Klein Mendez & Rothbard LLC and Molieri & Co., P.A
Klein Mendez & Rothbard LLC and Molieri & Co., P.AKlein Mendez & Rothbard LLC and Molieri & Co., P.A
Klein Mendez & Rothbard LLC and Molieri & Co., P.AJose Valderrama
 
Redes sociales, buscadores y plataformas de Ecommerce en China para empresas
Redes sociales, buscadores y plataformas de Ecommerce en China para empresasRedes sociales, buscadores y plataformas de Ecommerce en China para empresas
Redes sociales, buscadores y plataformas de Ecommerce en China para empresasHenkuai
 
Panel 1 Foro Concesiones - Presentación Juan Mauricio Ramírez - DNP
Panel 1 Foro Concesiones - Presentación Juan Mauricio Ramírez - DNPPanel 1 Foro Concesiones - Presentación Juan Mauricio Ramírez - DNP
Panel 1 Foro Concesiones - Presentación Juan Mauricio Ramírez - DNPForos Semana
 
10. Lagrimas En La Lluvia
10. Lagrimas En La Lluvia10. Lagrimas En La Lluvia
10. Lagrimas En La Lluviaangelessaura
 
Industrial relations - Industrial relations in the 21st century: concepts, to...
Industrial relations - Industrial relations in the 21st century: concepts, to...Industrial relations - Industrial relations in the 21st century: concepts, to...
Industrial relations - Industrial relations in the 21st century: concepts, to...Eurofound
 
Presentación ciberbullying, sexting y grooming
Presentación ciberbullying, sexting y groomingPresentación ciberbullying, sexting y grooming
Presentación ciberbullying, sexting y groomingDavid Romero Martín
 
Testbash Philly: A Mob Testing Experience
Testbash Philly: A Mob Testing ExperienceTestbash Philly: A Mob Testing Experience
Testbash Philly: A Mob Testing ExperienceMaaret Pyhäjärvi
 
Tema 25. la nueva racionalidad (caro)
Tema 25. la nueva racionalidad (caro)Tema 25. la nueva racionalidad (caro)
Tema 25. la nueva racionalidad (caro)Ieu Al Educador
 

Andere mochten auch (20)

Raffaello Talò Kunst Warenhaus Zurigo
Raffaello Talò Kunst Warenhaus ZurigoRaffaello Talò Kunst Warenhaus Zurigo
Raffaello Talò Kunst Warenhaus Zurigo
 
Curriculum Vitae - Luis Fernández del Campo
Curriculum Vitae - Luis Fernández del CampoCurriculum Vitae - Luis Fernández del Campo
Curriculum Vitae - Luis Fernández del Campo
 
Mecanica d fluidos
Mecanica d fluidosMecanica d fluidos
Mecanica d fluidos
 
Javier Badaracco
Javier Badaracco Javier Badaracco
Javier Badaracco
 
Generalidades viaje china 15
Generalidades viaje china 15Generalidades viaje china 15
Generalidades viaje china 15
 
¿Qué es la Vitrificación de Óvulos?
¿Qué es la Vitrificación de Óvulos?¿Qué es la Vitrificación de Óvulos?
¿Qué es la Vitrificación de Óvulos?
 
Programa de las Fiestas del Pino 2015
Programa de las Fiestas del Pino 2015Programa de las Fiestas del Pino 2015
Programa de las Fiestas del Pino 2015
 
Klein Mendez & Rothbard LLC and Molieri & Co., P.A
Klein Mendez & Rothbard LLC and Molieri & Co., P.AKlein Mendez & Rothbard LLC and Molieri & Co., P.A
Klein Mendez & Rothbard LLC and Molieri & Co., P.A
 
Redes sociales, buscadores y plataformas de Ecommerce en China para empresas
Redes sociales, buscadores y plataformas de Ecommerce en China para empresasRedes sociales, buscadores y plataformas de Ecommerce en China para empresas
Redes sociales, buscadores y plataformas de Ecommerce en China para empresas
 
Bungee jumping
Bungee jumping Bungee jumping
Bungee jumping
 
Well Rehabilitation Solutions Presentation - Geoquip Water Solutions Ltd
Well Rehabilitation Solutions Presentation - Geoquip Water Solutions LtdWell Rehabilitation Solutions Presentation - Geoquip Water Solutions Ltd
Well Rehabilitation Solutions Presentation - Geoquip Water Solutions Ltd
 
Panel 1 Foro Concesiones - Presentación Juan Mauricio Ramírez - DNP
Panel 1 Foro Concesiones - Presentación Juan Mauricio Ramírez - DNPPanel 1 Foro Concesiones - Presentación Juan Mauricio Ramírez - DNP
Panel 1 Foro Concesiones - Presentación Juan Mauricio Ramírez - DNP
 
La alimentacion proyecto
La alimentacion proyectoLa alimentacion proyecto
La alimentacion proyecto
 
10. Lagrimas En La Lluvia
10. Lagrimas En La Lluvia10. Lagrimas En La Lluvia
10. Lagrimas En La Lluvia
 
Industrial relations - Industrial relations in the 21st century: concepts, to...
Industrial relations - Industrial relations in the 21st century: concepts, to...Industrial relations - Industrial relations in the 21st century: concepts, to...
Industrial relations - Industrial relations in the 21st century: concepts, to...
 
Presentación ciberbullying, sexting y grooming
Presentación ciberbullying, sexting y groomingPresentación ciberbullying, sexting y grooming
Presentación ciberbullying, sexting y grooming
 
Body Area
Body AreaBody Area
Body Area
 
Testbash Philly: A Mob Testing Experience
Testbash Philly: A Mob Testing ExperienceTestbash Philly: A Mob Testing Experience
Testbash Philly: A Mob Testing Experience
 
Cantiléver: ¿Un recurso válido?
Cantiléver: ¿Un recurso válido?Cantiléver: ¿Un recurso válido?
Cantiléver: ¿Un recurso válido?
 
Tema 25. la nueva racionalidad (caro)
Tema 25. la nueva racionalidad (caro)Tema 25. la nueva racionalidad (caro)
Tema 25. la nueva racionalidad (caro)
 

Ähnlich wie On Topic Map Templates and Traceability

Sonoma County Wildlife Rescue PR Campaign
Sonoma County Wildlife Rescue PR CampaignSonoma County Wildlife Rescue PR Campaign
Sonoma County Wildlife Rescue PR CampaignEJurbina
 
Micro-benchmarking the Tera MTA
Micro-benchmarking the Tera MTAMicro-benchmarking the Tera MTA
Micro-benchmarking the Tera MTAJason Riedy
 
Samsung Smart TV Cinema Application UX Guideline
Samsung Smart TV Cinema Application UX GuidelineSamsung Smart TV Cinema Application UX Guideline
Samsung Smart TV Cinema Application UX GuidelineKeyFruit Inc.
 
Brandon Hupp's Portfolio
Brandon Hupp's PortfolioBrandon Hupp's Portfolio
Brandon Hupp's PortfolioBrandon
 
Internet research tutorial
Internet research tutorialInternet research tutorial
Internet research tutorialMelissa Hall
 
Pspice userguide ingles
Pspice userguide inglesPspice userguide ingles
Pspice userguide inglesunoenero
 
Real-Time Non-Photorealistic Shadow Rendering
Real-Time Non-Photorealistic Shadow RenderingReal-Time Non-Photorealistic Shadow Rendering
Real-Time Non-Photorealistic Shadow RenderingTamás Martinec
 
2013 Security Threat Report
2013 Security Threat Report2013 Security Threat Report
2013 Security Threat ReportSophos
 
Computer graphics lecturenotes_torontouniv
Computer graphics lecturenotes_torontounivComputer graphics lecturenotes_torontouniv
Computer graphics lecturenotes_torontounivDereje Dhufera
 
Climate Change Road Map
Climate Change Road MapClimate Change Road Map
Climate Change Road MapShane Mitchell
 
Vehicle dynamics De Tradus
Vehicle dynamics De TradusVehicle dynamics De Tradus
Vehicle dynamics De TradusEdward Radulescu
 
Roland Berger PPT Sample
Roland Berger PPT SampleRoland Berger PPT Sample
Roland Berger PPT Samplehaigou
 

Ähnlich wie On Topic Map Templates and Traceability (20)

Sonoma County Wildlife Rescue PR Campaign
Sonoma County Wildlife Rescue PR CampaignSonoma County Wildlife Rescue PR Campaign
Sonoma County Wildlife Rescue PR Campaign
 
Roland Berger
Roland Berger Roland Berger
Roland Berger
 
Micro-benchmarking the Tera MTA
Micro-benchmarking the Tera MTAMicro-benchmarking the Tera MTA
Micro-benchmarking the Tera MTA
 
Samsung Smart TV Cinema Application UX Guideline
Samsung Smart TV Cinema Application UX GuidelineSamsung Smart TV Cinema Application UX Guideline
Samsung Smart TV Cinema Application UX Guideline
 
Brandon Hupp's Portfolio
Brandon Hupp's PortfolioBrandon Hupp's Portfolio
Brandon Hupp's Portfolio
 
Internet research tutorial
Internet research tutorialInternet research tutorial
Internet research tutorial
 
Branding Guidlines
Branding GuidlinesBranding Guidlines
Branding Guidlines
 
Pspice userguide ingles
Pspice userguide inglesPspice userguide ingles
Pspice userguide ingles
 
Manual Civil 3d Ingles
Manual Civil 3d InglesManual Civil 3d Ingles
Manual Civil 3d Ingles
 
Grafx
GrafxGrafx
Grafx
 
Di11 1
Di11 1Di11 1
Di11 1
 
Real-Time Non-Photorealistic Shadow Rendering
Real-Time Non-Photorealistic Shadow RenderingReal-Time Non-Photorealistic Shadow Rendering
Real-Time Non-Photorealistic Shadow Rendering
 
2013 Security Threat Report
2013 Security Threat Report2013 Security Threat Report
2013 Security Threat Report
 
2013 Security Report by Sophos
2013 Security Report by Sophos2013 Security Report by Sophos
2013 Security Report by Sophos
 
Computer graphics lecturenotes_torontouniv
Computer graphics lecturenotes_torontounivComputer graphics lecturenotes_torontouniv
Computer graphics lecturenotes_torontouniv
 
Climate Change Road Map
Climate Change Road MapClimate Change Road Map
Climate Change Road Map
 
Vehicle dynamics De Tradus
Vehicle dynamics De TradusVehicle dynamics De Tradus
Vehicle dynamics De Tradus
 
Sdr
SdrSdr
Sdr
 
Roland Berger PPT Sample
Roland Berger PPT SampleRoland Berger PPT Sample
Roland Berger PPT Sample
 
Cg notes
Cg notesCg notes
Cg notes
 

Kürzlich hochgeladen

Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfLike-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfMr Bounab Samir
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
Choosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for ParentsChoosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for Parentsnavabharathschool99
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxiammrhaywood
 
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxBarangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxCarlos105
 
Q4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptxQ4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptxnelietumpap1
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatYousafMalik24
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Celine George
 
Grade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptxGrade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptxChelloAnnAsuncion2
 
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Celine George
 
Science 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptxScience 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptxMaryGraceBautista27
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxHumphrey A Beña
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxthorishapillay1
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...JhezDiaz1
 
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYKayeClaireEstoconing
 

Kürzlich hochgeladen (20)

YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptxYOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
 
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfLike-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
 
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptxFINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
 
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptxYOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
 
Choosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for ParentsChoosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for Parents
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
 
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxBarangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
 
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🔝
 
Q4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptxQ4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptx
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice great
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17
 
Grade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptxGrade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptx
 
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
 
Science 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptxScience 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptx
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptx
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
 
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
 
OS-operating systems- ch04 (Threads) ...
OS-operating systems- ch04 (Threads) ...OS-operating systems- ch04 (Threads) ...
OS-operating systems- ch04 (Threads) ...
 

On Topic Map Templates and Traceability

  • 1. TM Templates and Traceability O. Drobnik, M. Ueberall Introduction Templates Traceability On Topic Map Templates and Traceability Phase Transitions Navigation O. Drobnik, M. Ueberall Conclusion Telematics Group, Institute of Computer Science J. W. Goethe-University, Frankfurt/Main, Germany 2006 / 10 / 11
  • 2. TM Templates and Traceability Motivation and Objective O. Drobnik, M. Ueberall Introduction Templates Problems in Software Development: Traceability • participants (e.g., stakeholders, designers, Phase programmers) with different objectives and domain Transitions knowledge (consistent conceptualisations) Navigation Conclusion • any loss of information to be considered fatal (traceability) • semantics-preserving phase transitions Own approach based on: • use of lightweight representations (Topic Maps!) • development process guidance by means of Templates
  • 3. TM Templates and Traceability Approach: Overview O. Drobnik, M. Ueberall Annotation Introduction (forms-based template) Flight … ……………... Templates … ……………... Requirements FlightBooking exte nds … ……………... Stake- … ……………... Traceability Engineering Use Cases … ……………... holders Phase PrintTicket … ... ……………... Phase Transitions Navigation Annotation Conclusion … ……………... … ……………... Design Models … ……………... … ……………... Designers Phase Design Patterns … ……………... … ……………... ... Annotation … ……………... … ……………... Implementation Packages … … ……………... ……………... Program- Phase Classes … ……………... mers … ……………... Package 1 Package 2 ...
  • 4. TM Templates and Traceability Use Case Specification O. Drobnik, M. Ueberall Introduction Templates Concepts from the UML 2.0 Superstructure are, e.g.: Traceability • use case: specification of a set of actions performed by Phase Transitions a system, yielding an observable result of value for one Navigation or more actors Conclusion • actor: role played by a user or any other system that interacts with the subject • extend: relationship specifying that the behaviour of a use case may be extended by that of another • include: relationship defining that a use case contains the behaviour in another one
  • 5. TM Templates and Traceability Use Case Example O. Drobnik, M. Ueberall Introduction Templates Traceability Annotation Phase Transitions Navigation Flight Conclusion FlightBooking exte nds PrintTicket (a) UML notation
  • 6. TM Templates and Traceability Use Case Example O. Drobnik, M. Ueberall Introduction Templates Traceability Actor Annotation ent Phase lvem ent Transitions extends invo m olve inv comment Navigation Flight Conclusion ~ i FlightBooking exte FlightBooking PrintTicket nds Flight Annotation ExtendedUseCase ExtendingUseCase PrintTicket (a) UML notation (b) TM representation
  • 7. TM Templates and Traceability Templates: Definitions O. Drobnik, M. Ueberall Introduction Templates Traceability • A Topic Map Template is a Topic Map “that only Phase consists of topics that are declared in order to be used Transitions as types in a class of topic maps” [ISO working group] Navigation Conclusion • Association Templates are models that introduce constraints [Biezunski/Newcomb] • A single Template is “the formal declaration of a required Pattern for a given association type”, a Pattern is “the structure of an individual association” [Vatant]
  • 8. TM Templates and Traceability Templates: Generic Basic Types O. Drobnik, M. Ueberall Introduction Templates Traceability Phase Comment supports Transitions Question Navigation contradicts Information Creator Conclusion Theory leads-to Version Problem connected-with Topic Types Occurrence Types Association Types
  • 9. TM Templates and Traceability Flight Booking Example O. Drobnik, M. Ueberall LTM notation Introduction // topic types Templates [Actor = "Actor" @"http://.../UML_Superstructure/UseCases/#Actor"] [UseCase = "UseCase" @"http://.../UML_Superstructure/UseCases/#UseCase"] Traceability Phase // role definitions Transitions [placeholder = "placeholder" @"http://.../Templates/#Placeholder"] Navigation [ExtendingUseCase : UseCase = "ExtendingUseCase" @"http://..."] Conclusion [ExtendedUseCase : UseCase = "ExtendedUseCase" @"http://..."] [IncludingUseCase : UseCase = "IncludingUseCase" @"http://..."] [IncludedUseCase : UseCase = "IncludedUseCase" @"http://..."] // association types [extends = "extends" @"http://.../UML_Superstructure/UseCases/#Extend"] [includes = "includes" @"http://.../UML_Superstructure/UseCases/#Include"] // “examples” of associations extends(placeholder : ExtendedUseCase, placeholder : ExtendingUseCase) includes(placeholder : IncludingUseCase, placeholder : IncludedUseCase)
  • 10. TM Templates and Traceability Nested Templates Example O. Drobnik, M. Ueberall Introduction Templates domain Name [ :UseCaseDescription] Traceability UseCase independent is-part-of( :UseCaseDescription, :UseCase) leads-to Actor empty is-part-of( :UseCaseDescription, :Actor) Phase Precond. mask Is-part-of( :UseCaseDescription, :Precond) Transitions Action domain Is-part-of( :UseCaseDescription, :Action) Postcond. specific Is-part-of( :UseCaseDescription, :Postcond) Navigation ... Conclusion instance-of instance-of UseCaseDescription-related templates UseCaseDescription form domain Name FlightBookingDsc [FlightBookingDsc:UseCaseDescription] UseCase FlightBooking independent is-part-of(FlightBookingDsc,FlightBooking) leads-to filled-in Actor Customer is-part-of(FlightBookingDsc,Customer) form Precond. „Ticket needed“ is-part-of(FlightBookingDsc,_preF.B.Dsc) Action „contact FRS“ domain is-part-of(FlightBookingDsc,_actF.B.Dsc) Postcond. „got Ticket“ specific is-part-of(FlightBookingDsc,_postF.B.Dsc) ... Instance-of
  • 11. TM Templates and Traceability Flight Booking Example (I) O. Drobnik, M. Ueberall LTM notation Introduction // initial use case with actor Templates [FlightBooking : UseCase = "FlightBooking" @"http://.../#FlightBooking"] [Customer = "Customer" @"http://.../#Customer"] Traceability tmdm:supertype-subtype(Actor, Customer) Phase Transitions // a complete use case description links use cases and actors Navigation [UseCaseDescription] Conclusion exmpltm:is-part-of(placeholder:UseCaseDescription, placeholder:UseCase) exmpltm:is-part-of(placeholder:UseCaseDescription, placeholder:Actor) // a customer is an individual person with certain attributes [Person = "Person" @"http://.../#Person"] [Address = "Address" @"http://.../#Person_Address"] [Age = "Age" @"http://.../#Person_Age"] [BankingAccount = "BankingAccount" @"http://.../#Person_BankingAccount"] exmpltm:has-attribute(placeholder : Person, placeholder : Address) exmpltm:has-attribute(placeholder : Person, placeholder : Age) exmpltm:has-attribute(placeholder : Person, placeholder : BankingAccount) tmdm:supertype-subtype(Customer, Person)
  • 12. TM Templates and Traceability Flight Booking Example (II) O. Drobnik, M. Ueberall LTM notation Introduction // use case refinement Templates [RC : UseCase = "RegisterCustomer" @"http://..."] [DT : UseCase = "DeliverTicket" @"http://..."] Traceability ... Phase Transitions includes(FlightBooking : IncludingUseCase, RC : IncludedUseCase) ~ INCL Navigation extends(FlightBooking : ExtendedUseCase, DT : ExtendingUseCase) ~ EXTD Conclusion
  • 13. TM Templates and Traceability Traceability: Definitions O. Drobnik, M. Ueberall Introduction Templates Traceability • In the general sense, traceability denotes the ability to Phase Transitions chronologically interrelate the uniquely identifiable Navigation entities to ensure the completeness of information Conclusion about every step within a process chain • In software development, the term refers to the ability to link the requirements set forth at the beginning of a project to the corresponding design artefacts, the resulting software, and associated test cases
  • 14. TM Templates and Traceability Traceability and Requirements Engineering O. Drobnik, M. Ueberall Introduction Individual development steps must be comprehensible Templates • within the same phase of development (intra-phase) Traceability Phase • between (consecutive) phases of development Transitions (inter-phase) Navigation Conclusion First, prevent incorrect use of concepts (cf. “extend” example earlier on) • Templates have to be augmented by usage restrictions (using constraints) • Validation rules can be expressed in terms of (boolean) predicates or queries
  • 15. TM Templates and Traceability Intra-Phase Consistency O. Drobnik, M. Ueberall Annotation Introduction (forms-based template) Templates Flight … ……………... … ……………... Requirements FlightBooking exte nds … ……………... Stake- Traceability Engineering Use Cases … ……………... … ……………... holders Phase Phase PrintTicket … ... ……………... Transitions Navigation Annotation Conclusion … ……………... … ……………... Design Models … ……………... … ……………... Designers Phase Design Patterns … ……………... … ……………... ... Annotation … ……………... … ……………... Implementation Packages … … ……………... ……………... Program- Phase Classes … ……………... mers … ……………... Package 1 Package 2 ...
  • 16. TM Templates and Traceability Intra-Phase Consistency: Using Constraints O. Drobnik, M. Ueberall OSL notation Introduction Templates [Constraint = "Constraint" @"http://.../Restrictions/#Constraint"] Traceability {extends, Constraint, [[<association> Phase Transitions <instanceOf><internalTopicRef href="#extends"/></instanceOf> Navigation <role min="1" max="1"> Conclusion <instanceOf><internalTopicRef href="#ExtendingUseCase"/> </instanceOf> <player><internalTopicRef href="#UseCase"/></player> </role> <role min="1" max="1"> <instanceOf><internalTopicRef href="#ExtendedUseCase"/> </instanceOf> <player><internalTopicRef href="#UseCase"/></player></role> </association>]]}
  • 17. TM Templates and Traceability Intra-Phase Consistency: Using Predicates O. Drobnik, M. Ueberall TMQL/AsTMA= notation Introduction Templates Traceability Phase [Predicate = "Predicate" @"http://..."] Transitions {UseCase, Predicate, [[is-valid-indirect isa tmql_predicate where: """ Navigation is-valid (UseCase: $usecase) & Conclusion not (extends(ExtendedUseCase: $usecase’, ExtendingUseCase: $usecase) & not(is-valid-indirect(UseCase: $usecase’))) & not (includes(IncludedUseCase: $usecase’’, IncludingUseCase: $usecase) & not(is-valid-indirect(UseCase: $usecase’’))) """ ]]}
  • 18. TM Templates and Traceability Consistency-preserving Phase Transitions O. Drobnik, M. Ueberall Introduction • Phase Transitions require a consistent mapping (e.g., Templates requirements have to be mapped to design artefacts) Traceability Phase • This kind of mapping can be supported by additional Transitions regulations concerning Templates from both phases Navigation (e.g., any use case instance has to be associated with Conclusion at least one design pattern instance) • Violations of these regulations have to be handled differently (temporarily invalid constructs should not be rejected at once) • Regulations (i.e., constraints) can also be used to make sure that certain required steps during development phase transitions are performed
  • 19. TM Templates and Traceability Inter-Phase Consistency O. Drobnik, M. Ueberall Annotation Introduction (forms-based template) Flight … ……………... Templates … ……………... Requirements FlightBooking exte nds … ……………... Stake- Traceability Engineering Use Cases … ……………... … ……………... holders Phase … ……………... Phase PrintTicket ... Transitions Navigation Annotation Conclusion … ……………... … ……………... Design Models … ……………... … ……………... Designers Phase Design Patterns … ……………... … ……………... ... Annotation … ……………... … ……………... Implementation Packages … … ……………... ……………... Program- Phase Classes … ……………... mers … ……………... Package 1 Package 2 ...
  • 20. TM Templates and Traceability Consistency-preserving Phase Transitions: Using Queries O. Drobnik, M. Ueberall Introduction [Query = "Query" @"http://..."] Templates [DesignPattern = "DesignPattern" @"http://..."] Traceability {UseCase, Query, [[ Phase Transitions SELECT $usecase WHERE Navigation applies-to($usecase : UseCase, $designpattern : Conclusion DesignPattern)]]} [Component = "SoftwareComponent" @"http://..."] {UseCase, Query, [[ SELECT $usecase WHERE applies-to($usecase : UseCase, $designpattern : DesignPattern) AND is-implemented-by($designpattern : DesignPattern, $comp : Component)]]}
  • 21. TM Templates and Traceability Navigation and Views O. Drobnik, M. Ueberall Introduction Different views and objectives of participants involve, e.g., Templates Traceability • different (phase-dependent) concepts Phase Transitions • different needs of details Navigation • different notations Conclusion Therefore, flexible visualisation, (semantic) zooming and filtering capabilities are needed • possible visualisations: Conceptual Graphs, UML diagrams, code fragments • predicate-based queries (also address scalability aspects)
  • 22. TM Templates and Traceability Navigation and Views: Overview O. Drobnik, M. Ueberall Status: not Status: Introduction req. eng. phase implemented implemented Templates Name xxxxxxxx Name xxxxxxxx Name xxxxxxxx UseCase xxxxxxxx UseCase xxxxxxxx UseCase xxxxxxxx Actor xxxxxxxx Actor xxxxxxxx Actor xxxxxxxx Traceability Precond. xxxxxxxx Precond. xxxxxxxx Precond. xxxxxxxx Action xxxxxxxx Action xxxxxxxx Action xxxxxxxx Postcond. xxxxxxxx Postcond. xxxxxxxx Postcond. xxxxxxxx Phase ... ... ... Transitions Navigation applies-to design phase Conclusion implement. phase implemented-by implemented-by implemented-by xxxx xxxx xxxx xxxx pending questions
  • 23. TM Templates and Traceability View Definitions O. Drobnik, M. Ueberall LTM notation Introduction [View = "View" @"http://..."] Templates [JAR = "JavaArchive" @"http://.../Application/#JavaArchive"] [Filter : JAR = "FilterLogics" @"http://.../Application/#FilterLogics"] Traceability [Display : JAR = "DisplayLogics" @"http://.../Application/#DisplayLogics"] Phase Transitions [Editor : JAR = "EditorLogics" @"http://.../Application/#EditorLogics"] Navigation uses-layouter(placeholder:View, placeholder:Layouter) Conclusion has-filter(placeholder:View, placeholder:Filter) has-display(placeholder:View, placeholder:Template, placeholder:Display) has-editor(placeholder:View, placeholder:Template, placeholder:Editor) is-connected(placeholder:View, placeholder:View) [FormsEditor:Editor = %"http://.../Application/FormsEditor.jar"] [UseCaseDescView:View = @"http://.../Application/#UseCaseDescriptionView"] [DesignPatternView:View = @"http://.../Application/#DesignPatternView"] has-editor(UseCaseDescView, UseCaseDescription, FormsEditor) is-connected(UseCaseDescView, DesignPatternView) ...
  • 24. TM Templates and Traceability State of Implementation O. Drobnik, M. Ueberall Introduction • (Re-)Implementing a lightweight Topic Maps engine Templates with needed parsing/serialising facilities (using AOP Traceability techniques) Phase Transitions Navigation • Investigating rules to Conclusion • generate forms-driven dialogs from template definitions • support traceability • facilitate navigation and generate reports (“executive summaries”) • Evaluating different query languages (cf. earlier slides) • Medium-term goal: Eclipse 3.2 Plugin (Prototype: Q1/2007)
  • 25. TM Templates and Traceability O. Drobnik, M. Ueberall Introduction Templates Traceability Phase Transitions Navigation Conclusion Thank you! e-mail to: ueberall@tm.informatik.uni-frankfurt.de