Showing posts with label PhD. Show all posts
Showing posts with label PhD. Show all posts

Saturday, March 31, 2012

Publication of my PhD

When all admin of my PhD publication is complete and it's published in the UWE library it will also be published on the UWE repository. When this is done I'll post the link and add this also to the blog template. I want to make the PhD is available as possible.

In the meantime I'm also making final ammendments to a journal paper.

Wednesday, August 03, 2011

My Publications on UWE Research Repository

I've been putting all my publications on to the UWE - University of the West of England, Bristol research repository. I'll list them below in order of publication. The repository makes publications available in Word/PowerPoint and PDF formats -

Hale, P., Scanlan, J., Hill, T., Nour, M., Bru, C., Jocelyn, A., Round, M. and Dunkley, M. (2001) Provision of a web based decision support system for wing box tooling. In: ICE 2001 (International Conference on Concurrent Enterprising), 23rd - 25th June, 2001, Bremen, Germany. - https://eprints.uwe.ac.uk/15279/.

Hale, P., Scanlan, J., Bru, C. and Dunkley, M. (2002) Preliminary findings from the DECIDE project. In: 9th International Conference on Concurrent Engineering ISPE/CE2002 Concurrent Engineering Conference, 2002, Cranfield University, UK. - https://eprints.uwe.ac.uk/15523/.

Hale, P., Scanlan, J. and Bru, C. (2003) Design and prototyping of knowledge management software for aerospace manufacturing. In: 10th ISPE International Conference on Concurrent Engineering ISPE/CE2003, 26th-30th July, 2003, Madeira, Portugal. - https://eprints.uwe.ac.uk/15355/.

Hale, P., Solomonides, T. and Beeson, I. (2009) Enabling diagrammatic de-abstraction and modelling of engineering problems. In: University of the West of England, Bristol, Graduate Conference, 15th June, 2009, Bristol, UK. - https://eprints.uwe.ac.uk/15112/.

Hale, P. (2010) User driven modelling and systematic interaction for end-user programming. In: Systems Research Showcase, 24th March, 2010, Bristol, UK. - https://eprints.uwe.ac.uk/15113/.

Hale, P., Solomonides, T., Beeson, I., Willey, N., Bultitude, K. and Reynolds, D. (2010) Requirements for phylogenetic tree visualisation: A user driven approach. In: BBSRC/AHRC Workshop on "The Challenges of Visualising Biological Data", 16th-17th November, 2010, Bristol, UK. - https://eprints.uwe.ac.uk/15118/.

Hale, P., Solomonides, T. and Beeson, I. (2011) Requirements and software engineering for tree-based visualisation and modelling: A user driven approach. In: Postgraduate Conference for Computing: Applications and Theory (PCCAT 2011), 8th June, 2011, Exeter University, Exeter, UK. - https://eprints.uwe.ac.uk/15077/.

I have a Journal Publication to be accepted subject to amendments and the same for my PhD. When they're published I'll add these to the repository.

Wednesday, May 04, 2011

What's up doc? Blog Training Day - Attending May 12th - Birmingham

I'm delighted to have been accepted for this event, and looking forward to going on May 12th. It's a good opportunity for me.

I'll include the details below -

"Blog Training Day - a few places still left!

12 May 2011, Birmingham

'What's up doc?' is a new blog which provides a forum for postgraduate researchers to share experience, give information and tips on matters relevant to them in a fun, yet informed way.

As part of the launch we will run a free blog training day in Birmingham on 12 May. Apart from learning what makes a good blog post, we will also explore how to increase your online profile. To apply:

post an example of an article on the
'What's up doc?' blog
send an email outlining why you want to be involved, what discipline your research is in and what you would do to champion 'What's up doc?' to tennie.videler@vitae.ac.uk before 9 May.
We will select applicants based on this and reimburse reasonable travel expenses. Places are limited.

http://www.vitae.ac.uk/whatsupdoc"

Thursday, April 21, 2011

How Ontology and Modelling Tools were chosen for my PhD

