Keywords

1 Introduction

Questionnaire, testing, and voting are the essential activities of the modern communities as the general and indispensable methods for a group of people to express a choice, or to assess people’s ability [5, 8]. Over two decades, many kinds of questionnaires, testing, and voting are performed in some completely electronic ways to do questions and answers. Electronic questionnaire, electronic testing, and electronic voting (e-questionnaire, e-testing, and e-voting for short) are indispensable electronic services in our society. A huge variety of e-questionnaire, e-testing, and e-voting systems has been designed, developed, maintained, and operated in ad-hoc ways. If these systems are unreliable, lower security, strange in use, it will have a serious impact on our society. There is still an important research topic of how to design, develop, maintain, and operate reliable, highly secure, and user-friendly e-questionnaire, e-testing, and e-voting systems.

In addition, because e-questionnaire, e-testing, and e-voting have common processes, that is, from preparing questions, following by authenticating respondents, through submitting answers, and ending to analyzing, counting, and declaring results, the systems that provide those services have common functions to do the processes. In fact, some representative systems [1, 6, 7, 10, 11, 13, 15,16,17] exist to provide three-in-one service for people all over the world.

The mutual collaboration of the stakeholders is the foundation for the development and operation of e-questionnaire, e-testing, and e-voting systems. However, there is no communication tool shared among the stakeholders of systems and services of e-questionnaire, e-testing, and e-voting. As a result, the stakeholders are difficult to communicate to implement the systems, because there is neither an exhaustive requirement list to have a grasp of the overall nor a standardized terminology for those systems and services to avoid ambiguity.

QSL [20] is the first specification language as a communication tool for specifying various e-questionnaire, e-testing, and e-voting systems with a standardized, consistent, and exhaustive list of requirements so that the stakeholders can communicate easily and unambiguously, and deal with and describe the requirement specifications for three kinds of systems and services. However, the terminology of QSL is designed according to e-questionnaire systems, and extended based on e-testing and e-voting systems. As a result, the stakeholders among e-testing and e-voting systems are difficult and not willing to use QSL. Thus, QSL has poor usability.

To improve QSL about its usability so that the stakeholders can communicate and write requirement specifications by familiar terminology, the solution is to define the ontologies to make clear corresponding relationships of systems and services of e-questionnaire, e-testing, and e-voting. However, there is no ontology for those systems and services.

In this paper, we proposed ontologies that are from collecting the terminologies of representative e-questionnaire, e-testing, and e-voting systems, through organizing the corresponding relationships of these three kinds of systems and services. Based on the ontologies, we presented the improvement of QSL by a reference list of replacements for terminologies, so that stakeholders can use arbitrary specific terminology to specify the specifications for other e-questionnaire, e-testing, and e-voting systems. Section 2 introduces QSL and its terminology. Section 3 shows the ontologies of e-questionnaire, e-testing, and e-voting systems. Section 4 presents the improvement of QSL. Some conclusions and future works are shown in Sect. 5.

2 Questionnaire Specification Language (QSL)

2.1 Overview of QSL

Questionnaire Specification Language (QSL) serves as a formalized specification for specifying various e-questionnaire, e-testing, and e-voting systems [20,21,22,23]. QSL is based on Extensible Markup Language (XML) [18]. We have evaluated QSL about description power to ensure its completeness manifesting in specifying various e-questionnaire, e-testing, and e-voting systems. Current QSL can cover more than 95% system requirements and 95.4% service requirements, and provides enough notations to describe the requirements for data portability, and can cover the existing specifications compared with the related works [24].

The tags for QSL are used to provide terminology to describe requirements of e-questionnaire, e-testing, and e-voting systems. Using the tags, QSL schemas are used to constrain the requirements in a formal way. QSL schema is a collection of requirements formalized by XML schema, and clear definition of the relationship among the requirements. The schema through the XML parser, the user can get the QSL templates that are the requirements formalized by XML, and the requirements correlate with corresponding necessary requirements. The users choose the desirable QSL schema, through XML parser, they can get the QSL template, and then they input appropriate values can get formalized requirement specifications.

