261 research outputs found
The Evolution of Complexity in Apple Darwin: A Common Coupling Point of View
Common coupling increases the interdependencies between software modules. It should be avoided if possible. In previous work, we presented two types of categorization of common coupling, one is for single-kernel-based software, one is for multi-kernel-based-software. In this paper, we analyze the relationships between these two types of categorization and apply them to study the evolution of the complexity of Apple Darwin. The same conclusion about Darwin’s evolution is drawn based on the two types of categorization of common coupling: From version XNU-517 to version XNU-792, Darwin has restructured to reduce the number of difficulty-inducing high category (level) global variables in order to reduce the system complexity. However, due to the definition-use dependencies, the complexity of Darwin induced by global variables has increased from version XNU-517 to version XNU-792. 1
Using Negative Binomial Regression Analysis to Predict Software Faults: A Study of Apache Ant
Negative binomial regression has been proposed as an approach to predicting fault-prone software modules. However, little work has been reported to study the strength, weakness, and applicability of this method. In this paper, we present a deep study to investigate the effectiveness of using negative binomial regression to predict fault-prone software modules under two different conditions, self-assessment and forward assessment. The performance of negative binomial regression model is also compared with another popular fault prediction model—binary logistic regression method. The study is performed on six versions of an open-source objected-oriented project, Apache Ant. The study shows (1) the performance of forward assessment is better than or at least as same as the performance of self-assessment; (2) in predicting fault-prone modules, negative binomial regression model could not outperform binary logistic regression model; and (3) negative binomial regression is effective in predicting multiple errors in one modul
Analiza rizika globalnog razvoja programske podrške i prijedlog rješenja
Global software development is becoming a widely accepted practice in software industry. While benefits of global software development have been identified and publicized, potential risks have not been fully investigated and addressed. This paper analyzes the impacts of globalization on software development, especially its long term impact on software product quality and software industry competitiveness. This issue is rather critical for prominent software providers. Potential solutions are discussed to address these issues in order to reduce the risk and take advantage of the benefits of global software development.Globalni razvoj programske podrške postaje naširoko prihvaćen način rada u industriji programske podrške. Dok su njegove dobre strane uočene i obznanjene, mogući rizici nisu u potpunosti istraženi i odgovarajuće adresirani. Ovaj članak analizira učinke globalnog razvoja programske podrške, posebice njegov dugoročni utjecaj na kvalitetu programa i konkurentnost industrije programske podrške. Taj je moment razmjerno kritičan uglednim proizvođačima programa. Diskutirana su moguća rješenja za adresiranje tih problema kako bi se rizik umanjio i iskoristile dobre strane globalnog razvoja programske podrške
Experience in Predicting Fault-Prone Software Modules Using Complexity Metrics
Complexity metrics have been intensively studied in predicting fault-prone software modules. However, little work is done in studying how to effectively use the complexity metrics and the prediction models under realistic conditions. In this paper, we present a study showing how to utilize the prediction models generated from existing projects to improve the fault detection on other projects. The binary logistic regression method is used in studying publicly available data of five commercial products. Our study shows (1) models generated using more datasets can improve the prediction accuracy but not the recall rate; (2) lowering the cut-off value can improve the recall rate, but the number of false positives will be increased, which will result in higher maintenance effort. We further suggest that in order to improve model prediction efficiency, the selection of source datasets and the determination of cut-off values should be based on specific properties of a project. So far, there are no general rules that have been found and reported to follow
Using Bug Reports as a Software Quality Measure
Bugzilla is an online software bug reporting system. It is widely used by both open-source software projects and commercial software companies and has become a major source to study software evolution, software project management, and software quality control. In some research studies, the number of bug reports has been used as an indicator of software quality. This paper examines this representation. We investigate whether the number of bug reports of a specific version of a software product is correlated with its quality. Our study is performed on six branches of three open-source software systems. Our results do not support using the number of bug reports as a quality indicator of a specific version of an evolving software product. Instead, the study reveals that the number of bug reports is in some ways correlated with the time duration between product releases. Finally, the paper suggests using accumulated bug reports as a means to represent the quality of a software branch
Skipped Feature Pyramid Network with Grid Anchor for Object Detection
CNN-based object detection methods have achieved significant progress in
recent years. The classic structures of CNNs produce pyramid-like feature maps
due to the pooling or other re-scale operations. The feature maps in different
levels of the feature pyramid are used to detect objects with different scales.
For more accurate object detection, the highest-level feature, which has the
lowest resolution and contains the strongest semantics, is up-scaled and
connected with the lower-level features to enhance the semantics in the
lower-level features. However, the classic mode of feature connection combines
the feature of lower-level with all the features above it, which may result in
semantics degradation. In this paper, we propose a skipped connection to obtain
stronger semantics at each level of the feature pyramid. In our method, the
lower-level feature only connects with the feature at the highest level, making
it more reasonable that each level is responsible for detecting objects with
fixed scales. In addition, we simplify the generation of anchor for bounding
box regression, which can further improve the accuracy of object detection. The
experiments on the MS COCO and Wider Face demonstrate that our method
outperforms the state-of-the-art methods
Evaluation of different b-values in DWI and 1H MRS for pancreatic cancer and pancreatitis: a rabbit model
Pancreatic cancer is a common malignant tumor with high incidence of metastasis. Currently, there is no absolute standard for the choice of b-value for diffusion-weighted imaging (DWI) for pancreatic cancer. The b-value is rarely reported in animal model study, especially in pancreatic cancer/mass pancreatitis rabbit models. The authors\u27 aim was to determine the different b-values to differentiate the diagnosis of pancreatic cancer and mass pancreatitis in rabbit models using DWI. When comparing the effect of different b-values in diagnostic process, the pathological results could be regarded as the gold standard. In this research, 30 healthy New Zealand rabbits were selected and divided into three groups by random number table method: group 1 (pancreatic cancer), group 2 (mass pancreatitis) and the control group (healthy). After DWI (three different b-values 333, 667, 1000 s/mm2, respectively) and MRI examination, the model rabbits were then killed. Afterward, the tumor mass was removed for biopsy, and occupation anatomy and tumor histopathology were examined. Fat-suppressing sequences of T2WI, DWI, ADC, difference of ADC (DADC), and MRS were used. The present study determined that the effective differential diagnosis of pancreatic cancer and pancreatitis was determined at low b-values (333 s/mm2) when performed DWI inspection in rabbit models
Using Peer Comparison Approaches to Measure Software Stability
Software systems must change to adapt to new functional requirements and new nonfunctional requirements. This is called software revision. However, not all the modules within the system need to be changed during each revision. In this paper, we study how frequently each module is modified. Our study is performed through comparing the stability of peer software modules. The study is performed on six open-source Java projects: Ant, Flow4j, Jena, Lucence, Struct, and Xalan, in which classes are identified as basic software modules. Our study shows (1) about half of the total classes never changed; (2) frequent changes occur to small number of classes; and (3) the number of changed classes between current release and next release has no significant relations with the time duration between current release and next release. Keywords: software evolution; software revision; software stability; class stability; open-source project; Java clas
- …