The modelling tool Vanguard System was chosen because it handles Units and uncertainty well something that was necessary for the DATUM project with Rolls-Royce as partners (Scanlan et. al, 2006). The same advantage was the case for the PhD because of the need for extensibility such as risk and uncertainty modelling. Other advantages of Vanguard System were ease of installation and use, ease of linking to spreadsheets and databases, facilities for web enabling of models, and the ease with which formulae can be entered and linked with a high level programming language where necessary (similar to spreadsheets but with a tree based user interface). Experimentation with Protégé showed it was possible to translate the Protégé tree into a Vanguard System tree. This fit in well with the stepped translation to be developed. The open standard nature of Protégé made it possible to use this software without being locked in to it. Tools such as TopBraid Composer can provide additional higher level functionality such as an improved user interface and more tools for user interaction and modelling by end-users so is future work.
There was a need for the DATUM project and for the PhD to minimise programming, so Jena was not used, but Leavers' (2008) MSc project used this effectively, and there was regular contact with the developers of ACUITy (Aragones et. al., 2006), to examine how that more software centred approach was used. Given more time that approach could have been used. Metatomix M3t4 was also used effectively as a high level tool to interact with Jena. So results of research with Jena and/or ACUITy and m3t4 would have shown similar results to the approach of using Protégé and Vanguard System.
These types of tools improve with research and development each year so reproducing this research is becoming easier. New ways of modelling at high level with involvement of end-users is thus practical.

References

Jena - A Semantic Web Framework for Java [online]. Available from: http://jena.sourceforge.net/ [Accessed 21 April 2011].

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

Metatomix M3t4 Dashboard [online]. Available from: http://wiki.m3t4.com/homepage.action [Accessed 21 April 2011].

Protégé Welcome to Protégé [online]. Available from: http://protege.stanford.edu/
[Accessed 21 April 2011].

Scanlan, J., Rao, A., Bru, C., Hale, P., Marsh, R., 2006. DATUM Project: Cost Estimating Environment for Support of Aerospace Design Decision Making. Journal of Aircraft, 43(4).

TopBraid Composer, The Complete Semantic Modeling Toolset [online]. Available from: http://www.topquadrant.com/products/TB_Composer.html [Accessed 21 April 2011].

Vanguard System [online]. Available from: http://www.vanguardsw.com/solutions/application/modeling-and-simulation/
[Accessed 21 April 2011].

Monday, April 11, 2011

What's up doc? Join the blog for postgraduate researchers - My case for an invite

This relates to my previous post of April 7th about the research blogging event in Birmingham next month. I've posted to their blog and emailed them to make my case for inclusion. This is my post to their 'What's up doc?' blog - Postgraduate Conference for Computing: Applications and Theory (PCCAT 2011). The post itself is about a different event, a computing Conference at Exeter University and the abstract of my paper for that.

Thursday, April 07, 2011

What's up doc? Join the blog for postgraduate researchers

Below are details of an interesting event about blogs for and by researchers :-


'What's up doc?' is a new blog which provides a forum for postgraduate researchers to share experience, give information and tips on matters relevant to them in a fun, yet informed way.


It replaces GRADBritain, which has been a popular online magazine written by and for postgraduate researchers studying in the UK.


As part of the launch we will run a free blog training day in Birmingham on 12 May. Apart from learning what makes a good blog post, we will also explore how to increase your online profile. To apply:


* post an example of an article on the 'What's up doc?' blog


* send an email outlining why you want to be involved, what discipline your research is in and what you would do to champion 'What's up doc?' to tennie.videler@vitae.ac.uk before 25 April.


We will select applicants based on this and reimburse reasonable travel expenses. Places are limited.

Thursday, March 24, 2011

Systems Research Showcase - Bristol, UK, 30th March

I presented at this event last year. This is a good event for anyone wanting to find out about the latest doctoral level research in Systems Engineering.

The details are below :-

"The Bristol Local Group Presents
Systems Research Showcase
Once again, the Industrial Doctorate Centre at the University of Bristol invites you to its Knowledge Exchange Suite in Woodlands Road to see a cross section of systems research activities being undertaken by the region's universities.

This is an opportunity for researchers to see the work of others in similar fields, and for practitioners to discuss the application of systems research with those currently immersed in its investigation and use.

Date: Wednesday 30th March – 6.30pm for 7pm till 9pm

Location: Knowledge Exchange Suite, Ground Floor, Merchant Venturers Building University of Bristol, Woodlands Road, Bristol, BS8 1UB.

NON-MEMBERS WELCOME.

