Monday, August 31, 2009

Thousands call for Turing apology

BBC Website - Technology - http://news.bbc.co.uk/1/hi/technology/default.stm.

"Thousands of people have signed a Downing Street petition calling for a posthumous government apology to World War II code breaker Alan Turing.
Writer Ian McEwan has just backed the campaign, which already has the support of scientist Richard Dawkins.
In 1952 Turing was prosecuted under the gross indecency act after admitting to a sexual relationship with a man. Two years later he killed himself."

I've signed this petition -

Government petition website - http://petitions.number10.gov.uk/turing/

"We the undersigned petition the Prime Minister to apologize for the prosecution of Alan Turing that led to his untimely death.
Submitted by John Graham-Cumming – Deadline to sign up by: 20 January 2010 – Signatures: 12,041"

Friday, August 28, 2009

Collaboration and Process Modelling in Engineering and Business - Conclusions

This post concludes the series that explains my research in this subject, and points towards how the research can be used in engineering and business, and how it can be furthered by others. This explains what was achieved in provision of modeling and decision support systems that could automate user-computer translation, and interact with users such as engineers to help them model problems and make appropriate decisions.

To make this research into modeling for engineering practical for a wide range of computer literate non-programmers, sustained further research is needed in the areas of visualisation, interaction, modeling, end user programming, and transformation as well as the links between these areas.

The need is for a methodology for creation of systems to enable more collaborative approaches to modeling by domain expert end users. This combined with visualisation would allow engineers to model problems accurately. This can be made possible by provision of systems that may not fulfil all of the requirements of the domain experts because this would be difficult or impossible, but instead allows the domain experts, e.g. engineers to customise this themselves and help build the system they need and that could be changed as required. Alternatives to the current approach to software development are required. Modeling languages can be used as an interface to an end user programming environment. Transformation from a model building environment to program code was investigated.

Even if programming is made easier, only a proportion of people would actually be interested or capable of doing this. But there is still an advantage to colleagues such as people in the same team or department as an end user programmer, even if they are not undertaking programming themselves. Then all in the team have much closer access to someone, the end user programmer, who understands their, and the team's tasks, requirements, and projects. This closes the gap between those producing software systems, and those who require the software. This also makes it easier to iterate through solutions and solve problems more quickly and collaboratively.

Experienced programmers can build a modeling environment that can then be used by non programmers to create models or solve other software problems. This was achieved for the DATUM (Design Analysis Tool for Unit-cost Modelling) project with Rolls-Royce, and the modelling environment created was used by their engineers. Collaboration, simulation and modeling have been investigated to determine the requirements for future research in modeling of problems.

This should allow translation from a model based representation of software to the actual software. This can involve semi automatically producing software for a Semantic website from visual representations of the problem. The core of this modeling infrastructure is automated generation of models created with World Wide Web Consortium (W3C) standards based languages, and the visualization of information represented in such W3C standard ways.

This research investigated alternative approaches to software development, which give users greater involvement, and can actually be used in combination. This partially automates the process of software creation via a collaborative process and equation tree that maps the problem structure, and user interface creation by providing a means to manage a diagrammatic and/or tree based representation.

Friday, August 21, 2009

Collaboration and Process Modelling in Engineering and Business - Implementation

New models can be produced by editing the ontology of sub-ontologies, or creating new ontologies or sub-ontologies. Ontologies are translated to systems/models and sub-ontologies are translated to sub-systems/models. So, different engineering process models could be produced by representation in different types of ontologies, and this could allow further different kinds of process models/systems, e.g. business process models.

The intention is to produce new modelling classes/items as required and domain experts would edit taxonomies/sub-ontologies and specify the relationships of classes and the equations to be used, via a visual user interface. These relationships and equations when evaluated and translated will produce computer code. The ontology centre holds definitions of nodes representing information, equations, and calculations to be performed. Equations relate the items in the taxonomies, and models can be automatically produced via a recursive translation tool to provide a template for the generation of a further model(s). The intention is to make it easier to interact with and change the models, and thus share information, an example interface, a section from a model produced automatically, is shown in figure 1. This example is based on aircraft wing manufacture. Code for this is produced from the semantic relationships, and the process model is translated/translatable to multiple representations in different languages and views. The information is saved using a generic structure that defines all relationships in a shared database. This enables structuring and automated queries of information. The decision support tool Vanguard Studio (2009) reads this information and represents it as colour-coded nodes according to which taxonomy it is from. Code automatically queries the taxonomies that make up the ontology and links the information required for the model. The code builds in all the links required for the equations, and thus links information from different taxonomies. This code can be reused for any modelling problem, it builds the equations and follows the links, thus the decision support tool can perform inferencing and so produce results.

