Visual Modeling Tools represent an empowerement of modelers. With the help of these tool, it is possible to create models without any deep technical knowledge. This is an emerging conceptual framework aimed at defining and creating social and technical infrastructures, in which new forms of collaborative design can take place. These systems promote the transcendence of the individual mind through collaboration, support sustained participation and enable the mutual adaptation and continuous evolution of users and systems.
The omnipresence of computer systems in academic, professional and every day life leads to a growing diversity in its requirements and is under continious change. People with diverse knowledge, skills, cultural, social, cognitive and physiological backgrounds work in a huge variety of contextes, tasks and fields of activity.
Involving the end user by designing software for change leads to cost reduction. In the era of digitization, software applications will be developed, customized, and maintained by non-professional programmers. There are about 90 million estimated end users, who perform basic programming activities in American workplaces (165 million gainfully employed in total).
For this purpose environements have to be created which allow end users, who are familiar with basic computer functionalities and interactions, to develop, modify and change systems. End-user development summarizes methods, techniques and tools, which helps end users who are neighter skilled nor interested to create, adapt or evolve software or software artifacts to empowering end-users to develop and adapt systems by themselves.
There exist two main types of end user development from a user’s perspective and several subgroups:
- Parameterisation or Costumisation: Activities that allow users to decide among
alternative behaviours, presentations or interaction mechanisms already
available in the application.
- Program Creation and Modification: Activities that imply some modification, aiming at creating from scratch or modifying an existing software artefact. These can be subdivded in the following points:
- Programming by Example Users provide example interactions and the system con- cludes general rules.
- Incremental Programming enables to change small parts of softwareartefacts.
- Extended Annnotation Parametierisation
- Model-based Development The user provides a description of the activity to be supported and the system generates the corresponding interactive application.
This model-based development can be achieved with the help of domain-specific modeling, which is the creation of DSLs with the Model-driven Engineering approach.
Graphical diagrams are more effective than text in the goal oriented requirements process: In diagrammatic reasoning, which shows that the form of representations has an equal, if not greater, influence on human understanding and problem solving performance as their content.
Empirical studies confirm that the visual appearance of RE notations significantly affects understanding, especially by novices.