This event is free, and refreshments will be provided, however to ensure appropriate catering arrangements can be made please register online at: www.incoseonline.org.uk/EventBooking/AutoBooking/MainPage.aspx?CatID=Events&EventID=163. "

Saturday, March 19, 2011

Postgraduate Conference for Computing: Applications and Theory (PCCAT 2011)

I have submitted a paper to this conference at Exeter University in June. These are the details of the conference - http://www.pccat.ex.ac.uk/ -

"Home Page
Welcome to the website of the second Postgraduate Conference for Computing: Applications and Theory (PCCAT 2011). Following the great success of PCCAT 2010, we are pleased to announce that the University of Exeter will host PCCAT on 8th June 2011.

PCCAT 2010 proved a great success, both in terms of networking and introducing the vital world of conferencing to postgraduate students.

We are inviting the submission of abstracts, which if accepted will be extended into either a short paper or a poster for presentation on the day. More details can be found on the Submissions Page

In the new year, we will be inviting interested parties to join the paper review panel, which will be responsible for reviewing and providing feedback for short papers. If this is something you feel you would be interested in, please contact us (details of how to contact the committee are here

We hope to see you at PCCAT 2011, and look forward to hearing from you.


Max Dupenois and David Walker
(PCCAT 2011 Programme Chairs)"

This is my Abstract for the paper -

"Abstract: This paper is about potential to provide an interactive visual taxonomy management system. It has been and is part of efforts to structure, manage, and enable understanding of complex engineering, business and/or scientific information to enable those involved to collaborate using a systems approach. The aim and objectives are to close the link between requirements gathering and end-user modellers. The main subject will be editing and display of product data structures (already implemented), business process modelling, and discussion of possible application to phylogenic/phylogenetic (biology taxonomy) knowledge. Modelling in all these areas could make possible new insights. This approach could also be used for public understanding work and visualisation, e-science, and information management. The aim is to apply novel end-user programming research to enable the editing, management, and representation of anything tree/taxonomy based by uniting the software taxonomy structure with the taxonomy structure of the domain to be modelled and visualised, and using Semantic Web technologies to link this with overall ontologies then to end-users for visualisation.

The purpose of this work is to ease management of development use, and re-use of software and make this a continuous integrated process.

To achieve the above aim what is necessary is to establish or link to a computing infrastructure for representation of complex, engineering, business, and scientific information. This kind of Computer Science/Software Engineering research allows for bringing together related fields of Semantic Web and ontology/taxonomy management, end-user programming, and visualisation and interaction with complex information. Then management of software development with and for such professionals can be eased and all be involved via the web.

Further, the structure and accessibility of Semantic Web technologies may also assist with broadening this approach to accessibility for people with various disabilities, and also for environmental modelling."

Tuesday, January 04, 2011

PhD Viva Presentation

I've put online the presentation I gave at my Viva recently. I'm also putting it on my blog one or 2 slides at a time with an explanation of the research in each area, so will keep doing this roughly once a week, with some posts in between about workshops and events that are happening early this year that look interesting.


This is my PhD Viva presentaion and it's a PowerPoint 2007 file - https://docs.google.com/viewer?a=v&pid=explorer&chrome=true&srcid=0Bx_KguSfl6vSYTY4NDhiN2YtNDc3Yy00MmJkLTlkOTUtNjQ0ZGI5ZGZkNDQ1&hl=en- PowerPoint 2003 version - https://docs.google.com/viewer?a=v&pid=explorer&chrome=true&srcid=0Bx_KguSfl6vSMTdiYjdiMWItMmRmNC00YTJkLThkYmYtYmIwM2VkM2IzZjRm&hl=en.


User Driven Modelling: Visualisation and Systematic Interaction for End-User Programming


Peter Hale

Director of Studies – Tony Solomonides

Supervisor – Ian Beeson

Sunday, December 26, 2010

PhD Viva Result

I have passed my PhD Viva subject to the usual obligations to make agreed amendments. These amendments are minor but extensive.

I'm relieved and delighted with this result, and these amendments will feed into my blog.

Feedback that I've got from comments and surveys on the blog and websites has been a massive help to me.

Thank you to my PhD team, Tony Solomonides and Ian Beeson, and everyone else who assisted me.

Tuesday, February 02, 2010

User Driven Modelling and Systematic Interaction for End-User Programming

This is the abstract of a talk I'll give to - Systems Research Showcase, INCOSE UK, Bristol Local Group, Wednesday 24th March 2010 - at Bristol University -

http://www.bristol.ac.uk/engineering/systemscentre/news/2010/incoseblg.html.

This talk discusses PhD research (just submitted) into building a systematic infrastructure and capability, and how to solve problems which could hamper this. This approach is based on creation of systems that can be customised to produce other systems and models, and translation from abstract diagrammatic representations to computer representations.The conclusion explains how this approach to modelling and end-user programming enables interoperability, and collaboration, and that this assists with Maintenance, Extensibility, Ease of Use, and Sharing of Information.

Systems Engineering is involved in the analysis of the relating of interdisciplinary research requirements, in both engineering and computing, for this research. Systems engineering is also important in that the application area of modelling, for aerospace (Airbus and Rolls-Royce) has been one where complex engineering products are created, and a systematic approach is needed. Further to this the research has required systematic production of systems that in tern must be usuable by a wide range of users to produce and share their customised engineering models.

Wednesday, October 07, 2009

PhD Thesis Submitted

I've submitted my PhD in User Driven Programming, and continued this while my work environment changed. Previously I retrained from clerical work to engineering and computing, and developed advanced skills and experience in this through vocational and higher education. I worked for 10 years as a researcher at University of the West of England. I researched difficult problems, and helped gain funding for such research, and have written funding proposals. I'm very thorough and consistent, resolute, determined, am diplomatic, and have relevant skills for analysing research questions, and presenting findings. My home page is http://sites.google.com/site/userdrivenmodellingprogramming/Home. I devise ways for users to create software, to achieve this I apply Semantic Web techniques. I enable non-programmers to create software from a user interface that allows them to model a particular problem or scenario. I develop ways of translating this information into program code. This is useful for employees that have insufficient time to learn programming languages. This makes it easier for software systems to manage and enable sharing of information and programs people create.

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 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).