Figure 1 shows how the process modelling tool automatically constructs and represents information, visualises an equation and calculates a result. Colour coded nodes represent processes, parts and resources, extracted, as needed, from the ontology. This illustrates how taxonomies/sub-ontologies can be automatically linked, and this can proceed with large scale process models. This example illustrates how an 'Area' is calculated, and that this forms part of the branch showing the 'Hand Lay-up Tool Cleaning Cost', which is consequently passed into other calculations. Calculations using information from all the taxonomies are linked as required in this example.




Figure 1 - Ontology to Model Conversion

The ontology(ies) and model(s) can then be searched and navigated online. The example below (figure 2) illustrates how it is possible to enable refining a search by visualising all the items present in sub-categories of the main category found in the search. This example illustrates the interface for making a search. In this example the user wants to retrieve all the information related to a spar (aircraft wing component).




Figure 2 - Semantic Search interface

The result is shown as a series of trees for each item that contains the word spar. Each keyword match is the root of a tree. Each tree shows the item found and all its children and attributes. The example below (figure 3) shows an image of the top part of the results, this is part of the branch for the first item returned.



Figure 3 - Results from semantic search

The information is held in linked and related taxonomies/sub-ontologies so it is not HTML that is being searched but the taxonomy itself. Because the information is held in a structured way, it is much more likely that searchers will find what they are looking for, because the search can follow the relationships represented in the taxonomy. One of the key objectives of Semantic Web research and Web 2.0 is to make this kind of search possible over the web as a whole. The Semantic Web is a longer-term vision for structuring and managing information over the web and Web 2.0 is the shorter-term practical implementation of techniques, which can ease current information search and management problems. A web interface has been developed for Protégé (WebProtege). An example of the use of this is figure 4 where a search is made for information on the cure cycle for composites manufacturing. This search is possible as WebProtege has succeeded in providing a web based interface for displaying and searching ontologies, so providing an additional way to enable web access to the test ontologies created for this research.


Figure 4 - Web Protégé Interface

The next stage of this problem is to enable interaction and modelling with the returned information. A project was created called Bitriple by Leaver (2008), to enable end user functionality for this kind of web-based ontology construction and search. The application provides a facility to edit an ontology/ies and instances, and provides tree-based visualisation of the ontology (as shown in the example below). This example illustrates creation of an online aircraft wing ontology. Wing component sub-ontologies created using Protégé can be translated for the Bitriple application to be represented as RDF/XML. An application could be built as an extension to Bitriple to perform calculations and modelling using the information stored. This could assist in allowing domain expert end user programmers/modellers to create models. Such web applications provide an alternative to spreadsheets, and to single computer based programs; and if installed on a network server, such applications can provide a collaborative model development environment. This would fit in well with both Semantic Web, and Web 2.0 approaches to knowledge creation, allowing structured representation and navigation of information, and end user interaction, collaboration, customisation and programming via the web. Collaboration can aid people to agree on terminology, and standardisation of calculations used such as for cost rates and currencies. RDF information can be searched with SPARQL, which is used to search the Bitriple application.

A screenshot (figure 5) from the Bitriple application, of ontology creation for an aircraft wing, is shown below :-



Figure 5 - Bitriple Ontology Creation Screenshot

References

Leaver, N. (2008) Using RDF as an Enabling Technology. MSc. Dissertation, University of the West of England, Bristol.

Vanguard Modelling Wiki [online]. Available from: http://wiki.vanguardsw.com/bin/browse.dsb?dir/Engineering/Aerospace/ [Accessed 21st August 2009].

Friday, August 14, 2009

