Eunis 2002 Grafos 2001 New Technologies for Teaching and Learning António Roberto Ana Sofia Lino Escola Superior de Gestão de Santarém Portugal A Software Tool Graph’s Algorithms
Grafos 2001 A Software Tool for Teaching and Learning A Software Tool for Teaching and Learning Graph’s Algorithms Objectives Architecture Use Examples Conclusions Agenda
E B A C Graphical Input Problem’s Solution Algorithm’s Steps Objectives: D Grafos 2001 Graphical Output Extensible
Microsoft Visio gives the User Interface and the Drawing Capabilities Architecture Grafos 2001
Architecture Grafos 2001 Visio Customization with Grafo Template Grafo Shapes Stencil Master Shapes : Node Arc ResultsStep by Step Minimal Spanning Tree Shortest Path Maximum Flow Next Step Initial State
Architecture Grafos 2001 Visio Graphical User Interface Drawing Power
Architecture Grafos 2001 Visio Graphical User Interface Drawing Power What is missing ? Data Structure Algorithms ActiveX Dll Where do we put this logic ? Visio Add-In
Shape DeletedConnection DeletedText Changed Architecture Grafos 2001 Visio Add-In Internal Representation Shape Added Built-in Algorithms Event’s Handlers Connection Added Graph Editing Programming with Visio Objects
Architecture Grafos 2001 Visio Add-In Internal Representation Shortest Path Built-in Algorithms Event’s Handlers Results / Step by Step Output Programming with Visio Objects
Architecture Grafos 2001 Extensibility Built-in algorithms : Prim’s algorithm ( Minimal Spanning Tree ) Dijkstra’s algorithm ( Shortest Path ) Ford-Fulkerson ( Maximum Flow Problem ) Visio Add-In Internal Representation Built-in Algorithms Event’s Handlers How can we extend to other algorithms ? Grafos2001 Object Model Where do we write the new algorithms ? Automation Object Interface ActiveX Automation Server
Architecture Grafos 2001 Extensibility ActiveX Automation Server Visio Programming Environment Grafos2001 objects Programming with
Architecture Visio – Grafos2001 Synergy Grafos 2001 Internal Representation Built-in Algorithms Event’s Handlers Object’s Interface Event Visio Objects Grafos2001 Objects
Grafos 2001 Use Examples Built-in Algorithm : Shortest Path
Grafos 2001 Use Examples Extensibility Example Graph Coloring
Grafos 2001 Use Examples Extensibility Example Euler Theorem
Grafos 2001 Use Examples Extensibility Example Euler Circuit – Hierholzer’s Algorithm
Grafos 2001 Use Examples Extensibility Example Programming with Grafos2001’s Objects
Conclusions Grafos 2001 We think Grafos2001 can be used as a tool: We want to establish contact with other people interested. We haven’t feedback from portuguese universities contacted 2ª prize at Microsoft Portugal Software Contest ( Special/Universities ) Free download from that helps the teacher to prepare and expose the subject; that can be used to visualize the solutions and develop algorithms;
Conclusions Grafos 2001 Future work : add support to oriented graphs translate to English solve bugs detected expand Grafos2001 object model redesign the system