Sunday, March 23, 2008

PhD Findings and Conclusion

Findings

The thesis covered the following areas :-


  • Enabling people to create software visually.
  • Creating design abstractions familiar to domain experts e.g. diagrams for engineers.
  • Ensuring interoperability using open standards.
  • Automating user to computer translation process.

This post explains how the alternative approach of User Driven Modelling/Programming used for this thesis to develop models and modelling capabilities compared to that of spreadsheet development, used within other projects. The alternative approach was outlined in this thesis, of using open standards ontologies/taxonomies and a web interface for developing decision support models for design and costing. The stepped translation approach designed and implemented in this thesis enabled structured modelling, and visualisation using interactive technologies.


  • Step 1 - Ontology
  • Step 2 - Modelling Tool
  • Step 3 - Interactive Visualisation

This stepped translation solved problems of the spreadsheet approach as indicated in the table below, and then in more detail in following sections -


Improvement - Achieved By
Maintenance - Structuring and Translation
Extensibility - Structuring and Visualisation
Ease of Use - Visualisation, Interaction, and Translation
Sharing of Information - Shared Ontology and Interoperability


The 3 step translation process created ensures translation of domain level modelling into open standard representation and software and vice versa.

Maintenance

The use of a centralised information source makes these models more reliable than the standalone spreadsheet. This centralised structure was easier to manage than updating multiple instances of the spreadsheets used by different people and ensuring they all contain the same information. So the first task was to build a system for collaborative model building. As a piece of information can then only belong to a unique location, the problems arising from duplicate pieces of information are eliminated. The models have only the functionality that is added by the model builder so there are not other side effects to keep track of, as there are with generic functionality within spreadsheets. Enabling people to create software visually makes it easier for model builders and model users to keep track of any information they are responsible for. Translation from the ontology to models and visualisations ensures one change will affect all stages, so this makes maintenance easier.


Extensibility

Creating the infrastructure for the collaborative model building system took much more time than it did for the spreadsheet system, but having done so it is quicker and easier to create further models. This is because of the facilities provided for model builders and end-users to customise the software in any one of the three step translation process. This means progress has been made in making it possible for non-programmers to build models. It also indicates that the extra research and development time taken was worth it in the long term, most of this time involved productive research and this can be used in future projects. The use of open standards in this thesis for information and models ensures there should be a development path, whatever changes there may be in the software market. This use of open standards also ensures that the system can link with most environments used by others. The translation and visualisation approach ensures that new models can be added using the existing ontology, and that design changes in the ontology and translation can enable modelling of different problems. So if there is a new problem to be modelled there are two ways to achieve this.

