RESUMO
Testing an intricate plexus of advanced software system architecture is quite challenging due to the absence of test oracle. Metamorphic testing is a popular technique to alleviate the test oracle problem. The effectiveness of metamorphic testing is dependent on metamorphic relations (MRs). MRs represent the essential properties of the system under test and are evaluated by their fault detection rates. The existing techniques for the evaluation of MRs are not comprehensive, as very few mutation operators are used to generate very few mutants. In this research, we have proposed six new MRs for dilation and erosion operations. The fault detection rate of six newly proposed MRs is determined using mutation testing. We have used eight applicable mutation operators and determined their effectiveness. By using these applicable operators, we have ensured that all the possible numbers of mutants are generated, which shows that all the faults in the system under test are fully identified. Results of the evaluation of four MRs for edge detection show an improvement in all the respective MRs, especially in MR1 and MR4, with a fault detection rate of 76.54% and 69.13%, respectively, which is 32% and 24% higher than the existing technique. The fault detection rate of MR2 and MR3 is also improved by 1%. Similarly, results of dilation and erosion show that out of 8 MRs, the fault detection rates of four MRs are higher than the existing technique. In the proposed technique, MR1 is improved by 39%, MR4 is improved by 0.5%, MR6 is improved by 17%, and MR8 is improved by 29%. We have also compared the results of our proposed MRs with the existing MRs of dilation and erosion operations. Results show that the proposed MRs complement the existing MRs effectively as the new MRs can find those faults that are not identified by the existing MRs.
RESUMO
The occurrence of faults in software systems represents an inevitable predicament. Testing is the most common means to detect such faults; however, exhaustive testing is not feasible for any nontrivial system. Software fault prediction (SFP), which identifies software components that are more prone to errors, seeks to supplement the testing process. Thus, testing efforts can be focused on such modules. Various approaches exist for SFP, with machine learning (ML) emerging as the prevailing methodology. ML-based SFP relies on a wide range of metrics, ranging from file-level and class-level to method-level and even line-level metrics. More granularized metrics are expected to possess a higher degree of micro-level coverage of the code. The Halstead metric suite offers coverage at the line level and has been extensively employed across diverse domains such as fault prediction, quality assessment, and similarity approximation for the past three decades. In this article, we propose to decompose Halstead base metrics and evaluate their fault prediction capability. The Halstead base metrics consist of operators and operands. In the context of the Java language, we partition operators into five distinct categories, i.e., assignment operators, arithmetic operators, logical operators, relational operators, and all other types of operators. Similarly, operands are classified into two classes: constants and variables. For the purpose of empirical evaluation, two experiments were designed. In the first experiment, the Halstead base metrics were used along with McCabe, Lines of Code (LoC), and Halstead-derived metrics as predictors. In the second experiment, decomposed Halstead base metrics were used along with McCabe, LoC, and Halstead-derived metrics. Five public datasets were selected for the experiments. The ML classifiers used included logistic regression, naïve Bayes, decision tree, multilayer perceptron, random forest, and support vector machines. The ML classifiers' effectiveness was assessed through metrics such as accuracy, F-measure, and AUC. Accuracy saw an enhancement from 0.82 to 0.97, while F-measure exhibited improvement from 0.81 to 0.99. Correspondingly, the AUC value advanced from 0.79 to 0.99. These findings highlight the superior performance of decomposed Halstead metrics, as opposed to the original Halstead base metrics, in predicting faults across all datasets.
RESUMO
Fault prediction is a necessity to deliver high-quality software. The absence of training data and mechanism to labeling a cluster faulty or fault-free is a topic of concern in software fault prediction (SFP). Inheritance is an important feature of object-oriented development, and its metrics measure the complexity, depth, and breadth of software. In this paper, we aim to experimentally validate how much inheritance metrics are helpful to classify unlabeled data sets besides conceiving a novel mechanism to label a cluster as faulty or fault-free. We have collected ten public data sets that have inheritance and C&K metrics. Then, these base datasets are further split into two datasets labeled as C&K with inheritance and the C&K dataset for evaluation. K-means clustering is applied, Euclidean formula to compute distances and then label clusters through the average mechanism. Finally, TPR, Recall, Precision, F1 measures, and ROC are computed to measure performance which showed an adequate impact of inheritance metrics in SFP specifically classifying unlabeled datasets and correct classification of instances. The experiment also reveals that the average mechanism is suitable to label clusters in SFP. The quality assurance practitioners can benefit from the utilization of metrics associated with inheritance for labeling datasets and clusters.
RESUMO
Software Fault Prediction (SFP) assists in the identification of faulty classes, and software metrics provide us with a mechanism for this purpose. Besides others, metrics addressing inheritance in Object-Oriented (OO) are important as these measure depth, hierarchy, width, and overriding complexity of the software. In this paper, we evaluated the exclusive use, and viability of inheritance metrics in SFP through experiments. We perform a survey of inheritance metrics whose data sets are publicly available, and collected about 40 data sets having inheritance metrics. We cleaned, and filtered them, and captured nine inheritance metrics. After preprocessing, we divided selected data sets into all possible combinations of inheritance metrics, and then we merged similar metrics. We then formed 67 data sets containing only inheritance metrics that have nominal binary class labels. We performed a model building, and validation for Support Vector Machine(SVM). Results of Cross-Entropy, Accuracy, F-Measure, and AUC advocate viability of inheritance metrics in software fault prediction. Furthermore, ic, noc, and dit metrics are helpful in reduction of error entropy rate over the rest of the 67 feature sets.
RESUMO
Software is a complex entity, and its development needs careful planning and a high amount of time and cost. To assess quality of program, software measures are very helpful. Amongst the existing measures, coupling is an important design measure, which computes the degree of interdependence among the entities of a software system. Higher coupling leads to cognitive complexity and thus a higher probability occurrence of faults. Well in time prediction of fault-prone modules assists in saving time and cost of testing. This paper aims to capture important aspects of coupling and then assess the effectiveness of these aspects in determining fault-prone entities in the software system. We propose two coupling metrics, i.e., Vovel-in and Vovel-out, that capture the level of coupling and the volume of information flow. We empirically evaluate the effectiveness of the Vovel metrics in determining the fault-prone classes using five projects, i.e., Eclipse JDT, Equinox framework, Apache Lucene, Mylyn, and Eclipse PDE UI. Model building is done using univariate logistic regression and later Spearman correlation coefficient is computed with the existing coupling metrics to assess the coverage of unique information. Finally, the least correlated metrics are used for building multivariate logistic regression with and without the use of Vovel metrics, to assess the effectiveness of Vovel metrics. The results show the proposed metrics significantly improve the predicting of fault prone classes. Moreover, the proposed metrics cover a significant amount of unique information which is not covered by the existing well-known coupling metrics, i.e., CBO, RFC, Fan-in, and Fan-out. This paper, empirically evaluates the impact of coupling metrics, and more specifically the importance of level and volume of coupling in software fault prediction. The results advocate the prudent addition of proposed metrics due to their unique information coverage and significant predictive ability.
RESUMO
In general, requirements expressed in natural language are the first step in the software development process and are documented in the form of use cases. These requirements can be specified formally using some precise mathematical notation (e.g. Linear Temporal Logic (LTL), Computational Tree Logic (CTL) etc.) or using some modeling formalism (e.g. a Kripke structure). The rigor involved in writing formal requirements requires extra time and effort, which is not feasible in several software development scenarios. A number of existing approaches are able to transform informal software requirements to formal specifications. However, most of these approaches require additional skills like understanding of specification languages additional artifacts, or services of domain expert(s). Consequently, an automated approach is required to reduce the overhead of effort for converting informal requirements to formal specifications. This work introduces an approach that takes a use case model as input in the proposed template and produces a Kripke structure and LTL specifications as output. The proposed approach also considers the common use case relationships (i.e., include and extend). The generated Kripke structure model of the software allows analysis of software behavior early at the requirements specification stage which otherwise would not be possible before the design stage of the software development process. The generated LTL formal specifications can be used against a formal model like a Kripke structure generated during the software development process for verification purpose. We demonstrate the working of the proposed approach by a SIM vending machine example, where the use cases of this system are inputs in the proposed template and the corresponding Kripke structure and LTL formal specifications are produced as final output. Additionally, we use the NuSMV tool to verify the generated LTL specifications against the Kripke structure model of the software, which reports no counterexamples thus validating the proposed approach.
Assuntos
Modelos Teóricos , Software , Algoritmos , Telefone Celular , Comércio , HumanosRESUMO
BACKGROUND: Breast cancer is the most common female malignancy worldwide and its incidence is on the rise in Pakistan. The aim of this case-control study was to quantify the association of various risk factors with breast cancer risk among Pakistani women. MATERIALS AND METHODS: A total of 2,246 women were studied, including 1,238 women with histologically confirmed breast cancer patients and age matched control subjects (N=1008) without breast cancer and other chronic diseases. Subjects were interviewed using a specifically designed questionnaire. Unconditional logistic regression was applied. Subsequent disease-specific mortality was also measured. RESULTS: In this study, majority of the breast cancer patients (69.59%) were in age ranges of 40s and 50s. BMI greater than 25kg/m2 (OR=1.57; 95%CI, 1.26-1.90 and OR=1.60; 95%CI, 1.26-2.03), marital status of unmarried (OR=2.03; 95%CI, 1.69-2.44), lack of breast feeding, smoking (current or ever), lack of physical activity and post-menopausal status were found to have significant positive associations with breast cancer. It was also observed that increased parity reduced the disease risk. A larger number of cases (58.1%) had their right breast affected while 22.8% had other complications as well. CONCLUSIONS: This exploratory analysis indicated a number of risk factors to be associated with increased risk of breast cancer. It was also observed that mean age at diagnosis is a decade earlier than in western countries. It is hoped that our findings will facilitate establishment of adequate evidence-based awareness and preventive measures for Pakistani women.
Assuntos
Neoplasias da Mama/etiologia , Predisposição Genética para Doença , Adulto , Fatores Etários , Índice de Massa Corporal , Neoplasias da Mama/epidemiologia , Neoplasias da Mama/patologia , Estudos de Casos e Controles , Estudos Transversais , Feminino , Seguimentos , Humanos , Incidência , Pessoa de Meia-Idade , Estadiamento de Neoplasias , Paquistão/epidemiologia , Prognóstico , Fatores de RiscoRESUMO
Autonomous agents perform on behalf of the user to achieve defined goals or objectives. They are situated in dynamic environment and are able to operate autonomously to achieve their goals. In a multiagent system, agents cooperate with each other to achieve a common goal. Testing of multiagent systems is a challenging task due to the autonomous and proactive behavior of agents. However, testing is required to build confidence into the working of a multiagent system. Prometheus methodology is a commonly used approach to design multiagents systems. Systematic and thorough testing of each interaction is necessary. This paper proposes a novel approach to testing of multiagent systems based on Prometheus design artifacts. In the proposed approach, different interactions between the agent and actors are considered to test the multiagent system. These interactions include percepts and actions along with messages between the agents which can be modeled in a protocol diagram. The protocol diagram is converted into a protocol graph, on which different coverage criteria are applied to generate test paths that cover interactions between the agents. A prototype tool has been developed to generate test paths from protocol graph according to the specified coverage criterion.
RESUMO
OBJECTIVE: To compare the efficacy of Transurethral Incision of Prostate (TUIP) with Transurethral Resection of Prostate (TURP), in terms of improvement in peak flow rate (Q-Max) and number of complications. STUDY DESIGN: It was an interventional, quasi-experimental study. PLACE AND DURATION OF STUDY: This study was conducted at the Armed Forces Institute of Urology (AFIU), Rawalpindi, from November 2006 to December 2007. METHODOLOGY: A total of 60 patients were inducted in the study with thirty patients in each group undergoing TUIP (Group A) and TURP (Group B). Patients of any age with prostate less than 35 grams needing surgical interventions were included in the study. Patients with recurrent disease, multiple co-morbid conditions, higher center dysfunctions, neurogenic bladder and associated strictures were excluded. In TUIP, a single median incision was made at 6 'O clock position, starting from interureteric ridge upto verumontanum, going upto prostatic capsule. In group B, standard TURP was done. All the cases were operated by the same consultant under spinal anaesthesia. Follow up was done at the end of the 1st week and 1st, 3rd and 6th months. RESULTS: Mean operative time was shorter (17.01+/-1.97 minutes) in group A as compared to group B (27.06+/-23.06 minutes, p<0.05). There was no statistically significant difference between the two groups regarding peak flow. Complications were less in group A (08) and more in group B (n=28, <0.05). CONCLUSION: TUIP and TURP were equal in terms of improvement in flow rate, but operative time was shorter in TUIP with less post operative complications. So, TUIP is a better choice in prostates weighing less than 35 grams.
Assuntos
Prostatectomia/métodos , Hiperplasia Prostática/cirurgia , Hematúria/epidemiologia , Humanos , Masculino , Complicações Pós-Operatórias/epidemiologia , Recuperação de Função Fisiológica , Ressecção Transuretral da Próstata , Resultado do Tratamento , Micção/fisiologiaRESUMO
The objective of the evidence based clinical report was to assess the outcome of exramucosal modified Heller's cardiomyotomy in terms of effective palliation of dysphagia with minimum complications. Ten patients were included after exclusion of four patients due to poor follow-up. Due to the non-availability of manometry, barium swallow and endoscopy had to be relied upon for the definitive diagnosis. All patients underwent transabdominal modified Heller's myotomy coupled with anterior partial fundoplication (Dor Patch). Median age of the patients treated was 42.5 years. Seven patients had grade III dysphagia, 2 had grade IV and one patient, an 8 years old child was having grade II dysphagia. In one patient, (10%), mucosa was perforated iatrogenically followed by wound infection. Another patient developed acute coronary syndrome on first postoperative day. In the rest of patients recovery was uneventful. Mean hospital stay was 7.1 days. Immediate relief of dysphagia was noted in all the patients. Mean follow-up was 7.2 months. There was significant improvement in dysphagia following surgery. Outcome was assessed devising a scoring system. Excellent outcome was observed in 80% of cases, good in 10% and fair in 10% of cases.