Friday, May 30, 2008

Visual Diagrammatic Programming

With visual diagrammatic modelling it was possible to include one model within another as a software component, and demarcate responsibility for building, maintenance, and updating of each model. This was difficult using spreadsheets, and possible with non-visual programming though the link between individual responsibilities and code produce was not as clearly identified, because non-programmers cannot participate in code production. As an example, for cost modelling of an aircraft wing, different experts might build software models for wing spars, wing skins etc, and another expert might be responsible for the overall wing cost model. The wing spar and skins model would then be inserted into the overall wing cost model.

The techniques demonstrated in this thesis can aid progress towards accessing of data held using Semantic Web standards, and also other information that might be locked into particular systems such as databases, spreadsheets and enterprise systems. The translation and de-abstraction approach assists with enabling high level diagrammatic visualisations to be used and translated to computer queries. Programming using Semantic Web technologies can :-

* Assist with translating non-Semantic Web information into Semantic Web information.
* Assist in production of Semantic Web information by end-users by.
* Assist end-users to query non-Semantic Web information.

Further Visualisation Information is at - http://www.cems.uwe.ac.uk/amrc/seeds/Visualisation.htm

End User Programming Information is at - http://www.cems.uwe.ac.uk/amrc/seeds/EndUserProgramming.htm

Thursday, May 22, 2008

Drag and Drop Visual Programming

2 main conclusions resulted from examining the history of end-user computing :-

• Research that created prototype systems for specialist users, school children, and other researchers and programmers, but failed to take make headway in the mass market can be reused with more up to date technology to assist development.

• More pragmatic research that involved creation of tools for the mass market, but which avoided more long term research issues can now be extended.

One mechanism for applying new technologies for use in end-user programming is drag and drop programming.

Repenning (2007) explains the need for enhancements to UML to aid end-user programming. Repenning also argues that "Visual programming languages using drag and drop mechanisms as the programming approach makes it virtually impossible to create syntactic errors." So "With the syntactic challenge being - more or less - out of the way we can focus on the semantic level of End-User Programming." This can make a high level model driven approach to production of better models possible. Rosson (2007) also explains about creation of a web-based drag and drop interface.

Ways that research is pursued in this thesis in order to make User Driven Programming possible are:-

1. Semantic Web and Web 2.0 approach to enabling User Generated Content.

2. User Centric Extensions to UML (Unified Modelling Language) e.g. (Vernazza, 2007) this approach also ventures into 1 and 3).

3. Visual Programming Extensions to spreadsheet type formulae based modelling enabled using approach 1.

Approach 1 is illustrated by Yahoo Pipes (2008) which provides for drag and drop editing of visual components that can combine, sort, and filter RSS data sources in order to automate web application development. This enables modelling of information, and using such diagrammatic programming combined with enabling of calculations would combine these three ways of producing applications. Yahoo Pipes enables creation of modelling applications with Semantic Web information, so this could assist in providing more incentive for provision of Semantic Web information and applications to use it.

So there is considerable overlap between these three approaches and they must be integrated within interdisciplinary research to enable user driven programming. One approach to this is a Semantic User Interface; this is explained in Vernazza (2007). This can enable Drag and Drop programming that combines the benefits of all three research approaches. The important factor is to connect the user interface with the underlying code, so the two share the same structure and users can properly see how their actions can change the actual code. This enables collaborative User-Driven programming.

References

Pipes and Filters for the Internet - http://radar.oreilly.com/archives/2007/02/pipes-and-filters-for-the-inte.html - O'Reilly - Feb 7 2007 - Yahoo!'s new Pipes service is a milestone in the history of the internet. It's a service that generalizes the idea of the mashup, providing a drag and drop editor that allows you to connect internet data sources, process them, and redirect the output.

Repenning, A., 2007. End-User Design. In: End-User Software Engineering Dagstuhl Seminar.

Rosson, M. B., 2007. Position paper for EUSE 2007 at Dagstuhl. In: End-User Software Engineering Dagstuhl Seminar.

Vernazza, L., 2007. Himalia: Model-Driven User Interfaces Using Hypermedia, Controls and Patterns In: IFAC/IFIP/IFORS IEA Symposium - Analysis, Design, and Evaluation of Human-Machine Systems Seoul, Korea - September 4-6th 2007 - International Federation of Automatic Control.

Yahoo Pipes [online]. Available from: http://pipes.yahoo.com/pipes/ [Accessed May 22nd 2008].

This is a Yahoo Pipes example created for the subject of Web 2.0/AJAX -

Yahoo Pipes RSS Feed for Web 2.0 - http://pipes.yahoo.com/pipes/pipe.info?_id=3e30625ebd44f24ff969ae5eef724425

An explanation of how to access and use the pipe created from a web page is at - Code Explanataion/Tutorial Freshblog - Blogger Hacks, Categories, Tips & Tricks - http://blogfresh.blogspot.com/2007/03/pipes-json-and-code-for-your-website.html.

Another article I wrote on Drag and Drop programming is at http://ezinearticles.com/?Drag-and-Drop-Programming&id=671578 and information and examples at http://www.cems.uwe.ac.uk/amrc/seeds/Ajax/ajax.htm#DragandDropProgramming

Tuesday, May 13, 2008

Semantic Web Collaboration

There is a need for Semantic Web applications in order to increase the amount of Semantic Web information that can be searched. This could result in a virtuous circle of Semantic Web applications creating Semantic Web information, and so justifying the creation of more Semantic Web applications to access it. This research advocates the use of Semantic Web applications for modelling and end-user programming, and integration into business applications.