QSL can be used in three ways. Firstly, QSL can be used to specify e-questionnaire, e-testing, and e-voting systems. In other words, QSL can be used to specify the system requirements of those systems. Secondly, QSL can be used to specify e-questionnaire, e-testing, and e-voting on the system, i.e., QSL can be used to describe requirements related to each phase of these services, that is, from preparing questions, following by authenticating respondents, through submitting answers, and ending to analyzing, counting, and declaring results. Thirdly, QSL can be used as format for portable data of e-questionnaire [9], e-testing, and e-voting. Formats of data of e-questionnaire, e-testing, and e-voting systems are the parts of specifications of e-questionnaire, e-testing, and e-voting systems. Portable data [4] is formatted according to a published syntax and where the metadata is explicit, either included with the data or by reference to an open technical dictionary.

2.2 Current Terminology of QSL

Current QSL (version 3.1) provides 93 tags as terminology [2]. There are three kinds of tags, which are used to specify common requirements and specific requirements, and to construct the document.

Current terminology for QSL is defined according to e-questionnaire systems, and extended based on e-testing and e-voting systems. Because e-questionnaire, e-testing, and e-voting systems have lots in common, most of the tags are defined according to the terms of e-questionnaire and e-questionnaire systems as the common tags. The rest of a few tags are extended and defined according to the terms of systems and services of e-testing and e-voting. However, the stakeholders who use QSL are possible to confuse, after all, they are not proficient in e-questionnaire, e-testing, or e-voting. For example, in QSL, we defined a tag named questioner that is a participant role who designs a paper sheet and settings. It is normally called examiner in e-testing and the stakeholders in e-testing prefer to and are familiar with examiner. Thus, even though we provide the exhaustive requirement list and terminology for the stakeholders, the current terminology of QSL is not going to raise the efficient communications among the stakeholders.

3 Ontologies of E-Questionnaire, E-Testing, and E-Voting Systems

3.1 Investigation of Terminologies

In recent years the development of ontologies has been moving from the realm of AI laboratories to the desktops of domain experts. Ontology is an explicit specification of a conceptualization, and it defines terminologies for researchers who need to share information in a domain and includes machine-interpretable definitions of basic concepts in the domain and relations among them [12].

In order to improve the usability of QSL, we propose the ontologies to clearly define the corresponding relationships of systems and services of e-questionnaire, e-testing, and e-voting. We investigated 26 e-questionnaire, 23 e-testing, and 25 e-voting systems [20], which are representative systems seizing a large number of high quality customers all over the world for serving a relatively long time. We also enumerated and summarized the terms. There are 179 terms for e-questionnaire, e-testing, and e-voting systems. Each term has its relationship with others. We summarized and organized the corresponding relationships in different fields of e-questionnaire, e-testing, and e-voting. We defined ontologies for e-questionnaire, e-testing, and e-voting systems, respectively.

3.2 Ontologies

The ontologies are expressed in the Web Ontology Language (OWL) [19] for describing relationships for systems and services of e-questionnaire, e-testing, and e-voting. OWL is an XML-based language for publishing and sharing ontologies. We used Protégé [14] to develop the ontologies.

A simple ontology for classes in the top level and their relationships is depicted in Fig. 1. It is a main, general, and common part for the ontologies for e-questionnaire, e-testing, and e-voting systems. All the common classes for e-questionnaire, e-testing, and e-voting are constructed according to this figure. The system contains environment, function, security, and data. The service consists of paper sheet, settings, and data. The relationships among the classes are defined as object properties. Besides, e-voting does not need a logic class.

Fig. 1.
figure 1

A figure about a main, general, and common part of the ontologies for e-questionnaire, e-testing, and e-voting systems.

Figure 1 illustrates the common classes and their relationships of e-questionnaire, e-testing, and e-voting systems. As to the different classes and relationships for three kinds of systems and service in details, we take an example about participant class, which is also illustrated in previous figure. Figure 2 illustrates its subclasses and the different terms in e-questionnaire, e-testing, and e-voting systems, respectively. Some roles only exist in a field, such as “assessor” only exists in e-testing. All the roles are the subclasses of participant, and they have relationships with other classes, such as Name, Affiliation, etc. In addition, all the roles have relationship with Authentication, and have different methods during different phases. The detailed information about the ontologies refers to [3].

Fig. 2.
figure 2

A figure about the ontologies for participant in e-questionnaire, e-testing, and e-voting systems.

Using the ontologies, the stakeholders can directly use their familiar terminologies in different fields of e-questionnaire, e-testing, or e-voting, so that they can easily and efficiently communicate with each other. Furthermore, from the used terms, the ontologies are used to provide corresponding terminologies for the stakeholder who is judged in which field. For instance, when they uses the term “assessor” to define the participant who marks and gives the scores, the terminology about field in e-testing is provided and replaced in specification. In other words, in common sense, we can judge that this stakeholder is familiar with and prefer to communicate by the terminology of e-testing.

4 Improvement of QSL

Based on the ontologies, we improved QSL. The ontologies are a part of or an attribute of QSL. Using the ontologies can improve the usability of QSL. It helps to indicate the relationships of e-questionnaire, e-testing, and e-voting system so that the stakeholders can share common understandings of the structure of information in these three kinds of systems and services.

We defined a reference table to list the replacements of terminologies of e-questionnaire, e-testing, and e-voting system. An example about a replacement of participant is listed in Table 1. The values listed as none do not need to specify in requirement specification. There are much tags should be replaced, and complete replacement list is represented in [3].

Table 1. A reference list of replacement of e-questionnaire, e-testing, and e-voting systems.

A better solution for improving QSL is showed in Fig. 3 that summarizes the relationship between QSL documents and ontologies, and also shows the usages of them. The stakeholders create content in a QSL template without values. That template conforms to the rules of the QSL schemas. They then use ontology which clearly defines the familiar terminology and can be used to be instead of QSL original terminology.

Fig. 3.
figure 3

A figure about the relationship and usage of ontologies in QSL.

Considering that the users can easily create a QSL format requirement specification and it is not necessary to know structure and terminology of QSL, we propose to develop a QSL structure editor. Hundreds of requirements and their relationships and constraints for e-questionnaire, e-testing, and e-voting systems have to be taken into careful consideration. A QSL structure editor to edit and generate QSL format requirement specification should satisfy the following requirements.

  • R1: The editor must provide services to guide the users to choose the corresponding requirement templates according with their suitable identities.

  • R2: The editor must provide services to perform the requirement list with a graphical user interface that hide the code in the background and present the content to the user in more user friendly forms and show guidance according to the suitable terminology.

  • R3: The editor must provide services to guide to fill the appropriate values, and to validate and verify whether the filled values are valid or not in conformance with QSL schemas, and point out the invalid values and defined formats.

  • R4: The editor must provide services to import the QSL format requirement specification, and display the requirement list in graphical user interface.

  • R5: The editor must provide services to hide or show the requirements, which are logically associated with a chosen requirement.

  • R6: The editor must provide services to output QSL format requirement specification replaced by the familiar terminology.

According to the QSL templates, QSL schemas, and the ontologies, the QSL structure editor helps the users to easily write QSL-format requirement specification. Through the QSL structure editor, the QSL template defined by a series of familiar terminology is filled with values that output a requirement specification.

5 Concluding Remarks

We have proposed and developed ontologies of e-questionnaire, e-testing, and e-voting systems that clearly defines the relationships of e-questionnaire, e-testing, and e-voting systems. In addition, based on the ontologies, we improved QSL so that stakeholders can use their familiar and arbitrary specific terminologies to specify the specifications for other kinds of systems and services of e-questionnaire, e-testing, and e-voting. In the future, we are continuing improving QSL for investigating much more representative systems for extending the ontologies. In addition, we will implement a QSL structure editor.