Government to loan Airbus £340m - UWE mistakes

BBC Business – “The government is to give plane manufacturer Airbus up to £340m in loans for new projects, Business Secretary Lord Mandelson has said. £60m was also loaned to GKN in 2008.”

“Business Secretary Lord Mandelson made the announcement on a visit to the Filton, Bristol, plant of Airbus UK which will be making the wings for the new plane.” Filton is in north Bristol, UK.

It's very interesting to see that a massive Government investment has just been announced into exactly the sort of research UWE used to do well, such as the A380 wing development, I was one of the UWE staff involved in this cutting edge (literally) research. UWE has recently pulled UWE out of this research. Now the A350 wing development will proceed without UWE.

BBC News -

https://owa.uwe.ac.uk/exchweb/bin/redir.asp?URL=http://news.bbc.co.uk/1/hi/business/8201222.stm

Yahoo News -

http://uk.news.yahoo.com/21/20090814/tuk-340m-loan-boost-for-airbus-project-6323e80.html

The people behind UWEs' decision to pull out of these kind of research were Steve West the Vice Chancellor, and Martin Boddy, the head of the Faculty.

I hope they both have the sense to realise they have made an expensive mistake.

This is like a small version of the Government decision way back to pull out of research into rockets, just before a massive market emerged for satellite launches.

A350X investment and wing manufacture research -

My article about this for Huliq news, 14th August 2009 - http://www.huliq.com/5/84957/a350x-investment-and-wing-manufacture-research.

Based on BBC and Yahoo News stories

West of England Aerospace Forum (WEAF) - http://www.weaf.co.uk/news?id=90 - Government Invests £340million in Next Generation Aircraft Design & Manufacture 18/08/09

Friday, August 07, 2009

Collaboration and Process Modelling in Engineering and Business - Methodology

Methodology

Management of ontologies and related models is essential for management and understanding of complex systems. This also improves the chances of project success. Breaking a complex systems engineering problem or project into modular sub-systems ensures that if failure looks likely it is possible to go back a step, rather than restart or abandon the project. This also informs, teaches and enables systems thinking and design. This can be achieved by transforming engineering knowledge into code in collaborative computer systems, and visualising the structure of the resultant system to all domain experts. This enables translation (both in human communication and computing model and program transformation) from the business and/or engineering focus of the domain expert end users, to the software developers and help desk and vice versa.

This translation can be enabled by encouraging end user visual programming so that the expertise of domain experts in modelling problems can be applied. Semantic Web modelling tools are needed to illustrate benefits this technology can provide to industry, as outlined at the Jena User Conference (Aragones et al., 2006).

Enabling, providing and supporting staff to use Semantic Web and Web 2.0 technologies can lower costs, improve collaboration, and improve staff satisfaction and retention. This enables a much faster iterative process of model development, visualisation and rework, leading to more effective process modelling. Such techniques can be used for managing and visualising workflows, which could involve complicated scheduling, sequencing, and iteration. Anderson (2007) in a Joint Information Systems Committee (JISC) report examines these advantages. Andersons’ JISC report explains how Semantic Web and Web 2.0 are related, as Berners-Lee's intention in the early development of Semantic Web technologies was for pages to be interactive. Andersons’ report talks of Web 2.0 trends towards the “End of the software release cycle, Lightweight programming models, Software above the level of a single device, and Rich user experiences.” The report explains how the technologies used are enabling user-centred web applications, and the use of the web as a development platform. Anderson advocates that "As a Web 2.0 concept, this idea of opening up goes beyond the open source software idea of opening up code to developers, to opening up content production to all users and exposing data for re-use and combination”. Anderson also establishes the need for communities to build ontologies. Software applications are needed that allow users with little software knowledge to edit and update ontologies themselves. Anderson talks of 'harnessing collective intelligence' by means of interactive collaborative software, he calls this 'distributed human intelligence'. So this kind of technology and these techniques are certainly appropriate to collaborative modelling, and sharing of knowledge amongst domain experts.

Visualisation of every stage in collaborative model creation and every part of the model enables determination of whether the model and view(s) of it are useful and correct, and so aids this sharing of human knowledge to solve problems.

