This blog is about my PhD research (now finished) at University of the West of England into User Driven Modelling. This is to make it possible for people who are not programmers to create software. I create software that converts visual trees into computer code. My web site is http://www.cems.uwe.ac.uk/~phale/. I'm continuing this research and the blog. My PhD is at http://eprints.uwe.ac.uk/17918/ and a journal paper at http://eprints.uwe.ac.uk/17817/.
Thursday, March 29, 2007
My PhD Research - Collaborative Web Based Modelling
For my PhD research in User Driven Programming, I have been investigating ways of making it possible for people to program software without having to write code. This is especially useful when collaborative problem solving is required. My research relies on visualisation of the problem in order to model possible solutions. So to make this approach possible, I'm developing free models and modelling tools for use over the Web. These can be used for teaching, collaborative problem solving, management decision making, early stage product and process design, and environmental modelling. I'm intending to prototype this on collaborative student projects such as the early stage design of aircraft and spacecraft. The techniques used to build these models are often called Semantic Web or Web 2.0. This involves providing the kind of software over the Web that is already available on individual computers, and using this for sharing of information worldwide. I'm publishing models online and linking Vanguard Studio with my own software to produce interactive models. These models change in response to the user, perform calculations, and range from dynamic computer aided design (CAD) type representations to hierarchical information explorers. Vanguard Software has donated UWE a free server version of their decision support tool Vanguard Studio. This makes UWE part of a collaborative network of universities and industry that can create models and link them via a Wiki (editable website). This enables companies to co-ordinate their design work both internally and with their suppliers.
My research could also be applied to e-learning; the technologies could provide an interactive learning experience for students to collaborate in constructing solutions.
Example models are at :-
http://www.cems.uwe.ac.uk/~phale/Flash/FlashHCI.htm
http://www.cems.uwe.ac.uk/~phale/InteractiveSVGExamples.htm
http://wiki.vanguardsw.com/bin/browse.dsb?dir/Engineering/Aerospace/
Thursday, March 22, 2007
Creating Software Systems For End User Modelling
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 systems are impractical considering both increases in complexity of manufactured products, and of software systems themselves. 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.
Example models are at:
http://www.cems.uwe.ac.uk/~phale/Flash/FlashHCI.htm
http://www.cems.uwe.ac.uk/~phale/InteractiveSVGExamples.htm
Friday, March 16, 2007
Collaborative Web Based Modelling
The SEEDS (Systems Engineering Estimation and Decision Support) team within AMRC (Aerospace Manufacturing Research Centre) is involved in modelling problems and visualising solutions in order to help with decision support. Vanguard Software has donated UWE (University of the West of England) a free server version of their decision support tool Vanguard Studio. This makes UWE part of a collaborative network of universities and industry that can create models and link them via a Wiki (editable website).
For my PhD research in User Driven Programming, I have been investigating ways of making it possible for users to program software without having to write code. This relies on visualisation of the problem in a similar way to modelling. So to make this approach possible I'm looking to develop free models and modelling tools for use over the Web. These can be used for teaching, collaborative problem solving, management decision making, and environmental modelling. The techniques used to build these models are often called Semantic Web or Web 2.0. This involves providing the kind of software over the Web that is already available on individual computers, and using this for sharing of information worldwide. I'm publishing these models online and linking Vanguard Studio with my own software to produce interactive models. These models change in response to the user, perform calculations, and range from dynamic computer aided design (CAD) type representations to hierarchical information explorers.
Example models are at :-
http://www.cems.uwe.ac.uk/~phale/Flash/FlashHCI.htm
http://www.cems.uwe.ac.uk/~phale/InteractiveSVGExamples.htm
http://wiki.vanguardsw.com/bin/browse.dsb?dir/Engineering/Aerospace/
Monday, March 12, 2007
Management of Complexity
Cagle (2006) explains that "You can never eliminate complexity from a system, you can only move it from place to place". The purpose of my research is to allow software developers to deal with complexity as far as possible in order to leave the end-user free to model their own problems. My research aims to adapt or create software systems to provide the visual editor for the source tree, and allow model builders to create a model by editing this. By doing so, model builders would create a generic model for a particular modelling subject.
Representing Complexity as Linked Trees
My research aims to adapt or create software systems to provide the visual editor for the source tree, and allow model builders to create a model by editing this. By doing so, the model builders would create a generic model for a particular modelling subject. Vanguard Studio is used to automatically convert the taxonomy into a decision support and modelling system. Vanguard have made their server available for collaborative model development (Vanguard Software, 2006). UK universities are already linking together to use Vanguard Studio on a network for aerospace and construction industry modelling. The model users can then use this decision support and modelling system to create their models. These models would be a more specific subset of the generic model, and could be applied for their own analysis. I have provided a translation mechanism to convert information or models into other representations (primarily web based), and to visualise this information. RDF (Resource Description Framework) allows for linking of peoples' information sources with each other, the structure for this is more of interlinked graphs. "RDF is used to model knowledge, where tree-based representations are not enough" (Nilsson et al, 2002). I used and tested this methodology for linking models using Protégé and then translating to Vanguard Studio which also allows interlinking of models. The translations I have then made to web standard languages such as RDF have been successful but I have found that the semantic web needs more interaction and modelling capability, while Web 2.0 technologies have good user interface and interaction capabilities but lack sufficient structure for complex calculations. Another issue of dealing with complexity is how much you use a top-down approach and how much a bottom-up approach in the collaboration necessary to define information sources.
I have found a clear relationship between my end-user programming techniques that involve meta-programming and Semantic Web techniques that involve use of meta-information. Combining these approaches involves a meta modelling management approach that manages complexity on behalf of end-users. This approach deals with linking and using (reusing) information as required in order to solve the problem the user is interested in. An implication of this research is that there is a strong need for user-friendly tools for non-programmers to edit meta-data and meta-programs that must be human understandable and machine understandable. The Web is evolving from being primarily a place to find things to being a place to do things as well (Uschold, 2003) citing (Smith, 2001). It is important to take advantage of this change to enable end-user programming. This allows model builders and users to seek agreement between individuals and between their models and the software representation by intervening in the model building process. This is a practical solution that can be used until machine processable semantics might in future make more automated solutions possible.
Representing Complexity in Other Ways
Sometimes it is difficult to construct an ontology to represent a model, such as when a potential new design is to be modelled and little is yet known about it, so alternatives must be investigated. This kind of problem is investigated by the Institute for People-Centred Computation IP-CC (2006) collaboration network, where representatives from different universities and manufacturers can collaborate to investigate ways of discovering the information required. Also, techniques of Aspect Oriented Programming (Elrad et al, 2001) and (Murphy et al, 2001) can be used to identify functions that can be used in calculating results without the requirement of a detailed underlying taxonomy. Aspect oriented programming could be used to capture and translate user requirements especially where software functions can not be neatly attached to particular objects or nodes in a hierarchy. These are known as cross-cutting concerns as they may affect several nodes. A diagrammatic representation of the cross-cutting concerns can then be translated into a computer language representation such as AspectJ for Java (Kiczales et al, 2001) and AspectXML for XML (eXtensible Markup Language) (Peterson, 2005). This allows for specification of a program as a model and translation to different languages, beginning with Java, and XML. This also makes use of XML as a programming language not just an information format. Collaborations involving Aspect Oriented Programming can be found at (Aosd.net, 2007) and (AspectXML, 2007).Techniques for representing and visualising uncertainty can also be used to help cope with the problem of a limited specification (Marsh et al, 2002), (Bru et al, 2004).
References
Aosd.net, 2007. Welcome to aosd.net - http://aosd.net/.
AspectXML 2007. Community open-source project - http://www.aspectxml.org/.
Bru, C., Scanlan, J., Hale, P., 2004. Visualization of Cost Information, International Journal of Agile Manufacturing, 7(1), pp 53-59.
Cagle, K, 2006. Thoughts on Complexity - http://www.oreillynet.com/xml/blog/2006/03/thoughts_on_complexity.html.
Elrad,T., Filman, R. E., Bader, A., 2001. Aspect-oriented programming: Introduction. Communications of the ACM, 44(10), pp 28-32.
Institute for People-Centred Computation (IP-CC), 2006. Supporting Discovery in Design and Innovative Decision-making http://www.ip-cc.org.uk/.
Kiczales, G., Hilsdale, E., Hugunin, J., Kersten, M., Palm, J., Griswold, W. G., 2001. Getting Started with AspectJ. Communications of the ACM, 44(10) pp 59-65.
Marsh, R., Hill, T., Scanlan, J., Dunkley, M., Cleevely, P., 2002. Modelling manufacturing cost uncertainty with input distributions and exemplars. In: 9th ISPE International Conference on Concurrent Engineering: Research and Applications, Cranfield University pp 881-890.
Murphy, G. C., Walker, R. J., Baniassad, E. L. A., Robillard, M. P., Lai, A., Kersten, M. A., 2001. Does aspect-oriented programming work?, Communications of the ACM, Vol 44(10) (October 2001) pp 75 - 77, ISSN:0001-0782.
Nilsson, M., Palmér, M., Naeve, A., 2002. Semantic Web Metadata for e-Learning - Some Architectural Guidelines WWW2002 Hawaii USA.
Peterson, M. D., 2005. O'Reilly XML.com - [Part 3] Assets, Atom Feeds, and AspectXML - The Triple Threat of Web Development?http://www.oreillynet.com/xml/blog/2005/09/part_3_assets_atom_feeds_and_a.html.
Smith, R, 2001. What's Required in Knowledge Technologies: A Practical Vie . In Proceedings of Knowledge Technologies 2001.
Uschold, M., 2003. Where are the semantics in the semantic web? AI Magazine Vol 24 (3) pp 25-36.
Vanguard Software, 2006. Global Knowledge Portal http://wiki.vanguardsw.com/.
My Research - http://www.cems.uwe.ac.uk/~phale/
Modelling - http://www.cems.uwe.ac.uk/amrc/seeds/Modelling.htm.
Wednesday, March 07, 2007
End User Modelling Tools
User involvement is important in the development of software but a domain expert does not necessarily possess expertise in software development, and a software developer cannot have expertise in every domain to which software might apply. So it is important to make it possible for software to be created, using methods that are as close as possible to that which the domain expert normally uses. The proportion of domain experts in a particular domain (aerospace engineering) for example who can develop their own programs is fairly low, but the proportion that are computer literate in the everyday use of computers is much higher. If this computer literacy is harnessed to allow the domain experts to develop and share models, the productivity for software development will be increased and the proportion of misunderstandings between domain experts and developers reduced. The domain experts can then explore a problem they are trying to solve and produce code to solve it. The role of developers would then become more that of a mentor and enabler rather than someone who has to translate all the ideas of experts into code themselves. Other developers may work at providing better translation software for the experts.
In my research I examined the role of UML (Unified Modeling Language). However there are important gaps in the functionality of UML tools for user centred design. Palanque and Bastide (2003) identify these gaps "For the team of methodologists (Rumbaugh, Jacobson, Booch) that shaped the UML, User Centred Design was not a central concern." These gaps are of even greater importance when attempting to make it possible for people who are not programmers to create software. UML tools could assist software developers in creating a modelling environment suitable for domain experts to use to solve their problems. To achieve this would require a major change in UML tools to enable modelling of user interaction as the core concern. Enabling users themselves to create software using UML type tools would require development of a new type of UML tool specifically designed for ordinary users. This would be compact and simple, but provide enough capabilities to ensure users' designs are robust. This would also fill a gap left by engineering and scientific modelling tools which are powerful but do not have collaboration, communication, and ease of use as central concerns.
Palanque, P., Bastide R., 2003. UML for Interactive Systems: What is Missing INTERACT 2003 Closing the Gaps: Software Engineering and Human-Computer Interaction Zürich, Switzerland - http://www.se-hci.org/bridging/interact/p96-99.pdf.
My Research - http://www.cems.uwe.ac.uk/~phale/.
End User Programming - http://www.cems.uwe.ac.uk/amrc/seeds/EndUserProgramming.htm.
Thursday, March 01, 2007
Research in Modelling Simulation and Collaboration Over the Web
Transformation from a model building environment to program code has been investigated by Gray et al [5]. MathML [6] can assist in this process by providing an open representation of functions as XML (eXtensible Markup Language). Functions entered by the model developer can then be translated to this open representation and translated to programming languages and/or read by programming languages. The representation of functions and information can sometimes be illustrated diagrammatically. Guibert et al [7] explain and expands on Smiths work with an example demonstrating how numbers fail to reveal the concept behind them. The example is a numerical representation of a triangle. This representation is 'fregean' because it does not show the concept of a triangle. Next to this is a diagram of the triangle that does show the concept. This is the theory behind our conversions to interactive SVG (Scalable Vector Graphics) and and tree based representations of information and functions [8][9].
An open standards web driven method of collaboration is required to make it possible for organisations and individuals to become more deeply involved in projects that are well coordinated using web technologies. Morris et al. [10] examine Interactivity and collaboration on the web. Aziz et al. [11] examine how open standards software can assist in an organisation's collaborative product development. This approach is outlined in Ciancarini et al. [12] that explains ways of designing a document-centric coordination application over the Internet. Nidamarthi et al. [13] explain how web based collaboration can aid the design process. Huang and Mak [14] evaluate issues in the development and implementation of web applications for product design and manufacture. Reed et al. [15] show how web based modelling and simulation can be used in the aircraft design process. Kim et al. [16] explain their approach to modelling and simulation. Zhang et al. [17] review Internet-based product information sharing and visualisation. Li [18] examines the role of web based services for distributed process planning optimization.
The intention is to further the research of others into the approach of web based collaboration, and use semantic web software and techniques to achieve this. The above research reinforced our view that this is a robust approach. Modelling collaborations based on these techniques would bring together experts in engineering, systems modelling, computing, and Human Computer Interaction.
References
[1] Huhns, M. (2001) Interaction-Oriented Software Development. International Journal of Software Engineering and Knowledge Engineering, 11 259-279. [2] Paternò, F. (2005) Model-based tools for pervasive usability. Interacting with Computers 17 (3), 291-315. [3] Alloy http://alloy.mit.edu/ [4] Wallace C. (2003) Using Alloy in process modelling. Information and Software Technology, Vol. 45 (15), 1031-1043. [5] W3C Math Home - http://www.w3.org/Math/Overview.html - What is MathML? [6] Gray J, Zhang J, Lin Y, Roychoudhury S, Wu H, Sudarsan R, Gokhale A, Neema S, Shi F, and Bapty T, Model-Driven Program Transformation of a Large Avionics Framework, 2004, Third International Conference on Generative Programming and Component Engineering GPCE. [7] Guibert N, Girard P, Guittet L, (2004), Example-based Programming: a pertinent visual approach for learning to program, University of Poitiers, Proceedings of the working conference on Advanced visual interfaces - Pages: 358 - 361 - ISBN:1-58113-867-9. [8] Spar - Tree based representation http://www.cems.uwe.ac.uk/~phale/Flash/FlashHCI.htm [9] Interactive Examples http://www.cems.uwe.ac.uk/~phale/InteractiveSVGExamples.htm [10] Morris, S., Neilson, I., Charlton, C., Little, J. (2001) Interactivity and collaboration on the WWW - is the 'WWW shell' sufficient?. Interacting with Computers, 13, 717-730. [11] Aziz, H., Gao, J., Maropoulos, P., Chewing, W. M. (2005) Open standard, open source and peer-to-peer tools and methods for collaborative product development. Computers in Industry, 56, 260-271. [12] Ciancarini, P. & Rossi, D. & Vitali, F. (2001) Designing a document-centric coordination application over the Internet. Interacting with Computers, 13 677-693. [13] Nidamarthi S., Allen R. H., Ram D. S. (2001) Observations from supplementing the traditional design process via Internet-based collaboration tools, Computer Integrated Manufacturing, 14 (1), 95-107. [14] Huang, G. Q., Mak, K. L. (2001) Issues in the development and implementation of web applications for product design and manufacture. Computer Integrated Manufacturing, 14 (1), 125-135. [15] Reed, J. A., Follen, G. J., Afjeh A. A. (2000) Improving the Aircraft Design Process Using Web-Based Modeling and Simulation. ACM Transactions on Modeling and Computer Simulation, 10 (1), 58-83. [16] Kim Y., Choi Y., Bong Yoo S. (2001) Brokering and 3D collaborative viewing of mechanical part models on the Web, Computer Integrated Manufacturing, 14 (1), 28-41. [17] Zhang, S., Weimen, S., Hamada, G. (2004) A review of Internet-based product information sharing and visualization. Computers in Industry, 54, 1-15. [18] Li, W. D. (2005) A Web-based service for distributed process planning optimization. Computers in Industry, 56, 272-288.
Links
http://www.cems.uwe.ac.uk/amrc/seeds/Modelling.htm
http://www.cems.uwe.ac.uk/~phale/InteractiveSVGExamples.htm
Wednesday, February 21, 2007
Modelling Tools for Education
This post is about the possibility of creating free online modelling tools for use in education. This would allow people to learn about a subject by modelling it. The semantic web makes it possible to provide tools and applications to allow modelling and collaboration at low cost. This could also aid engineers and scientists in communication with the public.
Many people who are experts in their field have insufficient time to learn programming, but still want to model the problems they need to tackle in their main occupation or learning. They try to achieve this aim on an ad hoc basis by piecing together information they hold in documents, sketches, spreadsheets, and that's available in systems provided for them by their IT supplier. Holding information in assorted documents is not conductive to efficient sharing and reuse of information. Dependence on information systems that are supplied and customised only by an IT department removes control from the domain expert.
The problems that have developed as a result of the above situations are -
• The skill set of engineers in the UK does not match what is required by industry. Industry wants engineers who can solve problems as a team but most modelling tools are complex, they are all different from each other, and so need specific training. These tools don't share information easily or encourage enough collaboration.
• Because of the problem above, universities are torn between teaching the theoretical underpinning of engineering, and the practical skills of modelling problems. If easy to use collaborative modelling tools become available, universities can teach theory and allow students to apply it in case studies, thereby incorporating both research and practice in their projects.
• Researchers become isolated from lecturers and vice versa as there are insufficient cheap and easy to use collaboration tools that can be used for both research and teaching. There is a need for new modelling tools for teaching that researchers can develop, and lecturers can then also be involved in an interesting research project.
• There are too few tools available for early stage modelling of engineering problems such as a new product design, when there is insufficient information for tools such as CAD (Computer Aided Design) and Finite Element Analysis.
• There is a large tools gap between those an engineer or student might use for simpler problems (such as spreadsheets) and the high end expensive tools such as CAD. This leaves no path for students and engineers to improve their modelling skills systematically and cheaply.
• The public do not understand science and engineering sufficiently, partly because there are too few modelling tools that can readily be accessed to act as a communication aid to the public using interactive technologies.
A solution to these problems is to supply people with the open source tools they need to become end user modellers. This can be part of an overall aim to enable and encourage end user programming and so release the capabilities possessed by domain experts in modelling their problems. This can enable a much faster iterative process of model development, visualisation and rework to enable better product design. To enable this it is important to provide a modelling environment that will cost nothing to use and that will have examples, explanations and instructions together with a high level user interface to maximise ease of use, and minimise the need for programming skills. Then this would be ready for widespread use in teaching and for student projects, the first step is to prototype the modelling technologies.
Such a project should begin by creating web based models for problem solving in partnership with industry. This learning materials should be made available for widespread use. At present there are not enough educational materials provided by universities (other than the Open University) as open access rather than in internal university E-Learning environments. The modelling project could begin with a single university or a small group and particular subjects and broaden by promoting the use of the modelling system in other universities, colleges and companies through national educational and business associations. To achieve these aims lecturers and students should be involved in the creation of the modelling system and use of this system (depending on the course and the skills of those involved in it). A useful aim would be to use the modelling system to promote engineering, and engineering solutions to problems (environmental problems for example) to a sceptical public who see the profession as poorly paid and dirty, 'House of Lords Select Committee on Science and Technology report science and society' [1], and remote from the public [2]. This dissemination could include schools libraries, and media.
These aims are influenced by the theory of constructionism explained in [3], this involves understanding problems by modelling them.
References
[1] Select Committee on Science and Technology Third Report Ch 2:Public Attitudes and Values-Attitudes to engineering 2.39.
[2] Canavan B, Magill J, Love D, 2002, A Study of the Factors Affecting Perception of Science, Engineering and Technology (SET) in Young People, International Conference on Engineering Education, August 18-21, 2002, Manchester, U.K.
[3] Resnick, M., 1996, Distributed Constructionism, Proceedings of the International Conference on the Learning Sciences Association for the Advancement of Computing in Education, Northwestern University - http://llk.media.mit.edu/papers/Distrib-Construc.html.
I have a home page at http://www.cems.uwe.ac.uk/~phale/ that explains my PhD research related to this subject and has examples.
I also have a Modelling page at http://www.cems.uwe.ac.uk/amrc/seeds/Modelling.htm
Friday, February 16, 2007
Constructionism, Logo, and Seymour Papert
Seymour Papert - Logo
In the mid 1960s Seymour Papert, a mathematician who had been working with Piaget in Geneva, came to the United States where he co-founded the MIT Artificial Intelligence Laboratory with Marvin Minsky. Papert worked with the team from Bolt, Beranek and Newman, led by Wallace Feurzeig that created the first version of Logo in 1967.
The Logo Foundation
'Logo is the name for a philosophy of education and a continually evolving family of programming languages that aid in its realization.' Harold Abelson - Apple Logo, 1982. This philosophy is based on Constructivism (a learning theory). The Logo Programming Language, a dialect of Lisp, was designed as a tool for learning. Its features - modularity, extensibility, interactivity, and flexibility follow from this goal. It is used to develop simulations, and to create multimedia presentations. Logo is designed to have a "low threshold and no ceiling": It is accessible to novices, including young children, and also supports complex explorations and sophisticated projects by experienced users. The most popular Logo environments have involved the Turtle, originally a robotic creature that sat on the floor and could be directed to move around by typing commands at the computer. Soon the Turtle migrated to the computer graphics screen where it is used to draw shapes, designs, and pictures.
Further Information
Alan Kay and Seymour Papert envisioned in the 1960's the computer's role as a tool for the mind an 'idea processor'. They have worked at bringing computers into this role for adults and children through Croquet, and several of Croquet's predecessors like the Logo language and environment by Papert, and Squeak, the open source Smalltalk language and environment, by Kay. Squeak and Croquet have developed from the early work in Smalltalk and provided a tool for end user programming, collaboration, visualisation, and simulation.
Constructionism
The work of Seymour Papert demonstrates the approach of Constructionism (Papert and Harel, 1991) (Resnick, 1996). The Constructionism idea is based on the constructivist theories of Piaget. To this theory constructionism "adds the idea that people construct new knowledge with particular effectiveness when they are engaged in constructing personally-meaningful products" (Resnick, 1996). Resnick goes on to say "This vision puts construction (not information) at the center of the analysis. It views computer networks not as a channel for information distribution, but primarily as a new medium for construction, providing new ways for students to learn through construction activities by embedding the activities within a community." Resnick explains the theory known as Distributed Constructionism. This involves a community gaining an understanding of a problem by interacting with a knowledge building community, the problem to be modelled, and tools to model the problem, and build a solution. An example that Resnick cites is the work of Kimberly (1995) where participants became part of the simulation they constructed in order to understand economic models. The idea of constructionism is related to end user programming, and ontology modelling, and building. Resnick explains his use of interactive web based knowledge building communities to use and test the theory.
References
Distributed Constructionism - http://llk.media.mit.edu/papers/Distrib-Construc.html - Mitchel Resnick, Proceedings of the International Conference on the Learning Sciences Association for the Advancement of Computing in Education, Northwestern University (accepted: March 1996; published: July 1996)
Hamburg University - http://www.erzwiss.uni-hamburg.de/Sonstiges/Logo/logofaqx.htm - LOGO Frequently asked Questions (FAQ).
MIT Logo Foundation, What is Logo? - http://el.media.mit.edu/Logo-foundation/logo/index.html - What is Logo.
Mitchel Resnick - http://web.media.mit.edu/~mres/.
Planet Papert - http://www.stager.org/planetpapert.html - Articles by and About Seymour Papert - Gary S. Stager.
Seymour Papert - http://www.papert.org/ - Works by Papert.
Situating Constructionism - http://www.papert.org/articles/SituatingConstructionism.html - The following essay is the first chapter in Seymour Papert and Idit Harel's book Constructionism (Ablex Publishing Corporation, 1991).
Wikipedia - http://en.wikipedia.org/wiki/Logo_programming_language - Logo programming language.
Wikipedia - http://en.wikipedia.org/wiki/Seymour_Papert - Seymour Papert.
I have a web page on end user computing history at http://www.cems.uwe.ac.uk/amrc/seeds/PeterHale/EndUserHistory.htm
More information on end user programming can be found at http://www.ieuc.org/home.html
Saturday, February 10, 2007
@Bristol Imax and Wildwalk to shut
In Bristol Evening Post 7th February Bristol North West MP Doug Naysmith is quoted as saying "ministers had previously ignored his warnings that science centres require direct funding" and he wrote to ask ministers "why museums receive funding but science centres do not".
I have been to both @Bristol and the London Science Museum and both to very good work in engaging people of all ages in science and engineering via interactive learning. I don't see there's any clear distinction between a museum and a science centre. Both need to preserve past knowledge and educate people to be involved in future developments. I think all such places should have guaranteed funding each year to allow them to continue, this is essential if this country wants to remain a world player in science and technology. Such investment would be repayed by an enthusiastic new batch of scientists and engineers inspired by their experiences at science centres.
Our government talks about tackling the shortage of people in this country interested in science and technology, and the need for schools, colleges, and universities to promote enthusiasm in their students. The attractions such as @Bristol that are an important resource for education must therefore be properly financed. It isn't sufficient to expect the market to provide such attractions because left to itself the market provides a lot of entertainment facilities that have little or no educational content.
I would be glad of any feedback, comments and opinions on this topic, or any further information and sites that I can add as links.
Links
Save Wildwalk - http://savewildwalk.org.uk/
Save @t Bristol - http://bristol.epetitions.net/
IMAX AND WILDWALK TO SHUT - http://www.thisisbristol.com/displayNode.jsp?nodeId=144936&command=displayContent&sourceNode=144919&contentPK=16572964&moduleName=InternalSearch&formname=sidebarsearch -
This is Bristol in association with the Evening Post 6th February 2007.
MPS UNITED IN AIM TO HELP SAVE CENTRE - http://www.thisisbristol.com/displayNode.jsp?nodeId=144936&command=displayContent&sourceNode=144919&contentPK=16577367&moduleName=InternalSearch&formname=sidebarsearch -
This is Bristol in association with the Evening Post 7th February 2007.
WILD, FUTURE IDEAS - http://www.thisisbristol.com/displayNode.jsp?nodeId=144936&command=displayContent&sourceNode=144919&contentPK=16605701&moduleName=InternalSearch&formname=sidebarsearch - This is Bristol in association with the Evening Post 10th February 2007.
ANNIVERSARY TRIBUTES TO THE MASTER OF WILD FILM - http://www.thisisbristol.com/displayNode.jsp?nodeId=144936&command=displayContent&sourceNode=144919&contentPK=16611837&moduleName=InternalSearch&formname=sidebarsearch -
This is Bristol in association with the Evening Post 10th February 2007.
@Bristol - http://www.at-bristol.org.uk/
Wildscreen - http://www.wildscreen.org
Discovering Bristol Science City - http://www.southwestrda.org.uk/news/release.asp?ReleaseID=1839 - 2nd February 2007.
Innovation Initiatives -
http://www.southwestrda.org.uk/what-we-do/innovation/innovationinitiative/inspire-sw-projects.shtm#eef - Inspire SW - Projects.
Thursday, February 08, 2007
Web 2.0 and Microsoft's response, and Educational Web 2.0 tools
This is an interesting article about how Microsoft might respond to the availability of web 2.0 software such as word processors and spreadsheets over the web.
How Will Microsoft Respond To Online Office Threat - http://www.readwriteweb.com/archives/microsoft_office_online_threat.php - West Suffolk College E-Learning News.
These are interesting links I've found from this course on the subject of e-learning using web 2.0 technologies.
Information from Netskills Course
Web 2.0 Information
DownloadSquad - http://www.downloadsquad.com/category/social-software
Pipes and Filters for the Internet - http://radar.oreilly.com/archives/2007/02/pipes_and_filte.html - Tim O'Reilly on February 07, 2007.
Web 2.0 Tutorials
This is a free internet and web course - TONIC - The Free to Use Internet Course - http://www.netskills.ac.uk/content/products/online/index.html
This is an interesting video presentation about web 2.0 - http://www.youtube.com/watch?v=6gmP4nk0EOE&eurl= - Web 2.0 ... The Machine is Us/ing Us.
E-learning blogs
Bath E-learning team - http://www.bath.ac.uk/dacs/cdntl/pMachine/morriblog.php
EdTechUK - http://fraser.typepad.com/edtechuk/
Suffolk e-learning services - http://suffolkelearning.blogspot.com
West Suffolk College - http://wscelearning.blogspot.com/
Wiki Sites and tools
Netskills - http://netskills.wetpaint.com/
Infoteach - http://www.infoteach.org/wiki/index.php/Main_Page
Communities
Elgg - http://elgg.net/ - Who's interested in e-learning
Digg - http://digg.com/view/technology - Technology
JISC
http://www.jisc.ac.uk/- The mission of the Joint Information Systems Committee (JISC) is to provide world-class leadership in the innovative use of Information and Communications Technology to support education and research.
Sunday, February 04, 2007
Structured Languages
Busy users will not be interested in a system that is difficult to use, but the system must still give reasonable results. So it is necessary to make it as easy as possible for a user to enter the information the software needs. Structured languages can be the solution to this problem because they can be understood by a user, and the language is constructed using mathematical rules. Therefore the structured language presents a mathematical representation to the computer and a natural language or diagrammatic representation to the user. (Borthick et al. 2001) explain however, that ambiguity in natural language can make it difficult to translate natural language into SQL.
It is possible to create an extra layer to enable users to specify commands in structured language. This approach of adding extra layers is the way visual programming works. Users provide the information the program needs at the visual interface layer and program code is created automatically. The layers provide the bridge between abstract ideas and computer code. If this approach is taken to its logical conclusion, we could allow the user to specify what the computer should do. Then each layer would communicate this to the layer below until the computer performs the action required. A simple example of this approach is the use of spreadsheets. A user can specify a calculation in mathematical terms using a formula. The spreadsheet then calculates the result of the formula. The user can change the formula if it is incorrect without any need to write code or re-compile. This accounts for the popularity of spreadsheets. However, spreadsheets do not provide the centralised and structured data-store required for a distributed system. Such systems can be made much more powerful if the information is codified into a relational database structure. Then On-Line Analytical Processing (OLAP) can be used for more sophisticated data collection and analysis. Lau et al. (2001) explain how OLAP displays a multi-dimensional view of aggregated data, and presents a Rule-Based Analytical Processing (RBOLAP) model which can be used for decision support. The use of RBOLAP techniques is demonstrated using a case study on a mould and die information network.
Sutton (2001) and Huber (2001) illustrate how codifying knowledge into a knowledge based system for decision support is likely to be very difficult. Most people 'just do' a task and therefore never write down instructions for others. This highlights the difficulty of getting information into a knowledge base when it may be either only in individuals' minds, or completely unstructured.
Information is scattered within organisations and often not held in such a structured way as to be easily accessed by employees or software. This problem was examined by Lau et al (2005) using the example of McDonnell Douglas (now part of Boeing), that demonstrated how difficult it is to gather unstructured knowledge. Therefore, it is important that research is undertaken into methods of capturing, structuring, distributing, analysing, and visualising information.
I have a web page relevant to this post at http://www.cems.uwe.ac.uk/amrc/seeds/ModellingSemanticWeb.htm.
References
Borthick, A. F., Bowen, P. L., Donald, R. J., Micauel, H. K. T., 2001. The effects of information request ambiguity and construct incongruence on query development. Decision Support Systems Vol 32 pp 3-25.
Huber, G. P., 2001, Transfer of knowledge in knowledge management systems: unexplored issues and suggested studies. European Journal of Information Systems, Vol 10 pp 80-88.
Lau, H. C. W., Bing, J., Lee, W. B., Kau, K. H., 2001. Development of an intelligent data-mining system for a dispersed manufacturing network. Expert Systems Vol 18(4).
Lau, H. C. W., Ning, A., Pun, K. F., Chin, K. S., Ip, W. H., 2005. A knowledge-based system to support procurement decision. Journal of Knowledge Management, 9(1), pp 87-100.
Sutton, D. C., 2001, What is knowledge and can it be managed?. European Journal of Information Systems, Vol 10 pp 72-79.
Thursday, February 01, 2007
Programming by Example - Visual Interfaces
In the mid 1970s Smith introduced the technique of Programming by Example with a program called Pygmalion, Smith elaborated on this in Watch What I Do: Programming by Demonstration (Chapter 1). This demonstrated the need to describe algorithms through concrete examples rather than abstractly. 'Example-based Programming: a pertinent visual approach for learning to program' (Guibert et al, 2004) explain and expands on Smiths work with an example demonstrating how numbers fail to reveal the concept behind them. The example is a numerical representation of a triangle. This representation is 'fregean' because it does not show the concept of a triangle. Next to this is a diagram of the triangle that does show the concept. Next to this is a diagram of the triangle that does show the concept, this is referred to as 'analogical' representation because it includes the context of the information. Including the context of the information allows a person to discover meanings or relationships in the information which would not always be obvious. (Hanna, 2005) and (Elliott, 2006)provide an interface for direct manipulation of shapes in this analogical way by creating an interactive triangle manipulation example using the Haskell functional programming language.
Semantic web languages allow for the context of the information to be represented in documents and so make it possible to represent information in an analogical way, as well as allowing two way interaction, leading to an improvement in information discovery.
The development of visual user interfaces has been a major step forward. The use of pictorial metaphors such as folders to represent a collection of files has greatly aided human computer interaction. Pictorial metaphors give visual feedback so the user knows what the software system is doing. This technique can be used more dynamically in simulations. Simulations represent the real world problem and provide constant feedback to the user on how the system is progressing. In this sense, all software should be regarded as a simulation. Pictorial metaphors are static, while a users' mental model is made up of mental images connected together by a set of rules. The user runs a mental model like a simulation. Static user interfaces rely on a user to string together images into a mental model which correctly represents what the system is doing. A user may generate a mental model in response to user interface metaphors which is inconsistent with the system model.
Simulation can help to ensure that the designers' model, system model and users' model are all the same. This subject is explored in [Crapo et al. 2000 and 2002] and is the basis of the visualisation techniques used to enable the user to create and understand models that are subsequently translated into software representations. This is also explained in chapter one of Watch What I Do: Programming by Demonstration [Cypher, 1993], explains how the Pygmalion language attempts to bridge the gap between the programmer's mental model of a subject and what the computer can accept. The author of this system David Smith went on to develop office oriented icons as part of the Xerox's "Star" computer project.
My research based on these ideas is available at http://www.cems.uwe.ac.uk/amrc/seeds/Visualisation.htm
and my examples at http://www.cems.uwe.ac.uk/~phale/InteractiveSVGExamples.htm
References
Smith, D. C., 1977. A Computer Program to Model and Stimulate Creative Thought. Basel: Birkhauser.
Smith, D. C., 1993. Pygmalion: An Executable Electronic Blackboard. In: A. Cypher, ed. Watch What I Do: Programming by Demonstration. MIT Press, Chapter 1 http://www.acypher.com/wwid/Chapters/01Pygmalion.html - ISBN:0262032139.
Guibert, N., Girard, P., Guittet, L., 2004. Example-based Programming: a pertinent visual approach for learning to program. Proceedings of the working conference on Advanced visual interfaces. pp 358-361 - ISBN:1-58113-867-9.
Hanna, K., 2005. A document-centered environment for Haskell. 17th International Workshop on Implementation and Application of Functional Languages IFL 2005 Dublin, Ireland - September 19-21 2005.
Elliott C., - Functional Programming by Interacting with Tangible Values - http://conal.net/papers/Eros/ - Conal Elliott - April 8, 2006.
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.
Crapo, A. W., Waisel, L. B., Wallace, W. A., Willemain, T. R., 2000. Visualization and the process of modeling: a cognitive-theoretic view. Conference on Knowledge Discovery in Data - Proceedings of the sixth ACM SIGKDD international conference on Knowledge discovery and data mining pp 218-226.
Cypher, A., 1993. Watch What I Do Programming by Demonstration. MIT Press, Chapter 1 http://www.acypher.com/wwid/Chapters/01Pygmalion.html - ISBN:0262032139.
Sunday, January 28, 2007
Modelling and Decision Support using Web Technologies
Shim et al (2002) explain the importance of the web for all types of decision support activity "At the beginning of the 21st century, the Web is the center of activity in developing DSS." Shim et al explain how decision support systems can be provided at low cost and for geographically dispersed companies, customers and suppliers. They cite Power (2006b) when stating "Web-based DSS have reduced technological barriers and made it easier and less costly to make decision-relevant information and model-driven DSS available to managers and staff users in geographically distributed locations." This was the reasoning behind the DATUM (Design Analysis Tool for Unit-cost Modelling) project research (Scanlan et al, 2006). An open standards web driven method of collaboration is required to make it possible for organisations and individuals to become more deeply involved in projects that are well coordinated using web technologies. Shim et al explain how the use of web technologies to standardise user interface design across different models can dramatically improve the ease of use of decision support software. This standardisation can also ease problems of installation and maintenance.
(Morris et al, 2001) examine Interactivity and collaboration on the web. Aziz et al (2005) examine how open standards software can assist in an organisation's collaborative product development. This approach is outlined in (Ciancarini et al, 2001) that explains ways of designing a document-centric coordination application over the Internet. (Ciancarini et al. 2001) explain that web documents can be generated on the fly. This can allow the user interface to respond dynamically to choices. Program code can be attached to the documents themselves, and code can activate certain behaviour based on the XML (eXtensible Markup Language) content of the document. Code can also be created separately and called on as a service when a document needs it. (Nidamarthi et al (2001) explain how web based collaboration can aid the design process. (Huang and Mak, 2001) evaluate issues in the development and implementation of web applications for product design and manufacture. Reed et al (2000) show how web based modelling and simulation can be used in the aircraft design process. Kim et al (2002) explain their approach to modelling and simulation. Zhang et al (2004) review Internet-based product information sharing and visualisation. Li (2005) examines the role of web based services for distributed process planning optimization.
The intention is to further the research of others into the approach of web based collaboration, and use semantic web software and techniques to achieve this. The above research reinforced my view that this is a robust approach. Modelling collaborations based on these techniques would bring together experts in engineering, systems modelling, computing, and Human Computer Interaction.
More detail on this research can be found at - http://www.cems.uwe.ac.uk/amrc/seeds/ModellingSemanticWeb.htm
References
Shim, J.P., Warkentin, M., Courtney, J. F., Power, D J., 2002, Past, present, and future of decision support technology. Decision Support Systems 33 pp 111-126.
Power, D. J., 2006. Free Decision Support Systems Glossary - http://www.DSSResources.COM/glossary/.
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).
Morris, S., Neilson, I., Charlton, C., Little, J., 2001. Interactivity and collaboration on the WWW - is the 'WWW shell' sufficient?. Interacting with Computers, 13, pp 717-730.
Aziz, H., Gao, J., Maropoulos, P., Cheung, W. M., 2005. Open standard, open source and peer-to-peer tools and methods for collaborative product development. Computers in Industry, 56, pp 260-271.
Ciancarini, P., Rossi, D., Vitali, F. 2001. Designing a document-centric coordination application over the Internet. Interacting with Computers, 13, pp 677-693.
Nidamarthi, S., Allen, R. H., Ram, D. S., 2001. Observations from supplementing the traditional design process via Internet-based collaboration tools. Computer Integrated Manufacturing, 14(1), pp 95-107.
Huang, G. Q., Mak, K. L., 2001. Issues in the development and implementation of web applications for product design and manufacture. Computer Integrated Manufacturing, Vol 14(1), pp 125-135.
Reed, J. A., Follen, G. J., Afjeh, A. A., 2000. Improving the Aircraft Design Process Using Web-Based Modeling and Simulation. ACM Transactions on Modeling and Computer Simulation, 10(1), pp 58-83.
Kim, T., Lee, T., Fishwick, P., 2002. A Two Stage Modeling and Simulation Process for Web-Based Modeling and Simulation. ACM Transactions on Modeling and Computer Simulation, 12(3), 230-248.
Zhang, S., Weimen, S., Hamada, G., 2004. A review of Internet-based product information sharing and visualization. Computers in Industry, 54, pp 1-15.
Li, W. D., 2005. A Web-based service for distributed process planning optimization. Computers in Industry, 56, pp 272-288.
My Home Page is http://www.cems.uwe.ac.uk/~phale
I have a page for this subject at http://www.cems.uwe.ac.uk/amrc/seeds/ModellingSemanticWeb.htm
am a member of the Institute for End User Computing (IEUC) - http://www.ieuc.org/home.html
Wednesday, January 24, 2007
User Driven Programming - UWE Graduate School Poster Presentation 2007
User Driven Programming
Poster I presentated on my research for the Graduate School http://www.uwe.ac.uk/cems/graduateschool/index.html - Graduate School Poster Events http://www.uwe.ac.uk/cems/graduateschool/news/poster.html.
PhD Poster
Peter Hale
Home page http://www.cems.uwe.ac.uk/~phale/
Introduction
SEEDS (Systems Engineering Estimation and Decision Support) team - involved in cost modelling solutions.
End User Programming
Why do we need to make it easier for end users to program?
Figure 1 - End User Programming
Based on data from US bureau of Labour Statistics. Sources - http://www.cs.cmu.edu/~bam/papers/EUPchi2006overviewColor.pdf - Myers et al. 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, (VL/HCC'05): 207-214 Dallas, Texas.
User Driven Programming
Software development is time consuming and error prone because of the need to learn computer languages.
Mitigating this allows users to devote full effort to the problem to be solved.
User Driven Programming creates software that enables people to program with visual representation of a tree diagram.
Applied to aerospace engineering but should be applicable to any subject.
Figure 2 - Source to Result TreeTranslation
Translation
The Ontology representation is translated into a computer model.
An Ontology defines relationships between things.
Relationships can be conveyed to a software model that evaluates them.
To achieve this the translator requires -
1Search trigger(s) resulting from user actions.
2Knowledge of the relationships between nodes in the tree.
3Ability to read a equations held in a standardised mathematical form.
4Rules of syntax for the language of the code to be output.
Figure 3 - Visualisation and Interaction Mechanism
Semantic Web Modelling system
1. Connections are established between the ontology system and any
databases, spreadsheets, or other systems that hold relevant information for
that modelling problem.
2. The ontology is created using RDF/OWL [2], and an interface built to
allow domain experts to edit the ontology.
3. Libraries are created in a partnership between ourselves and domain
experts.
4. Taxonomies are populated by model builders who want to use them for
their modelling problem. These are based on the libraries created in step 3.
5. Taxonomies are colour coded for ease of understanding, this part of
the diagram was built with Vanguard system (explained below). We have created a
link between the ontology tool and this decision support and calculation tool.
Vanguard system reads information from the ontology tool.
6. There are 2 sorts of constraints that can be used in order to make it
easier for users to build and adapt models. These are constraints on the way
the ontology, and models are built, and user interface constraints to reduce
the scope for error.
7. The colour coding makes calculation clearer because all taxonomies
can be used in any calculation, this results in a multicoloured result tree
that represents the entire calculation history. User choices affect how items
are related for the calculation; choices could be made manually or via a
search. Colour can also be used to represent cost, time, or uncertainty.
8. Each node can also represent uncertainty, and we have prototyped
including uncertainty expressions in the calculations.
9. The result tree can be represented on the web and in other programs,
this allows for further searching, processing and evaluation of results.
Visualisation techniques and the use of searchable languages such as XML, and
SVG can assist in this.
10. and 11. Experts such as designers can interact with the
ontology, the model, and results, it's intended that there will be a two way
feedback mechanism where the expert can make changes at any stage, and this
filter into changed results. This can then support a cycle of results and rework.
Figure 4 - Vanguard Studio Representation and Calculation
Visualisation
Figure 5 shows how the program visualises information for the spar and its' part definition, material, manufacturing processes etc.
Figure 5 - Vanguard Studio Visualisation
- This is an interactive view of the Vanguard Studio model that was read from Protégé.
- Changing the figures and pressing recalc results in a new calculation.
This tree is translated into SVG (Scalable Vector Graphics) and JavaScript for an interactive CAD view.
Translations from Tree Based View to Component Diagram
Figure 6 shows the spar translated to XML and visualised using Flash multimedia. The spar is then translated and visualised in an SVG based interactive diagram.
Figure 6 - Tree View - XML - Flash - SVG Representation
Others in this kind of research
Kurt Cagle -Understanding XML - http://www.understandingxml.com/
General Electric - ACUITy enterprise modelling tool -Jena Conference Paper - http://jena.hpl.hp.com/juc2006/proceedings/crapo/paper.pdf - An Ontology-Based Architecture for Adaptive Work-Centered User Interface Technology - A Aragones, J Bruno, A Crapo, M Garbias.
Jena Conference Proceedings - http://jena.hpl.hp.com/juc2006/proceedings.html
Orbeon - http://www.orbeon.com/ - Orbeon XForms Presentation Server.
Protégé- Conference and Project Information - http://protege.stanford.edu/community/conferences.html
UWE - Christophe Bru - http://www.cems.uwe.ac.uk/~cbru/
Vanguard Global Knowledge Portal - http://wiki.vanguardsw.com/
Chris Wallace - http://www.cems.uwe.ac.uk/~cjwallac/
Friday, January 19, 2007
User Generated Content
How to help users help themselves - http://news.bbc.co.uk/1/hi/technology/6270593.stm
A very important recommendation Professor Geist makes on actions Government can take relating to improving access to public research is this - "the introduction of open access requirements for publicly-funded research".
I agree with this point he makes.
Other content of the article is -
"Internet law professor Michael Geist describes how governments can help their citizens make the most of the web.
Time Magazine's choice late last month of "You" (by which it meant all the users generating content on the web) as the person of the year was mocked by critics as a poor choice that by-passed several notable political leaders.
Yet the choice may ultimately be viewed as the tipping point when the remarkable outbreak of internet participation that encompasses millions of bloggers, music remixers, amateur video creators, citizen journalists, wikipedians, and Flickr photographers broke into the mainstream."
Professor Geist explains "the role of government will be to support the enormous economic and cultural potential of user-generated content, while avoiding steps that might impede its growth."
How to help users help themselves - http://news.bbc.co.uk/1/hi/technology/6270593.stm 17 January 2007
BBC Technology news - Web users driving change in 2007 - http://news.bbc.co.uk/1/hi/technology/6198125.stm - Mark Ward Technology Correspondent - 1st January 2007.
'You' named Time's person of 2006 - http://news.bbc.co.uk/1/hi/technology/6187113.stm 17 December 2006
Below is a very good BBC Radio 4 program (downloadable - listen again) that explains how the new approaches to open source and web software allowing user-generated content is likely to affect business -
BBC Radio 4 - New Wave Computing - http://www.bbc.co.uk/radio4/news/inbusiness/inbusiness_20070111.shtml - Peter Day talks to some of the rising stars of the new revolution and finds out how the computer industry is changing yet again 11th January 2007.
This report makes the case for increased use of open-source software -
BBC Technology news - Open source gets European boost - http://news.bbc.co.uk/1/hi/technology/6270657.stm - The European Commission has added its voice to the debate about the use of open source software. - 17 January 2007.
http://news.bbc.co.uk/1/hi/technology/4849402.stm - BBC Podcast - 23 January 2007 - Open Source Software.
I have a web 2.0 and AJAX page at http://www.cems.uwe.ac.uk/amrc/seeds/Ajax/ajax.htm.
Saturday, January 13, 2007
Adobe to End Support for SVG Viewer (January 1 2008)
Adobe to Discontinue Adobe SVG Viewer - http://www.adobe.com/svg/eol.html.
SVG expert Kurt Cagle's thoughts are mentioned in this article, where there is also discussion of this issue.
Wherefore art thou, SVG? - http://www.oreillynet.com/xml/blog/2006/09/wherefore_art_thou_svg.html - O'Reilly XML.com - Kurt Cagle - September 10, 2006.
I'm interested in any comments that people might have on this. SVG (Scalable Vector Graphics)has been extremely important in my research because of the ease with which it is possible to extract geometric information from an SVG image. This allows for manipulation of this information to enable interactive updating of diagrams, graphs etc, and the ability to calculate values such as area. Also the CAD (Computer Aided Design) like abilities that SVG gives are very important in putting across engineering information, via the browser, to those who don't have CAD software installed on their PC.
Does anyone know of a way to continue the SVG support in browsers (I'm interested in support in any browsers, and have experimented with native support in Mozilla Firefox, and heard there is support in Opera, and I'm also interested if there are any plans for supporting SVG in future versions of Internet Explorer. I'm also interested in alternative ways of providing all the functionality mentioned within browsers such as development and support of alternative standards.
Its essential that SVG or a standard with similar functionality is supported in the browser as well as in PC based tools, as SVG is key to providing browser based Web 2.0 functionality using technology approaches based on AJAX (Asynchronous JavaScript And XML). To do anything else goes against the reality that the browser is becoming the main application used by the majority of people, and is the primary means for communication of knowledge.
SVG.Open - http://www.svgOpen.org - SVG.Open 2007 Conference, Tokyo, Japan - September 2007.
Thursday, January 11, 2007
Semantic Web and Semantic Grid Research
The Grid and Semantic Web areas of research are converging. The ideas and technology behind the Grid are explained in (Foster et al, 2001a) and (Foster et al, 2001b). Universities are involved in Grid-computing research, Southampton (De Roure et al 2001a) and (De Roure et al, 2001b), Exeter, Liverpool John Moores (Alan et al, 2003) and (Naylor et al, 2003). Semantic Web and Grid researchers have recently become involved in the Semantic Grid. The Semantic Grid involves sharing of computer resources as well as information, and does not just apply to high performance computing applications. Semantic languages and ontologies can be part of a larger effort to provide a Grid of information and applications, which can be requested as required. If a user requests the answer to a problem using one computer, this can then get the help of others to solve it. Machine intelligence does not then reside in one machine but in the complex system of interacting machines.
Semantic Web Page - http://www.cems.uwe.ac.uk/amrc/seeds/PeterHale/RDF/RDF.htm
Semantic Web History - http://www.cems.uwe.ac.uk/amrc/seeds/PeterHale/EndUserHistory/Semanticweb.htm
Semantic Web Modelling - http://www.cems.uwe.ac.uk/amrc/seeds/ModellingSemanticWeb.htm
References
Allan, A., Taylor, T., 2003. eSTAR:Telescopes and Databases as a Single Information Grid, Toward an International Virtual Observatory. Proceedings of the ESO/ESA/NASA/NSF Conference, Garching, Germany, 10-14 June 2002, ESO Astrophysics Symposia. ISBN 3-540-21001-6. Springer-Verlag Berlin/Heidelberg, pp 167.
Berners-Lee, T., 1999. The future of the Web http://www.w3.org/Talks/1999/0414-LCS35-tbl/slide1-1.html.
Berners-Lee, T., Hendler, J., Lassila, O., 2001. The Semantic Web. Scientific American, May 17, 2001.
Berners-Lee, T., 2002. The World Wide Web - Past Present and Future http://www.w3.org/2002/04/Japan/Lecture.html, Japan prize Commemorative Lecture.
De Roure, D., Baker, M. A, Jennings, N. R., Shadbolt, N. R., 2003. The Evolution of the Grid, Southampton University.
De Roure, D., Baker, M. A., Jennings, N. R., Shadbolt, N. R., 2003. The Semantic Grid: A Future e-Science Infrastructure, Southampton University.
Foster, I. Kesselman, C. Tuecke, S., 2001. The Anatomy of The Grid. International Journal of Supercomputer Applications, Argonne National Laboratory, University of Chicago, University of Southern California.
Foster, I., Kesselman C., Nick, J. M., Tuecke, S., 2001. The Physiology of The Grid, Argonne National Laboratory, University of Chicago, University of Southern California.
Naylor, T., Steele, I., Carter, D., Allan, A., Etherton, J., Mottram, C., 2003. eSTAR Building an Observational GRID. Astronomical Data Analysis Software & Systems (ADASS) Conference ASP Conference Series, 2003, Exeter University, Liverpool John Moores University, 295.
World Wide Web Consortium (W3C), 2006, Leading the Web to its Full Potential http://www.w3.org/.
Monday, January 08, 2007
Structured Representation of Information
The Need for Ontologies
Information is scattered within organisations and often not held in such a structured way as to be easily accessed by employees or software. This problem was examined by Lau et al (2005) using the example of McDonnell Douglas (now part of Boeing), that demonstrated how difficult it is to gather unstructured knowledge. Therefore, it is important that research is undertaken into methods of capturing, structuring, distributing, analysing, and visualising information.
Taxonomies, Ontologies and Structuring of Information
An ontology is a classification structure. A taxonomy can be just a convenient structure to assist programmers, or part of an overall 'thesaurus' which describes and agrees the meaning of things. This 'thesaurus' structure is the ontology and may contain one or more taxonomies. Engineers may have different names for the same thing, e.g. wing skin stiffeners may be referred to as stringers, but rib stiffeners are never called stringers. There is a relationship of stringer to stiffener, which needs to be defined, and this definition depends on the context. A classification scheme or ontology is necessary in order to make communication precise. Such an ontology can also be used to help non-specialists to understand the terminology of a particular domain. The ontology can also enable communication between the computer systems and users. Hunter (2002) explains how taxonomies can be the basis of the definitions for an ontology, and that commercial software is available. Hunter gives examples of the Ministry of Defense technology taxonomy, and the Boeing online ontology. The taxonomy "Type-Of" and "Part-Of" relationships can indicate how to construct the taxonomy. Veryard (2001) and McGuinness (2000) provide useful guides on how ontologies can assist in linking distributed data. This linking and connectivity is also explained in 'Ontologies and Semantics for Seamless Connectivity' Uschold and Gruninger (2004).
Knowledge based systems need to allow a variety of people in different disciplines to share knowledge across functional, departmental, and disciplinary boundaries. Consideration is needed of the further problem that certain knowledge should be shared with others outside the organisation such as suppliers, and customers.
There is a strong need for uniting of the approaches of top down ontology definition by a small group of experts with that of the bottom up approach of allowing all users to define the ontology. Software applications are needed that allow users with little software knowledge to edit and update ontologies themselves. The extent to which an organisation allows this depends on its structure but if this is completely prevented or not enabled in the first place, there will be user dissatisfaction resulting from their lack of involvement. It is also likely that progress in defining and editing the ontology would be delayed.
The varied user base of knowledge systems results in a further problem, which is that of fragmentation of the language itself. As the users are in different trades and professions they will not necessarily understand the same words, or assign to them the same meaning. Again this makes it necessary to structure the information in a knowledge-based system carefully, to ensure it can be well visualised, and agreements can be reached.
Relationships between terms such as type-of, and part-of become more important than the term itself, as the relationship defines the meaning of the term by relating it to the other terms. These relationships can then be represented in diagrammatic form and navigated, in order to allow the meaning of terms to be agreed and explained. A classification structure such as this is termed the ontology.
My objective is to build a catalogue and make use of it for decision support and costing systems, while demonstrating that the same approach could be used for other types of system(s). It is essential that this catalogue can query information from organisations' existing database systems. Most large organisations have key operational knowledge and information dispersed across different types of information systems, often in relational databases. This has the advantage of allowing the use of the standardised language Structured Query Language (SQL) to access this information.
This research is explained in greater depth at http://www.cems.uwe.ac.uk/amrc/seeds/ModellingSemanticWeb.htm and http://www.cems.uwe.ac.uk/amrc/seeds/PeterHale/RDF/RDF.htm.
References
Hunter, A., 2002. Engineering Ontologies http://www.cs.ucl.ac.uk/staff/a.hunter/tradepress/eng.html.
Lau, H. C. W., Ning, A., Pun, K. F., Chin, K. S., Ip, W. H., 2005. A knowledge-based system to support procurement decision. Journal of Knowledge Management, 9(1), pp 87-100.
McGuinness, D. L., 2000. Conceptual Modeling for Distributed Ontology Environments. Proceedings of the Eighth International Conference on Conceptual Structures Logical, Linguistic, and Computational Issues (ICCS 2000), Darmstadt, Germany. August 14-18, 2000.
Uschold, M., Gruninger, M., 2004. Ontologies and Semantics for Seamless Connectivity, Association for Computer Machinery - Special Interest Group on Management of Data - SIGMOD Record December, 33(4).
Veryard R., 1994. Data Mappings http://www.users.globalnet.co.uk/~rxv/infomgt/datamapping.pdf - Soap Box Blog, 2006 http://www.users.globalnet.co.uk/~rxv/so/2006/11/semantic-coupling.htm.
Thursday, January 04, 2007
End-User Modelling - The Need for Alternatives to Standard Spreadsheets
End User Programming and Engineering Modelling
Many large companies have outsourced the management and support of their IT systems to third parties. Very strict management processes and procedures for the acquisition and implementation of new systems have been introduced. A side-effect of this policy is a tendency for employees to make extensive use of spreadsheets and macro programming languages for information storage, analysis, and manipulation (Scanlan et al, 2006). These applications establish themselves as a legitimate part of the business processes of the organization despite the essentially uncontrolled nature of their development. This is a worrying trend as these applications are frequently undocumented, rarely fully tested or validated, and are produced by people who often have little or no formal training in good systems development practice. An alternative approach of User Driven Modelling is required, because large spreadsheets are unmaintainable in the long run.
By their nature, large spreadsheets are difficult for a third party to comprehend as their inherent flexibility for editing allows users to generate a complex web of cell references which are arduous to audit. Panko (2000), Paine, (2003), and Scanlan et al (2006) examine this problem. Worse still, there is a tendency for the spreadsheet author to misguidedly compound the problem by expending a considerable amount of effort into hiding the detail behind an elaborate and visually attractive 'front end'. Should the author of such an application leave the organization, it is commonly abandoned as colleagues are reluctant to master its complexity and often refuse to take ownership of it, as they are busy with their main work. Paine states that spreadsheets have almost no features for building applications out of parts that can be developed and tested independently. Panko (2000) suggests that “Given data from recent field audits, most large spreadsheets probably contain significant errors.” The most recent audit he cites found errors in at least 86% of spreadsheets audited. In 1997 Panko reported that 90% of the spreadsheets audited in a study carried out by Coopers and Lybrand were found to have errors. In 'Automatic Generation and Maintenance of Correct Spreadsheets?' Erwig et al (2006) cite a figure of 90% from Rajalingham et al (2001) 'Classification of Spreadsheet Errors'. 'Given the billions of spreadsheets in use, this leaves the worlds of business and finance horribly vulnerable to programming mistakes' (Scanlan et al, 2006). The studies by Paine, and Panko show that the chances of any given spreadsheet cell containing an error are somewhere between 0.3 and 3%, so that a spreadsheet of only 100 cells has about a 30% chance of having one error or more. Aragones et al (2006) state - 'Desktop spreadsheet users are very creative in their adaptations, but
distributed spreadsheets have the problem of distributed, inconsistent inputs and distributed
results. There is no easy way to aggregate the collective wisdom of user experience'.
References
Aragones, A., Bruno, J., Crapo, A., Garbiras M., 2006. An Ontology-Based Architecture for Adaptive Work-Centered User Interface Technology. Jena User Conference, 2006, Bristol, UK [online]. Available from: http://jena.hpl.hp.com/juc2006/proceedings/crapo/paper.pdf.
Erwig, M., Abraham, R., Cooperstein, I., Kollmansberger S., 2006. Automatic Generation and Maintenance of Correct Spreadsheets?. Proceedings of the 27th international conference on Software engineering, St. Louis, MO, USA pp 136-145 [online]. Available from: http://web.engr.oregonstate.edu/~erwig/papers/Gencel_ICSE05.pdf
Paine, J., 2003. Spreadsheet Structure Discovery with Logic Programming, Proceedings of European Spreadsheet Risks Interest Group EuSpRIG Greenwich, England.
Panko, R. P., 2000. Spreadsheet Errors: What We Know, What We Think We Can Do. Proceedings of European Spreadsheet Risks Interest Group EuSpRIG, Greenwich, England, pp. 7–17.
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).
Monday, January 01, 2007
Web Software
In this BBC article 'Web users driving change in 2007' by Mark Ward, Phillippe Courtot (chairman of online security firm Qualys) explains -
"You cannot keep on developing software the old ways, The costs of distribution and support are higher and higher and the customers are less and less satisfied. Instead of buying a licence for a program and developing applications themselves, companies will move in great numbers towards firms offering software as a service via the web browser. It's going to be much more visible than it has at any other time."
Web users driving change in 2007 - http://news.bbc.co.uk/1/hi/technology/6198125.stm - By Mark Ward Technology Correspondent, BBC News website.