a topic map templates based prototype
play

A Topic Map Templates based Prototype User Support Modeling for - PowerPoint PPT Presentation

TM Templates based Prototype M. Ueberall, O. Drobnik Introduction A Topic Map Templates based Prototype User Support Modeling for Software Development Support Versioning Application Logics M. Ueberall, O. Drobnik Tools Ongoing Work


  1. TM Templates based Prototype M. Ueberall, O. Drobnik Introduction A Topic Map Templates based Prototype User Support Modeling for Software Development Support Versioning Application Logics M. Ueberall, O. Drobnik Tools Ongoing Work Telematics Group, Institute of Computer Science J. W. Goethe-University, Frankfurt/Main, Germany 2007 / 10 / 11

  2. TM Templates based Motivation and Objective Prototype M. Ueberall, O. Drobnik Introduction Problems in Software Development: User Support • Participants (stakeholders, architects/designers, Modeling programmers) have different objectives/points of views Versioning as well as different domain knowledge Application Logics → consistent conceptualisations Tools • Any loss of information is to be considered fatal Ongoing Work → traceability • semantics-preserving phase transitions Our approach is based on • use of light-weight representations ( Topic Maps ) • development process support by means of templates

  3. TM Templates based Overview Prototype M. Ueberall, O. Drobnik Phase Artefacts Visualisations Participants Introduction (Concepts) domain-specific forms-based (Roles) User Support Annotation Flight UseCase FlightBooking Modeling Precond. ... Stake- e x t Postcond. ... Requirements FlightBooking e n d s Use Cases Depend. ... holders Versioning Analysis Conflicts ... Actors ... PrintTicket Status ... Application Logics Tools «interface» Ongoing Work Architectural uses ServiceIF DesignPatt. Scheduler Client action() Purpose ... Models ... Synonyms ... Design Designers Uses ... Anno- Design tation Structure ... Depend. ... Patterns Conflicts ... ServiceProxy Service action() action() Annotation Implement. Ticketing Packages Precond. ... Postcond. ... Program- Implementation Classes Depend. ... mers Conflicts ... Code DesignPatt. ... Package 1 Package 2 Uses ...

  4. TM Templates based User Support (GUI) Prototype M. Ueberall, O. Drobnik Introduction • Roles: User Support • mainly used for access control (e.g., certain Modeling domain-/phase-specific concepts can only be Versioning annotated) Application Logics Tools • Views: Ongoing Work • based on roles; used to filter information and present results according to user’s domain knowledge • Queries: • filter/constraint mechanism; both pre-defined (for views) and user-adjustable

  5. TM Templates based Prototype Prototype M. Ueberall, Who is it supposed to look like? O. Drobnik Introduction User Support Modeling Versioning • Eclipse Plugin Application Logics • Based on the Eclipse GMF (Graphical Modeling Tools Ongoing Work Framework) Mindmap Example • Essentially, we’re interested in “a kind of formalised mindmap using domain-specific visualisations”

  6. TM Templates based Hierarchical Structuring Prototype M. Ueberall, O. Drobnik Introduction User Support • A faceted classification system allows the assignment Modeling of multiple classifications to an object Versioning • this enables the classifications to be ordered in multiple Application Logics ways, rather than in a single, pre-determined, Tools taxonomic order Ongoing Work • 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

  7. TM Templates based Usage Restrictions for Templates Prototype M. Ueberall, Constraints Example O. Drobnik Introduction User Support Modeling Name ... Name ... Name ... UseCase FlightBooking UseCase FlightBooking UseCase FlightBooking Versioning Name: Customer Name: Customer Name: Customer Type: Person Application Type: Person Type: Person Actor ... Actor ... Actor ... Age: 18 Person’s age: 18 Person’s age: 18 Logics Age: 30 Precondition ... Precondition ... Precondition ... Tools Customer Action ... Action ... Action ... Postcondition ... Postcondition ... Age: Ongoing Work (a) (b) (c) (a) cardinality constraint for “Age” (b) context-sensitive labeling (c) occurrence-type cannot be used as template attribute

  8. TM Templates based Versioning Prototype M. Ueberall, Metadata for Units of Information, LTM notation O. Drobnik Introduction // <occurrence | association> ~object-ref User Support Modeling Versioning // dc: cf. http://dublincore.org/documents/dces (Dublin Core) Application { object-ref , dc:creation-date, [[2007-06-04T2359:59+01:00]]} Logics { object-ref , dc:version, [[ version-id ]]} Tools { object-ref , dc:author, [[ user-id ]]} Ongoing Work // skos: cf. http://w3.org/2004/02/skos (SKOS) { object-ref , skos:changeNote, [[ description ]]} ... is-replaced-by( object-ref 1 :old-obj, object-ref 2 :new-obj) is-deprecated( object-ref 3 :obj) is-deleted( object-ref 4 :obj)

  9. TM Templates based Versioning Prototype M. Ueberall, Granularity of Objects O. Drobnik Introduction User Support Name ... Name ... Modeling UseCase FlightBooking UseCase FlightBooking Versioning Description Description Statement A Statement B Description1 Statement A Application Statement C Logics Description2 Statement B Precondition ... Description3 Statement C Tools Action ... Precondition ... Ongoing Work Postcondition ... Action ... Postcondition ... is-replaced-by( desc-ref 1 :old-obj, desc-ref 2 :new-obj) part-of( desc-ref 2 :whole, description 1 :new-obj) ...

  10. TM Templates based Versioning Prototype M. Ueberall, Importance of the Directed Acyclic Graph structure O. Drobnik Introduction branch (copy) 1.7 1.7.1.1 User Support Modeling 1.7.1.2 Versioning Application 1.8 Logics merge 1.7.1.3 Tools 1.9 Ongoing Work 1.10 merge 1.7.1.4 1.7.1.5 merge 1.11 (cf. http://www.kerneltraffic.org/kernel-traffic/kt20030323_210.txt )

  11. TM Templates based (Underlying) Application Logics Prototype M. Ueberall, O. Drobnik • Dynamically loadable Java Classes (“modules”): Introduction User Support • constraints/templates can be added as topic map objects; however, executable Modeling (application/scenario-dependent) logics must be Versioning “hard-coded”; this mechanism allows at least to change Application Logics resulting java classes on-the-fly Tools • Versioning: Ongoing Work • pre-defined “module” – any topic map object will be annotated with metadata concerning, e.g., author, date, ancestor information • Meta Process Model: • another pre-defined “module” which forces participants to re-concile definitions whenever they commit or checkout changes from/into their workspace

  12. TM Templates based Existing Tools/Libraries Prototype M. Ueberall, • TMAPI (Common Topic Map Application Programming O. Drobnik Interface, www.tmapi.org ): Introduction • well-known programming interface for accessing and User Support manipulating data held in a topic map Modeling • H2 Database Engine ( http://www.h2database.com ): Versioning • very fast, free SQL database with a small memory Application footprint written in Java featuring a JDBC and (partial) Logics ODBC API; in-memory mode also makes it an Tools alternative to TinyTIM Ongoing Work ( http://tinytim.sourceforge.net ) • Jakarta Commons Id Component ( http://commons.apache.org/sandbox/id/ ): • component used to generate identifiers which offers several different algorithms that are also suitable for distributed collaboration/development scenarios • ANTLR 3.x ( http://www.antlr.org ): • parser generator that comes with ANTLRWorks, a very useful graphical tool to test your grammars

  13. TM Templates based Prototype: Ongoing Work Prototype M. Ueberall, O. Drobnik Introduction • modularised querying/filtering support for preliminary User Support prototype Modeling • evaluation with regard to more complex development Versioning scenarios Application Logics • combination with other Eclipse plugins, e.g., pattern Tools scanners Ongoing Work • 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)

  14. TM Templates based Prototype M. Ueberall, O. Drobnik Introduction User Support Modeling Versioning Application Logics Tools Thank you! Ongoing Work e-mail to: ueberall@tm.informatik.uni-frankfurt.de

Recommend


More recommend