This talk describes the present state of the Generalized Sketches (GS) project at the University of Bergen and the Bergen University College, Norway. GS is a graph-based specification format that borrows its main ideas from both categorical and first-order logic, and adapts them to software engineering needs. In the engineering jargon, it is a specification language design pattern that combines mathematical rigor and appealing graphical appearance.
The ambitious claim behind GS is that any diagrammatic specification technique in software engineering can be seen as a specific instance of the GS specification pattern. GS is a pattern, i.e. generic, in the sense that we can instantiate this pattern by a signature that corresponds to a specific specification technique, like UML class diagrams, ER diagrams or XML. Diagrams drawn using a specific technique, i.e. a signature, will appear as a (possibly ambiguous) visualization of GS for the fixed signature. Notice that the syntax and in most cases also the semantics of GS is mathematically well-defined and unambiguous.
Extending EMF to support GS as a generic pattern for describing and developing diagrammatic specification techniques is one of the main objectives of our research. By implementing such an extension we can prove the practical value of GS in all aspects of modeling and Model-Driven Development from model transformation and integration to decomposition and code-generation.
Developing a graphical editor which is based on GMF (more exactly, the Ecore editor) is the first step in our ongoing project. The editor is initially used to design signatures corresponding to existing specification techniques, like UML class diagrams and ER diagrams. In addition, there will be the possibility to design own signatures by letting the user to choose preferred graphical notations for the standard concepts in GS; like jointly mono, disjoint cover etc. Then diagrams, i.e. visualizations of sketches can be drawn using those signatures/specification techniques. Relating, integrating and transforming the created diagrams will be an easy task since they are based on the same specification pattern.
In the talk, besides a short and gentle introduction to GS, we will also introduce the design of our specification technique pattern by using EMF and GMF. Then we will outline the extensions that realize our design.
Ph.D-student at Bergen University College in Bergen, Norway, working with Diagrammatic Software Specifications. Currently working on an extention to EMF that supports models specified in Generalized Sketches' format.