NON FUNCTIONAL REQUIREMENT TRACEABILITY AUTOMATION-AN MOBILE MULTIMEDIA APPROACH

Requirements Engineering (RE) is the area of software engineering that deals with the discovery and specification of the objectives for the system under development and the environment in which it is used including the human activities it supports. Requirement Elicitation is process of gathering requirements from stakeholders. Incorporating RE to identify non Functional Requirements (NFR) in early stages of design and implementation avoids ambiguities, conflicting requirement and other defects. The efficacy of the requirement engineering methodology is its ability to capture NFR in an efficient manner. In this study, we propose a novel method of elicitation using mobile multimedia and to automatically trace the NFR. The requirements description is captured in video using smart phones. Requirement document are prepared using voice to text converter. NFR is detected automatically from the requirement document and hand gestures emphasise the importance of the requirement. It is observed that the precision and recall of the classifiers is better using multimedia data. Features were extracted from video frame and audio using image processing technique and speech processing. We investigated data mining approach to identify Non Functional Requirements (NFR) from Functional Requirement (FR) Documents. Results obtained were satisfactory.


INTRODUCTION
Requirement Engineering (RE) consists of activities like elicitation, detection, authentication, documenting a set of requirements for development of software system . The software quality is directly related to the quality of RE and also the number of defects depends upon the quality of RE (Voas, 2003). Projects fail or are cancelled due to improper quality requirements and when done well helps reduce costs and increase quality of software; thus RE is critical for developing and maintaining software. Resolving defective requirements like conflicting requirements, ambiguous or inconsistent requirements are part of the RE (Niazi, 2002).
Requirements can be broadly classified into Functional Requirements (FR) and Non Functional Requirements (NFR). FR are basically product features which describe what the software has to do that is the functionality of the system whereas NFR deals with requirements that constrain the system and are generally quality requirements which specify how well the software performs (Li et al., 2004). Simple language, detailed business requirements and detailed description of system services are the most common characteristics of FR. The NFR can be classified as Organizational requirements, Product requirements and External requirements. Since NFR identifies user or system constraints it is characterized by features such as user-friendliness, response time, portability, reliability and maintainability.
Requirement elicitation is an important process to identify complete, clear, correct and consistent requirements (Mustafa et al., 2005). Focus groups, interviews, observation, survey, questionnaire are some of the techniques used for elicitation (Khan and Mustafa, Science Publications JCS 2008). One of the main problems faced during elicitation is the communication barrier between the analyst and the stakeholder. Conflicting requirements, unspoken or assumed requirements, difficulty in meeting the stakeholders are some of the challenges faced during requirement elicitation (Beyer and Holtzblatt, 1998). Multimedia methods are effective to address the communication gap between the analyst and stakeholder. Multimedia in form of video is used for requirement elicitation (Brun-Cottan and Wall, 1995); use of leads to better stake holder involvement, enforces focused observation, enables repeatability, thus ensuring better elicitation.
The mobile device technologies have evolved significantly over the past few years. Mobile devices like smart phones, personal digital assistants led to the development of RE tools for requirement gathering. Modern mobile smart phones have multimedia features like microphones and digital cameras which can be used for requirement elicitation (Wahsheh and Foss, 2008). The requirements are captured as natural language statements in video with hand gestures to emphasis the importance of the requirements. In this study, a novel method of requirements gathering is proposed. Using speech processing techniques and image processing techniques, the functional and non functional requirements are extracted using natural language processing. The proposed method is tested using data mining techniques and benchmarked with manual classification. Kumar (2009) created a user friendly and intelligent tool to assist software engineers in the analysis and design stages for extracting software requirements and develop different UML representations. The key feature of the proposed tool is the automatic generation of classified requirements, use case diagram and Object Interaction Diagram (OID) from a text based case or voice which is first converted to text. The study also discusses existing modeling tool issues and implementing a new modeling tool using speech reorganization tool and an artificial Intelligence concept. Using speech recognition-based language tool software demonstrably improves the mean analysis abilities of a heterogeneous group of developers. Steele et al. (2006) proposed an automatic speech recognition technique for capturing the non-functional requirements spoken by stakeholders at open meetings and interviews during the requirements elicitation process. As statements related to system qualities such as security, performance and portability are often scattered throughout statements of functional need, the ability to "listen in" on a conversation and correctly capture these statements into a single view is very helpful. The proposed approach is intended to enhance and not replace existing elicitation methods in which stakeholders are more directly asked to describe their needs. Training a speech detection tool to recognize individual users is time consuming while speech detection for un-enrolled users is notoriously difficult. The proposed approach uses a context-free grammar to boost recognition accuracy, segment the stakeholders' utterances and finally to classify the recognized statements by quality type. The accuracy of the NFR classification is limited not only by the completeness and correctness of the indicator terms, but also by the accuracy of the underlying speech recognition. Rabiser et al. (2006) reported two different approaches enabling mobile analysts and end users to add multimedia descriptions to requirements. Based on mobile tool for scenario-based RE, the authors compared a solution based on the COTS package Microsoft Pocket Word with a novel plug-in solution providing more flexibility for tool users. The authors explored which option was more amenable to different user types. As little was known about capturing multimedia requirements descriptions using mobile RE tools, this comparison can stimulate further research in this field. Pocket Word perfectly supports users which prefer to work with a fully-fledged word processor. Seamlessly integrating such a COTS product is challenging (Sullabi and Shukur, 2008). A plug-in solution is a more flexible and adaptive solution providing just the features most users need. The contribution provided by this study can help researchers to select an appropriate solution how to facilitate multimedia requirements descriptions. Nagel et al. (2010) proposed a solution by employing mobile devices as a ubiquitous recording infrastructure that also enables the user to bridge the gap between informal communication and formal project model elements. The mobile recording application can establish links between a conversation recording in a central audio repository and project model elements in our project management and CASE tool. Project participants can use the application to capture audio and context, create new work items for other participants, engage in asynchronous audio discussions and review project artifacts. Steinberg et al. (2010) presented a system that acquires and classifies users' hand gestures from images Science Publications JCS and videos. Using inputs from low resolution off-theshelf web cameras, the proposed algorithm identifies the location and shape of the depicted hand gesture and classifies it into one of several predefined gestures. The proposed method first applies image processing techniques on the images in order to cancel background and noise effects on the image; it then extracts relevant features for classification and finally classifies the gesture features using a multiclass Support Vector Machine classifier. The algorithm is robust and operates well on several different backgrounds, lighting and noise conditions. The proposed method achieves an average 97.8% accuracy rate in several cases and it is suitable for both real-time and offline classification.

