Enabling Diagrammatic Modelling of Engineering Problems

Introductioncosted separately or together and top down or
C.S. Peirce (1906) stated in 'Prolegomena to anfrom bottom up. This methodology has the
Apology for Pragmaticism' "Come on, my Reader,potential to be applied to any calculation based
and let us construct a diagram to illustrate themodelling problem.
general course of thought; I mean a system ofEngineering modelling can be performed using a
diagrammatization by means of which any coursehigh level diagrammatic view of the problem and
of thought can be represented with exactitude".conveyed to the computer via transformation.
That is the purpose of this research, but to limitSolutions to this transformation problem can be
the scope and so make application of this theoryfound by adapting current tools and techniques
testable the research is restricted mainly tousing a systematic approach. Such tools and
engineers (because they often think in terms oftechniques involve use of modelling tools,
diagrams) and to the domain of modelling (whichspreadsheets, ontology management tools, and
often requires diagrams). So the aim is to applySemantic Web Web 2.0 tools. These possible
the research first where it can have the mostsolutions are not mutually exclusive and their
use and encourage others to expand it for othercombination could be the best way of providing
domains and other users. This research is intendedusable collaborative modelling tools for computer
to simplify computing for computer literateliterate end users and domain experts. The link
non-programmers, this includes many engineers.between these alternative ways of advancing
The main research area is enabling users such ascurrent research is translation and User Driven
engineers to model the problems they encounterModelling/Programming.
in manufacturing and design. However, the widerIt is possible to create an extra layer of visualised
aim is to prototype research for enabling a largersemantics to enable users to specify commands
range of software users to model their problems.in structured language. This approach of adding
The intention is to create collaborative tools thatextra layers is the way this visual programming
allow users to develop software in a way they willworks. Users provide the information the program
be familiar with from their use of spreadsheets.needs at the visual interface layer, and program
This research brings together approaches ofcode is created automatically. The layers provide
object orientation, the Semantic Web, relationalthe bridge between abstract ideas and computer
databases, and Model-Driven and Event-Drivencode. If this approach is taken to its logical
programming. Frankel et al. (2004) explain theconclusion, it would be possible to allow the user
opportunities for, and importance of this kind ofto specify what the computer should do. Then
research.each layer would communicate this to the layer
Iterative development is used both in thisbelow until the computer performs the action
research and in the implementation to ensure thatrequired. A simple example of this approach is the
changes can be made systematically asuse of spreadsheets. Users can specify a
necessary and without disrupting a project.calculation in mathematical terms using a formula.
Software engineering and modelling has much inThe spreadsheet then calculates the result of the
common with engineering modelling, also the toolsformula. Users can change the formula if it is
used for both have much in common. Softwareincorrect without any need to write code or
process modelling, engineering process modelling,re-compile. This accounts for the popularity of
and business/workflow modelling share a commonspreadsheets. However, spreadsheets do not
approach, and similar tools. Much of thisprovide the centralised and structured data-store
commonality is in the need to transformrequired for a distributed collaborative system.
requirements into design into codeTherefore, the research concentrates on
semi-automatically. To achieve this, continuouscombining the wide applicability of generic
consultation between potential users e.g. engineersspreadsheet modelling with structured and
for engineering modelling problems and developersadaptable modelling and visualisation.
for software problems is required.It is important to enable changes to the design of
Organisations have many limitations resulting fromthe information source and its structure as
the lack of facilities to allow users to program. Fornecessary, even when it contains information. This
example the use of 'out of the box' modellingmakes possible continuous improvement of the
tools that are hard to customise or introduceinformation and its representation together. Clear
collaborative capabilities, because a projectvisualisation of the structure makes out of date
deadline is so urgent that nothing else is practical.and duplicate information obvious, so it can be
Methodologychanged by the end-users of the information. This
A common factor in these various types ofprovides for maintenance of information quality
modelling is the need to transform between a highwithout necessitating end-users to understand
level abstraction, to a lower level such as arelational database design; though relational
computer model and then code. This is illustrateddatabases can still be accessed by software
by examples of semi-automatically producedspecialists for more in depth and less frequent
programs/models (Hale, 2008). The translationstructural changes.
process involves translating from a tree/graphProgram transformation allows for writing in one
representation and for each node this is translatedrepresentation or language, and translating to
into a code representation of the equation thatanother. This is particularly useful for language
relates this node to any others, and this code isindependent programming, or for high level and
then presented in the interface as a result treeend user programming that can then be
graph. This can be achieved for programs and/ortranslated to a language more easily interpreted
web pages. Kraus et al. (2007) examine andby computer systems.
implement this transformation problem and alsoA taxonomy representation is translated into a
produce code and/or web pages. Uschold (2003)computer model. Relationships can be conveyed
defines the Semantic Web as being machineto a software model that evaluates them.
usable and associated with more meaning. So thisInformation is translated from the taxonomy and
is a good way to convey the abstractionsis visualised in tree form in a decision support tool
represented in a source and result tree to thewith the example of spar manufacture
end user.information. The visualisation of the information in
The intention is to demonstrate a way toa tree can be further translated into visualisation
construct diagrammatic representations of costas an interactive diagram. The representation can
using the example of an aircraft wingbox. Thebe translated into different languages, to allow for
wingbox is the structure or skeleton of the wing.language independence.
These diagrammatic representations are achievedRelated Research
by visual representation of items and equationsCrapo et al. (2002) assert the need for a
that make up wingbox cost. These items andmethodology for creation of systems to enable
equations can be represented in standardisedmore collaborative approaches to modelling by
categories used in engineering - 'materials',domain expert end-users, and that this combined
'processes', 'cost rates' etc. These categories arewith visualisation would allow engineers to model
standard for engineering and the methods forproblems accurately. Huhns (2001) and
representing items and equations that relate thePaternò, (2005) both explain that
items can be expressed in standard mathematicalalternatives to the current approach to software
form. Therefore using the same methodology anddevelopment are required. Modelling languages
same categories it would be possible to representsuch as Alloy explained by Wallace (2003) can be
other items and equations in the same way. Soused as an interface to an End-User Programming
this methodology is reusable for costing otherenvironment. Transformation from a model
engineering components including those outsidebuilding environment to program code has been
aerospace. The costing method is also recursiveinvestigated by Gray et al. (2004).
because components and sub components can be