Showing posts with label open source software. Show all posts
Showing posts with label open source software. Show all posts

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

Thursday, October 11, 2007

PhD Objectives - User Driven Modelling

These are my PhD objectives, in order to make it clear what my research is about.

This research will examine creation of models and modelling systems, and how this can be eased so that a wider range of the population can achieve this. It will also identify ways that creation of models and modelling systems is similar to other types of programming, and how the research can be applied more generally. The main users of the system will be engineers; possibilities for wider application will be explored.

The purpose of user driven modelling/programming is to enable non programmers to crate and adjust models in order to maximise the maintenance, extensibility, ease of use, and sharing of information in models and modelling systems. The research will investigate the following areas in order to ease the process of model creation.

Maintenance
Maintenance of models and modelling systems will be improved by:-

* Use of open standards to represent information in a format available to the maximum range of maintainers without being dependant on the computer system or software they use.

* Ensuring the structure of the modelling/programming system and all its related information is visualised clearly.

* Minimising the amount of code necessary to create a model, and structuring the model so that all connections can be seen.

Extensibility
Extensibility will also be improved by the above means; this enables understanding of a model and so allows for easier re-use. A clear structure and visualisation can be edited with fewer worries about unintended consequences (side effects).

Ease of Use
* Maximising accessibility is important to this, use of open standards helps achieve this, together with enabling models to run on software and systems that people are widely familiar with. Ease of use should be facilitated without compromising structure.

Clear structuring and visualisation of information also assists in making a modelling system easier to use.

Sharing of Information
Maintenance, extensibility and ease of use are the key drivers for sharing of information. Achievement of the objectives in these areas would enable collaboration.

Methodology for Achievement of Objectives
Achievement of the above objectives can make possible creation of manageable, maintainable, and flexible models. To enable these objectives, a diagrammatic representation of models will be used as well as a taxonomy based visualisation. This will make it possible for engineers to use an interface that many of them are familiar with. Translation capabilities will be provided to enable better communication between computer systems, and between humans and computer systems. This will allow visualisation of chains of equations which are common in cost modelling. This visualisation will make it easier for people to add and manage information in large models, and identify cost information. A cost modelling example will be used throughout the thesis, but this work is relevant to modelling in general.

Information management and Interaction
This work will be based on information held in an Ontology, accessed using Semantic Web technology. Cost models will be constructed from information chosen by users through an interface that interacts with the user to establish what information is required, how it should be processed, what calculations should be made, and how should it be displayed, e.g. as a diagram or taxonomy.

More Information is available at http://www.cems.uwe.ac.uk/~phale/.

Friday, January 19, 2007

User Generated Content

This is a very useful BBC website article by Professor Michael Geist of the University of Ottawa

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.