MATERIALS AND METHODS
In this study it is proposed to gather requirements using the video facility available in mobile phones. The user uses his hand gesture to convey the importance of the requirement. The requirement gathered using the mobile phone is shown in Fig. 1. Different hand gestures are used to differentiate the task in hand. Some of the gestures used in this study are shown in Fig. 2.
The work to convert the multimedia data into of the video can be broadly classified into three major parts: • Converting the audio data to text using speech to text converter. Using Natural Language Processing (NLP) it is proposed to extract features from the textual content and classify the text as functional or non functional requirement • Converting the video data to frames, identifying the Region of Interest and classification of the hand gesture • Using the above image and text data classify the type of Non Functional Requirement (NRF) specified The block diagram of the proposed audio feature extraction method is shown in Fig. 3.
Once the audio features are extracted textual content, the video is split into frames and each frame is examined for the region of interest. If the frame does not contain the ROI, it is discarded else it is used for feature extraction and classification. The block diagram of the proposed technique is shown in Fig. 4.
The video frames extracted and processing steps are shown in Fig. 5.
The goal of this work is to evaluate the performance of the proposed method in automated classification of NRF. To validate the proposed method the author used one of his students to read the NFR dataset available in the promise data repository with appropriate gestures. The NFR dataset consists of 15 requirement specifications of MS student projects and has a total of 326 NFRs and 358 FRs. The NFR categories included availability, scalability, usability, security. One NFR category in the dataset was portability and since only one class label existed, the instance was removed from this study. Bagging based classifiers generated multiple versions of predictors and using the same to get an aggregated predictor.
A predictor φ (x, l) predicts a class label j ∈ {1, 2,…, J}. With the learning set l, Φ predicts class label j at input x with relative frequency Eq. 1: The probability that the predictor classifies x correctly is Eq. 2: Boosting (Friedman et al., 2000) works by using classification algorithms sequentially on the reweighted versions of the training data. The final class label predicted is based on the weighted majority vote. In logitboost the initial weights is set at 1/N where N is the number of instance with the probability estimate p (x i = 0.5). The process is repeated m times and the function is fitted using least squares regression.

RESULTS
The precision and recall for both the classifiers on the predicted class labels is shown in Table 1. Table 2 shows the precision and recall for conventional non video based technique.
From Table 1 and 2 it is seen that the classifier accuracy improves by more than 5%. The overall classification accuracy and the relative absolute error are shown in Fig. 6.

DISCUSSION
In this study a novel multimedia based requirement engineering methodology based on gesture was proposed. Features were extracted from video frame and audio using image processing technique and speech processing. We investigated data mining approach to identify Non Functional Requirements (NFR) from Functional Requirement (FR) Documents.

CONCLUSION
In the proposed method we use public dataset available in the promise database repository and investigate Bagging and Logitboost classification algorithms. The data was recorded in a mobile handset by one user. 57 words based on their importance were extracted from the requirement document for the data mining operation. Results obtained were satisfactory. Further work needs to be done by using Neural Network based retrieval system and preprocessing the data with Singular Value Decomposition. It is shown that multimedia based techniques improve the overall accuracy in the automation of identifying functional and non functional requirements.