![]()
![]()
2 - CONTEXT, APPROACH AND USERS |
2.1 The Context |
Generally said, requirements analysis is the process of determining what is required of a future system or product. It has to answer the question what needs to be designed rather than how it is to be designed.
Within the development process of a new system or product, three kinds of requirements have to be analysed:
_ Market and Business requirements - specifying the needs from a commercial point of view. This will be done within the exploitation plan of the CyberVote project.
_ System Technical requirements - specifying how the system will achieve the required functions in order to be successful. This should be done within the system specifications document for the CyberVote project.
_ User requirements and functional specification - specifying the system requirements from a user's point of view, here included the functions required to support the user tasks, the user-interfaces as well as physical, legal and organisational requirements. They also include the determination of a set of measures to evaluate the later usability of the system. In the context of IT-systems, "the user" may include both end users of the system: the final users of the system (in the case of CyberVote: the voters), and the system (service) providers providing the infrastructure and the service in order to make use of the system (in the case of CyberVote: e.g. local authorities responsible for the carrying out of political elections).
The latter analysis is the objective of the present document focussing on the capture and specification of user requirements and user function.
The analysis of user requirements has to be an ongoing process. At the beginning end-users may not appreciate the benefits that an innovative system can offer them. Once they understand the benefit of a new technical solution, their requirements may change. Similarly, the team developing the system may find it difficult to integrate user opinions into the design process, and thus may concentrate only on the technical requirements of the system. An important characteristic of the user requirements process is that user opinions of what they might want from a system will evolve. As a system concept develops, user will see new possibilities or potential problems and so the requirements will change. This is the reason why user requirements have to be updated regularly during the development process of a new system!
2.2 The Approach |
Due to the nature of the CyberVote project as a European project, where the different activities run mainly subsequent, the requirement engineering processes carried out within the project follows a traditional approach that can be decomposed in the following activities:
· user/stakeholder identification
· requirement elicitation
· specification and modelling
· validation/evaluation
This model implies a sequential ordering to the activities, with elicitation done once at the very beginning of the process though, actually, the process is iterative.
The first and second activities listed above are part of the user requirements analysis and are therefore subject of the present document. The other steps of the process will be carried out later on during the specification and design phase and during the validation and evaluation phase.
The user requirement analysis normally starts with a stage of "user/ stakeholder identification". Within this step, users, stakeholders and their main roles are identified. This is followed by "requirements elicitation" activities with the users.
This requirement elicitation was carried out in a couple of meetings/discussions with representatives of the user:
· Statistisches Landesamt Bremen, the local authority being responsible for the realisation of political elections in the German Land Bremen,
· Mayor representative of the election department of the French city of Issy-les-Moulineaux and representative "Chargé de Mission au Plan" responsible of the Information Technology and Communication development under the authority of the French government.
· Discussions through an electronic forum on e-voting open for all user categories. In addition to this forum, experts of Sweden have been working on technical and legal requirements.
As all of the participants were at the same time potential voters, the needs and aspirations of both user groups had been discussed.
Following this approach, the analysis of requirements has been carried out in the following steps:
1. Description of the main users/ stakeholders of the CyberVote system and their role
2. Setting up a list of requirements from different points of view
_ requirements deriving from the legal framework voting process [identifier: LEG]
_ requirements defined from the point of view of the voter [identifier: VOT]
_ technical requirements [identifier: TEC]
3. Setting up a (rough) ranking system in order to reflect the importance of the requirements
As the different requirements in general are not considered of equal importance by the end-user, the requirements have been differentiated between SHALL and SHOULD:
SHALL: these requirements are mandatory and of highest importance, either because they are required by law or because they are of crucial importance to gain user acceptance).
SHOULD: these requirements should be fulfilled - not during the development of the CyberVote system but in its final version (if any) designed to be launched onto the open market. Addressing "additional" requirements like this can be essential for the positioning of CyberVote on the market and to distinguish from potential concurrent systems.
It has to be stressed that the purpose of scale is only to give a rough differentiating between the requirements. No conclusions should be drawn about the weight of one specific requirement in proportion to the other requirements.
2.3 Definition of the Users |
As there is already a quite good understanding of who the different users or stakeholders for the CyberVote system are, it is not necessary to carry out a user analysis. Nevertheless it is helpful for the determination of the user requirements to have a clear definition of the different user groups (as target group of the project), its characterisation and its role or tasks.
Users and main roles |
Users characteristics |
Tasks |
Voters: |
Adults (i.e. aged 18 or more for federal elections and aged 16 or more in local elections),
It can be assumed that the potential online-voter is aged between 18 and 45 years. |
Exercise suffrage, casting votes. |
Organisers of elections: |
Local authorities. |
· Acting on a legal basis and in governmental mission. · Producing the electoral register. · Providing the necessary infrastructure to perform elections. · Monitoring the voting process. Identifying the voter. Ensuring voter's privacy and the anonymity of his/her vote. · Tallying the ballots and stating the result of the ballot box. · Forwarding the results of electoral districts to the next higher organisational entity. |
Table 4: Definition of users