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.
My Research - http://www.cems.uwe.ac.uk/~phale/.
End User Programming - http://www.cems.uwe.ac.uk/amrc/seeds/EndUserProgramming.htm.
I am a Researcher in the final year of my PhD. I specialise in applying Semantic Web techniques. My current research is on a technique of 'User Driven Modelling/Programming'. My intention is to enable non-programmers to create software from a user interface that allows them to model a particular problem or scenario. This involves a user entering information visually in the form of a tree diagram. I am attempting to develop ways of automatically translating this information into program code in a variety of computer languages. This is very important and useful for many employees that have insufficient time to learn programming languages. I am looking to research visualisation, and visualisation techniques to create a human computer interface that allows non experts to create software.
More information on end user programming can be found at Source: http://ezinearticles.com/