Research in the use and visualisation of Semantic Web information can provide the tools that end-user programmers have been lacking until recently, and these tools can be used for modelling. A modelling environment needs to be created by software developers in order to allow users/model builders/domain experts to create collaborative and interoperable models. This modelling environment could be created using an open standard language such as XML (eXtensible Markup Language). Cheung et al. (2005) demonstrate the importance of XML for interoperability and knowledge re-use. As the high (user) level translation, this would depend on tools developed in order to assist the user, provide an interface and manage the user interface. These tools are written by developers using lower level languages, in order to enable modelling by end-user modellers.

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 (as explained by Berners-Lee and Fischetti (1999). Anderson's (2007) Joint Information Systems Committee (JISC) report explains that as an application becomes more popular, more people use it in order to communicate with others who use it. This enables exposing information using web technology, for re-use.

Anderson (2007) in a Joint Information Systems Committee (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. Anderson's JISC 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 ontology development problem should be aided by publishing the ontology and allowing tagging of content by users, the advantages of this in creating a shared understanding of what things mean is explained by Anderson. Anderson explains that tagging by web users can generate some understanding and agreement about terms and an improved search facility, even without a formal ontology, or as a way to assist in the development and improvement of an ontology. Anderson's JISC report explains how the technologies used are enabling user-centred web applications, and the use of the web as a development platform. It explains "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 (2007) 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'. Cayzer (2004) argues for provision of mechanisms to allow web page creators to tag their pages easily and as a natural part of the page creation. Al-Khalifa and Davis (2006) and Schmitz (2006) use this approach of user tagging combined with centralised ontology development.

Sternemann and Zelm (1999) explained 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), and Cheung et al. (2007) also explain this. So it is important to demonstrate a system that could be used to solve this problem by means of accessible, interoperable collaborative software to enable visual modelling/programming.

References

Al-Khalifa, H. S., Davis, H. C., 2006. Harnessing the Wisdom of Crowds: How To Semantically Annotate Web Resource Using Folksonomies. In: Proceedings of IADIS Web Applications and Research (WAR2006).

Anderson, P. Technology and Standards Watch. 2007. JISC (Joint Information Systems Committee) What is Web 2.0? Ideas, technologies and implications for education.
Berners-Lee, T., Fischetti, M., 1999. Weaving the Web. Harper San Francisco; Paperback: ISBN:006251587X

Cayzer, S., 2004. Semantic Blogging and Decentralized knowledge Management. Communications of the ACM. Vol. 47, No. 12, Dec 2004, pp. 47-52. ACM Press.

Cheung, W. M., Maropoulos, P. G., Gao, J. X., Aziz, H., 2005. Ontological Approach for Organisational Knowledge Re-use in Product Developing Environments. In: 11th International Conference on Concurrent Enterprising - ICE 2005, University BW Munich, Germany.

Cheung, W. M., Matthews, P. C., Gao, J. X., Maropoulos, P. G., 2007. Advanced product development integration architecture: an out-of-box solution to support distributed production networks. International Journal of Production Research March 2007.

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.

Schmitz, P., 2006. Inducing ontology from Flickr tags. In: WWW2006 Conference, Edinburgh, UK. May 22-26, 2006.

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.

More Information on this subject is available at - http://www.cems.uwe.ac.uk/amrc/seeds/Ajax/ajax.htm.
My Research - http://www.cems.uwe.ac.uk/~phale/.
Modelling - http://www.cems.uwe.ac.uk/amrc/seeds/Modelling.htm.

Tuesday, May 06, 2008

Semantic Web Applications

In order to increase the use of Semantic Web technologies it is necessary to create applications that make use of the Semantic Web for practical applications. Enabling Modelling with Semantic Web technologies could encourage domain experts to fill ontologies with useful information, so generating more benefit from their use.

The use of Semantic Web languages as information representation and even as programming languages would assist greatly with interoperability as these modelling languages are standardised for use in a wide range of computer systems.

Research can bring together End-User Programming, Modelling and the Semantic Web approaches, so the shaded area is examined.

My Research Area - The aim of my research is to try to bring together the areas of End User Programming, Modelling and the Semantic Web.  So I'm examining the area marked in yellow.

An important area of research is a technique for end-user programming, that of allowing visual modelling of information. This corresponds to the type of work normally undertaken using spreadsheets. This research involves using Semantic Web technologies to enable end-user programming. The technology is applicable to any problem that involves user interaction, calculation, and modelling so it can be applied to a wider range of tasks and subject areas.

A methodology that involves structuring of information through Ontology and Semantic Web techniques and enabling end-user programming through visualisation and interaction aims to achieve effective production of generic models. Horrocks (2002) explains Semantic Web technologies and the use of agents and ontologies, and ontology representation languages. This demonstrates the linked nature of Ontology and Semantic Web research.

Berners-Lee and Fischetti (1999) sum up the advantage of a Semantic Web program over programs in other languages. They write, "The advantage of putting the rules in RDF is that in doing so, all the reasoning is exposed, whereas a program is a black box: you don't see what happens inside it." They discuss the use of Semantic Web languages as programming languages and explain the benefits declaring "The Semantic Web, like the Web already, will make many things previously impossible just obvious. Visual Semantic Web programming is one of those obvious things".

Berners-Lee et al. (2006) explain the importance of visualisation for navigation of information "Despite excitement about the Semantic Web, most of the world's data are locked in large data stores and are not published as an open Web of inter-referring resources. As a result, the reuse of information has been limited. Substantial research challenges arise in changing this situation: how to effectively query an unbounded Web of linked information repositories, how to align and map between different data models, and how to visualise and navigate the huge connected graph of information that results." 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 main advantage of open standard representation of information provided by the Semantic Web is that information can be transferred from one application to another. Additionally it provides a layered architecture that allows for a stepped translation from users to computer and back for conveying results of a modelling run. The program transformation approach argued for by Lieberman (2007) can be used to translate from a domain expert End-User Programmer abstraction to models represented by Semantic Web languages, ontologies and code.

Use of Semantic Web technologies is a means for open standard representation of collaborative models, transformation into different representations as required, and for provision of a high-level interface as a tool for model visualisation and system creation. Structuring of information through Ontology and Semantic Web techniques and enabling End-User Programming through visualisation and interaction can achieve effective production of generic models. Semantic Web technologies could assist greatly with Web based Simulation and Modelling. Kuljis and Paul (2001) evaluate progress in the field of web simulation. They argue the need for web-based simulations to be focussed on solving real-world problems in order to be successful. Miller and Baramidze (2005) establish that for a "simulation study that includes model building, scenario creation, model execution, output analysis and saving/interpreting results. Ontologies can be useful during all of these phases." Model-Driven Programming and the Semantic Web are explained by Frankel et al. (2004).

Research in the use and visualisation of Semantic Web information can provide the tools that end-user programmers have been lacking until recently, and these tools can be used for modelling. Crapo et al. (2002) assert the need for a methodology for creation of systems to enable more collaborative approaches to modelling by domain expert end-users, and that this combined with visualisation would allow engineers to model problems accurately.

Many organisations produce text based reports from their IT systems. But text based reports do not always show information well enough for good decision making. Automated conversion of these reports into Semantic Web languages could assist greatly with this. So a translation process is required and can be implemented as part of an overall User-Driven Modelling/Programming Approach. Once reports are converted to a standardised representation, hierarchical information can be represented as clickable trees and numerical representation as charts. This makes it possible to customise outputs from existing IT systems and so allows an improvement in readability of information without major changes to the way it's produced. This could provide a large gain at little cost.

References

Berners-Lee, T., Fischetti, M., 1999. Weaving the Web. Harper San Francisco; Paperback: ISBN:006251587X

Berners-Lee, T., Hall, W., Hendler, J., Shadbolt, N., Weitzner, D. J., 2006. Creating a Science of the Web. Science 11 August 2006:Vol. 313. no. 5788, pp. 769 - 771.

Crapo, A. W., Waisel, L. B., Wallace, W. A., Willemain, T. R., 2002. Visualization and Modelling for Intelligent Systems. In: C. T. Leondes, ed. Intelligent Systems: Technology and Applications, Volume I Implementation Techniques, 2002 pp 53-85.

Frankel, D., Hayes, P., Kendall, E., McGuinness, D., 2004. The Model Driven Semantic Web. In: 1st International Workshop on the Model-Driven Semantic Web (MDSW2004) Enabling Knowledge Representation and MDA® Technologies to Work Together.

Horrocks, I., 2002. DAML+OIL: a Reason-able Web Ontology Language. In: proceedings of the Eighth Conference on Extending Database Technology (EDBT 2002) March 24-28 2002, Prague.

Kuljis, J., Paul, R. J., 2001. An appraisal of web-based simulation: whither we wander?. Simulation Practice and Theory, 9, pp 37-54.

Lieberman, H., 2007. End-User Software Engineering Position Paper. End-User Software Engineering Dagstuhl Seminar.

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

Further Information on this research is at -

Semantic Web - http://www.cems.uwe.ac.uk/amrc/seeds/PeterHale/RDF/RDF.htm.

End-User Programming - http://www.cems.uwe.ac.uk/amrc/seeds/EndUserProgramming.htm.

Modelling - http://www.cems.uwe.ac.uk/amrc/seeds/Modelling.htm.

Semantic Web Modelling - http://www.cems.uwe.ac.uk/amrc/seeds/ModellingSemanticWeb.htm.

Monday, April 21, 2008

Visualising Reports

Many organisations produce text based reports from their IT systems. But text based reports don't always show information well enough for good decision making. Automated conversion of these reports into Semantic Web languages could assist greatly with this. So a translation process is required and can be implemented as part of an overall User Driven Modelling/Programming Approach. Once reports are converted to a standardised representation, hierarchical information can be represented as clickable trees and numerical representation as charts.

This makes it possible to customise outputs from existing IT systems and so allows an improvement in readability of information without major changes to the way it's produced. This could provide a large gain at little cost.

Examples of Visualisations are here - http://www.cems.uwe.ac.uk/amrc/seeds/Visualisation.htm#VisualisationExamples.

Chart/Graph type visualisations are here - http://www.cems.uwe.ac.uk/amrc/seeds/PeterHale/Charts/charts.htm.

Sunday, April 13, 2008

Space Horizons

This project just uploaded uses RSS and design skills of University of the West of England to create a space related educational news site. The RSS news page provides an automated update of space news, and there is also an events page and picture gallery.

Space Horizons - http://www.cems.uwe.ac.uk/amrc/JANS/spacehorizons/ - Space Horizons is a project that aims to deliver ideas on space and any other related information. Based in the South-West of England, Space Horizons also promotes the idea of space tourism which we are very much involved with. It's the place to be for any space related news, events and information in the South West of England! - Information Technology Management for Business - Year 2.


Space Horizons - UWE - JANS Student Group Project

Space Horizons - UWE - JANS Student Group Project

Project Summary


For this project, we will provide a web environment to explain the business and economics of space, enable improved collaboration amongst space companies and OEMs (Original Engineering Manufacturers). This will help promote and develop the UK's space capability. There are growing opportunities for UK space industry in space tourism, moon and mars missions, satellites, and robotic missions. This project will build on the team members' extensive experience in decision support modelling and visualisation, especially within the aerospace industry. Our strategy is to make available the kind of systems we developed for aerospace companies' internal decision support systems to all industry, organisations and the public. Our partners for this are the West of England Aerospace Forum (WEAF) http://www.weaf.co.uk/ who will be allowing us to extract, visualise and extend the interactivity of their aerospace company network information. We will build an environment where individuals and companies can create their own models. The initial focus is on the space domain, though the techniques will be applicable to any domain. We will enable a wide range of people to create models as well as linking to and visualising server based models. The means to achieve this is provision of freely available, web-based, visual model creation tools that require the minimum possible code writing expertise from end-users. For the complex, interdependent space sector, simplicity of communication and access is essential.

The primary aim for this feasibility study is to establish a method to represent complex models and information in a way that is interactive, accessible and understandable by a wide range of users. This will enable space (and aerospace) industries in the SW region to access relevant information rapidly, and ensure efficient economic interactions throughout the supply chain. The focus for this system will be on using ICT to achieve a long-term aim of providing cheaper and more efficient space transport and so aid the development of this sector of the UK aerospace industry. This will be enabled by the capture and distribution of engineering knowledge for the space transport sector in a novel, and constructionist, 'e-science' environment. There are two main strands to this research:

  • modelling of the economics of the space industry using web based technology

  • enabling organisations and the non-specialist to model problems, by creating a system that employs end-user programming.


A further objective will be to establish a forum for involvement of aerospace companies, organisations, and the public in furthering collaborative space expertise and investment. The space industry will be used as a test vehicle, though it is clear that this approach could be employed in many areas, including industrial, educational, scientific and business sectors. This feasibility study will enable validation of our approach prior to the application of modelling techniques to these other sectors.

The digital technologies used and the subject area of the space industry are economic opposites. Web software especially is a market where comparatively little acquisition investment is required. Space at present requires massive investment so there is a tendency towards monopoly/oligopoly. Though economic theory tells us that monopoly leads to abnormal profits, this is only sometimes the case with space efforts, this depends on the engineering and scientific difficulty, production techniques and the project aims scientific/commercial. Where the aims are mainly scientific, public money is usually required, through government led agencies, though suppliers may make profits. Simpler and clearer modelling would help to reduce space investment and operational costs. User driven programming assists in increasing the value of workers in relation to ICT, an aim of the World Bank Working Paper (Zhen-Wei Qiang et al., 2004). Thus, it addresses two areas of skill shortage, which are hampering the UK economy, and slowing growth.

Zhen-Wei Qiang C, Pitt A, Ayers S, 2004. Zhen-Wei Qiang C, Pitt A, Ayers S, 2004, Contribution of Information and Communication Technologies to Growth.

Friday, April 04, 2008

Who will write tomorrow's code?

This article on the BBC Technology Website by Bill Thompson illustrates aspects of the history of programming and examines the availability of future programmers.

This is at - http://news.bbc.co.uk/1/hi/technology/7324556.stm.

"Bill Thompson describes the history of "personal computers like the IBM PC, home systems like the Spectrum and of course to the BBC Microcomputer," - "characterised by programmability, by the ability of users to write their own code".

"Just like EDSAC the BBC Micro was open to developers to work on, coming with the BASIC programming language and even a schematic showing the circuitry inside for those more interested in hardware than software."

"Along with the Spectrum and even the ZX81 it was a computer that encouraged those using it to learn to program for themselves."

"The BBC offered support with television programs, magazines with long BASIC programs to be typed in and improved upon were published, and there was a sense that understanding computers meant being able to do more than just run applications.

"Today, with over two billion PCs, three billion mobile phones and well over a billion internet users the ways in which information and communications technologies shape the modern world are obvious."

"The revolution succeeded, and we now live in the wired world of digital data, fast networks and computerised systems."

Bill Thompson argues "we need good programmers for the UK's software industry and at the moment we do not have enough of them."

Since the eighties and computers like the BBC Micro the emphasis on programming computers has reduced and use of applications is the main aim of most people. Although with Web 2.0 there is more User Generated Content created there are still limits to the customisation and development of applications by end-users. If the ease of use/programming of early BBC micros was brought to current applications and an easier transition from using to programming, this would be a powerful end-user programming environment. Then greater numbers of computer literate users would take on programming.

More information from my website on these subjects is available at - http://www.cems.uwe.ac.uk/amrc/seeds/EndUserProgramming.htm and http://www.cems.uwe.ac.uk/amrc/seeds/PeterHale/EndUserHistory.htm.

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, March 14, 2008

The SVG (Scalable Vector Graphics Conference) is on this August.

SVG Open 2008 - http://svgopen.org/2008/index.php - 6th International Conference on Scalable Vector Graphics - 26th to 28th August - Nuremberg - Germany - The world conference on SVG will this year take place in the center of Nuremberg. Located in the south of Germany.

I have an SVG page at - http://www.cems.uwe.ac.uk/amrc/seeds/PeterHale/SVG/SVG.htm - with more information.

Saturday, March 01, 2008

PhD Thesis Summary

There are many computer literate people who are experts in a particular domain. This research examines enabling computer literate engineers to model problems in software by minimising the code writing they need to undertake. Software development is difficult for many engineers as they often do not have the time, experience, or access to software development tools necessary to model their problems. Using a combination of modelling via use of formulae (equations) and visualisation of the way these formulae interact it is possible to construct modelling software without requiring code. Crapo et al (2002) explain the need for a methodology for creation of systems to enable more collaborative approaches to modelling by domain expert end-users, and that this combined with visualisation would allow engineers to model problems accurately. This technique of User Driven Modelling/Programming could be widely applicable to any problem that requires linked equations to be represented and tracked, and results from these calculated. While some argue that end-user programming is an insurmountable problem, this problem could be tackled by many researchers co-operating to create specific solutions to different kinds of end user programming problems while also sharing findings, to assist with progress towards a more generic solution.

Crapo, A. W., Waisel, L. B., Wallace, W. A., Willemain, T. R., 2002. Visualization and Modelling for Intelligent Systems. In: C. T. Leondes, ed. Intelligent Systems: Technology and Applications, Volume I Implementation Techniques, 2002 pp 53-85.


More Information is available on my Home Page at - http://www.cems.uwe.ac.uk/~phale/.

Saturday, February 23, 2008

Improving the structuring and collaboration capabilities of spreadsheets

Users can specify a calculation in mathematical terms using a formula. The spreadsheet then calculates the result of the formula. Users can change the formula if it is incorrect without any need to write code or re-compile. This accounts for the popularity of spreadsheets. So it is necessary to create collaborative tools that allow users to develop software in a way they will be familiar with from their use of spreadsheets.

Burnett et al (2007) state "end-users are using various languages and programming systems to create software in forms such as spreadsheets, dynamic web applications, and scientific simulations. This software needs to be sufficiently dependable, but substantial evidence suggests that it is not." Crapo et al (2002) argue that many users of spreadsheet software can model problems accurately if they are provided with visualisation capabilities to help them build, track, and understand the information relationships, and therefore the problem modelled. Crapo explains that visualisation helps users maintain a hierarchy of sub models at different stages of development and to navigate effectively between them. The way spreadsheets are defined by formulae can aid in allowing editing and tracking of information in models provided that the relationships between formulae are adequately represented. Hanna (2005) explains that a spreadsheet program is defined by formulae and has purely declarative semantics with the order of evaluation determined purely by the dependencies between cells. However, he criticises the impoverished semantics of spreadsheets that severely limit "the ability of programmers (even expert ones) to construct reliable, correct, maintainable programs with well known consequences". There is an alternative solution of research to automatically generating correct spreadsheets, and solve errors of meaning (semantic errors) (Erwig et al, 2006). This thesis concentrates on visualisation in order to make the meaning clearer to the human modellers. Therefore, it is necessary to improve the information structuring, and visualisation capabilities of spreadsheets in order to encourage more reliable modelling and collaboration.

Burnett, M. M., Engels, G, Myers, B. A., Rothermel, G., 2007. End-User Software Engineering Dagstuhl Seminar - http://www.dagstuhl.de/en/program/calendar/semhp/?semnr=2007081.

Crapo, A. W., Waisel, L. B., Wallace, W. A., Willemain, T. R., 2002. Visualization and Modelling for Intelligent Systems. In: C. T. Leondes, ed. Intelligent Systems: Technology and Applications, Volume I Implementation Techniques, 2002 pp 53-85.

Erwig, M., Abraham, R., Cooperstein, I., Kollmansberger S., 2006. Automatic Generation and Maintenance of Correct Spreadsheets?. In: Proceedings of the 27th international conference on Software engineering, St. Louis, MO, USA pp 136-145 - http://web.engr.oregonstate.edu/~erwig/papers/Gencel_ICSE05.pdf.

Hanna, K., 2005. A document-centered environment for Haskell. In: 17th International Workshop on Implementation and Application of Functional Languages IFL 2005 Dublin, Ireland - September 19-21 2005.

Sunday, February 17, 2008

User Driven Modelling Justification

There are many computer literate people who are experts in a particular domain. Given the opportunity they will develop their own software (Scaffidi, 2005). There is a need in many domains for people to create software such as engineering models, scientific taxonomies, business systems, and in the arts. Examples of software systems that enable creation of models without necessitating code writing are spreadsheets, visual web development systems, and database management systems. Crapo et al (2002) explain the need for a methodology for creation of systems to enable more collaborative approaches to modelling by domain expert end-users that make use of structured and visualised information. Peirce (1904) explained that systems can be represented logically by humans, and this applies to software development and information representation on computers. Thus it could be made possible to represent systems with natural and visual languages. Though Nurminen et al (2003) argue that people prefer usability over automation, it is possible to achieve both by providing a stepped translation capability that ensures users are constantly kept informed of the steps taken. This approach is advocated by (Johnson, 2004). Automated translation from a people-centred view of information to software for computers can aid in software development by domain expert end-users and help ensure they can communicate models directly to computers. Software developers can then concentrate mainly on creating systems that enable domain experts to develop software, rather than developing individual software models on behalf of domain experts, which is difficult and prone to communication problems.

References

Crapo, A. W., Waisel, L. B., Wallace, W. A., Willemain, T. R., 2002. Visualization and Modelling for Intelligent Systems. In: C. T. Leondes, ed. Intelligent Systems: Technology and Applications, Volume I Implementation Techniques, 2002 pp 53-85.

Johnson, P., 2004. Interactions, Collaborations and breakdowns. In: ACM International Conference Proceeding Series; Proceedings of the 3rd annual conference on Task models and diagrams Vol 86 Prague, Czech Republic. - http://portal.acm.org/citation.cfm?id=1045448&coll=GUIDE&dl=GUIDE&CFID=17319495&CFTOKEN=29205382&ret=1Fulltext [Accessed 17th February 2008].

Nurminen, J. K., Karaonen, O., Hatonen, K., 2003. What makes expert systems survive over 10 years-empirical evaluation of several engineering applications. Expert Systems with Applications 24(2) pp 199-211. - http://citeseer.ist.psu.edu/630566.html [Accessed 17th February 2008].

Peirce, C.S., 1906. Prolegomena to an Apology for Pragmaticism [online]. Available from: http://www.existentialgraphs.com/peirceoneg/prolegomena.htm [Accessed 17th February 2008].

Scaffidi, C., Shaw, M., Myers, B., 2005. Estimating the Numbers of End-users and End-user Programmers. In: IEEE Symposium on Visual Languages and Human-Centric Computing, (VL/HCC'05): 207-214 Dallas, Texas. - http://www.cs.cmu.edu/~cscaffid/papers/eu_20050923_vlhcc.pdf [Accessed 17th February 2008].

Monday, February 11, 2008

Periodic table of Visualization Methods

Periodic table of Visualization Methods - http://www.visual-literacy.org/periodic_table/periodic_table.html - By Ralph Lengler and Martin J Eppler of Visual Literacy.org - http://www.visual-literacy.org/.

This displays visualisation methods categorized into a periodic table type format. Each letter(s) stands for a visualisation method rather than a chemical element. So this is a good way to see many visualisations in an easy to navigate way, a visualisation of visualisation methods. The visualisation methods are also categorized by colour coding and position into overall methodologies. When the cursor is rested on a visualisation method an example pops up.

This visualisation and the details of how it's produced are described in more detail in a University of the West of England blog - Periodic table of Visualization Methods - UWE Blog - http://dsa2006.blogspot.com/2007/02/periodic-table-of-visualisations.html - UWE Blog post - "This blog supports the group of students taking Data, Schemas and Applications UFIEKG-20-3, a module taught in the Information Systems School at the University of the West of England in Bristol, UK - Visual-Literacy.org has published this great Periodic Table of methods of visualisation. This displays around 100 diagram types, with examples and a multi-faceted classification by: - simple to complex - data/information/concept/strategy/metaphor/compound - process/structure - detail/overview - divergence/convergence - The web page uses a Javascript library to display an example of a diagram type when you mouse-over its box. A neat trick but perhaps not very accessible, so I took the liberty of massaging this table to create a full listing of all the diagram types in alphabetical order. This format is more convenient for my purpose when teaching, and is a nice example of XML-scraping using XQuery."

More information on visualisation is available at - http://www.cems.uwe.ac.uk/amrc/seeds/Visualisation.htm and http://www.cems.uwe.ac.uk/~phale/VisualisationandInteraction.

Thursday, February 07, 2008

NASA - massively multiplayer online (MMO) game request

NASA has issued a request for information for an educational game to develop Science, Technology, Engineering, and Mathematics Skills for students. NASA requests a 5 page size 12 font document of ideas.

"The US space agency is exploring the possibility of developing a massively multiplayer online (MMO) game.
The virtual world would be aimed at students and would "simulate real Nasa engineering and science missions".
The agency has published a "request for information" (RFI) from organisations interested in developing the platform."

Nasa believe the game would help find the next generation of scientists and engineers needed to fulfil its "vision for space exploration".


Nasa investigates virtual space - http://news.bbc.co.uk/1/hi/technology/7195718.stm

NASA Learning Technologies Request for Information: Development of a NASA-based massively multiplayer online learning game - http://ipp.gsfc.nasa.gov/mmo/

NASA Learning Technologies Request for Information: Development of a NASA-based Massively Multiplayer Online Learning Game PDF Document - http://ipp.gsfc.nasa.gov/mmo/MMO_RFI.pdf

DEVELOPMENT OF A NASA-BASED MASSIVELY MULTIPLAYER ONLINE LEARNING GAME - http://prod.nais.nasa.gov/cgi-bin/eps/synopsis.cgi?acqid=128415

NASA's Planning its Own Version of World of Warcraft - http://www.universetoday.com/2008/01/18/nasas-planning-its-own-version-of-world-of-warcraft/


I have a space about space research at - http://www.cems.uwe.ac.uk/amrc/aerospace.htm.

and

Public Understanding of Science - http://www.cems.uwe.ac.uk/amrc/seeds/PublicScience.htm.


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

Sunday, January 27, 2008

Usability and Reuse in software design

This is a very useful and informative extract from a usability conference presentation and examines how reusability can be provided in systems, the reference for this is below the post.

Degler (2006) asks the Questions –

"Have you had insights and observations that go beyond the scope of a particular system or site you are working on?

Have you seen the same user needs and challenges cropping up on three or four projects, and realized that you are seeing a pattern?

Have you worked on standards for design and development of web sites or information that need to be applied across many different projects and services?

Have you become involved in conversations with managers where you have the opportunity to share how "things could be better" for users overall, beyond the boundaries of a single site?"

This illustrates how to create and test a User Driven Modelling approach, the intention of this approach is to create a high level abstraction that can be reused to solve many problems with a common pattern.

Degler, D., 2006. The Usability Professional as Visionary / Strategist. In: UPA DC usability conference, October 2006. http://www.ipgems.com/present/degler_visiontalk_upadc2006.pdf.

Saturday, January 19, 2008

Web Taxonomy Creation 2


To achieve the aims of Web Taxonomy Creation examined in my last post, a collaborative modelling approach is required. The literature on collaborative modelling is extensive. Huhns [1] and Paternò [2] both explain that alternatives to current software development approaches are required for ease of model creation. The need is to translate from a model-based visual representation understood by users to software. This makes it possible to engage with end-users and non-specialists in general. Johnson [3] explains that successful interaction requires mapping between levels of abstractions and that translation between these abstraction levels required by people and computers is difficult. Johnson explains that this problem often means systems are created that make users cope with the problems of mis-translation. The representation of rules and information can be illustrated diagrammatically and it is possible to describe algorithms through concrete examples rather than abstractly. Models must be designed and visualised so that they convey to users a representation of a problem that assists with their vision of it. This modelling approach is explored by Crapo et al [4] and is the basis of our visualisation techniques allowing the creation and understanding of taxonomies and models.

Scaffidi et al [5] show that most people who develop software are de-facto programmers lacking a formal computing background, this will often be the case for scientists and the public contributing to taxonomies. End-user programming is particularly important in this research as we are making software development accessible to non-experts. Research by Ko [6] explains the need for engagement of end-users, including non-specialists by providing them with the capability to interact and amend software. An e-science interactive environment is ideal for involving anyone interested in science to amend or produce personal content. The environment will benefit from an interactive e-learning approach influenced by 'Semantic Learning Webs' [7]. The capabilities we will provide over the web are similar, but more collaborative and advanced than provided by spreadsheets for modelling, and web editors for knowledge sharing. We will produce an alternative methodology for scientific modelling that hides the complexity of low-level programming code from users. This is a kind of meta-design, as explained by Fischer [8] that can be standardised to create a collaborative environment for sharing information among scientists. This builds on research we have undertaken to enable end-user programming. We will visualise scientific information and make this editable online. The system created must be judged accessible and user friendly by users. In addition, it must share information successfully with other software and people. So interoperability is extremely important, examples of interoperability research we will make use of are INTEROP [9] and MOMOCS [10], and combine this with a model driven approach. In order to achieve interoperability, the utilisation of open formats should be favoured in order to maximise chances of forward compatibility with evolving scientific models. We will also create or customise editing tools such as wikis [11][12], blogs, and Semantic Web editors [13] to document the models and collect user's feedback. We will visualise scientific information and make this available online.

Web Taxonomy Creation -

http://userdrivenmodelling.blogspot.com/2008/01/web-taxonomy-creation.html.


References


[1] Huhns M, 2001, Interaction-Oriented Software Development, Journal of Software Engineering and Knowledge Engineering.


[2] Paternò F, 2005, Model-based tools for pervasive usability, Interacting with Computers Vol 17(3), pp 291-315.


[3] Johnson P, 2004, Interactions, Collaborations and breakdowns, ACM International Conference Proceeding Series, 3rd annual conference on Task models and diagrams Vol 86.


[4] Crapo A W, Waisel L B, Wallace W A, Willemain T R, 2002, Visualization and Modelling for Intelligent Systems, Intelligent Systems: Technology and Applications, 1, pp 53-85.


[5] Scaffidi C, Shaw M, Myers B, 2005. Estimating the Numbers of End Users and End User Programmers. IEEE Symposium on Visual Languages and Human-Centric Computing, 21-24 September, Dallas, USA.


[6] Ko A J, 2007. Barriers to Successful End-User Programming. End-User Software Engineering Dagstuhl Seminar.


[7] Stutt A, Motta E, 2004. Semantic Learning Webs. Journal of Interactive Media in Education, 2004(10), Special Issue on the Educational Semantic Web.


[8] Fischer G, 2007. Meta-Design: A Conceptual Framework for End-User Software Engineering. End-User Software Engineering Dagstuhl Seminar.


[9] INTEROP -

http://interop-vlab.eu/newsletter/newsletter-nb02/

[10] MOMOCS - MOdel driven MOdernisation of Complex Systems -

http://www.viewzone.org/momocs/index.php?option=com_content&task=blogcategory&id=20&Itemid=17

[11] Hale P, 2007. Protégé Wiki

http://protege.cim3.net/cgi-bin/wiki.pl?UserDrivenProgramming

[Accessed 29 Nov 2007].


[12] Visual Knowledge, 2007. Semantic Wiki

http://www.visualknowledge.com [Accessed 29 Nov 2007].

[13] Quint V, Vatton I, 2005. Towards Active Web Clients. DocEng Bristol United.

Sunday, January 13, 2008

Web Taxonomy Creation

An important contribution to Public Understanding of Science and for enabling of new insights would be creation of an online systematic representation of scientific information that gives a holistic view of related knowledge. This would reuse information and ideas provided by other researchers. These systems organise and visualise information. Letondal [1] of the Pasteur Institute provides a tool to generate web interfaces for molecular biology programs using an end-user programming approach. TreeBASE [2] is a relational database of phylogenetic information hosted by the Yale Peabody museum. Hughes [3] of the Computational Biology Unit (CBU) University of Bergen has investigated visualisation of phylogenetic trees and written an application that converts the NCBI (National Center for Biotechnology Information) [4] taxonomic data into a format that makes it possible to visualise the whole of the NCBI tree of life. Klyne [5] of the Image Bioinformatics Research Group, Zoology Department, Oxford University makes use of Semantic Web technology to build an image publication repository. UK Moths [6] online guide to the moths of Great Britain and Ireland illustrates the role of amateurs who send in pictures to be categorised. Mammals Family tree [7] provides an innovative way of visualising complex trees as a taxonomy on a wheel, this is a technique which could be developed as an interactive visualization. Fishbase [8] is a web accessible and searchable resource for accessing fish information by various categories. IHOP (Information hyperlinked over Proteins) by Hoffman [9] provides a gene network for navigating more than ten million abstracts in PubMed [4]. By using genes and proteins as hyperlinks between sentences and abstracts, this converts the information in PubMed into one navigable resource. Proviision of 3D hyperbolic representations of trees is investigates by Hughes et al [10]. This capability could be provided on the web using Semantic Web Technologies [11] [12] and this would enable others to edit and interact with these represenatations.

Web Taxonomy Creation - http://userdrivenmodelling.blogspot.com/2008/01/web-taxonomy-creation.html


References

[1] Letondal C. - http://www.pasteur.fr/~letondal/ - Pasteur Institute, Computing Center.
[2] TreeBASE - http://www.treebase.org/treebase/index.html - a Database of Phylogenetic Knowledge.
[3] Hughes T. Phylogenetic tree visualisation - Tim's Home Page - http://www.ii.uib.no/~tim/frontPages/treesPage.shtml.
[4] Wheeler DL, Chappey C, Lash AE, Leipe DD, Madden TL, Schuler GD, Tatusova TA, Rapp BA (2000). Database resources of the National Center for Biotechnology Information. Nucleic Acids Res 2000 Jan 1;28(1):10-4
[5] Klyne G, 2007, Building a Semantic Web accessible image publication repository - http://imageweb.zoo.ox.ac.uk/drupal/files/20071002-SWeb-applications.pdf - Image Bioinformatics Research Group - Zoology Department - Oxford University.
[6] UKMoths - http://www.ukmoths.org.uk/ - Welcome to UKMoths, your online guide to the moths of Great Britain and Ireland.
[7] Mammals family tree - Use zoom tool to see mammal details on the circle's edge - http://news.bbc.co.uk/1/hi/sci/tech/6503045.stm - BBC News Science - Mammal rise 'not linked' to dinos - PDF Family tree visualisation.
[8] Fishbase - http://www.fishbase.org/search.php.
[9] Hoffman R, Information hyperlinked over Proteins - http://www.ihop-net.org/UniPub/iHOP/ - A gene network for navigating the literature.
[10] Hughes T, Hyun Y and Liberles, 2004. Visualising very large phylogenetic trees in three dimensional hyperbolic space. DA. BMC Bioinformatics. BMC Bioinformatics Apr 29;5:48.
[11] Eklund P, Roberts N, Green S, 2002. OntoRama: Browsing RDF Ontologies using a Hyperbolic-style Browser, The First International Symposium on Cyber Worlds, CW02, Theory and Practices, IEEE Press. (2002) pp 405-411.
[12] Talis Engage - http://www.talis.com/engage/ - Community information at your fingertips - an online community information solution that allows citizens to organise, create and publish details of their events, organisations and groups.

Wednesday, January 09, 2008

Code Generation 2008 conference

Code Generation 2008 - http://www.codegeneration.net/conference/index.php - 25th-28th June 2008 - Cambridge, UK - A growing number of developers are using or planning to use model-based code generation - are you ready for the next evolutionary step in software? - WHO'S CG2008 FOR? - CG2008 is for software practitioners and those with a stake in the future of their development organisation.

Final Call for Speakers:
Submission Deadline: Friday January 18th 2008

We are seeking high-quality session proposals covering topics on
model-driven software development (including Software Factories,
Model-Driven Architecture (MDA), Domain-Specific Languages (DSLs),
Generative Programming, Software Product Lines and related areas).

Sessions could cover topics such as:
- Code Generation and Model Transformation tools and approaches
- Defining and implementing modelling languages
- Domain Analysis and Domain Engineering
- Language evolution and modularization
- Meta Modelling
- Runtime virtual machines versus direct code generation
- Tool and technology adoption

Real-world case studies based on any aspect of these and related
approaches are particularly encouraged although more theoretical
sessions are also welcome.

Accepted speakers have their conference fees waived. We will also be
offering a discount on conference fees to non-speaking academic
participants. More information will be available when the programme goes
online on 25th February.

Visit
http://www.codegeneration.net/conference/index.php for more
details on the event or contact me for more information.

What people said about our previous conference - Code Generation 2007:

"I've been working in domain-specific modelling for a dozen years ...
and in this time this has been the highest-quality conference on this
topic that I've been to - and I've been to a few."

"The combined-for that matter, individual-expertise present was
remarkable, and presented a tremendous opportunity for knowledge exchange."

"The presentations were all top quality, making it often difficult to
decide between the concurrently running sessions. The wealth of MDD
knowledge present and the event was impressive, not only from the
presenters, but from the other delegates as well."

Best wishes for a happy and successful 2008.


I have an Events page at which has mainly computing and aerospace events listed and linked to - http://www.cems.uwe.ac.uk/~phale/Events.htm.

Tuesday, December 04, 2007

SWIG-UK Powerpoint Presentation - at Hewlett-Packard

I gave a SWIG-UK Powerpoint Presentation - at Hewlett-Packard Bristol UK - semantic web interest group - http://www.cems.uwe.ac.uk/~phale/InteractiveModellingandVisualisationofInformation.ppt or http://cems.uwe.ac.uk/~phale/InteractiveModellingandVisualisationofInformation.ppt - November 23rd 2007.

This was on Interactive Modelling of Information, Visualisation and Translation Between different software and ontology representations.

There were many interesting presentations and links to all the talks are at - http://swig.networkedplanet.com/special.html.

More information about my research can be found at http://www.cems.uwe.ac.uk/~phale/ or http://cems.uwe.ac.uk/~phale/.

I had a comment saying Links don't work unless I remove www from the url. I'm not sure why the link seems OK as it is from my computer but not others so have put both options.