A problem can be represented and shared as visual diagrams, and then translated from this abstract view to models and code. Gross (2007) argues the need for end user programming by designers using diagrams and scratchpads. Tufte (1990) explains how diagrams can be more effective than words for representing geometry. This links with the theme through this research of translating from an abstract to a concrete representation; Green et al. (2007) explain this distinction between abstract and concrete models. This distinction is more gradual than the distinction between classes and objects for object oriented programming. To achieve this it is necessary to enable translation from ontologies and Semantic Web information to diagrammatic representations and vice versa.

Green et al. (2007) discuss terminology problems, and how ontologies and models and collaboration can be used to help solve this problem. For complex modelling it is necessary to provide a generic model/system creator that would have the capability of translating abstract ideas into models. This provides a translation stage that closes the gap between ideas and models. A classification scheme or ontology is necessary in order to make communication as precise as achievable. Ontology/ies can be used to define terms and higher level relationships and these extended for application to particular modes. Such ontology/ies can also be used to help non-specialists understand the terminology of a particular domain, and so ease collaboration amongst people with very different skills and backgrounds. For this project a web linked modelling environment is constructed that automatically translates an ontology representation to models, performs calculations/inferencing, and assists decision support.

Sternemann and Zelm (1999) explain that it has become necessary to research collaborative modelling and visualisation tools, because of the business trend towards global markets and decentralised organisation structures; Green et al. (2007) also explain this. This research aims to benefit two types of modeller. Firstly, it is intended to create a system for modellers to develop models from shared information (the process architecture and models repository); such 'model builders' will be able to create process models for ‘model users’ who may customise models but will not need to create them. In practice, an individual may be in either, or both, categories depending on their interests and skills. In effect this involves production of systems to create systems and/or models.

McGuinness (2003) explains how ontologies support this functionality and calls this ‘generalization/specialization’ of information. Uschold and Gruninger (2004) describe ‘ontology-based search’ as “Ontology used for concept-based structuring of information in a repository”; and describe the benefit of this as “better information access” This aids the research objectives of ease of use and sharing of information. The use of open standards for representing information makes it possible to enable searches that understand the semantics of the information and so can track all of the relationships between items. To test this methodology web based example models were created.

As a shared ontology is central to the proposed system, a translator or an 'elaborator/de-abstractor' can be developed that translates and converts, a diagrammatic representation of the problem automatically into code. Translations could be performed in any programming or meta-programming language, or open standard representation languages, the visualisation of the model created being suitable for display on the web. Interactivity is the key to human involvement in the Semantic Web, in order to construct a process modelling system for people in industry who are not professional programmers.

Figure 1 shows the theory behind Semantic Web modelling. These modules/sub-systems have been prototyped in order to verify that the methodology is feasible.

1. Connections are established between the ontology system and databases, spreadsheets, or other systems that hold relevant information for that modelling problem.
2. The ontology is created using RDF/OWL (Miller and Baramidze, 2005) and an interface built to edit it.
3. Libraries are created in a partnership between ourselves and domain experts.
4. Taxonomies/sub-ontologies are populated by model builders who use them for modelling problems. These are based on the libraries created in step 3.
5. Taxonomies are colour coded for ease of understanding. A link was created between the ontology tool and the illustrated process modelling system.
6. There are two sorts of constraints that can enable users to build and adapt models. Constraints on the way the ontology, and models are built, and user interface constraints to reduce the scope for error, (this is not yet developed).
7. Colour coding makes inferencing/sequencing clear because all taxonomies can be used in any equation, inferencing outputs of a multicoloured result tree that represents the entire sequencing system. User choices affect how items are related for the equation; choices could be made manually or via a search.
8. Each node represents uncertainty. Uncertainty depiction within inferencing results was prototyped (Bru et al., 2004), and used in the DATUM project.
9. The result tree is represented on the web and in other programs allowing further searching, processing and evaluation of results. Visualisation and use of searchable languages such as XML, and SVG (Scalable Vector Graphics) can assist this.
10. and 11. Modellers interact with the ontology, the model, and results. There is a two way feedback mechanism where experts can make changes in any sub-system, and this filters into changed results. This supports a cycle of results and rework.




