Measuring software quality requires software engineers to understand the system’s quality attributes and their measurements.The quality attribute is a qualitative property;however,the quantitative feature is needed f...Measuring software quality requires software engineers to understand the system’s quality attributes and their measurements.The quality attribute is a qualitative property;however,the quantitative feature is needed for software measurement,which is not considered during the development of most software systems.Many research studies have investigated different approaches for measuring software quality,but with no practical approaches to quantify and measure quality attributes.This paper proposes a software quality measurement model,based on a software interconnection model,to measure the quality of software components and the overall quality of the software system.Unlike most of the existing approaches,the proposed approach can be applied at the early stages of software development,to different architectural design models,and at different levels of system decomposition.This article introduces a software measurement model that uses a heuristic normalization of the software’s internal quality attributes,i.e.,coupling and cohesion,for software quality measurement.In this model,the quality of a software component is measured based on its internal strength and the coupling it exhibits with other component(s).The proposed model has been experimented with nine software engineering teams that have agreed to participate in the experiment during the development of their different software systems.The experiments have shown that coupling reduces the internal strength of the coupled components by the amount of coupling they exhibit,which degrades their quality and the overall quality of the software system.The introduced model can help in understanding the quality of software design.In addition,it identifies the locations in software design that exhibit unnecessary couplings that degrade the quality of the software systems,which can be eliminated.展开更多
With progression of the digital age, the complexity of software continues to grow. AS a result, methods to quantitatively assess characteristics of software have attracted significant atten- tion. These efforts have l...With progression of the digital age, the complexity of software continues to grow. AS a result, methods to quantitatively assess characteristics of software have attracted significant atten- tion. These efforts have led to a large number of new measures such as coupling metrics, many of which seek to consider the impact of correlations between components and failures on ap- plication reliability. However, most of these approaches set the coupling parameters arbitrarily by making assumptions instead of utilizing experimental data and therefore may not accurately capture actual coupling between components of software applica- tion. Since the coupling matrix is often set arbitrarily, the existing approaches to assess software reliability considering component correlation fail to reflect the real degree of interaction and rela- tionships among software components. This paper presents an efficient approach to assess the software reliability considering Correlated component failures, incorporating software architec- ture while considering actual internal coupling of software with an efficient approach based on multivariate Bernoulli (MVB) distribu- tion. The unified framework for software Coupling measurement is' informed by a comprehensive survey of frameworks for object- oriented and procedure-oriented software. This framework enables the extraction of more accurate coupling among cornponents. The effectiveness of this method is illustrated through an exPerimental study bylapplying it to a real-time software application.展开更多
Most of the search-based software remodularization(SBSR)approaches designed to address the software remodularization problem(SRP)areutilizing only structural information-based coupling and cohesion quality criteria.Ho...Most of the search-based software remodularization(SBSR)approaches designed to address the software remodularization problem(SRP)areutilizing only structural information-based coupling and cohesion quality criteria.However,in practice apart from these quality criteria,there require other aspects of coupling and cohesion quality criteria such as lexical and changed-history in designing the modules of the software systems.Therefore,consideration of limited aspects of software information in the SBSR may generate a sub-optimal modularization solution.Additionally,such modularization can be good from the quality metrics perspective but may not be acceptable to the developers.To produce a remodularization solution acceptable from both quality metrics and developers’perspectives,this paper exploited more dimensions of software information to define the quality criteria as modularization objectives.Further,these objectives are simultaneously optimized using a tailored manyobjective artificial bee colony(MaABC)to produce a remodularization solution.To assess the effectiveness of the proposed approach,we applied it over five software projects.The obtained remodularization solutions are evaluated with the software quality metrics and developers view of remodularization.Results demonstrate that the proposed software remodularization is an effective approach for generating good quality modularization solutions.展开更多
文摘Measuring software quality requires software engineers to understand the system’s quality attributes and their measurements.The quality attribute is a qualitative property;however,the quantitative feature is needed for software measurement,which is not considered during the development of most software systems.Many research studies have investigated different approaches for measuring software quality,but with no practical approaches to quantify and measure quality attributes.This paper proposes a software quality measurement model,based on a software interconnection model,to measure the quality of software components and the overall quality of the software system.Unlike most of the existing approaches,the proposed approach can be applied at the early stages of software development,to different architectural design models,and at different levels of system decomposition.This article introduces a software measurement model that uses a heuristic normalization of the software’s internal quality attributes,i.e.,coupling and cohesion,for software quality measurement.In this model,the quality of a software component is measured based on its internal strength and the coupling it exhibits with other component(s).The proposed model has been experimented with nine software engineering teams that have agreed to participate in the experiment during the development of their different software systems.The experiments have shown that coupling reduces the internal strength of the coupled components by the amount of coupling they exhibit,which degrades their quality and the overall quality of the software system.The introduced model can help in understanding the quality of software design.In addition,it identifies the locations in software design that exhibit unnecessary couplings that degrade the quality of the software systems,which can be eliminated.
基金supported by the National Aerospace Science Foundation of China(20140751008)
文摘With progression of the digital age, the complexity of software continues to grow. AS a result, methods to quantitatively assess characteristics of software have attracted significant atten- tion. These efforts have led to a large number of new measures such as coupling metrics, many of which seek to consider the impact of correlations between components and failures on ap- plication reliability. However, most of these approaches set the coupling parameters arbitrarily by making assumptions instead of utilizing experimental data and therefore may not accurately capture actual coupling between components of software applica- tion. Since the coupling matrix is often set arbitrarily, the existing approaches to assess software reliability considering component correlation fail to reflect the real degree of interaction and rela- tionships among software components. This paper presents an efficient approach to assess the software reliability considering Correlated component failures, incorporating software architec- ture while considering actual internal coupling of software with an efficient approach based on multivariate Bernoulli (MVB) distribu- tion. The unified framework for software Coupling measurement is' informed by a comprehensive survey of frameworks for object- oriented and procedure-oriented software. This framework enables the extraction of more accurate coupling among cornponents. The effectiveness of this method is illustrated through an exPerimental study bylapplying it to a real-time software application.
文摘Most of the search-based software remodularization(SBSR)approaches designed to address the software remodularization problem(SRP)areutilizing only structural information-based coupling and cohesion quality criteria.However,in practice apart from these quality criteria,there require other aspects of coupling and cohesion quality criteria such as lexical and changed-history in designing the modules of the software systems.Therefore,consideration of limited aspects of software information in the SBSR may generate a sub-optimal modularization solution.Additionally,such modularization can be good from the quality metrics perspective but may not be acceptable to the developers.To produce a remodularization solution acceptable from both quality metrics and developers’perspectives,this paper exploited more dimensions of software information to define the quality criteria as modularization objectives.Further,these objectives are simultaneously optimized using a tailored manyobjective artificial bee colony(MaABC)to produce a remodularization solution.To assess the effectiveness of the proposed approach,we applied it over five software projects.The obtained remodularization solutions are evaluated with the software quality metrics and developers view of remodularization.Results demonstrate that the proposed software remodularization is an effective approach for generating good quality modularization solutions.