39 research outputs found
Coverage-based approach for model-based testing in software product line
Rapid Quality assurance is an important element in software testing in order to produce high quality products in Software Product Line (SPL). One of the testing techniques that can enhance product quality is Model-Based Testing (MBT). Due to MBT effectiveness in terms of reuse and potential to be adapted, this technique has become an efficient approach that is capable to handle SPL requirements. In this paper, the authors present an approach to manage variability and requirements by using Feature Model (FM) and MBT. This paper focuses on modelling the integration towards enhancing product quality and reducing testing effort. Further, the authors considered coverage criteria, including pairwise coverage, all-state coverage, and all-transition coverage, in order to improve the quality of products. For modelling purposes, the authors constructed a mapping model based on variability in FM and behaviour from statecharts. The proposed approach was validated using mobile phone SPL case study
Student classification in adaptive hypermedia learning system using neural network
Conventional hypermedia learning system can pose
disorientation and lost in hyperspace problem that will cause learning objectives hard to achieve. Adaptive hypermedia learning system is the solution to overcome this problem by personalizing the learning module presented to the student based on the student knowledge acquisition.This research aims to use neural network to classify the student whether he is advanced, intermediate and beginner student.The classification process is
important in adaptive hypermedia learning system in order to provide suitable learning module to each individual student by taking consideration of the studentsí knowledge level, his learning style and his performance as he learn through the system. Data about the student will be collected using implicit and explicit extraction technique.
Implicit extraction technique gathers and analyses the studentís behavior captured in the server log while they navigate through the system. Explicit extraction technique on the other hand collects studentís basic information from user registration data. Three classifiers were identified in
determining the studentís category.The first classifier determines the student initial status based on data collected from explicit data extraction technique.The second classifier identifies studentís status from implicit
data extraction technique by monitoring his behavior while using the system.The third classifier, meanwhile will be executed if the student has finished studying and finished
doing the exercises provided in the system. Further, the data collected using both techniques will be integrated to form a user profile that will be used for classification using simple back propagation neural network
Test Case Prioritization for Software Product Line: A Systematic Mapping Study
Combinatorial explosion remains a common issue in testing. Due to the vast number of product variants, the number of test cases required for comprehensive coverage has significantly increased. One of the techniques to efficiently tackle this problem is prioritizing the test suites using a regression testing method. However, there is a lack of comprehensive reviews focusing on test case prioritization in SPLs. To address this research gap, this paper proposed a systematic mapping study to observe the extent of test case prioritization usage in Software Product Line Testing. The study aims to classify various aspects of SPL-TCP (Software Product Line – Test Case Prioritization), including methods, criteria, measurements, constraints, empirical studies, and domains. Over the last ten years, a thorough investigation uncovered twenty-four primary studies, consisting of 12 journal articles and 12 conference papers, all related to Test Case Prioritization for SPLs. This systematic mapping study presents a comprehensive classification of the different approaches to test case prioritization for Software Product Lines. This classification can be valuable in identifying the most suitable strategies to address specific challenges and serves as a guide for future research works. In conclusion, this mapping study systematically classifies different approaches to test case prioritization in Software Product Lines. The results of this study can serve as a valuable resource for addressing challenges in SPL testing and provide insights for future research
Variability Management in Software Product Lines Online Learning Applications
The process of learning and teaching online learning has undergone many changes in line with technological developments. Education institutions have begun introducing new methods of learning this. However, it needs a huge amount of labor intensive to produce and maintain educational technologies due to its huge size (literacy, vocational education, school education, engineering and medical education) and huge variants (language, dialect). With the growing demand and at the same time would like to reduce the factor of cost, time and effort is long, then the need for an effective solution allowing rapid system development. A Software Product Line (SPL) approach is one of the best methods that can be used to develop an educational software family. This research focuses on core asset by recognizing and representing variability in variability management. The study employed two phases of activities in data gathering, there are filtering out data from secondary sources which detail out the features of e-learning and constructivist learning environment of each Virtual Learning Environment (VLE). Second phase involved the use of expert interviews to determine the features of each higher institution elearning and identify Primitive Requirement of Malaysian Higher Education online learning. Commonality and Variability Analysis (CV Analysis) method has been used as identification of commonality and variability. This analysis is to develop a feature model which further helps in visual representation variants requirements and enhance reusability in the context of product line approaches. As a result, there are 20 Primitive Requirements (PR) has been identified and clearly divided into two categories, common and optional. The frequency in each application of online learning is used to determine whether the PR is reusable. The identification and representation will increase the potential for reuse and help in publishing the specific requirements of the application in the development of the product line
Quality driven approach for product line architecture customization in patient navigation program software product line
Patient Navigation Program (PNP) is considered as an important implementation of health care systems that can assist in patient’s treatment. Due to the feasibility of PNP implementation, a systematic reuse is needed for a wide adoption of PNP computerized system. SPL is one of the promising systematic reuse approaches for creating a reusable architecture to enabled reuse in several similar applications of PNP systems which has its own variations with other applications. However, stakeholder decision making which result from the imprecise, uncertain, and subjective nature of architecture selection based on quality attributes (QA) further hinders the development of the product line architecture. Therefore, this study aims to propose a quality-driven approach using Multi-Criteria Decision Analysis (MCDA) techniques for Software Product Line Architecture (SPLA) to have an objective selection based on the QA of stakeholders in the domain of PNP. There are two steps proposed to this approach. First, a clear representation of quality is proposed by extending feature model (FM) with QA feature to determine the QA in the early phase of architecture selection. Second, MCDA techniques were applied for architecture selection based on objective preference for certain QA in the domain of PNP. The result of the proposed approach is the implementation of the PNP system with SPLA that had been selected using MCDA techniques. Evaluation for the approach is done by checking the approach’s applicability in a case study and stakeholder validation. Evaluation on ease of use and usefulness of the approach with selected stakeholders have shown positive responses. The evaluation results proved that the proposed approach assisted in the implementation of PNP systems
Multi attribute architecture design decision for core asset derivation
Software Product Line (SPL) is an effective approach in software reuse in which core assets can be shared among the members of the product line with an explicit treatment of variability. Core assets, which are developed for reuse in domain engineering, are selected for product specific derivation in application engineering. Decision making support during product derivation is crucial to assist in making multiple decisions during product specific derivation. Multiple decisions are to be resolved at the architectural level as well as the detailed design level, address the need for assisting the decision making process during core asset derivation. Architectural level decision making is based on imprecise, uncertain and subjective nature of stakeholder for making architectural selection based on non- functional requirements (NFR). Furthermore, detail design level involves the selection of suitable features which have the rationale behind each decision. The rationale for the selection, if not documented properly, will also result in loss of tacit knowledge. Therefore, a multi-attribute architecture design decision technique is proposed to overcome the above mentioned problem. The technique combines Fuzzy Analytical Hierarchy Process (FAHP) with lightweight architecture design decision documentation to support the decision making during core asset derivation. We demonstrate our approach using the case study of Autonomous Mobile Robot (AMR). The case study implementation shows showed that the proposed technique supports software engineer in the process of decision making at the architecture and detail design levels