Abstract The enterprise resource planning (ERP) software market is rapidly growing due to its potential in aiding organizations to streamline their business processes and enhance workforce productivity. However, ERP customization projects often encounter delays in schedules and exceed budgets mainly because estimations of project customization effort and duration are typically carried out using ad-hoc methods. This study aims to construct and validate a customization effort estimation (CEE) model tailored for ERP projects employing Microsoft Dynamics 365 (D365) customization. To achieve this, six critical factors that impact CEE in D365 projects are identified. Subsequently, an industry-wide survey is conducted to determine the relative significance of these factors and to establish their weights for both simple and complex variants. The proposed model D365CustomizePro is created through the application of stepwise multiple linear regression and then validated through the leave-one-out cross-validation technique based on data collected from 21 real-life D365 projects undertaken at a software house. The estimation accuracy of D365CustomizePro is compared with the estimation accuracy achieved by using two different well-known effort estimation techniques, i.e. expert judgment and COCOMO II (algorithmic estimation model). Results reveal that D365CustomizePro exhibits better estimation accuracy vis-á-vis both expert judgment and COCOMO II.
The success of a software project depends heavily on the quality of its work products and deliverables. Quality of software can be judged by using a number of quality assurance tools like peer reviews and testing. This study focuses on two popular team-based peer review techniques called inspections and walkthroughs. A controlled experiment is designed and conducted to compare the defect detection effectiveness and efficiency of these two peer review techniques. Three different types of software artifacts – software requirements specification (SRS), code, and test cases – of multiple real-life industry projects are subjected to both types of peer reviews. A comparison of experiment results indicates that inspections were more effective (at least 1.54 times) than walkthroughs in detecting defects in all three artifacts while requiring only a slightly longer timeframe (1.13 - 1.31 times more hours). Therefore, an additional time investment in the case of employing inspections would be paid back by an improvement in the quality of software via an increase in the effectiveness of defect detection.
This paper describes an empirical study undertaken to investigate the quantitative aspects of the phenomenon of requirements elaboration which deals with the transformation of high-level goals into low-level requirements. Prior knowledge of the magnitude of requirements elaboration is instrumental in developing early estimates of a project’s cost and schedule. This study examines the data on capability goals and capability requirements of 20 real-client, MS-student, team projects done at USC. Metrics for data collection and analysis are described along with the utility of the results they produce. These results suggest some relationship between the nature of projects and the size of requirements elaboration.
Even though a lot of projects fail due to social issues or personality conflicts, only a small number of empirical studies have been conducted to quantitatively assess the impact of individual personality attributes on the software being developed and the team developing that software. The goal of this paper is to quantify the abstract notion of team homogeneity and to measure its impact on software quality and team productivity. A metric called team homogeneity index (THI) is proposed for this purpose. The six-step process of calculating the THI of a software development team is described and illustrated with the help of an example. Finally, the utility of THI is assessed by conducting a controlled experiment in two different phases of the software development life cycle (SDLC), i.e., implementation and testing. The results reveal that, during the implementation phase, teams with greater THI values were noticeably more productive and produced better quality code. Similarly, during the testing phase, teams with higher values of THI tested more features and wrote better quality test cases. Therefore, the evidence obtained so far suggests that the newly proposed metric, THI, appears to be useful in predicting the quality of software and the productivity of software development teams. Future work includes determining the weights of the five traits using input from the software industry and replication of this empirical study on different phases of SDLC with software practitioners to validate our findings.
Requirements for a software project are expressed at varying levels of detail. Requirements at higher level of detail are gradually elaborated into requirements at lower level of detail as more and more information becomes available. This paper presents the design and results of an empirical study conducted to quantitatively measure this process of requirements elaboration in projects developed using the object-oriented paradigm. This study focuses on the post-design-stage requirements elaboration i.e. the elaboration of classes into source lines of code (SLOC). Each class is elaborated into attributes and operations and in turn those attributes and operations are implemented by SLOC. Requirements of over 100 professional projects of various types and domains are analyzed and the elaboration factors between different consecutive levels of requirements are obtained. Results indicate a conspicuous difference between the elaboration factors for web-based and non-web-based applications on one end and mobile and non-mobile applications on the other. Prior knowledge of these elaboration factors can play a crucial role in early software size and, therefore, cost estimation for different type of applications.
Software size is one of the most influential inputs of a software cost estimation model. Improving the accuracy of size estimates is, therefore, instrumental in improving the accuracy of cost estimates. Moreover, software size and cost estimates have the highest utility at the time of inception. This is the time when most important decisions e.g. budget allocation, personnel allocation, etc. are taken. The dilemma, however, is that only high-level requirements for a project are available at this stage. Leveraging this high-level information to produce an accurate estimate of software size is an extremely challenging task.
Requirements for a software project are expressed at multiple levels of detail during its life cycle. At inception, requirements are expressed as high-level goals. With the passage of time, goals are refined into shall statements and shall statements into use cases. This process of progressive refinement of a project’s requirements, referred to as requirements elaboration, continues till source code is obtained. This research analyzes the quantitative and qualitative aspects of requirements elaboration to address the challenge of early size estimation.
A series of four empirical studies is conducted to obtain a better understanding of requirements elaboration. The first one lays the foundation for the quantitative measurement of this abstract process by defining the appropriate metrics. It, however, focuses on only the first stage of elaboration. The second study builds on the foundation laid by the first. It examines the entire process of requirements elaboration looking at each stage of elaboration individually. A general process for collecting and processing multi-level requirements to obtain elaboration data useful for early size estimation is described. Application of this general process to estimate the size of a new project is also illustrated.
The third and fourth empirical studies are designed to tease out the factors determining the variation in each stage of elaboration. The third study focuses on analyzing the efficacy of COCOMO II cost drivers in predicting these variations. The fourth study performs a comparative analysis of the elaboration data from two different sources i.e. small real-client e-services projects and multiple versions of an industrial process management tool.
Process reuse has gained much attention recently due to its tangible benefits. Similar benefits can also be obtained by reusing frameworks of existing standards. One such example is ISO 27001 standard that has a generic framework which can be used for improvement of areas other than information security. This paper presents the results of a case study in which we performed a mapping of ISO 27001 standard on resource management of a real-world organization by applying clauses and evaluating degree of applicability. Findings show that all clauses of ISO 27001 standard except Clause 6 are applicable to resource management. The framework of ISO 27001, therefore, seems flexible enough to be used for the improvement and process maturation of other management areas by defining relevant controls.
Cell phones, nowadays, are used for not only making phone calls and sending messages but also for entertainment. Mobile-based games of various kinds are instrumental in acting as a source of entertainment. Player enjoyment is one of the major motivations in playing any kind of mobile game. The first model proposed for player enjoyment was Flow, which used eight different elements of enjoyment. GameFlow, a later model, was derived through mapping with the Flow model. Each element of GameFlow consists of a set of criteria for experiencing enjoyment while playing mobile games. Prediction of mobile games’ rating using aspects of player enjoyment can be extremely beneficial to mobile game designers. This work first provides a Regression-Based Rating Prediction Model (RBRPM) for Android-based puzzle games using elements of the GameFlow model. RBRPM is derived by applying Forward Stepwise Multiple Linear Regression on a data set consisting of 80 puzzle games. The data set is compiled by playing these games considering the criteria of all elements of the GameFlow model. RBRPM relies on five predictors, namely feedback, social interaction, concentration, clear goals, and player skills for predicting a games’ rating. Next, this work extends RBRPM by including not only additional criteria in the already identified elements but also adds three new elements i.e. fantasy, mystery, and thrill. The improved model (IRBRPM) uses 8 predictors. MMRE and PRED(x) are used as prediction accuracy metrics for assessing this model and K-fold cross-validation is used for model validation. These two steps provide encouraging results.
Estimating the effort required to develop a software project in an accurate and efficient manner is vital for software project managers. This research focuses on two well-known group-based effort estimation techniques i.e. Wideband Delphi and Planning Poker. A controlled experiment is designed and conducted to compare the estimation accuracy and efficiency of these two techniques. Two comparable teams of 5 practitioners each are formed for this purpose. One team is trained to use the Wideband Delphi process for estimation while the other is trained to follow the Planning Poker process. Both teams are asked to estimate the development effort of two different types of 10 real life software projects – 5 web apps and 5 mobile apps. Two well-known estimation accuracy metrics - MMRE and PRED(x) – are used to measure the estimation accuracy while the efficiency is measured in terms of the person hours (PH) consumed to complete the estimation process. Results of the comparison reveal that Wideband Delphi has a better estimation accuracy as compared to Planning Poker for both web and mobile apps. Planning Poker, however, is found to be more efficient for both types of apps.