Abstract-Published software quality models either provide abstract quality attributes or concrete quality assessments. There are no models that seamlessly integrate both aspects. In the project Quamoco, we built a comprehensive approach with the aim to close this gap.For this, we developed in several iterations a meta quality model specifying general concepts, a quality base model covering the most important quality factors and a quality assessment approach. The meta model introduces the new concept of a product factor, which bridges the gap between concrete measurements and abstract quality aspects. Product factors have measures and instruments to operationalise quality by measurements from manual inspection and tool analysis. The base model uses the ISO 25010 quality attributes, which we refine by 200 factors and 600 measures for Java and C# systems.We found in several empirical validations that the assessment results fit to the expectations of experts for the corresponding systems. The empirical analyses also showed that several of the correlations are statistically significant and that the maintainability part of the base model has the highest correlation, which fits to the fact that this part is the most comprehensive. Although we still see room for extending and improving the base model, it shows a high correspondence with expert opinions and hence is able to form the basis for repeatable and understandable quality assessments in practice.
Context Software quality models provide either abstract quality characteristics or concrete quality measurements; there is no seamless integration of these two aspects. Quality assessment approaches are, hence, also very specific or remain abstract. Reasons for this include the complexity of quality and the various quality profiles in different domains which make it difficult to build operationalised quality models. Objective In the project Quamoco, we developed a comprehensive approach aimed at closing this gap. Method The project combined constructive research, which involved a broad range of quality experts from academia and industry in workshops, sprint work and reviews, with empirical studies. All deliverables within the project were peer-reviewed by two project members from a different area. Most deliverables were developed in two or three iterations and underwent an evaluation. Results We contribute a comprehensive quality modelling and assessment approach: (1) A meta quality model defines the structure of operationalised quality models. It includes the concept of a product factor, which bridges the gap between concrete measurements and abstract quality aspects, and allows modularisation to create modules for specific domains. (2) A largely technology-independent base quality model reduces the effort and complexity of building quality models for specific domains. For Java and C# systems, we refined it with about 300 concrete product factors and 500 measures. (3) A concrete and comprehensive quality assessment approach makes use of the concepts in the meta-model. (4) An empirical evaluation of the above results using real-world software systems showed: (a) The assessment results using the base model largely match the expectations of experts for the corresponding systems. (b) The approach and models are well understood by practitioners and considered to be both consistent and well suited for getting an overall view on the quality of a software product. The validity of the base quality model could not be shown conclusively, however. (5) The extensive, open-source tool support is in a mature state. (6) The model for embedded software systems is a proof-of-concept for domain-specific quality models. Conclusion We provide a broad basis for the development and application of quality models in industrial practice as well as a basis for further extension, validation and comparison with other approaches in research
Classic clone detection approaches are hardly capable of finding redundant code that has been developed independently, i. e., is not the result of copy&paste. To automatically detect such functionally similar code of independent origin, we experimented with a dynamic detection approach that applies random testing to selected chunks of code similar to Jiang&Su's approach. We found that such an approach faces several limitations in its application to diverse Java systems. This paper details on our insights regarding these challenges of dynamic detection of functionally similar code fragments. Our findings support a substantiated discussion on detection approaches and serve as a starting point for future research.
Diabetic ketoacidosis is an infrequent but life-threatening acute complication of diabetes, affecting predominantly patients with type 1 diabetes, children, and pregnant women, where ketosis is usually associated with marked hyperglycemia. Recently, an increasing number of cases have been reported of euglycemic diabetic ketoacidosis in patients with type 2 diabetes receiving sodium-glucose cotransporter 2 inhibitor treatment in routine practice. There is a minor, but not negligible diabetic ketoacidosis risk associated with this drug class, which was not seen in randomized clinical trials. However, sodium-glucose cotransporter2 inhibitors increase the risk of ketosis by increasing glucagon secretion in the pancreas and decreasing the renal excretion of 3-hydroxybutyrate and acetoacetate. When used in addition to insulin, any insulin dose reduction required to avoid hypoglycemia may lead to insufficient suppression of lipolysis and ketogenesis. sodium-glucose cotransporter2 inhibitor-induced loss of urinary glucose encourages euglycemia. Normo-glycemic or near-normoglycemic diabetic ketoacidosis represents a major threat to the health and well-being of a patient, because it may occur undetected and without any indicative hyperglycemia. In consequence, patients on sodium-glucose cotransporter2 inhibitors are recommended to perform regular blood ketone tests since they are not alerted to incipient diabetic ketoacidosis by glucose testing alone. This option is offered by several blood glucose meters that can also measure ketones with a separate ketone strip or in one case by an automatic parallel ketone assessment from the same strip. The need for extra testing and the associated costs may be a barrier to patient acceptance of this risk mitigation procedure. However, patients who are at risk for euglycemic diabetic ketoacidosis when being treated with sodium-glucose cotransporter2 inhibitors should be specially advised to monitor blood ketone levels on a regular basis.
Abstract-Modern software systems build on a significant number of external libraries to deliver feature-rich and highquality software in a cost-efficient and timely manner. As a consequence, these systems contain a considerable amount of third-party code. External libraries thus have a significant impact on maintenance activities in the project. However, most approaches that assess the maintainability of software systems largely neglect this important factor. Hence, risks may remain unidentified, threatening the ability to effectively evolve the system in the future. We propose a structured approach to assess the third-party library usage in software projects and identify potential problems. Industrial experience strongly influences our approach, which we designed in a lightweight way to enable easy adoption in practice. We present an industrial case study showing the applicability of the approach to a real-world software system.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
hi@scite.ai
334 Leonard St
Brooklyn, NY 11211
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.