This document discusses parameters for improving program quality from a reengineering perspective. It begins with an introduction stating that software development is complex and dynamic, so programs must be flexible, reusable and scalable. It then reviews literature on various software quality models proposed over decades to identify quality parameters. These parameters affect program design, functionality, performance and other attributes. The document emphasizes that considering quality parameters at each development stage can help produce programs that meet requirements and are suitable for reengineering.
Modern gadgets and machines such as medical equipments, mobile phones, cars and even military hardware run on software. The operational efficiency and accuracy of these machines are critical to life and the well being of modern civilization. When the software powering these machines fail it exposes life to danger and can cause the failure of businesses. In this paper, software quality measure is presented with the emphasis on improving standard and controlling damages that may result from badly developed application. The research shows various software quality standards and quality metrics and how they can be applied. The application of the metrics in measuring software quality in the research produced results which shows that the code metrics performance is better than the design metrics performance and points to a new way of improving quality by refactoring application code instead of developing new designs. This is believed to ensure reusability and reduced failure rate when software is developed
Evaluating the Quality of Software in ERP Systems Using the ISO 9126 Model ijasa
This paper presents the quality model of enterprise resource planning (ERP) systems by
adapting the ISO9126 standard. This model is used to verify that whether the implementation of ERP
systems will succeed or fail in higher educational institutions. Six quality characteristics are suggested to
be minimum requirements for creating the quality model of ERP systems, including functionality,
reliability, usability, efficiency, maintainability, and portability of ERP systems. The quality
characteristics could not be measured directly. Thus in this study, they are divided into twenty seven subcharacteristics
The increasing availability of COTS (commercial-off-the-shelf) components in the market of software
development has concretized the opportunity of building whole systems based on previously built components. Component-
Based Software Engineering (CBSE) is an approach which is used to improve efficiency and productivity of software system
with the help of reusability. CBSE approach improves software development productivity and software quality by selecting
pre-existing software components. Reusability in Component-Based Software Development (CBSD) not only reduces the
time to market in development but also brings the cost down of development heavily. This paper represents the challenges
which are faced by software developer during component selection like reliability, time, components size, fault tolerance,
performance, components functionality and components compatibility. This paper also summarizes algorithms used for
component retrieval according to availability of component subset.
Actually, software products are increasing in a fast way and are used in almost all activities of human life.
Consequently measuring and evaluating the quality of a software product has become a critical task for
many companies. Several models have been proposed to help diverse types of users with quality issues. The
development of techniques for building software has influenced the creation of models to assess the quality.
Since 2000 the construction of software started to depend on generated or manufactured components and
gave rise to new challenges for assessing quality. These components introduce new concepts such as
configurability, reusability, availability, better quality and lower cost. Consequently the models are
classified in basic models which were developed until 2000, and those based on components called tailored
quality models. The purpose of this article is to describe the main models with their strengths and point out
some deficiencies. In this work, we conclude that in the present age, aspects of communications play an
important factor in the quality of software.
Software quality is an important issue in the development of successful software application.
Many methods have been applied to improve the software quality. Refactoring is one of those
methods. But, the effect of refactoring in general on all the software quality attributes is
ambiguous.
The goal of this paper is to find out the effect of various refactoring methods on quality
attributes and to classify them based on their measurable effect on particular software quality
attribute. The paper focuses on studying the Reusability, Complexity, Maintainability,
Testability, Adaptability, Understandability, Fault Proneness, Stability and Completeness
attribute of a software .This, in turn, will assist the developer in determining that whether to
apply a certain refactoring method to improve a desirable quality attribute.
EMPIRICALLY VALIDATED SIMPLICITY EVALUATION MODEL FOR OBJECT ORIENTED SOFTWAREijseajournal
Software program developers need to go from beginning to ending and understand source code of the program and other software attributes. The software complexities and length of the program exceedingly affects many design level quality attributes, specifically Simplicity, Testability and software
Maintainability. Incomplete design of any software generally leads to misunderstanding and ambiguities
and therefore to gives faulty design and development results. This is mainly seeming and appears owing to
the absence of it’s an appropriate observation, design and development control. However, high level design
and program simplicity are very necessary and one of the vital attributes of the system development cycle.This research paper highlights the impact and significance of design level software simplicity in common and as a one of the most useful key factor or index of software quality assurance and testing. In this research work principally there are three major efforts are made. As a first contribution, a valuable
relationship between software design quality factor simplicity and related object oriented design
properties, this has been set up. In the second contribution, using design level corresponding metrics a
simplicity evaluation model for object oriented software is developed. Subsequently, the developed
simplicity model has been rationally authenticated by means of experimental data try-out.
Modern gadgets and machines such as medical equipments, mobile phones, cars and even military hardware run on software. The operational efficiency and accuracy of these machines are critical to life and the well being of modern civilization. When the software powering these machines fail it exposes life to danger and can cause the failure of businesses. In this paper, software quality measure is presented with the emphasis on improving standard and controlling damages that may result from badly developed application. The research shows various software quality standards and quality metrics and how they can be applied. The application of the metrics in measuring software quality in the research produced results which shows that the code metrics performance is better than the design metrics performance and points to a new way of improving quality by refactoring application code instead of developing new designs. This is believed to ensure reusability and reduced failure rate when software is developed
Evaluating the Quality of Software in ERP Systems Using the ISO 9126 Model ijasa
This paper presents the quality model of enterprise resource planning (ERP) systems by
adapting the ISO9126 standard. This model is used to verify that whether the implementation of ERP
systems will succeed or fail in higher educational institutions. Six quality characteristics are suggested to
be minimum requirements for creating the quality model of ERP systems, including functionality,
reliability, usability, efficiency, maintainability, and portability of ERP systems. The quality
characteristics could not be measured directly. Thus in this study, they are divided into twenty seven subcharacteristics
The increasing availability of COTS (commercial-off-the-shelf) components in the market of software
development has concretized the opportunity of building whole systems based on previously built components. Component-
Based Software Engineering (CBSE) is an approach which is used to improve efficiency and productivity of software system
with the help of reusability. CBSE approach improves software development productivity and software quality by selecting
pre-existing software components. Reusability in Component-Based Software Development (CBSD) not only reduces the
time to market in development but also brings the cost down of development heavily. This paper represents the challenges
which are faced by software developer during component selection like reliability, time, components size, fault tolerance,
performance, components functionality and components compatibility. This paper also summarizes algorithms used for
component retrieval according to availability of component subset.
Actually, software products are increasing in a fast way and are used in almost all activities of human life.
Consequently measuring and evaluating the quality of a software product has become a critical task for
many companies. Several models have been proposed to help diverse types of users with quality issues. The
development of techniques for building software has influenced the creation of models to assess the quality.
Since 2000 the construction of software started to depend on generated or manufactured components and
gave rise to new challenges for assessing quality. These components introduce new concepts such as
configurability, reusability, availability, better quality and lower cost. Consequently the models are
classified in basic models which were developed until 2000, and those based on components called tailored
quality models. The purpose of this article is to describe the main models with their strengths and point out
some deficiencies. In this work, we conclude that in the present age, aspects of communications play an
important factor in the quality of software.
Software quality is an important issue in the development of successful software application.
Many methods have been applied to improve the software quality. Refactoring is one of those
methods. But, the effect of refactoring in general on all the software quality attributes is
ambiguous.
The goal of this paper is to find out the effect of various refactoring methods on quality
attributes and to classify them based on their measurable effect on particular software quality
attribute. The paper focuses on studying the Reusability, Complexity, Maintainability,
Testability, Adaptability, Understandability, Fault Proneness, Stability and Completeness
attribute of a software .This, in turn, will assist the developer in determining that whether to
apply a certain refactoring method to improve a desirable quality attribute.
EMPIRICALLY VALIDATED SIMPLICITY EVALUATION MODEL FOR OBJECT ORIENTED SOFTWAREijseajournal
Software program developers need to go from beginning to ending and understand source code of the program and other software attributes. The software complexities and length of the program exceedingly affects many design level quality attributes, specifically Simplicity, Testability and software
Maintainability. Incomplete design of any software generally leads to misunderstanding and ambiguities
and therefore to gives faulty design and development results. This is mainly seeming and appears owing to
the absence of it’s an appropriate observation, design and development control. However, high level design
and program simplicity are very necessary and one of the vital attributes of the system development cycle.This research paper highlights the impact and significance of design level software simplicity in common and as a one of the most useful key factor or index of software quality assurance and testing. In this research work principally there are three major efforts are made. As a first contribution, a valuable
relationship between software design quality factor simplicity and related object oriented design
properties, this has been set up. In the second contribution, using design level corresponding metrics a
simplicity evaluation model for object oriented software is developed. Subsequently, the developed
simplicity model has been rationally authenticated by means of experimental data try-out.
REALIZING A LOOSELY-COUPLED STUDENTS PORTAL FRAMEWORKijseajournal
Most of the currently available students' portal frameworks are tightly-coupled frameworks. A recent
research done by the authors of this paper has discussed how to distribute the concepts of the traditional
students' portal framework and came out with a distributed interoperable framework. This paper realizes
the distributed interoperable students' portal framework by developing a prototype. This prototype is based
on Service Oriented Architecture (SOA). The prototype is tested using web service testing and compatibility
testing.
DESQA a Software Quality Assurance FrameworkIJERA Editor
In current software development lifecycles of heterogeneous environments, the pitfalls businesses have to face are that software defect tracking, measurements and quality assurance do not start early enough in the development process. In fact the cost of fixing a defect in a production environment is much higher than in the initial phases of the Software Development Life Cycle (SDLC) which is particularly true for Service Oriented Architecture (SOA). Thus the aim of this study is to develop a new framework for defect tracking and detection and quality estimation for early stages particularly for the design stage of the SDLC. Part of the objectives of this work is to conceptualize, borrow and customize from known frameworks, such as object-oriented programming to build a solid framework using automated rule based intelligent mechanisms to detect and classify defects in software design of SOA. The implementation part demonstrated how the framework can predict the quality level of the designed software. The results showed a good level of quality estimation can be achieved based on the number of design attributes, the number of quality attributes and the number of SOA Design Defects. Assessment shows that metrics provide guidelines to indicate the progress that a software system has made and the quality of design. Using these guidelines, we can develop more usable and maintainable software systems to fulfill the demand of efficient systems for software applications. Another valuable result coming from this study is that developers are trying to keep backwards compatibility when they introduce new functionality. Sometimes, in the same newly-introduced elements developers perform necessary breaking changes in future versions. In that way they give time to their clients to adapt their systems. This is a very valuable practice for the developers because they have more time to assess the quality of their software before releasing it. Other improvements in this research include investigation of other design attributes and SOA Design Defects which can be computed in extending the tests we performed.
Contributors to Reduce Maintainability Cost at the Software Implementation PhaseWaqas Tariq
Software maintenance is important and difficult to measure. The cost of maintenance is the most ever during the phases of software development. One of the most critical processes in software development is the reduction of software maintainability cost based on the quality of source code during design step, however, a lack of quality models and measures can help asses the quality attributes of software maintainability process. Software maintainability suffers from a number of challenges such as lack source code understanding, quality of software code, and adherence to programming standards in maintenance. This work describes model based-factors to assess the software maintenance, explains the steps followed to obtain and validate them. Such a method can be used to eliminate the software maintenance cost. The research results will enhance the quality of the source code. It will increase software understandability, eliminate maintenance time, cost, and give confidence for software reusability.
A comparative studies of software quality model for the software product eval...imdurgesh
Actually, software products are increasing in a fast way and are used in almost all activities of human life.
Consequently measuring and evaluating the quality of a software product has become a critical task for many companies.
Several models have been proposed to help diverse types of users with quality issues. The development of techniques for
building software has influenced the creation of models to assess the quality. Since 2000 the construction of software
started to depend on generated or manufactured components and gave rise to new challenges in assessing quality.
These components introduce new concepts such as configurability, reusability, availability, better quality and lower cost.
Consequently, the models are classified into basic models which were developed until 2000, and those based on
components called tailored quality models. The purpose of this article is to describe the main models with their strengths
and point out some deficiencies. In this work, we conclude that in the present age, aspects of communications play an
important factor in the quality of the software.
Quality Attributes and Software Architectures Emerging Through Agile Developm...Waqas Tariq
Software architectures play an important role as an intermediate stage through which system requirements are translated into full scale working system. The idea of what a system does, what it does not, and different concerns and requirements can be negotiated and expressed clearly through the software architecture. Software architectures exist to enhance and provide quality attributes, while they are quality attributes and their required level of achievement which can offer numerous number of software architectures for a single software system.
We believe that the agile approach to architecting is problematic because of agilists’ beliefs about how to architect a software system, and how critical quality attributes are to achieve a stable yet flexible architecture. Through this research we clarify these issues, and discuss consequences of agile architecting on achieved level of quality attributes. We are going to pursue the answer to how to architect to achieve required level of quality attributes, while adopting an agile process.
JELINSKI-MORANDA SOFTWARE RELIABILITY GROWTH MODEL: A BRIEF LITERATURE AND MO...ijseajournal
Analyzing the reliability of a software can be done at various phases during the development of
engineering software. Software reliability growth models (SRGMs) assess, predict, and controlthe software
reliability based on data obtained from testing phase.This paper gives a literaturereview of the first and
wellknownJelinski and Moranda(J-M) (1972)SRGM.Also a modification to Jelinski and Morandamodel is
given, Jelinski and Moranda and Schick and Wolverton (S-W) (1978)SRGMsare two special cases of our
new suggested general SRGM. Our proposed general SRGMalong with our Survey will open doors for
much more useful researches to be done in the field of reliability modeling.
Changeability has a direct relation to software maintainability and has a major role in providing high quality maintainable and trustworthy software. The concept of Changeability is a major factor when we design and develop software and its constituents. Developing programs and its constituent components with good changeability continually improves and simplifies test operations and maintenance during and after implementation. It encourages and supports improvement in software quality at design stage in the development of software. The research here highlights the importance of changeability broadly and also as an important aspect of software quality.
Syed Zaffar Iqbal, Prof. Urwa Javed and Dr. Shakeel Ahmed Roshan. Department of Computer Science, Alhamd Islamic University, Pakistan. “Software Quality Assurance Model for Software Excellence with Its Requirements” United International Journal for Research & Technology (UIJRT) 1.1 (2019): 39-43.
The modern business environment requires organizations to be flexible and open to change if they are to gain and retain their competitive age. Competitive business environment needs to modernize existing legacy system in to self-adaptive ones. Reengineering presents an approach to transfer a legacy system towards an evolvable system. Software reengineering is a leading system evolution technique which helps in effective cost control, quality improvements and time and risk reduction. However successful improvement of legacy system through reengineering requires portfolio analysis of legacy application around various quality and functional parameters some of which includes reliability and modularity of the functions, level of usability and maintainability as well as policy and standards of software architecture and availability of required documents. Portfolio analysis around these parameters will help to examine the legacy application on quality and functional gaps within the application [1].
Quality aware approach for engineering self-adaptive software systemscsandit
Self-adaptivity allows software systems to autonomously adjust their behavior during run-time to reduce
the cost complexities caused by manual maintenance. In this paper, an approach for building an external
adaptation engine for self-adaptive software systems is proposed. In order to improve the quality of selfadaptive
software systems, this research addresses two challenges in self-adaptive software systems. The
first challenge is managing the complexity of the adaptation space efficiently and the second is handling the
run-time uncertainty that hinders the adaptation process. This research utilizes Case-based Reasoning as
an adaptation engine along with utility functions for realizing the managed system’s requirements and
handling uncertainty.
Agile software processes, such as extreme programming (XP), Scrum, Lean, etc., rely on best
practices that are considered to improve software development quality. It can be said that best
practices aim to induce software quality assurance (SQA) into the project at hand. Some
researchers of agile methods claim that because of the very nature of such methods,
quality in agile software projects should be a natural outcome of the applied method.
As a consequence, agile quality is expected to be more or less embedded in the agile software
processes. Many reports support and evangelize the advantages of agile methods with respect to
quality assurance, Is it so ?
An ambitious goal of this paper is to present work done to understand how quality is or should
be handled. This paper as all survey papers attempt to summarize and organizes research
results in the field of software engineering, precisely for the topic of agile methods related to
software quality.
PROPERTIES OF A FEATURE IN CODE-ASSETS: AN EXPLORATORY STUDYijseajournal
Software product line engineering is a paradigm for developing a family of software products from a
repository of reusable assets rather than developing each individual product from scratch. In featureoriented software product line engineering, the common and the variable characteristics of the products
are expressed in terms of features. Using software product line engineering approach, software products
are produced en masse by means of two engineering phases: (i) Domain Engineering and, (ii) Application
Engineering. At the domain engineering phase, reusable assets are developed with variation points where
variant features may be bound for each of the diverse products. At the application engineering phase,
individual and customized products are developed from the reusable assets. Ideally, the reusable assets
should be adaptable with less effort to support additional variations (features) that were not planned
beforehand in order to increase the usage context of SPL as a result of expanding markets or when a new
usage context of software product line emerges. This paper presents an exploration research to investigate
the properties of features, in the code-asset implemented using Object-Oriented Programming Style. In the
exploration, we observed that program elements of disparate features formed unions as well as
intersections that may affect modifiability of the code-assets. The implication of this research to practice is
that an unstable product line and with the tendency of emerging variations should aim for techniques that
limit the number of intersections between program elements of different features. Similarly, the implication
of the observation to research is that there should be subsequent investigations using multiple case studies
in different software domains and programming styles to improve the understanding of the findings.
AN APPROACH FOR TEST CASE PRIORITIZATION BASED UPON VARYING REQUIREMENTS IJCSEA Journal
Software testing is a process continuously performed by the development team during the life cycle of the software with the motive to detect the faults as early as possible. Regressing testing is the most suitable technique for this in which we test number of test cases. As the number of test cases can be very large it is always preferable to prioritize test cases based upon certain criterions.In this paper prioritization strategy is proposed which prioritize test cases based on requirements analysis. By regressing testing if the requirements will vary in future, the software will be modified in such a manner that it will not affect the remaining parts of the software. The proposed system improves the testing process and its efficiency to achieve goals regarding quality, cost, and effort as well user satisfaction and the result of the proposed method evaluated with the help of performance evaluation metric.
This presentation was given at the 2011 Northern Sydney Region Digital Education Revolution Curriculum conference. The presentation is a brief overview of games based learning and how it can be used to enhance and transform learning.
Презентация Сергея Белова, Координатора университетских программ IBM в странах Центральной и Восточной Европы, Ближнего Востока, Африки (CEE & MEA). Презентация была представлена на Дне Студента, прошедшем 7 декабря 2012 года в Научно-техническом центре (НТЦ) ИБМ и организованным совместно командой Академические Инициативы IBM Россия и НТЦ.
REALIZING A LOOSELY-COUPLED STUDENTS PORTAL FRAMEWORKijseajournal
Most of the currently available students' portal frameworks are tightly-coupled frameworks. A recent
research done by the authors of this paper has discussed how to distribute the concepts of the traditional
students' portal framework and came out with a distributed interoperable framework. This paper realizes
the distributed interoperable students' portal framework by developing a prototype. This prototype is based
on Service Oriented Architecture (SOA). The prototype is tested using web service testing and compatibility
testing.
DESQA a Software Quality Assurance FrameworkIJERA Editor
In current software development lifecycles of heterogeneous environments, the pitfalls businesses have to face are that software defect tracking, measurements and quality assurance do not start early enough in the development process. In fact the cost of fixing a defect in a production environment is much higher than in the initial phases of the Software Development Life Cycle (SDLC) which is particularly true for Service Oriented Architecture (SOA). Thus the aim of this study is to develop a new framework for defect tracking and detection and quality estimation for early stages particularly for the design stage of the SDLC. Part of the objectives of this work is to conceptualize, borrow and customize from known frameworks, such as object-oriented programming to build a solid framework using automated rule based intelligent mechanisms to detect and classify defects in software design of SOA. The implementation part demonstrated how the framework can predict the quality level of the designed software. The results showed a good level of quality estimation can be achieved based on the number of design attributes, the number of quality attributes and the number of SOA Design Defects. Assessment shows that metrics provide guidelines to indicate the progress that a software system has made and the quality of design. Using these guidelines, we can develop more usable and maintainable software systems to fulfill the demand of efficient systems for software applications. Another valuable result coming from this study is that developers are trying to keep backwards compatibility when they introduce new functionality. Sometimes, in the same newly-introduced elements developers perform necessary breaking changes in future versions. In that way they give time to their clients to adapt their systems. This is a very valuable practice for the developers because they have more time to assess the quality of their software before releasing it. Other improvements in this research include investigation of other design attributes and SOA Design Defects which can be computed in extending the tests we performed.
Contributors to Reduce Maintainability Cost at the Software Implementation PhaseWaqas Tariq
Software maintenance is important and difficult to measure. The cost of maintenance is the most ever during the phases of software development. One of the most critical processes in software development is the reduction of software maintainability cost based on the quality of source code during design step, however, a lack of quality models and measures can help asses the quality attributes of software maintainability process. Software maintainability suffers from a number of challenges such as lack source code understanding, quality of software code, and adherence to programming standards in maintenance. This work describes model based-factors to assess the software maintenance, explains the steps followed to obtain and validate them. Such a method can be used to eliminate the software maintenance cost. The research results will enhance the quality of the source code. It will increase software understandability, eliminate maintenance time, cost, and give confidence for software reusability.
A comparative studies of software quality model for the software product eval...imdurgesh
Actually, software products are increasing in a fast way and are used in almost all activities of human life.
Consequently measuring and evaluating the quality of a software product has become a critical task for many companies.
Several models have been proposed to help diverse types of users with quality issues. The development of techniques for
building software has influenced the creation of models to assess the quality. Since 2000 the construction of software
started to depend on generated or manufactured components and gave rise to new challenges in assessing quality.
These components introduce new concepts such as configurability, reusability, availability, better quality and lower cost.
Consequently, the models are classified into basic models which were developed until 2000, and those based on
components called tailored quality models. The purpose of this article is to describe the main models with their strengths
and point out some deficiencies. In this work, we conclude that in the present age, aspects of communications play an
important factor in the quality of the software.
Quality Attributes and Software Architectures Emerging Through Agile Developm...Waqas Tariq
Software architectures play an important role as an intermediate stage through which system requirements are translated into full scale working system. The idea of what a system does, what it does not, and different concerns and requirements can be negotiated and expressed clearly through the software architecture. Software architectures exist to enhance and provide quality attributes, while they are quality attributes and their required level of achievement which can offer numerous number of software architectures for a single software system.
We believe that the agile approach to architecting is problematic because of agilists’ beliefs about how to architect a software system, and how critical quality attributes are to achieve a stable yet flexible architecture. Through this research we clarify these issues, and discuss consequences of agile architecting on achieved level of quality attributes. We are going to pursue the answer to how to architect to achieve required level of quality attributes, while adopting an agile process.
JELINSKI-MORANDA SOFTWARE RELIABILITY GROWTH MODEL: A BRIEF LITERATURE AND MO...ijseajournal
Analyzing the reliability of a software can be done at various phases during the development of
engineering software. Software reliability growth models (SRGMs) assess, predict, and controlthe software
reliability based on data obtained from testing phase.This paper gives a literaturereview of the first and
wellknownJelinski and Moranda(J-M) (1972)SRGM.Also a modification to Jelinski and Morandamodel is
given, Jelinski and Moranda and Schick and Wolverton (S-W) (1978)SRGMsare two special cases of our
new suggested general SRGM. Our proposed general SRGMalong with our Survey will open doors for
much more useful researches to be done in the field of reliability modeling.
Changeability has a direct relation to software maintainability and has a major role in providing high quality maintainable and trustworthy software. The concept of Changeability is a major factor when we design and develop software and its constituents. Developing programs and its constituent components with good changeability continually improves and simplifies test operations and maintenance during and after implementation. It encourages and supports improvement in software quality at design stage in the development of software. The research here highlights the importance of changeability broadly and also as an important aspect of software quality.
Syed Zaffar Iqbal, Prof. Urwa Javed and Dr. Shakeel Ahmed Roshan. Department of Computer Science, Alhamd Islamic University, Pakistan. “Software Quality Assurance Model for Software Excellence with Its Requirements” United International Journal for Research & Technology (UIJRT) 1.1 (2019): 39-43.
The modern business environment requires organizations to be flexible and open to change if they are to gain and retain their competitive age. Competitive business environment needs to modernize existing legacy system in to self-adaptive ones. Reengineering presents an approach to transfer a legacy system towards an evolvable system. Software reengineering is a leading system evolution technique which helps in effective cost control, quality improvements and time and risk reduction. However successful improvement of legacy system through reengineering requires portfolio analysis of legacy application around various quality and functional parameters some of which includes reliability and modularity of the functions, level of usability and maintainability as well as policy and standards of software architecture and availability of required documents. Portfolio analysis around these parameters will help to examine the legacy application on quality and functional gaps within the application [1].
Quality aware approach for engineering self-adaptive software systemscsandit
Self-adaptivity allows software systems to autonomously adjust their behavior during run-time to reduce
the cost complexities caused by manual maintenance. In this paper, an approach for building an external
adaptation engine for self-adaptive software systems is proposed. In order to improve the quality of selfadaptive
software systems, this research addresses two challenges in self-adaptive software systems. The
first challenge is managing the complexity of the adaptation space efficiently and the second is handling the
run-time uncertainty that hinders the adaptation process. This research utilizes Case-based Reasoning as
an adaptation engine along with utility functions for realizing the managed system’s requirements and
handling uncertainty.
Agile software processes, such as extreme programming (XP), Scrum, Lean, etc., rely on best
practices that are considered to improve software development quality. It can be said that best
practices aim to induce software quality assurance (SQA) into the project at hand. Some
researchers of agile methods claim that because of the very nature of such methods,
quality in agile software projects should be a natural outcome of the applied method.
As a consequence, agile quality is expected to be more or less embedded in the agile software
processes. Many reports support and evangelize the advantages of agile methods with respect to
quality assurance, Is it so ?
An ambitious goal of this paper is to present work done to understand how quality is or should
be handled. This paper as all survey papers attempt to summarize and organizes research
results in the field of software engineering, precisely for the topic of agile methods related to
software quality.
PROPERTIES OF A FEATURE IN CODE-ASSETS: AN EXPLORATORY STUDYijseajournal
Software product line engineering is a paradigm for developing a family of software products from a
repository of reusable assets rather than developing each individual product from scratch. In featureoriented software product line engineering, the common and the variable characteristics of the products
are expressed in terms of features. Using software product line engineering approach, software products
are produced en masse by means of two engineering phases: (i) Domain Engineering and, (ii) Application
Engineering. At the domain engineering phase, reusable assets are developed with variation points where
variant features may be bound for each of the diverse products. At the application engineering phase,
individual and customized products are developed from the reusable assets. Ideally, the reusable assets
should be adaptable with less effort to support additional variations (features) that were not planned
beforehand in order to increase the usage context of SPL as a result of expanding markets or when a new
usage context of software product line emerges. This paper presents an exploration research to investigate
the properties of features, in the code-asset implemented using Object-Oriented Programming Style. In the
exploration, we observed that program elements of disparate features formed unions as well as
intersections that may affect modifiability of the code-assets. The implication of this research to practice is
that an unstable product line and with the tendency of emerging variations should aim for techniques that
limit the number of intersections between program elements of different features. Similarly, the implication
of the observation to research is that there should be subsequent investigations using multiple case studies
in different software domains and programming styles to improve the understanding of the findings.
AN APPROACH FOR TEST CASE PRIORITIZATION BASED UPON VARYING REQUIREMENTS IJCSEA Journal
Software testing is a process continuously performed by the development team during the life cycle of the software with the motive to detect the faults as early as possible. Regressing testing is the most suitable technique for this in which we test number of test cases. As the number of test cases can be very large it is always preferable to prioritize test cases based upon certain criterions.In this paper prioritization strategy is proposed which prioritize test cases based on requirements analysis. By regressing testing if the requirements will vary in future, the software will be modified in such a manner that it will not affect the remaining parts of the software. The proposed system improves the testing process and its efficiency to achieve goals regarding quality, cost, and effort as well user satisfaction and the result of the proposed method evaluated with the help of performance evaluation metric.
This presentation was given at the 2011 Northern Sydney Region Digital Education Revolution Curriculum conference. The presentation is a brief overview of games based learning and how it can be used to enhance and transform learning.
Презентация Сергея Белова, Координатора университетских программ IBM в странах Центральной и Восточной Европы, Ближнего Востока, Африки (CEE & MEA). Презентация была представлена на Дне Студента, прошедшем 7 декабря 2012 года в Научно-техническом центре (НТЦ) ИБМ и организованным совместно командой Академические Инициативы IBM Россия и НТЦ.
Software quality model based on development team characteristicsIJECEIAES
Many factors have a significant impact on producing high-quality software products. Development team members are among the most important factors. Paying attention to the quality from this perspective will be a good innovation in the software development industry. Given that team members play a very important role in software products, this study tries to focus specifically on team characteristics in software product quality and provide a qualitative model based on this. The required data were collected through observations and interviews with project managers and development team members in several companies under study. Then, data were analyzed through hierarchical analysis. According to the results, the use of this model led to the improvement of the software development process so that the team members were satisfied with it. Also, time management was improved, and the customer expressed his satisfaction with the use of this model. Finally, data analysis showed that this model may lead to faster product delivery.
Software Quality Engineering is a broad area that is concerned with various approaches to improve software quality. A quality model would prove successful when it suffices the requirements of the developers and the consumers. This research focuses on establishing semantics between the existing techniques related to the software quality engineering and thereby designing a framework for rating software quality.
Although there has been an extensive study over delivering, increasing and maintaining software quality, there has not been enough aide- mémoire on ‘Rating a Software‘s Quality’. This study would project the literature review thus far and also sculpt the scope and need for the evolution of a rating system of software quality for the future.
ITERATIVE AND INCREMENTAL DEVELOPMENT ANALYSIS STUDY OF VOCATIONAL CAREER INF...ijseajournal
Software development process presents various types of models with their corresponding phases required to be accordingly followed in delivery of quality products and projects. Despite the various expertise and skills of systems analysts, designers, and programmers, systems failure is inevitable when a suitable development process model is not followed. This paper focuses on the Iterative and Incremental Development (IID)model and justified its role in the analysis and design software systems. The paper adopted the qualitative research approach that justified and harnessed the relevance of IID in the context of systems analysis and design using the Vocational
Career Information System (VCIS) as a case study. The paper viewed the IID as a change-driven software development process model. The results showed some system specification, functional specification of system and design specifications that can be used in implementing the VCIS using the IID model. Thus, the paper concluded that in systems analysis and design, it is imperative to consider a suitable development process that reflects the engineering mind-set, with heavy emphasis on good analysis and design for quality assurance.
A study of various viewpoints and aspects software quality perspectiveeSAT Journals
Abstract The software quality is very important research of software engineering grown from the last two decades. The software engineering paradigm adopted by many organizations to develop the high quality software at affordable cost. The high quality software is considered as one of the key factor in the rapid growth of Global Software Development. The software metrics computes and evaluates the quality characteristics and used to take quantitative and qualitative decisions for risk assessment and reduction. The multiple stakeholders can view the software quality in multiple angles with various aspects. In this paper we present multiple views of the software quality with respect to various quality aspects. Key Words : Stakeholders, Functional aspect, Structural aspect, Process aspect, Metrics etc.
From previous year researches, it is concluded that testing is playing a vital role in the development of the software product. As, software testing is a single approach to assure the quality of the software so most of the development efforts are put on the software testing. But software testing is an expensive process and consumes a lot of time. So, testing should be start as early as possible in the development to control the money and time problems. Even, testing should be performed at every step in the software development life cycle (SDLC) which is a structured approach used in the development of the software product. Software testing is a tradeoff between budget, time and quality. Now a day, testing becomes a very important activity in terms of exposure, security, performance and usability. Hence, software testing faces a collection of challenges.
An Approach to Calculate Reusability in Source Code Using MetricsIJERA Editor
Reusability is an only one best direction to increase developing productivity and maintainability of application. One must first search for good tested software component and reusable. Developed Application software by one programmer can be shown useful for others also component. This is proving that code specifics to application requirements can be also reused in develop projects related with same requirements. The main aim of this paper proposed a way for reusable module. An process that takes source code as a input that will helped to take the decision approximately which particular software, reusable artefacts should be reused or not.
Changeability has a direct relation to software maintainability and has a major role in providing high quality maintainable and trustworthy software. The concept of Changeability is a major factor when we design and develop software and its constituents. Developing programs and its constituent components with good changeability continually improves and simplifies test operations and maintenance during and after implementation. It encourages and supports improvement in software quality at design stage in the development of software. The research here highlights the importance of changeability broadly and also as an important aspect of software quality.
In this paper a correlation between the major attributes of object oriented design and changeability has been ascertained. A changeability evaluation model using multiple linear regression has been proposed for object oriented design. The validation of the proposed changeability evaluation model is made known by means of experimental tests and the results show that the model is highly significant.
A New Model for Study of Quality Attributes to Components Based Development A...Kiogyf
A New Model for Study of Quality Attributes to Components Based Development Approach
by bstract :
Software development costs, time - to release and quality product are important factors affecting the construction of software. Different types of tools and techniques are suggested by researchers to improve in delivering quality software systems with lower cost and reduce time to delivery. One such practice is development of software using ased Software Development (CBSD) techniques. CBSD recommended Component Bbuilding software systems using existing reusable components, instead of writing from scratch. The main objective of CBSD is to writes once and reuse any number of time with no or modification . Some of the advantages that a company may available by adapting CBSD for the Software development are shorter development time which results in meet tight dead line, increase productivity and Quality Product. CBSD also, s paper is to develop the new model of software support reusability. The aim of thiproduct and describe the characteristics of some selected of attributes of CBSD models that are widely practiced in software industries. We proposed a complete model for or reuse. This Model will cover both Component Based Software Development fcomponent based software development as well as Component development phases for
A - Model. This Model is represent one good solution for Component Based Development with reduce cost and time to deliverable and save the quality of product . Keywords: Component Based Approach, Quality Model, Quality Attributes, , A - Model for CBD .
1. Introduction
Reusability is an only one best direction to increase developing productivity and maintainability of application. One must first search for good tested software component and reusable. Developed Application software by one programmer can be shown useful for others also component. This is proving that code specifics to application requirements can be also reused in develop projects related with same requirements. The main aim of this paper proposed a way for reusable module. An process that takes source code as a input that will helped to take the decision approximately which particular software, reusable artefacts should be reused or not.
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as “predictable inference”.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
Connector Corner: Automate dynamic content and events by pushing a buttonDianaGray10
Here is something new! In our next Connector Corner webinar, we will demonstrate how you can use a single workflow to:
Create a campaign using Mailchimp with merge tags/fields
Send an interactive Slack channel message (using buttons)
Have the message received by managers and peers along with a test email for review
But there’s more:
In a second workflow supporting the same use case, you’ll see:
Your campaign sent to target colleagues for approval
If the “Approve” button is clicked, a Jira/Zendesk ticket is created for the marketing design team
But—if the “Reject” button is pushed, colleagues will be alerted via Slack message
Join us to learn more about this new, human-in-the-loop capability, brought to you by Integration Service connectors.
And...
Speakers:
Akshay Agnihotri, Product Manager
Charlie Greenberg, Host
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Identification & analysis of parameters for program quality improvement a reengineering perspective
1. Computer Engineering and Intelligent Systems www.iiste.org
ISSN 2222-1719 (Paper) ISSN 2222-2863 (Online)
Vol.4, No.5, 2013
23
Identification & Analysis of Parameters for Program Quality
Improvement: A Reengineering Perspective
Harmeet Kaur1
*, Shahanawaj Ahamad2
, Gurvinder N. Verma3
1. Ph.D. (Computer Applications) Research Scholar, Punjab Technical University, Jalandhar, Punjab, India.
2. Astt. Professor, Dept. of C. S. & Soft. Engg., College of Comp. Sc. & Engg., University of Ha’il, K.S.A.
3. Professor & HoD-Applied Sciences, Shri Sukhmani Institute of Engg. & Tech. Derabassi, Punjab, India.
* e-mail of corresponding author: hrmt01@yahoo.com
Abstract
The nature of software development is very dynamic and more complex by the perspective of reengineering or
further program maintenances so the developed programs must be flexible, reusable and more scalable and
which will be possible by the optimum quality parameters satisfaction. Having these issues in concern the
software development houses trying to find out some established, usable methods to improve the quality of
programs, the work presented in this paper is to identify, describe and analyze various parameters for quality
which can affect the productivity and reusability of the software program and its future maintenance in form of
reengineering. The work presented also analyzes the literature, previous research with different aspects and
issues, and discussed its affects on present quality of the program because it is necessary to consider the potential
impact on other requirements when designing a program to meet quality parameters requirements. Quality
parameters are the overall factors that affect run-time behavior, system design, and user experience because
many of these parameters are major concern to the program design and architecture, and also applied to establish
program functionality, reusability, performance, reliability, and security which indicates the success of the design
and the overall quality of the program and its application, integration.
Keywords: AOSD, DoD, FURPS,LOC,Parameters.
1. Introduction
The rise in demand for efficient systems has increased greatly in last few years, but there has been also criticism
about the quality of the software systems being currently used. As the expectations for quality have raised, it is
insufficient to deliver the software product which is technically sound but does not meet the end users
expectations i.e. easy to use and it should fit best in the work practices and activities of the end- user. Assessing
and controlling software quality is very difficult and one cannot hold it or touch it, yet its behavior has an impact
on our day to day’s life. Today, everyone is stakeholders in the drive to improve the quality of the software that
they work with, yet very few people are able to explicate precisely how they define measures to discriminate
between “poor” quality and “high” quality software. The key mindset is to remember that a software product is
developed to provide a range of services for a user group, in order to help them achieve certain needs or goals.
Thus, it should be made clear that for any software project one should precisely know what those needs or goals
are. These are the key drivers behind the identification of not just the functional requirements, but also the
quality requirements.
All are aware of the problems encountered during the development of software systems, sometimes the cost of
developing a software overruns the estimated cost or the software systems delivery is delayed or the delivered
system do not work adequately. Software as such is of greatest concern for the stake holders because of its cost
and the critical functions it performs (Kosy,1974). For this reason considerable emphasis is given to the software
quality by the research community. Producing high quality software is prerequisite for all the systems which
require high reliability and error free operations. For example air force, DoD, Industries etc.
A major problem while dealing with the software is that there are no quantitative measures of the quality of a
software product. One problem while dealing with quality aspect of the software is the absence of widely
accepted definition of software quality which leads to confusion while specifying the quality aims of software
system. Another problem which hinders developing high quality software is the time of delivery of software
systems, operation and maintenance phase of the software; one can determine how far the software system meets
the expectations of the user and at that stage if modifications or enhancements required in the software system it
becomes very expensive.
Since the software testing indicates only expected error frequency, while verification corresponds to the
functional requirements of the software system, so, a new process is needed to measure quality of the software
2. Computer Engineering and Intelligent Systems www.iiste.org
ISSN 2222-1719 (Paper) ISSN 2222-2863 (Online)
Vol.4, No.5, 2013
24
system. This process should indicate which software characteristics relates to which quality attribute such as
reliability, functionality, flexibility, usability, efficiency, reusability, integrity etc.
The lifecycle for program development is complex and is of many stages, output of the previous stage acts as an
input to the next stage and every intermediate deliverable has certain quality parameters that affect the quality of
end program. If each stage of development cycle meets the requirements of the next stage the end program thus
developed will meet the specified requirements of the end-user so for better reengineering and developer
satisfaction the requirements for these quality parameters are also to be considered along with functionality of the
programs in the planning, design, implementation and testing process.
2. Literature Review
In the last five decades lots of quality models for software engineering are proposed as in late 70’s, two main
models were proposed, in 1977, McCall et al. proposed a model called McCall’s Software Quality Model, and
it is also called Classical Quality Model this McCall’s Quality Model was adapted and revised as the MQ Model
by Watts in 1987. In year in 1978, Boehm et al. proposed a model using McCall’s quality model, called
Boehm’s Software Quality Model, while in late 80’s, three quality Models (in 1987, Evans & Marciniak’s
Quality Model and FURPS Quality Model and next year 1988, Deutsch & Will’s Quality Model) were proposed.
Roger Pressman (2001), groups at HP have agreed on an acronym, FURPS, abbreviated from their perspective:
functionality, usability, reliability, performance and supportability, but in recent years, FURPS has became
FLURPS+ by some teams at HP, adding localization and another catchall category (the +). McCall, Richards and
Walters suggested 11 different elements, in 2003, Karl Wiegers suggested 12, RADC(1991) had 13 .
Experimentally Wiegers has added 2 more to his list, and currently uses 14 as two additional elements are install
ability and safety.
Makoid et. al.,(1985), suggested that different definitions of usability may include different parameters such as
user’s satisfaction or type of errors. Butler (1985), suggested that a system is considered usable if the users can
complete a given task within a predetermined amount of time. Reed (1986), defines usability as the ease with
which a system can be learned and used.
In same year, Shackel (1986), presented an operational definition of usability that allows a system to be
evaluated throughout the development life cycle. He presented one of the most widely used definitions of
usability. He suggests that a system is usable to the extent that it is effective, learnable, flexible and subjectively
pleasing.
In 1991, ISO 9126 contains 21 attributes, arranged in six areas: functionality, reliability, usability, efficiency,
maintainability, and portability, from which usability attracted the attention of most researchers.
In year 1992, IEEE defined usability as it is an easiness for user to learn, to operate, prepares inputs, and
interprets outputs of a system or components, Nielsen (1993), defines usability as it is having least aspects of
learning, competence, able to memorize, error recovery.
Because till 90’s lot of quality models were proposed which lead more confusion among software practitioners
which model to follow actually? Therefore, Int. Org. of Standardization/Int. Electro-technical Commission
(ISO/IEC) started promote new development to standardize new quality models considering the entire repository
of various quality models proposed so far.
In 1991, ISO/IEC proposed ISO/IEC Quality Model latterly renamed as ISO/IEC 9126 Quality Model since ISO
9126 was part of the ISO 9000 standard. Later on in 1995, R.G. Dromey (1995) proposed a quality model adding
one characteristic into ISO/IEC 9126 Quality model. The model is called Dromey’s Software Quality Model. All
the above defined software quality models were derived based on either legacy software or object-oriented
software.
Kumar et.al.,(2009), and I. Castillo et al., (2010). have proposed software quality model for AOSD and called
it as Aspect-Oriented Software Quality Model (AOSQUAMO). It is a common system, based on UML
conceptual model the Requirements, Aspects and Software Quality model. The model integrated some new
characteristics/factors and sub-characteristics/sub-factors of AOSD in AOSQUAMO Model as a base ISO/IEC
9126 Quality Model and proposed a new quality model for Aspect-Oriented Programming Paradigm, and is
called Aspect-Oriented Software Quality (AOSQ) Model.
3. System & Model for Software Quality Measurement
Before considering the problems of identifying and analysing software quality parameters, we have to discuss
what quality is. For the development of particular software it is necessary first to understand, define, and then
prioritize the quality requirements of the end-users. During the software development, a group of users
represents the customer who commissions the software product. Keeping in view the user requirements the aim
3. Computer Engineering and Intelligent Systems www.iiste.org
ISSN 2222-1719 (Paper) ISSN 2222-2863 (Online)
Vol.4, No.5, 2013
25
is to concentrate on timescale issues of quality parameters such as maintainability, reliability, and usability.
Consistent with ISO 9126-1 (1998), quality is characterized as a set of characteristics and qualities of product or
service that bear on its capacity to fulfill stated or inferred necessities. In the view of this definition, a product
which does not meet functional requirements, or which is delivered late or which has a greater-than-agreed cost,
has low quality. The fact that individuals disagree about “What Quality is” is an argument in itself for greater
clarity in the definition of quality parameters and measures for a given software project (and user base), and in
the longer term for the appearance of some quality standards.
Figure 1: Software quality system
The classic quality models propose that quality can be decomposed into a hierarchy of quality parameters at
different levels of abstraction. In Boehm’s “Quality Characteristics Tree” (Shackle,1986), the key quality
characteristics are maintainability and utility. Maintainability can further be divided into such characteristics as
modifiability, understandability, and testability, whereas utility can be further divided into reliability, efficiency,
and human engineering. Further decomposition yields even more primitive characteristics, e.g., structuredness,
completeness, conciseness, integrity, accuracy-which may be considered more amenable to measurement and
analysis. Overall quality of the end product can be computed as a weighted function of the primitive
characteristics, where the weightings depend on user requirements. While quality models provide much insight
with regard to the parameters of quality and how these may be related, they do not adequately define them. Too
much reliance is placed on common understandings of everyday language terms. In practice, much variation in
interpretation occurs between different users of such models.
Different Software quality perspectives which can be measured are user view, as the quality of the final product;
developer view as the quality of the intermediate products, end-user manager view, as the marketing
requirements. The overall quality of the software system can be expressed by combining different views in our
context, the user and developer views will be used. The refinement between two levels of quality
characteristics: factors and criteria were done by Mc Call in (1977). The former can't be measured
straightforwardly, while the later could be subjectively measured. On this groundwork, the McCall's model was
further streamlined by ISO 9126-1, into the ISO 9126-1 quality model, now generally acknowledged in the
state-of-the specialty of software product quality specification and proposed set of six autonomous high level
quality attributes, which are characterized as a set of parameters of a software product. The quality of software
product is depicted and assessed by the aforementioned quality characteristics which are utilized as the focuses
for validation (external quality) and verification (internal quality) at the different phases of development. They
are refined (Fig.2) into sub-characteristics, until the parameters or measurable properties are obtained.
4. Computer Engineering and Intelligent Systems www.iiste.org
ISSN 2222-1719 (Paper) ISSN 2222-2863 (Online)
Vol.4, No.5, 2013
26
Figure 2: Relations among the quality elements
To control and monitor software quality during the development process, the external quality requirements are
translated into intermediate products, obtained from development activities. Depending on the stakeholder
personal experience, the conversion and selection of the parameters is a non trivial activity unless an
organization provides an infrastructure to collect and to analyze previous experience on completed projects. The
various quality parameters used for measuring are discussed in Table 1. The model should be adapted or
customized to the specific application or product domain.
4. Quality Parameters
Software properties, like time efficiency and memory consumption, are often called as quality parameters and
cover important aspects of software quality. Quality parameters can be measured by software developers to
ensure that its software adheres to certain standards or customer requirements. Quality as per the IEEE Glossary
of Software Engineering Terminology (1990) is the degree to which software meets user’s needs. Schneidewind
(1995), states that a quality factor is an attribute of software that gives to its quality. Consistent with the
aforementioned two definitions it might be stated that quality factors are parameters that clients need to find in
the software and subsequently software quality components might be stated to be client or client oriented. It is
contended that distinctive stakeholders have distinctive discernments about quality parameters. According to
Gillies(1992), there are diverse perspectives of quality, which might conflict with one another.
Type of View Description
The Transcendent view The classical definition of quality meaning "elegance".
The Product-based view/ The
Economist's view
Higher quality equals higher cost.
The User-based view It is meeting the users’ requirements and fitness for purpose.
The Manufacturing view Measures quality in terms of conformance to requirements.
The Value-based view Provide what the customer requires at a price they can afford.
Table 1: Different Views of Quality
Quality plays a vital role to achieving a competitive advantage, based on the notion of continuous improvement
throughout the entire organization. Quality is intertwined with process management, human resources
management, organizational characteristics, and strategic and technological approaches.
4.1 Identify quality parameters
Quality parameters can be assumptions, constraints or goals of organization. By analyzing the initial set of
requirements, the potential quality parameters are identified. For example, if the owner of an ATM card holder
presents his card for transaction of money automatically bank transfers are performed then security is an issue
that the system needs to address. Another fundamental quality attribute is response time, that is an issue, when,
an ATM card holder punches his/her ATM card at the ATM, the machine have to react in time so that the user of
ATM can act according to the instructions and deliver required services. Other concerns are identified in a
similar fashion: Multiuser System, Compatibility, Legal Issues, Correctness and availability. Quality parameters
define global properties of a system usually these are only dealt with in the later stages of a software
development process, such as design and implementation.
5. Computer Engineering and Intelligent Systems www.iiste.org
ISSN 2222-1719 (Paper) ISSN 2222-2863 (Online)
Vol.4, No.5, 2013
27
Sr.
No.
Attribute Description Variables effect
Parameters
Category
1
Conceptual
Integrity
Conceptual integrity
characterizes the consistency
and rationality of the overall
design
Design of Modules,
components, coding
style, variable name. Design Qualities
2 Maintainability
Maintainability is the capability
of the system to experience
changes with a degree of ease.
The aforementioned
progressions could sway parts,
utilities, characteristics, and
interfaces.
Services, Features and
interfaces. when adding
or changing the
functionality, fixing
errors, and meeting new
business requirements
Design Qualities
3 Reusability
Reusability outlines the ability
for segments and subsystems to
be suitable for utilization in
different provisions and in
different situations. Reusability
minimizes the duplication of
segments and additionally the
execution time.
Components, time
Design Qualities
4 Availability
Availability outlines the extent
of time that the system is useful
and working.
Percentage of the total
system downtime.
System errors,
infrastructure problems,
malicious attacks,
system load.
Run-time Qualities
5 Interoperability
Interoperability is the capability
of a system or distinctive
systems to work successfully
by corresponding and trading
informative content with other
outside systems composed and
run by external parties. An
interoperable system makes it
less demanding to trade and
reuse informative content
internally and externally.
information, external
system, communication
Run-time Qualities
6 Manageability
Manageability demarcates how
simple it is for system
managers to supervise the
provision, generally through
sufficient and useful
instrumentation uncovered for
utilization in screening systems.
Debugging and
performance tuning
Run-time Qualities
7 Performance
Performance is a sign of the
responsiveness of a system to
execute any activity within a
given time interim. It might be
measured regarding idleness or
throughput.
No. of events, time
Run-time Qualities
6. Computer Engineering and Intelligent Systems www.iiste.org
ISSN 2222-1719 (Paper) ISSN 2222-2863 (Online)
Vol.4, No.5, 2013
28
Sr.
No.
Attribute Description Variables effect
Parameters
Category
8 Reliability
Reliability is the capacity of a
system to remain operational as
time goes on. Reliability is
measured as the likelihood that
a system won't fail to perform
its planned capacities over a
specified time interval.
Time, function
Run-time Qualities
9 Scalability
Scalability is capability of a
system to either handle increase
in burden without effect on the
performance of the system, or
the capacity to be promptly
developed.
System load
Run-time Qualities
10 Security
Security is the capacity of a
system to counteract vindictive
or incidental movements
outside of the planned use, and
to avoid exposure or misfortune
of informative data.
Malicious attacks,
accidental actions, loss
of information
Run-time Qualities
11 Supportability
Supportability is the capacity of
the system to furnish qualified
information accommodating for
distinguishing and determining
issues when it cannot work
accurately.
Information
System Qualities
12 Testability
Testability is a measure of how
straightforward it is to make
test criteria for the system and
its parts, and to execute the
aforementioned tests with a
specific end goal to verify if the
criteria are met.
Faults ,components
System Qualities
13 Usability
Usability outlines how well the
provision meets the necessities
of the client and customer
Changing user
requirements User Qualities
Table 2: The different quality parameters and their classification
4.2 Analysis of Quality Parameters
Measuring quality in the beginning of software development is the key to develop high quality software. There
must be a way to assess software quality as early as possible in the development cycle. The factors that affect
software quality can be categorized in two broad groups:
1. Factors that can be directly measured (e.g. defects recovered during testing) and
2. Factors that can be indirectly measured (e.g. usability or maintainability)
McCall proposed a suitable order of factors that influence software quality as indicated in figure 3.
7. Computer Engineering and Intelligent Systems www.iiste.org
ISSN 2222-1719 (Paper) ISSN 2222-2863 (Online)
Vol.4, No.5, 2013
29
Figure 3: McCall's Quality factors
It is evident from the figure that during various phases of software development various quality parameters and
sub parameters affect the quality of the software. During the product operation phase correctness, reliability,
usability, integrity and efficiency play important role in the quality of the software product where as in product
transition phase quality is affected by interoperability, portability and usability. In product revision phase
maintainability, flexibility and testability are important factors of the software product. In this phase the product
is tested for errors and it is closely observed whether it is maintainable and flexible. As far as the quality of the
software is concerned it is affected by its parameters and sub-parameters such as functionality, usability,
reliability, portability, supportability. Usability of the software is related to number of error messages and the
length of the user manual that is lesser the numbers of errors greater will be its usability whereas portability is
size of the program measured in LOC (Line of code) and number of parameters. Reliability is affected by LOC,
cyclomatic complexity and number of error messages portability, and usability are interrelated more is the
portability more will be its usability which will enhance the reliability and increases the functionality of the
software system and leads to the development of the quality software.
For any software system correctness is one of the most important attribute which is required for proper working
of the software. Another factor of concern is maintainability; which can be corrective and adaptive. Corrective
maintainability deals with fixation of errors whereas, adaptive maintainability deals with changes in the
requirement of the user and perfective changes deals with requirement of the software. Maintainability is directly
proportional to the amount of re-work.
5. Conclusion
During the study it is observed that quality parameters and sub- parameters play a very important role in the
development of the quality software system. Quality of software is affected by number of parameters for
example conceptual integrity is influenced by variable name, coding style whereas availability is affected by
malicious attacks, system load etc. The various existing quality parameters are identified, discussed and analyzed
and it is seen that reliability, portability and usability are closely related to each other. As far as the
maintainability of the software system is concerned it is directly proportional to the amount of rework.
References
[1] B. W. Boehm, et.al.,(1978), “Quantitative Evaluation of Software Quality,” IEEE Computer Society Press,
Page No.: 592 – 605.
[2] Butler, K. (1985): Connecting Theory and Practice: A Case Study of Achieving Usability Goals, In
Proceedings of CHI 85, ACM, New York, pp. 85-88.
[3] Castillo,et.al.,(2010), “REquirements, Aspects and Software Quality: the REASQ model,” Journal of Object
Technology, Volume 9, Number 4, Page No.: 69 – 91.
[4] Fenton, et.al.,(1995),1995,” Software Quality Assurance and Measurement, A Worldwide Perspective”
International Thomson Computer press, London.
[5] Francisca Losavio et.al., 2003,“Quality Characteristics for Software Architecture” Online at www.jot.fm.
Published by ETH Zurich, Chair of Software Engineering Vol. 2, No. 2.
8. Computer Engineering and Intelligent Systems www.iiste.org
ISSN 2222-1719 (Paper) ISSN 2222-2863 (Online)
Vol.4, No.5, 2013
30
[6] Gillies Alan C.,(1992), “Software Quality, Theory and management” London, Chapman & Hall.
[7] IEEE, (1990) “IEEE Glossary of Software Engineering Terminology”, 610.12.
[8] ISO/IEC 9126-1, (2001), “Software Engineering - Product Quality- Part 1: Quality Model”, International
Organization for Standardization, Switzerland.
[9] ISO/IEC 9126-2, (2002), “Software Engineering - Product Quality- Part 2: External Metrics”,
[10] International Organization for Standardization, Switzerland.
[11] ISO/IEC 9126-3, (2003), “Software Engineering - Product Quality- Part 3: Internal Metrics”,
[12] International Organization for Standardization, Switzerland.
[13] J. A. McCall, et.al.,(1977), “Factors In Software Quality - Concept and Definitions of Software Quality,”
Rome Air Development Center, Air Force Systems Command, Griffiss Air Force Base, New York, Vol. 1, No. 3.
[14] J. Tian,(2005), “Software Quality Engineering-Testing, Quality Assurance and Quantifiable.
[15] Improvement,” IEEE Computer Society, 2005.
[16] Karl Wiegers,(2003), Software Requirements (2nd Edition), Microsoft Press,ISBN 0735618798.
[17] Makoid, L., Forte, C., and Perry, J., (1985), “ An Empirical Model for Usability Evaluation Based on the
Dynamics of the Human-Computer Interface”, Technical Report TR-85-15, North Carolina State University.
[18] Msdn library http://msdn.microsoft.com/en-us/library/ee658094.aspx
[19] Nielsen, J., (1993), Usability Engineering, Academic Press.
[20] R. G. Dromey,(1995), “A Model for Software Product Quality,” IEEE Transactions on Software
[21] Engineering, Volume 21 Number 2, Page No.: 146 - 162.
[22] Roger Pressman,(2001), Software Engineering: A Practitioner’s Approach (5th Edition), McGraw Hill,ISBN
0073655783
[24] The Rome Air Development Center is now the Rome Laboratory, as of 1991.
[25] Reed, P., (1986),” Usability Testing in the Real World”, In Proceedings of CHI 86, ACM, Boston, 212.
[26] Shackel, B. (1986), “Ergonomics in design for usability”, In Harrison, M. D. and Monk, A. F., editors,
People and computers, Proc. Second conf. of the BCS HCI specialist group, pp. 45–64, Cambridge, Cambridge
University Press.
[27] Schneidewind Norman. F.,(1995), “ Controlling predicting the quality of space shuttle software using
metrics”, Software Quality Journal 4, 49-68.
9. Computer Engineering and Intelligent Systems www.iiste.org
ISSN 2222-1719 (Paper) ISSN 2222-2863 (Online)
Vol.4, No.5, 2013
31
Author’s biography
Harmeet Kaur has seven years of experience in academic and research, she is currently pursuing Ph.D. in
Computer Applications from Punjab Technical University, Jalandhar, India; after
completing two years Master of Technology (I.T.) degree in year 2011; three years
Master of Computer Applications (M.C.A.) degree in year 2008; she had the recipient of
UNDP scholarship to conduct high quality research, is member of IEEE and has
qualified National Eligibility Test (NET) conducted for lectureship. Presently she is
working as Assistant Professor of Software Engineering in Green Hills Engineering
College, Solan (HP). She has published three research articles; her area of research
includes Program Analysis, Software Reengineering and Quality Assurance.
Dr. Shahanawaj Ahamad is an active academician and researcher in the field of Computer Science, Software
Reverse Engineering with twelve years of research and academic experience including
five years in abroad, working with College of Computer Science & Engineering of
University of Ha’il, K.S.A., before joining UoH he has worked with King Saud
University, Al-Khraj University of K.S.A. and Shobhit University, Meerut (Delhi-NCR)
and Uttar Pradesh Technical University of INDIA as HoD-I.T., Assistant Professor. He is
professional member of British Computer Society, U.K., senior member of Computer
Society of India, including membership of various national and international academic
and research organizations, member of research journal editorial board and reviewer. He
is currently working on Service-Oriented Migration, Multi Agent System Reverse
Engineering, published more than twenty five research articles in his credit in national and international journals
and conference proceedings. He holds M.Tech. followed by Ph.D. in Computer Science with specialization in
Software Engineering from Jamia Millia Islamia Central University, New Delhi, India. He has supervised
bachelor senior projects, master and Ph.D. dissertations.
Prof. (Dr.) Govinder N. Verma has more than twenty years of wide experience in research, academics and
administration, held various positions as Director, Professor, lecturer in universities and
engineering colleges after completion of Ph.D. in Applied Mathematics from Himachal
Pradesh University, Shimla, with excellent grade; he has completed M.Phil, M.Sc., B.Sc.
in Applied Mathematics all in first division from Himachal Pradesh University, Shimla;
he has published five research papers in reputed journals and supervising Ph.D. thesis;
currently he is designated as Professor and Head of Department of Applied Science of
Shri Sukhmani Institute of Engineering and Technology, Derabassi, affiliated to Punjab,
Technical University, Jalandhar, India.