Figure 1 - Semantic Web based Process Modelling system

If users are involved in construction and/or use of such sub-systems and collaboration is organised so knowledge is transferred between those involved, the rational for process models and decisions can then be understood.

Translation involves the elaborator that follows a structured ontology to establish how related concepts (represented visually) can be represented in equivalent code and vice versa. This elaboration process converts an abstract representation of a problem to a concrete model created with the aid of communication between user and modelling tool. The translation program calculates results, and these are translated back to users. Results are visualised using stylesheets and interactive software, and translated between different representations. Information must be visualised in the way most appropriate to particular modellers according to their situation and the problem type examined. Highly interactive Semantic Web applications that provide a user interface can enable a user centred process modelling system.
The methodology was tested by creating a practical system. Figure 2 shows the 3 step translation process from domain level visualisation to code, via the web and/or programming languages, and resultant visualisation. To allow information sharing, reuse, interoperability and collaboration, an ontology centric approach (Bloodsworth and Greenwood, 2005) is used, which acts as the infrastructure for creation of models and model templates.


Figure 2 - Translation Process Implementation

To build on this test system a visual user driven process for model development is evaluated, which merges approaches of object oriented design, the Semantic Web, relational databases, event driven programming, model driven programming, and visual programming resulting in application of 'The Model Driven Semantic Web' (Frankel et al., 2004). Further, we examine ways of structuring information and enabling processing and searching of the information to provide a modelling capability, thus providing a solution for the key issue of increasing user involvement in software. To achieve this, visual templates are constructed for the modeller to enable non-programmers to develop modelling software. Increasing user involvement in software development is recommended by Olsson (2004), the involvement being essential to avoid communication problems and misunderstandings that result from domain expert users having too little influence on tool creation.


References

Anderson, P. Technology and Standards Watch (2007). JISC (Joint Information Systems Committee) What is Web 2.0? Ideas, technologies and implications for education [online]. Available from: http://www.jisc.ac.uk/media/documents/techwatch/tsw0701b.pdf [Accessed 24th July 2009].

Aragones A, Bruno J, Crapo A, Garbiras M, 2006, An Ontology-Based Architecture for Adaptive Work-Centered User Interface Technology, Jena User Conference, Bristol, UK.

Bloodsworth P, Greenwood S, 2005, COSMOA: An Ontology-Centric Multi-Agent System For Coordinating Medical Responses To Large-Scale Disasters, AI Communications 18.

Bru, C., Scanlan, J., Hale, P., 2004. Visualization of Cost Information, International Journal of Agile Manufacturing, 7(1), pp 53-59.

Frankel D, Hayes P, Kendall E, McGuinness D, 2004, The Model Driven Semantic Web, MDSW2004.

Green, S., Beeson, I., Kamm, R., 2007. Process architectures and process models: opportunities for reuse. In: 8th Workshop on Business Process Modeling, Development, and Support BPMDS07 and CAiSE'07 11-15 June 2007, Trondheim, Norway.

Gross, M. D., 2007. Designers Need End-User Software Engineering. In: End-User Software Engineering Dagstuhl Seminar February 2007.

McGuinness, D. L., 2003. Ontologies Come of Age. In: Dieter Fensel, Jim Hendler, Henry Lieberman, and Wolfgang Wahlster, ed. Spinning the Semantic Web: Bringing the World Wide Web to Its Full Potential. MIT Press, 2003.

Miller J A, Baramidze G, 2005, Simulation and the Semantic Web, 2005 Winter Simulation Conference.

Olsson E, 2004, What active users and designers contribute in the design process, Interacting with Computers Vol 16.

Sternemann, K. H., Zelm, M., 1999. Context sensitive provision and visualisation of enterprise information with a hypermedia based system, Computers in Industry Vol 40 (2) pp 173-184.

Tufte, E., R., 1990. Envisioning Information. Graphics Press.

Uschold, M., Gruninger, M., 2004. Ontologies and Semantics for Seamless Connectivity. In: Association for Computer Machinery - Special Interest Group on Management of Data - SIGMOD Record December, 33(4).