Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
702
end-users and computer experts in software • High usability of the system.
engineering. There are a large number of process • Good facilities for RE tasks.
models and techniques designed for RE. In order to • Flexibility.
help end-users to do RE tasks we identified, classified,
analyzed and selected an appropriate set of RE process The toolset also uses the RE knowledge gathered in
models and techniques based on characteristics of EUC knowledge library and proposes suitable RE techniques
environment. RE knowledge base includes all the to end-users based on project attributes, end-user
selected RE process models and techniques. categories, and organization attributes. This feature
Furthermore, this knowledge base provides end-users helps end-user developers to select and apply a proper
with guidelines to use RE process models and set of techniques to do requirements engineering tasks.
techniques.
3.2.1. RE Knowledge Base tool support. Followings
are main components of RE knowledge base in
general:
• User Interface
The user interface is used to exchange information
with the requirements engineers or end-users, for
example, for input of projects attributes and output
of applicable and suitable set of RE techniques.
• Inference engine
The inference engine is a program that conduct the
reasoning process for solving problems based on the
knowledge contained in the RE knowledge base. The
reasoning process can also provide extra knowledge
Figure1. Overall Framework of Screen-Based from existing rules and facts.
Approach for Requirements Engineering in • Developer's interface
EUC Developer's interface provides the links between the
system and knowledge engineer to maintain verify and
3.2. Supporting Toolset validate the knowledge-based system
• Knowledge Base
Supporting tool set is the most important component The most important part of a RE Knowledge-Based
of our approach, because without this toolset it will be System is Knowledge Base. It stores Requirements
impossible to employ the screen-based requirements Engineering knowledge in the form of facts and rules.
engineering approach. This toolset has some features to Usually predicate logic is used for this purpose. The
support requirements engineering tasks, i.e. knowledge base may also store the confidence level
requirements elicitation, modeling, requirements that a fact or rule is true or valid.
analysis, requirements validation and verification and
requirements management. Furthermore, the 3.2.2. Screen-Based Prototyping. Prototyping as a
supporting toolset provides end-users with a very useful technique can be used in most of software
useful feature i.e. software prototyping. Prototyping, as development methodologies [14, 15]. Using
an economic way to build a small scale of software prototyping method helps software developer to find
models and products, has been proved to be an and specify requirements, feasibility study of
efficient and effective methodology to evaluate development strategies, design user interface, narrow
proposed systems if acceptance by the customer or the the communication gap among stakeholders, increase
feasibility of developments is in doubt [13]. level of end-user involvement in software development
The advantages of using web-based applications are process, and visualize future application for
clear due to the ability to update and maintain Web stakeholders.
applications without distributing and installing Our proposed approach for prototyping, i.e. Screen-
software on client computers. The Web Engineering Based prototyping, prepares users with a very easy to
approach is adopted in our tool design which focuses use prototyping tool which helps them to design a
on the following main issues and principles: prototype of the software system at hand in a rapid and
straightforward fashion. Screen-Based prototyping
• Good user interface design apply use-case driven approach in creating prototypes.
• Easy to use and understand. One prototype is designed for each use case selected
for prototyping. The description of the prototype
703
environment presented in the user’s language, as a • Define and manage Requirement items, which
context will be constructed for the prototype during include the following:
prototyping. Storylines will be generated and user
classes are created in order to illustration the ¾ Summary and Detail
relationship among use-cases, user's actions, and ¾ ID, version and phase
interaction between users and use-cases. Scenarios are ¾ Requirements Type
generated using the prototype context that can be ¾ Requirements Status
documented as scenario descriptions. ¾ Requirements Priority
¾ Requirements tracking
¾ Assigned stakeholders
¾ Change Log
¾ Relationships between Requirements
¾ Related Use-Cases
¾ Refer and edit relationships between
Requirements and Use-Cases in Matrix View
¾ HTML
¾ Word
¾ Excel
Figure2. Overall schema of Prototyping
Session • Requirements view:
We recommend that the prototyping accomplish
through a series of sessions with participation of ¾ Requirements in any use-case or whole
software system stakeholders which can be called project
prototyping sessions. Figure 2 demonstrates overall ¾ Requirements which are assigned to a
schema of prototyping session. specified stakeholder
¾ Requirements based on Priority level
3.2.3. Requirements Validation and Verification. ¾ Requirements Based on type
After prototyping of use-cases, validation and ¾ Requirements Based on status
verification of elicited and identified requirements is ¾ Project Stakeholders
applicable. These tasks can be done through
prototyping session or after that. Validation and 3.3. Intelligent Process Control
Verification of the requirements can be done using
designed prototypes checking and reading the Intelligent process control is the next important
scenarios, or V&V techniques offered by RE component of our approach. In order to help end-users
Knowledge-Base subsystem of Screen-Based RE and prevent their mistakes we provided a feature which
toolset. Due to iterative nature of Requirements will control end-users during the process of
Engineering, Requirements Validation and Verification requirements engineering. In this component, rules and
can be done also on subsequent rounds through the RE flow of the processes are defined to lead the end-users
process. The toolset supports some popular techniques in right ways and prevent their probable mistakes.
for V&V, e.g. Requirements Verification checklists Intelligent support also contains a set of executable
and Issues lists. checking rules that offer warnings and guidance to the
tool user. Moreover, a decision support system has
3.2.4. Requirements Management. Requirements been provided to help end-users for making decision
management prepares users to track changes of through requirements engineering process.
requirements and manage requirements with a range of
capabilities in a screen-based fashion. Followings are 4. Conclusion and future work
some key features of Screen-based Requirements
Management tool: This paper intended to highlight the necessity of
Requirements Engineering in End-User Computing
and to also propose a solution for the problem. We
704
described End-User Computing environments and a International Conference on Requirements Engineering,
variety of End-Users. Screen-Based Requirements 2005, pp. 479-480.
Engineering was proposed in this paper as a solution
for Requirement Engineering in EUC. The framework [10] B. Reeves and F. Shipman, “Supporting communication
between designers with artifact-centered evolving
of our approach was also demonstrated and its main information spaces,” Proceedings of the 1992 ACM
components were discussed. Irrespective of the conference on Computer-supported cooperative work, 1992,
usefulness of the Screen-Based Requirements pp. 394-401.
Engineering in EUC, this approach is capable of being
employed by End-Users in the area of End-User [11] R. Rabiser, et al., “Capturing Multimedia Requirements
Computing (EUC) and also by requirements engineers Descriptions with Mobile RE Tools,” Proceedings of the
in a typical Requirements Engineering environment. First International Workshop on Multimedia Requirements
The completion of the Screen-Based RE approach, Engineering (MERE'06-RE'06 Workshop)-Volume 00, 2006.
its toolset and its usability in a real industrial setting
[12] M. Gall and B. Berenbach, “Towards a Framework for
requires further research, which focuses on refinement Real Time Requirements Elicitation,” Multimedia
of the framework, its design and implementation of its Requirements Engineering, 2006. MERE'06. First
supporting toolset. International Workshop on, 2006, pp. 4-4.
705