Universität Koblenz-Landau Institut für Softwaretechnik Re-Group Graph Drawing Vienna, September 26, 2001 Graph Exchange Language Andreas Winter joint.

Slides:



Advertisements
Similar presentations
Universität Koblenz-Landau Institut für Softwaretechnik Re-Group CASCON 2000Toronto, Graph Exchange Language An overview Ric Holt Andreas Winter.
Advertisements

Universität Koblenz-Landau Institut für Softwaretechnik GUPRO WOSEF 2000Limerick, (1) Components of Interchange Formats (Metaschemas and Typed.
Universität Koblenz-Landau Institut für Softwaretechnik Re-Group Interoperability of Reengineering Tools Dagstuhl, Jan 20-25, 2001 Graph Exchange Language.
Universität Koblenz-Landau Institut für Softwaretechnik Re-Group WCRE 2000Brisbn, Nov 25, 2000 Graph Exchange Language Representing Graph Schemas (a working.
Language Specification using Metamodelling Joachim Fischer Humboldt University Berlin LAB Workshop Geneva
A Prototype Implementation of a Framework for Organising Virtual Exhibitions over the Web Ali Elbekai, Nick Rossiter School of Computing, Engineering and.
XML: Extensible Markup Language
Artificial Neural Networks And XML
The Small World of Software Reverse Engineering Ahmed E. Hassan and Richard C. Holt SoftWare Architecture Group (SWAG) University Of Waterloo.
Automated creation of verification models for C-programs Yury Yusupov Saint-Petersburg State Polytechnic University The Second Spring Young Researchers.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 8 Slide 1 System models.
WPSM Programming Language A simple language that transform simple data structure into complex xML format Wai Y. Wong Peter Chen Seema Gupta Miqdad Mohammed.
Visual Web Information Extraction With Lixto Robert Baumgartner Sergio Flesca Georg Gottlob.
30 March 2005, IPA lentedagen, BredaGraph-Based State Spaces1 Graph Transformation for Model Transformation Arend Rensink University of Twente.
Rainbow: XML and Relational Database Design, Implementation, Test, and Evaluation Project Members: Tien Vu, Mirek Cymer, John Lee Advisor:
M.Sc. of Advanced Software Engineering CO7206 System Reengineering XML & AST Many Slides are by Georgios Koutsoukos.
Reverse Engineering Valeriya Perelman 12/10/04. Outline Motivation Terminology Related work Approach discussion Challenges References.
From Research to Startup: Experiences in Interoperability Arie van Deursen Leon Moonen 23 January 2001.
Kari R. Schougaard, PhD Stud. Værktøjer og Teknikker, 2006 UNIVERSITY OF AARHUS Department of Computer Science Unified Modeling Language Visual language.
1 Info 1409 Systems Analysis & Design Module Lecture 8 – Modelling tools and techniques HND Year /9 De Montfort University.
Presenter : g9102 黃培智 Outline  Motivation and Background  GXL Overview  Exchange Graphs  Exchange Graph Schemas  Conclusion.
Automatic Data Ramon Lawrence University of Manitoba
Mining Metamodels From Instance Models: The MARS System Faizan Javed Department of Computer & Information Sciences, University of Alabama at Birmingham.
1 Designing an XML-based Exchange Format for Harmonia Marat Boshernitsan Susan L. Graham University of California, Berkeley, USA Exchange Formats Workshop.
® Eurostep.ESUKPC v0.1©Copyright Eurostep Limited An Introduction to ISO STEP Part 25 David Price.
MDC Open Information Model West Virginia University CS486 Presentation Feb 18, 2000 Lijian Liu (OIM:
Intelligent Workflow Management System(iWMS). Agenda Background Motivation Usage Potential application domains iWMS.
The Center for Advanced Research In Software Engineering (ARISE) The University of Texas at Austin Reengineering of Large-Scale Polylingual Systems Mark.
An Approach and Tool for Synchronous Refactoring of UML Diagrams and Models Using Model-to-Model Transformations Hafsteinn Þór Einarsson Helmut Neukirchen.
Information storage: Introduction of database 10/7/2004 Xiangming Mu.
Scientific Markup Languages Birds of a Feather A 10-Minute Introduction to XML Timothy W. Cole Mathematics Librarian & Professor of.
An Introduction to XML Presented by Scott Nemec at the UniForum Chicago meeting on 7/25/2006.
Chapter 4 System Models A description of the various models that can be used to specify software systems.
Topic S Program Analysis and Transformation SEG 4110: Advanced Software Design and Reengineering.
Information System Development Courses Figure: ISD Course Structure.
© GMV S.A., 2004 Property of GMV S.A. All rights reserved 2004/05/13 XML in CCSDS CCSDS Spring Meeting - Montreal Fran Martínez GMVSA 4081/04.
A language to describe software texture in abstract design models and implementation.
Sommerville 2004,Mejia-Alvarez 2009Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
Using XML to present computer program Qingsong Yao Qingsong Yao Department of Computer Science Department of Computer Science York University York University.
Michael Schloh von Bennewitz 1. Oktober 2002 The Unified Modeling Language Overview of theory and practice of the OMG Unified Modeling.
Rainbow: XML and Relational Database Design, Implementation, Test, and Evaluation Project Members: Tien Vu, Mirek Cymer, John Lee Advisor:
CS 157B: Database Management Systems II February 11 Class Meeting Department of Computer Science San Jose State University Spring 2013 Instructor: Ron.
GXL Progress Report Susan Elliott Sim on behalf of Andreas Winter, Ric Holt, and Andy Schürr and the GXL Mailing List.
Gordana Rakić, Zoran Budimac
Representing data with XML SE-2030 Dr. Mark L. Hornick 1.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Basics of Web Based Computing. The Architecture The user’s system A Web Server What’s inside? Server software Apache or other Resources to be accessible.
1 Multi-level Configuration Management with Fine-grained Logical Units Tien N. Nguyen Electrical and Computer Engineering Department Iowa State University.
CSER / CASCON 1999 Exchange formats: Some problems, a few results, and a cool name Michael Godfrey Ivan Bowman and others … University of Waterloo.
Concepts and Realization of a Diagram Editor Generator Based on Hypergraph Transformation Author: Mark Minas Presenter: Song Gu.
Connecting Architecture Reconstruction Frameworks Ivan Bowman, Michael Godfrey, Ric Holt Software Architecture Group University of Waterloo CoSET ‘99 May.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
The Dagstuhl Middle Model: An Overview Timothy C. Lethbridge SITE, University. of Ottawa
CHAPTER NINE Accessing Data Using XML. McGraw Hill/Irwin ©2002 by The McGraw-Hill Companies, Inc. All rights reserved Introduction The eXtensible.
UML. Model An abstract representation of a system. Types of model 1.Use case model 2.Domain model 3.Analysis object model 4.Implementation model 5.Test.
Defects of UML Yang Yichuan. For the Presentation Something you know Instead of lots of new stuff. Cases Instead of Concepts. Methodology instead of the.
Report on DMM (Dagstuhl Middle Model)
CS 325 Spring ‘09 Chapter 1 Goals:
Software Architecture in Practice
Sharing is fun! Thoughts on open access research
Object-Oriented Analysis and Design
State Digrams in UML: A Formal Senmatics using Graph Transformations
Chapter 2 Database Environment Pearson Education © 2009.
Relational Databases The Relational Model.
Relational Databases The Relational Model.
XML Data Introduction, Well-formed XML.
Data Model.
Secrets from the Monster: Extracting Mozilla’s Software Architecture
Chapter 2 Database Environment Pearson Education © 2009.
Chapter 2 Database Environment Pearson Education © 2009.
Presentation transcript:

Universität Koblenz-Landau Institut für Softwaretechnik Re-Group Graph Drawing Vienna, September 26, 2001 Graph Exchange Language Andreas Winter joint work with Ric Holt (University of Waterloo) Susan Elliott Sim (University of Toronto) Andy Schürr (Universität BW München) (and many more)

© Institut für Softwaretechnik Universität Koblenz-Landau Vienna, September 26, 2001 (2) Graph Drawing 2001 Contents Motivation and Idea GXL Overview –Exchanging graphs with GXL –Exchanging schemas with GXL GXL current work –GXL Tools Conclusion

© Institut für Softwaretechnik Universität Koblenz-Landau Vienna, September 26, 2001 (3) Graph Drawing 2001 extract: parser and fact extractors for multi-language systems, Ada, C/C++, Cobol, Java, SQL... abstract: analysis techniques like querying, browsing, data flow analysis, architecture recovery, cluster analysis... view: visualization charts, diagrams, graphs, tables, source code,... GXL Background Tools in Software Reengineering source code extract repository abstract view

© Institut für Softwaretechnik Universität Koblenz-Landau Vienna, September 26, 2001 (4) Graph Drawing 2001 History

© Institut für Softwaretechnik Universität Koblenz-Landau Vienna, September 26, 2001 (5) Graph Drawing 2001 GXL Partners

© Institut für Softwaretechnik Universität Koblenz-Landau Vienna, September 26, 2001 (6) Graph Drawing function main (){... 8 a := max(a,b); b := min(b,a);... } GXL Example typed nodes attributed nodes attributed edges ordered incidences directed edges typed edges

© Institut für Softwaretechnik Universität Koblenz-Landau Vienna, September 26, 2001 (7) Graph Drawing 2001 Requirements of Exchange Formats (1) Independence –application independence language independence (C/C++, Cobol, Java, JCL, SQL, multi-language etc.) abstraction level independence (AST, "middle level", Architecture) aspect independence (data flow, control flow, code structure, etc.) –tool independence data structure independence (syntax trees, various types of graphs, relational databases, object oriented databases, file and directory structures)

© Institut für Softwaretechnik Universität Koblenz-Landau Vienna, September 26, 2001 (8) Graph Drawing 2001 Requirements of Exchange Formats (2) Efficiency –efficiency in time –efficiency in space –efficiency in "building tools" Extensibility –extensible for further applications (CASE tools, visualization tools, etc) Universality –used by others –standardized format

© Institut für Softwaretechnik Universität Koblenz-Landau Vienna, September 26, 2001 (9) Graph Drawing 2001 GXL Objective Exchanged Data –instance data –schemas data Mathematical Model –typed, attributed, ordered, directed graphs –expanded by hypergraphs and hierarchical graphs Notation –eXtensible Markup Language (XML) –Unified Modeling Language (UML)

© Institut für Softwaretechnik Universität Koblenz-Landau Vienna, September 26, 2001 (10) Graph Drawing 2001 GXL Graph Model typed graphs attributed graphs directed graphs ordered graphs hierarchical graphs hyper- graphs graph part

© Institut für Softwaretechnik Universität Koblenz-Landau Vienna, September 26, 2001 (11) Graph Drawing 2001 GXL Document Type Definition (1.0)

© Institut für Softwaretechnik Universität Koblenz-Landau Vienna, September 26, 2001 (12) Graph Drawing 2001 Exchanging Graphs with GXL Attributed, typed, directed Graphs Undirected Graphs Ordered Graphs Hypergraphs Hierarchical Graphs

© Institut für Softwaretechnik Universität Koblenz-Landau Vienna, September 26, 2001 (13) Graph Drawing 2001 Exchanging Graphs with GXL p : v : graph r : typed refs Proc Var attributed file = "main.c" line = 27 <edge from = "p" to = "v"> main.c 27 id = "r"

© Institut für Softwaretechnik Universität Koblenz-Landau Vienna, September 26, 2001 (14) Graph Drawing 2001 Exchanging Schemas with GXL Graph Schema Definition with UML Class Diagrams –attributed, typed, directed, ordered graphs –hypergraphs –hierarchical graphs GXL Representation of class diagrams GXL Metaschema

© Institut für Softwaretechnik Universität Koblenz-Landau Vienna, September 26, 2001 (15) Graph Drawing 2001 Exchanging Schemas with GXL Graph Class (UML class diagram) Var file : string line : int refs Proc Var file="main.c" line = 27 line = 42 e : refs Graph (UML object diagram) p : Proc v :

© Institut für Softwaretechnik Universität Koblenz-Landau Vienna, September 26, 2001 (16) Graph Drawing 2001 Representing Schemas Schemas (graph classes) are represented as graphs as well Schemas are exchanged as GXL documents suiting a metaschema for graph classes only one common and simple DTD for exchanging –graphs matching different graph schemas –graph classes matching a metaschema

© Institut für Softwaretechnik Universität Koblenz-Landau Vienna, September 26, 2001 (17) Graph Drawing 2001 GXL Schema Representation UML class diagram Var file:string line : int Proc refs Proc:NodeClass name="Proc" a1:Attribute name="file" s : String refs: EdgeClass name="refs" var:NodeClass name="Var" i : Integer a2:Attribute name="line" comesFrom goesTo has Attribute has Domain has Attribute has Attribute has Domain schema graph

© Institut für Softwaretechnik Universität Koblenz-Landau Vienna, September 26, 2001 (18) Graph Drawing 2001 GXL Schema Representation Proc refs Var...

© Institut für Softwaretechnik Universität Koblenz-Landau Vienna, September 26, 2001 (19) Graph Drawing 2001 GXL Metaschema (Graph Part)

© Institut für Softwaretechnik Universität Koblenz-Landau Vienna, September 26, 2001 (20) Graph Drawing 2001 GXL Current Work GXL Usage –Software Reengineering –Graph Transformation Systems (GTXL) GXL Standard Schemas –Ferenc, Gyimothy, Holt, Koschke, Sim: C++-Reference-Schema –Lethbridge, Tichelaar et al.: Dagstuhl Middle Level Model –Jahnke, Mylopoulos, Wadsack, Hainaut, Henrard: Data Reverse Engineering Reference-Schema (DRE)

© Institut für Softwaretechnik Universität Koblenz-Landau Vienna, September 26, 2001 (21) Graph Drawing 2001 GXL Tools and Applications CPPX (C++ AST Extractor), U Waterloo Columbus/CAN (C++ Extractor and Analyzer), U Szeged ECW (Edinburgh Concurrency Workbench), U Edinburgh Fujaba (Roundtrip Engineering for UML diagrams) U Paderborn GenSet (simple graph transformations), U Oregon GRAS (Graph Data Base) U Aachen GXL reader/writer for Bauhaus Resource Graphs, U Stuttgart GXL2RPA, RPA2GXL, Philips, Eindhoven GXL2G, G2GXL, U Koblenz GXL2Progres, Progres2GXL, U Aachen GXLQuery, U Koblenz GXL2RSF, RSF2GXL, U Victoria, Nokia GXL2XMI, U BW München GXLFramework, U BW München GXL2TA, TA2GXL, U Waterloo, U Toronto Royere (graph visualization), CWI Amsterdam SugiBib (UML diagram layout), U Würzburg UPGRADE (visual languages), RWTH Aachen yFiles (graph visualization), U Tübingen

© Institut für Softwaretechnik Universität Koblenz-Landau Vienna, September 26, 2001 (22) Graph Drawing 2001 GXL Change Requests XML Schema –instead of XML DTD –more powerful extension mechanism Packages –attributes - structure (GXL) - GTXL - GraphML/GD... Hierarchical Graphs –graph valued attributes Additional Attribute Types –free type attributes –structs References to GXL Schemas –textual attributes instead of XLINK-References Additional features –implicit node definition by edges

© Institut für Softwaretechnik Universität Koblenz-Landau Vienna, September 26, 2001 (23) Graph Drawing 2001 Conclusion GXL: uniform language for –exchanging graphs –exchanging graph schemas GXL: ratified as standard exchange format –Software Reengineering community (Dagstuhl, January ) –Graph Transformation Systems community (APPLIGRAPH Subgroup Meeting, Bremen, March, 1.-2., 2001) GXL: standards activities –cited in XML OASIS Cover Pages and XML.org XML Standards Report –planed to become an IEEE Software Engineering Standard –will be introduced to OMG more information http: mailto: