Eliciting Non-Functional Requirements in E-learning

In developing collaborative learning application, students’ collaboration is one of the most important features that allow them to communicate and share knowledge virtually. In order to ensure effective student interaction, the developers are responsible for identifying the social presence requirements by eliciting the users’ needs in sustaining interaction. This paper aims to highlight requirements elicitation process for eliciting non-functional requirements known as social presence. This paper also describes requirements elicitation issues, non-functional requirements and existing elicitation processes for non-functional requirements. Secondly, this paper focuses on implementation of documentation standards for supporting documents in extracting social presence requirements in E-learning. The methodology section highlights the development of ‘Technical Guide to Support Social Presence using Documentation Standards’ and also reveals the flow of requirements elicitation process in extracting social presence requirements. Next, MoSCoW prioritization method helps to reduce the possibility of the users expressing non-functional requirements terms and also improve communication problems during the early phases of the project. In summary, this study helps to reduce the gap between non-technical people and technical people in understanding the requirements needed for sustaining communication and usage in Elearning domain.


Introduction
Current technology has shown various use in assisting online learning anytime and anywhere. In providing learning technology, collaborative features must be addressed in order to facilitate multi users in online platform. From the software development viewpoint, requirements elicitation is a crucial stage in identifying and managing the right set of features for producing quality application (Saeidnia et al., 2020). Having ambiguous requirements in the early process may invite project failure in the development of the software (Saeidnia et al., 2020) hence, clear interpretation of collaborative requirements is compulsory to sustain E-learning usage. In developing E-learning, social presence features is needed as a requirement in collaborative application to improve user experience among the learners.
Social presence can be defined as the ability to have connectedness during interaction in virtual manner. There are previous studies which highlight the importance of eliciting human activity in E-learning since E-learning portrays social interaction through online activities (Tran et al., 2017;Graham, 2018;Alharthi et al., 2019;Al Abri et al., 2020). By investigating the social presence requirements in online activities, the requirements elicitation techniques should provide a solution for the stakeholders to mutually understand the requirements for social presence and hence maintain connectedness among users in E-learning.
There is a potential to improve the requirements elicitation techniques for providing social presence in E-learning since the existing elicitation techniques are more appropriate for capturing the requirements for benchmarks such as consistency, correctness, and ambiguity (Rahman et al., 2019). It is a challenge for requirements engineers and others related to the stakeholders to carry out techniques that can help them to elicit human-related requirements such as social presence. Requirements engineers or related stakeholders may find some difficulties in obtaining non-functional requirements from human experience and feelings. To elicit non-functional requirements in E-learning, the authors identified some issues related to requirements elicitation in developing collaborative applications. Next, Section Focal point of discussion elaborates focal point of discussion.

Focal Point of Discussion
Next section discusses on related literature such as requirements elicitation issues for gathering social presence requirements, non-functional requirements and existing elicitation processes for non-functional requirements for collaborative learning platform.

Requirements Elicitation Issues
This section elaborates the importance of requirements elicitation for developing Elearning platform. Requirements elicitation occurs in an early stage of software development. The authors focus on the requirements elicitation process in order to identify non-functional requirements for developing a collaborative application which can be used to develop features for social presence. Next, the authors have elaborated issues on requirements elicitation to further understand the problem background for this research. In producing software, requirements elicitation plays its part in gaining requirements, refining requirements, prioritizing requirements, and establishing requirements for sustaining interaction for the collaborative learning, such as, E-learning. It is considered as an important process in software development since identification of the right requirements can assist in reducing software cost. Requirements errors, which are produced throughout the development process, can result in expensive cost of production. Therefore, requirement errors must be detected early in order to prevent potential and critical risks in the future (Venkatesh et al., 2020). In addition, a lack of understanding between the user and analyst must be detected early to ensure accurate requirements from both stakeholders (Ramadan et al., 2020). IT projects experienced incomplete requirements due to a lack of focus on the requirements establishment during the requirements engineering process (Saeeda et al., 2020). The success of obtaining requirements depends on the collaboration of the stakeholders with different skills, backgrounds, and objectives (Barrane et al., 2020). Requirements exist from the learning process of the stakeholders; and all stakeholders, including developers, must achieve a mutual understanding in order to develop a system. The system has its own benefits in terms of its features, social as well as behavioural aspects (Storey et al., 2020). Therefore, all stakeholders must concentrate on the system's features, in both of these aspects.

Non-functional Requirements
This section explaines types of requirement that might exist in planning and designing Elearning requirements. Previous studies stated that requirements are divided into user requirements and software requirements (Becker et al., 2019;Fu, 2021). User requirements can be defined as the natural language statements which elaborate on what services the system is expected to provide with some constraints. These types of requirements are intended for the end-user of the system whereas system requirements detail the system's functions, services, and operational constraints in detail. The description should be precise since statements under the system requirements will be part of the agreement for all the stakeholders. System requirements are intended for different levels of stakeholders such as developers, administrators, managers, system analysts, and vendors. There are three types of requirements in the RE field (Tukur et al., 2021). The software requirements are functional requirements, non-functional requirements, and domain requirements. The extraction of requirement from the software requirement document is a challenging task (Younas et al., 2020) and considering this point, this paper highlights the importance of social presence requirements elicitation flow for gathering E-learning requirements. Next subsection discusses about existing requirements elicitation process for non-functional requirements.

Existing Elicitation Processes for Non-functional Requirements
In relation to this study, the authors were interested in identifying the processes that may elicit social presence for the requirements product. The existing processes that support social presence element during the requirements elicitation are the Activity Theory (Davey and Cope, 2008;Fuentes-Fernandez et al., 2010), affective requirements (Bentley et al., 2002), and ethnographic (Paay, 2009). The lesson learned from these three approaches is that the requirements elicitation process to support social presence is possible for collaborative applications if the role of the stakeholders is identified before eliciting social property. Davey and Cope (2008); Fuentes-Fernandez et al (2009) had knowledge experts on social property extract social properties from the stakeholders by using Activity Theory, however, the use of this theory is not necessarily applicable to the software engineering field (Sutcliffe et al., 2005). Affective requirements by Bentley et al (2002) can also be used as supporting information to collect the elements of social presence such as enjoyment. In this study, E-learners have been identified as the sources from which to obtain information on social presence. Therefore, it is inappropriate and time consuming to collect information by interviewing people from the E-learning domain. Meanwhile, ethnography may not be appropriate for this study since the author does not need to do a systematic observation (Schensul and LeCompte, 2012) in the E-learning field in order to see what is going on among the users. Next, Section Methodology elaborates the methods used in this study.

Methodology
This section reveals methodology into two subsections. Initially, Subsection Technical Guide to Support Social Presence using Documentation Standards is introduced as the basis of the requirements elicitation product for E-learning in support of social presence. Subsection Flow of Requirements Elicitation Process to Support Social Presence in E-learning elaborates the flow of Requirements Elicitation Process to Support Social Presence in Elearning.

Technical Guide to Support Social Presence using Documentation Standards
There is a need to provide an artefact to support social presence (Pereira et al., 2011). In this study, the authors named the artefact as 'Technical Guide to Support Social Presence' in order to better focus and perform as a supplementary documentation to support social presence elements in E-learning or related collaborative applications. The purpose of this artefact is to allow developers or requirements engineers, or any intended audience, to extract information related to social presence and as well as information which was provided voluntarily by E-learning users. In the technical guide, a set of requirements specification was recorded, and social presence requirements were classified and prioritized using the constructs of Perceived Attention, Perceived Relevancy, Perceived Confidence, and Perceived Satisfaction. Please refer to Figure 1 for Technical Guide to Support Social Presence using Documentation Standards. The guide clarifies the steps needed for extracting social presence for the E-learning domain. The requirements for supporting social presence were documented in the artefact and evaluated by eleven experts such as the Director of the UTM Centre of Teaching and Learning, the Director of iLearn Centre UiTM, a Senior Software Developer, a Business Analyst, an IT Manager, an IT Officer, an IT Executive, a PMO Specialist, a System Analyst, a Lecturer and an Assistant Director and Manager Network Engineer.
From the experts' consensus, the author was able to obtain their recommendations and opinions in order to highlight social presence criteria. It was also important to translate the elements of social presence into requirements for E-learning to improve the collaborative activities among students as well as to enhance knowledge sharing among the students. The need to create this artefact corresponds with the need to enhance the requirements elicitation process for developing collaborative applications since requirements elicitation is an initial process in RE. The authors emphasize the importance of eliciting social presence in a collaborative application since it is possible to identify social requirements in the requirements engineering field. Social presence factors are recommended by producing a technical guide as the requirements elicitation product. The authors' contribution towards the supporting document, known as a 'Technical Guide to Support Social Presence', offers some recommendations to the developers and related experts in having a clearer picture to the understanding of social presence.

Flow of Requirements Elicitation Process to Support Social Presence in E-learning
There are three layers of requirements elicitation in this study which comprised of the stakeholder layer, the implementation layer, and the knowledge layer. The requirements elicitation reveals the types of stakeholders carrying out the selected requirements elicitation techniques in order to produce information such as the potential factors of social presence, initial requirements for social presence, and a technical guide to support social presence. Figure 2 shows the flow of requirements elicitation process to support social presence in Elearning.
The technical guide is useful to the intended audience who intend to elicit social presence requirements in collaborative activities of E-learning application. Figure 2 elaborates the flow during the requirements elicitation process in the technical guide to extract social presence for E-learning while the description of the requirements elicitation. Initially, during 'Understand the Business Process and Objectives' step, the stakeholders need to understand the goal of the business process in order to start with the development. Understanding the current organization and the organization's goal is a standard procedure before developing an application. In order to promote social presence in future application development, the stakeholders need to get feedback on how social presence may exist in their application. An 'Elicitation plan' is essential to plan how to obtain the stakeholders' opinions regarding social presence needs in the application. The 'Elicitation plan' can be the preparation of surveys, formation of a brainstorming committee, planning for interviews or documents review process. Figure 2. Flow of Requirements Elicitation Process to Support Social Presence in E-learning (Rahman, 2014) Next step is to confirm the selection of elicitation for the implementation. Then, execute elicitation is carried out using the most suitable technique. 'Categorize information' is conducted in order to extract social presence information from user responses. The categorization of social presence factors as the four main requirement components is essential to identify social presence demand from users. Next step is to 'Convert categorized information into initial requirements'. This stage explains the requirements mentioned in stage (e) in requirements criteria. The criteria is divided into 3 parts which consists of element which is element of social presence for each requirements category, description describes about description of the element in a more meaningful term and familiar statement which the user may find more understandable in a simple statement. This recommended process suggests other domains to have requirements descriptions for extracting social presence requirements from the users. This process finalized requirements by obtaining verification and consensus from experts regarding social presence requirements. Section Results and Discussion reveals the outcome of requirements elicitation process to elicit social presence requirements in E-learning.

Results and Discussion
This section elaborates on the result of elicitation process in obtaining social presence as non-functional requirements in E-learning, derivation of artefact and evaluation of social presence requirements as non-functional requirements.

Three-layer Elicitation Process in Extracting Social Presence Requirements
This study has produced a process, known as, Three-layer Elicitation Process in Extracting Social Presence Requirements. Figure 3 depicts Three-layer Elicitation Process in Extracting Social Presence Requirements. The three-layer is divided into stakeholder layer, implementation layer and knowledge layer.

Stakeholder Layer
Stakeholder layer consists of related individuals that involved during requirements elicitation process. This layer involved with the work roles identification in E-learning domain. This layer is essential since information on requirements set is initialized based on work roles that from each stakeholder. Initially, E-learning users give their feedback towards existing Elearning usage. Other stakeholders are experts namely requirements analyst, business analyst, senior developer, IT manager, developer, E-learning director and learning coordinator.

Implementation Layer
Implementation layer plays its role in conducting elicitation techniques such as surveys and requirements prioritization based on the input from the stakeholders. In this study, Implementation layer describes the process of extracting social presence elements and transforming the elements into understandable version of requirements set for all stakeholders. The process in implementation layers consists of preliminary survey, requirements categorization for social presence, elaboration for requirements ranking using MoSCoW and survey feedback from the IT related experts and developers. In order to manage the requirements in social presence, the authors have categorized requirements by using 'Must Have', 'Should Have', 'Could Have' and 'Won't Have' (Ma, 2009;Vestola, 2010;Ahmad et al., 2017). This method is considered quick and easy to use for either small or large numbers of requirements.
Furthermore, it also helps to seek additional information on the categorized requirements later. The authors used the SEM analysis of social presence factors based on the users' feedback to analyze the relationships among the four factors of social presence. In the SEM analysis, it analyzed factors such as Perceived Satisfaction (PS), Perceived Confidence (PC), Perceived Relevancy (PR) and Perceived Attention (PA) and produced an Actual Beta Estimate value to prioritize social presence elements accordingly. The higher the value of the Actual Beta Estimate of the factor means the higher is its effect on social presence element. The lower the value of the Actual Beta Estimate of the factor means the less effect it has on social presence element. From that analysis, the value for PS is 0.45 whereas PR, PA and PC held a value of 0.35, 0.17 and 0.16 respectively. These numbers indicate the ordinal position for each factor and represent priority groupings for the MoSCoW prioritization method. The most critical requirements for social presence in this research belong to 'Perceived Satisfaction' since it held the highest value of the Actual Beta Estimate, whereas 'Perceived Confidence' was considered to be the least critical requirement of social presence in this study.

Knowledge Layer
Meanwhile, the third layer is known as Knowledge layer. The output from this layer consists of the requirements elicitation products and the output of the study. Knowledge layer defines related artefacts that is produced during the processing of extracting social presence requirements in the Implementation layer. An analysis using Structural Equation Modeling (SEM) technique has assisted the authors to identify possible social presence factors. The process and categorizing requirements in Implementation layer have produced three types of artefacts such as 'Technical Guide to Support Social Presence', 'Social Presence Requirements Template' and 'Social Presence Requirements of E-learning Domain template'.
The authors advanced the elicitation process by developing sufficient information and documenting it in the 'Technical Guide to Requirements Elicitation for Social Presence Support' artefact, which is known as the initial draft of Artefact One. A detailed description of this elicitation process suggests how to execute the requirements elicitation process by referring to prioritization groupings for social presence in E-learning.

Derivation of Artefact
After conducting the process based on Figure 2, the authors concluded that 'Technical Guide to Support Social Presence' should be subdivided into two other artefacts in order to produce more structured and meaningful documents. Besides a 'Technical Guide to Requirements Elicitation for Social Presence Support', the other two artefacts are the 'Social Presence Requirements Template' and Social Presence Requirements: A Recommendation to Develop Social Presence in E-learning'. Figure 4 shows the improvements of requirements elicitation based upon the experts' consensus.

Technical Guide to Requirements Elicitation for Social Presence Support
This artefact is a supporting document which provides a description of the objective to elicit social presence support. The artefact also contains information on which factors should be considered by the stakeholders in order to elicit social presence voluntarily in the E-learning domain, which is an example of a collaborative application. The technical guide can also be a supporting document to elicit social presence elements for other collaborative applications besides E-learning. Figure 5 explains social presence requirements using MoSCoW Requirements Groupings

Social Presence as Non-functional Requirements
'A Recommendation to Develop Social Presence in E-learning' is the second artefact that supports the implementation of social presence requirements by recommending a template for social presence requirements. By utilizing this template, the template user manages to organize the requirements related to social presence elements. Figure 6 shows 'Social Presence Requirements: A Recommendation to Develop Social Presence in E-learning'.

Social Presence Requirements Template
The third artefact offers recommendations on how to develop social presence in Elearning, which was the focus of this research. The artefact was produced based on 'Social Presence Requirements Template'. The generation of social presence requirements in this research was to demonstrate how social presence can be gathered by the stakeholders using these supporting documents. Figure 7 visualizes the requirements elicitation product, known as, 'Social Presence Requirements Template'.

Evaluation of Social Presence Requirements Template
This paper reveals an evaluation on overall response from the eleven experts from software documentation and E-learning. Figure 8 depicts the box plot of the experts' feedback for 'A Recommendation to Develop Social Presence in E-learning'. The overall responses from the eleven experts showed a positive response, whereby the seventy-fifth percentile is 5, which is the highest degree in the 5-point Likert scale. Additionally, it also indicated that the use of the MoSCoW prioritization method introduced in this template was acceptable by the software documentations experts and the E-learning experts.

Figure 8. A Recommendation to Develop Social Presence Requirements Template in Elearning
The questions from B2.10 to B2.13, which asked the experts' opinions on whether the template was able to give instructions on writing 'Must Have', 'Should Have', 'Could Have' and 'Won't Have' requirements, achieved a median with a value of 5. This showed that the experts agreed on the use of the MoSCoW prioritization method for classifying social presence elements that were proposed earlier in the SEM analysis. In general, the experts agreed with social presence requirements template which was represented by Artefact Two. This template gives instruction on writing 'Should Have' requirements.

B2.12
This template gives instruction on writing 'Could Have' requirements.

B2.13
This template gives instruction on writing 'Won't Have' requirements.

Strengths and Limitations of Study
The use of artefacts help to reduce the possibility of the users expressing non-functional requirements using their own terms and experiences which can cause difficulties for the developer in attempting to understand the actual request and may also improve communication problems during the early phases of the project. The study also contributes to the requirements artefacts to obtain social presence can be seen as another opportunity in having requirements elicitation for social presence support. From the analysis, those processes use various approaches to achieve the requirements' goal, however, it is good to have requirements artefacts for social presence as it is possible to target the solution domain which can be used to describe the requirements as well as to build a knowledge framework to better model non-requirements. This study was carried out to evaluate the artefacts to support the development of social presence features in the E-learning. Social presence is an element that can encourage users to share and become involved in collaborative activities such as online forums, online assignment submissions, online quizzes, and online discussions in E-learning. Therefore, the artefacts and requirements evaluated were aimed at online learning and online collaborations among users.

Conclusion
E-learning is widely used application that can help learners and instructors to connect during teaching and learning process. It is important for the stakeholders to understand types of non-functional requirements that can be elicited in order to develop sustainable collaborative application. This study is able to address the importance of social presence requirements as non-functional requirements in E-learning application. The users must be socially connected in order to allow effective use of E-learning. Therefore, quality learning application must be designed according to the user's requirements regardless of the nature of requirements from the stakeholders. Requirements must be initially determined by the software development team to reduce requirements ambiguity and to clarify requirements set. This study has successfully derived documentation standards which can help to document social presence element as social presence requirements in the 'A Recommendation to Develop Social Presence in E-learning'. This study also helps to reduce the gap between nontechnical people and technical people in understanding the elements needed for sustaining communication and usage in E-learning domain.