Domain-Specific Representations of Software, and Reasoning
The use of diagrammatic notations in design and communication is
commonplace in many engineering and industrial domains. As the
reliance of such domains on software components increases, the
incorporation of diagrammatic notations into programming languages
allows domain experts to understand and undertake software development
in terms of designing familiar artifacts in
their domains.
Moreover, it encourages the transfer of techniques
for reasoning about domain artifacts into methods for reasoning about
their software "equivalents". This places serious obligations on
language designers to ensure the soundness of diagrammatic reasoning
and that essential diagram manipulations are well supported.
This project aims to enhance our understanding, and assist towards
improving the design and use of diagrams as programming and reasoning
notations in domain-specific languages.
Keywords: domain specific languages; diagrams; diagrammatic
reasoning; diagrammatic representation; software engineering
The link above points to a presentation of the overall project
objectives: the problem to be addressed and the nature of our solution.
Some thoughts on the nature and objectives of a theory of
diagrams for domain-specific computing and software
engineering.
Stuart Anderson is the principal investigator, with Konstantinos Tourlas being
the named researcher. The project enjoys the very active involvement
of John
Power and Corin
Gurr as (unofficial) co-investigators. Collaboration with other
researchers in theoretical computer science, cognitive science and
sociology of technology is seen as essential to our work. We enjoy
established working relationships with industry, mainly with
practitioners and consultants in domains such as embedded control,
where diagrams are extensively used and safety is a primary concern.
Recent Developments
We are currently developing a mathematical account of higraphs, the
diagrammatic structures underlying Harel's popular Statecharts and the
state diagrams of UML, using the methods of category theory. The
objective is to gain a characterisation of higraph structure, cast
common manipulations of higraphs in terms of mathematical operations
and examine the soundness and admissibility of such operations with
respect to a transition-systems semantics. This work is intended as a
stepping-stone towards tackling rich, graph-based
representations of computational structures.
Publications
A list of publications produced by this project, including earlier
work on languages for programmable logic controllers (PLCs).
A limited download facility is presently available here.
Related Projects at Edinburgh
An ongoing interdisciplinary collaboration involving five major UK sites.
This is a link to Corin's work on software
architectures, with emphasis on diagrammatic representations of
software.
This project looked at the graphical notations used or mandated in
safety cases, which are collections of documents that present
the arguments for believing that a proposed potentially-dangerous
system is acceptably safe.
...to related projects outside Edinburgh, publication lists and people
with interests in domain-specific languages and diagrammatic
notations.
Last altered: 4th July, 2001, by
K. Tourlas