Ease of Use

Many people now are familiar with web pages and at least the basics of how to navigate them, and by creating such an environment, and standardising the navigation to those ways commonly used over the web, it is possible to ease usability. The models contain only the functionality that is added by the model builder unlike the spreadsheets which had generic functionality that was not required and led to user’s confusion. New Web 2.0 interaction technologies have allowed production of a rich user interface for web programs in a similar way to single computer applications. This means information held in an ontology and translated through modelling tools can be made available as interactive applications for many users. Translation allowed the same user interface to be provided in multiple tools and computer languages. Also this research showed that it was possible to provide user interfaces and visualisation differently as appropriate according to the type of user, the situation, or the kind of information to be shown.

Sharing of Information

The use of open standards languages for representing information makes it much easier to represent information in a way that makes it accessible both to people and software. Ontology based modelling tools use these open standards and so ensure dependable translation, interoperability, and sharing of information. Web browsers make it possible to share information with many users at once, and so this enables collaboration. Structuring of the information using standardised languages makes it easier to search and visualise the information. This ensuring of interoperability is important for long term use of the overall modelling system.

Conclusion

Within this thesis it is argued that there is a need for software developers to create programs that enable users to solve problems themselves. In effect this involves production of a system to create systems. This approach can widen programming participation by including computer literate non-programmers. This is a reaction to the increased complexity of real world problems and software systems, which makes development of software solutions impractical without greater involvement from end-users. It is difficult for developers to foresee every need of users and use of the software produced, so it makes sense to enable more end-user customisation. It is also argued that the research for this thesis has been a step towards making end-user programming possible. The research ideas look complex at first glance but this research is all about simplifying software development.

The approach of developing decision support models for design and costing using a spreadsheet was compared to the alternative approach of using open standards taxonomies and a web interface for this purpose. The conclusion is that although use of spreadsheets allows for the creation of models relatively quickly they are beset by problems. These relate to Maintenance, Extensibility, Ease of Use, and Sharing of Information. The spreadsheet example and the explanation in the thesis represent problems currently experienced throughout software and computer use.

The alternative approach for this thesis of User Driven Modelling/Programming involves the development of a system, where a model builder, via visual editing of library taxonomies can undertake maintenance and extension of information. Dealing with this proof of concept has indicated that it is easier to maintain, search and share information using this approach than it was using spreadsheets. This also enables much more of the maintenance task to be left to users, who can also customise the system. Creating the infrastructure has taken much more time than it did for the spreadsheet system, but having done so it is much quicker and easier to create further models. This indicates that the extra research and development time taken though far exceeding what would have been required for a spreadsheet modelling project is well worth it in the long term. Also the use of a centralised information source makes these models more reliable than the standalone spreadsheet, standalone decision support models created individually may contain out of date information. In addition, since a well constructed ontology implies that a piece of information can only belong to a unique location, the problems arising from duplicate pieces of information are eliminated. It is also much easier to create models once the infrastructure is in place; this can enable users to develop models. The ability to visualise, search and share information using structured languages and web pages is a huge advantage for creation of dynamic structured views and decision support models over the web.

This research was a test case for a whole new approach that could be possible, of collaborative end-user programming by domain experts. The end-user programmers can use a visual interface where the visualisation of the software exactly matches the structure of the software itself, making translation between user and computer, and vice versa, much more practical. For this reason highly structured visualisations were preferred over web spreadsheets. Semantic Web languages are ideal for representing graphs and trees in an open standard way. The spatial, and tree/graph visualisations used both have the same underlying semantics, and therefore can both be translated to computer languages. In fact it would be much better in the long run to use the Semantic Web languages as standardised programming languages for such problems as this would avoid the need to further translate into other programming languages, and systems. The advantage to this is that of using Semantic Web languages for representation of information, meta-programming, and translation to a visual display for users. The use of Semantic Web languages as a connectivity environment for connecting information, and for connecting users to the information held in Semantic Web data sources enables an environment that could be made easier to use, install and maintain.

More generally a new approach is required to software creation. This approach should involve developers creating software systems that enable users to perform high level programming, and model the problem for which they are the experts. This is an alternative to the provision by developers of modelling solutions that try to provide an out of the box solution that just needs ’tweaking’. Such an out of the box system is not practical considering both increases in complexity of manufactured products, and of software systems themselves. Feedback from publishing the research examples behind this thesis and working with industrial partners indicates that people like to work on their own solutions, providing they are computer literate and confident they have domain knowledge that the developers do not possess. This is true for software development in general, not just in the domain of engineering. Research cited in this thesis from others involved in end-user programming confirms this.

For proving the hypothesis that it is possible to create an end-user programming environment, usable by non programmers, it has been found that structuring and relating of information is all important in this solution. To achieve this, it was only necessary to link the information visually via equations, and store these results for reuse and collaboration. If users can understand and navigate relationships, and add new relationships they can model most problems. It was important to design a visual interface that is intuitive to use, and allows for proper interpretation of the results. Feedback has indicated that users can navigate this structure and manipulate it. This is preferable to ’black box’ solutions that hide information. There are no dead ends or blocks to expanding and improving this approach. To make the system easier to use it is only necessary to trial continually better interfaces, and to assist by providing guidance to the user. There was not sufficient time and resources to expand this research much to areas outside engineering modelling, but there is scope for researchers to improve end-user programming for engineering modelling systems, and to expand the research into other areas.

Friday, February 01, 2008

PhD Summary - User Driven Programming

The research question to be answered in this thesis is - To what extent is it possible to improve collaborative software development through the use of diagrams without requiring people to learn computer languages?

My research involves enabling computer literate people who aren't programmers to create software. The means for this is construction of visual diagrams that represent the task, in a similar way to how family trees and taxonomies can be represented as diagrams. The visual interface is available from a website and the research involves translating this to code. The aim is to enable programming without requiring people to learn computer languages. I am particularly interested in making it possible for a wider range of people to collaborate on software development.

The methodology for this is automation by translation from a human level of abstraction to software.

The theory behind this thesis is that it is possible to create a systematic diagrammatic representation of logical thought to enable representation of user's wishes to a computer.

C.S. Peirce (1906) stated in 'Prolegomena to an Apology for Pragmaticism' "Come on, my Reader, and let us construct a diagram to illustrate the general course of thought; I mean a system of diagrammatization by means of which any course of thought can be represented with exactitude". That is the purpose of this research, but to limit the scope and so make application of this theory testable the research is restricted mainly to engineers (because they often think in terms of diagrams) and to the domain of modelling (which often requires diagrams). So the aim is to apply the research first where it can have the most use and encourage others to expand it for other domains and other users. This research is intended to simplify computing for computer literate non-programmers, this includes many engineers. The main research area is enabling users such as engineers to model the problems they encounter in manufacturing and design. However, the wider aim is to prototype research for enabling a larger range of software users to model their problems. The intention is to create collaborative tools that allow users to develop software in a way they will be familiar with from their use of spreadsheets.

The hypothesis is that it is possible to create an end-user programming environment, usable by non-programmers, which can have a wide variety of uses. The aim of this research is to create a modelling system that can be edited by computer literate non-programmers, and so demonstrate an application of end-user programming that could be used in a more generic way. The possibilities for a generic user-driven programming environment will be explained. It is possible to create an end-user visual programming environment using Semantic Web technologies, especially for modelling of information, where this approach is well suited. All that is necessary is to link the information visually via equations, and store these results for reuse and collaboration. This can make translation from humans to computers easier and more reliable than current software systems and languages. The use of Semantic Web languages as programming languages would assist greatly with interoperability as these languages are standardised for use in a wide range of computer systems.

The problem examined in this thesis is that of allowing domain experts to create decision support software. This is a way of testing the assumption that these domain expert's thoughts can be represented in a systematic diagrammatic way, and then translated to computer code. The main emphasis is on engineers, who experience problems in creating and sharing their software. The alternatives they have for creation of software are spreadsheets, which do not have collaboration and information modelling abilities sufficiently built in, or complex software that needs considerable expertise to use, and often still has insufficient collaboration or information modelling capabilities.

Peirce, C.S. - 1906. Prolegomena to an Apology for Pragmaticism http://www.existentialgraphs.com/peirceoneg/prolegomena.htm