Analysis of Software Quality, Change Management, and Testing Processes
VerifiedAdded on 2025/04/29
|9
|1816
|484
AI Summary
Desklib provides past papers and solved assignments for students. This report covers software quality, change management, and testing.

Software Quality, Change Management and Testing
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser

Contents
Software Quality, Change Management and Testing.......................................................................1
Introduction......................................................................................................................................3
Software Quality..........................................................................................................................4
Change Management...................................................................................................................5
Software Testing..........................................................................................................................6
Conclusion.......................................................................................................................................9
Reference.......................................................................................................................................10
Software Quality, Change Management and Testing.......................................................................1
Introduction......................................................................................................................................3
Software Quality..........................................................................................................................4
Change Management...................................................................................................................5
Software Testing..........................................................................................................................6
Conclusion.......................................................................................................................................9
Reference.......................................................................................................................................10

Introduction
Software is used by almost all the individuals in their daily routine to ease various processes.
Since these programs are highly used, the requirement of the software to be of quality is very
much required by developers and owners to enhance their user’s interaction and to keep their
system in the competition.
Software quality is a very important aspect of the program to define its usability in real-life
application. This process ensures that the software developed is as per the requirements required
by the system. The change management process in software management ensures that no errors
or issues occur during the operational period of the software. It also ensures that required newer
updates can be easily integrated into the system. Testing is performed in software to determine
that the software is of quality and contains all the functions and other requirements to enhance
user interaction in the long run.
Software is used by almost all the individuals in their daily routine to ease various processes.
Since these programs are highly used, the requirement of the software to be of quality is very
much required by developers and owners to enhance their user’s interaction and to keep their
system in the competition.
Software quality is a very important aspect of the program to define its usability in real-life
application. This process ensures that the software developed is as per the requirements required
by the system. The change management process in software management ensures that no errors
or issues occur during the operational period of the software. It also ensures that required newer
updates can be easily integrated into the system. Testing is performed in software to determine
that the software is of quality and contains all the functions and other requirements to enhance
user interaction in the long run.
⊘ This is a preview!⊘
Do you want full access?
Subscribe today to unlock all pages.

Trusted by 1+ million students worldwide

Software Quality
Software quality can be defined as the study in which the software is fully examined to
determine its desirable requirements and attributes. The software is stated as good-quality
software when the software is error-free, bug-free, contains the required functions, meets user-
expectation, and is maintainable.
The quality of software is determined by using the three aspects i.e. structural, functional, and
process quality.
Structural quality- This aspect states that the software must be coded accordingly in a well-
structured manner to be described as good quality software. This quality aspect describes that-
The coding of the software must be designed in such a way that it can be easily tested.
The coding of the software must be secured so as to eliminate security threats and issues. The
coding must be secured from common vulnerability attacks such as SQL injection and
overrunning of the buffer.
The software should be easily maintainable. The coding should be performed in such a way
that adding new codes or the existing code can be easily changed or altered without any
introduction of bugs in its process.
The coding of the software should be efficient when developing in resource-constraint
development conditions.
The code of the software should be designed in an understandable way so that if new
developers try to implement any changes, the process will not be difficult and time-
consuming (McIntosh et al., 2016).
Functional quality- This aspect of software quality states that the software should perform their
intended task correctly and efficiently as per the user’s requirements. Functional quality states
the following characteristics to be present in software to be of good quality-
The software must not contain any defects or errors in its designing. This states that the bugs
should not be present in the software as it can lower the reliability of the software. Security
can be compromised if the development of the software is not error-free.
Software quality can be defined as the study in which the software is fully examined to
determine its desirable requirements and attributes. The software is stated as good-quality
software when the software is error-free, bug-free, contains the required functions, meets user-
expectation, and is maintainable.
The quality of software is determined by using the three aspects i.e. structural, functional, and
process quality.
Structural quality- This aspect states that the software must be coded accordingly in a well-
structured manner to be described as good quality software. This quality aspect describes that-
The coding of the software must be designed in such a way that it can be easily tested.
The coding of the software must be secured so as to eliminate security threats and issues. The
coding must be secured from common vulnerability attacks such as SQL injection and
overrunning of the buffer.
The software should be easily maintainable. The coding should be performed in such a way
that adding new codes or the existing code can be easily changed or altered without any
introduction of bugs in its process.
The coding of the software should be efficient when developing in resource-constraint
development conditions.
The code of the software should be designed in an understandable way so that if new
developers try to implement any changes, the process will not be difficult and time-
consuming (McIntosh et al., 2016).
Functional quality- This aspect of software quality states that the software should perform their
intended task correctly and efficiently as per the user’s requirements. Functional quality states
the following characteristics to be present in software to be of good quality-
The software must not contain any defects or errors in its designing. This states that the bugs
should not be present in the software as it can lower the reliability of the software. Security
can be compromised if the development of the software is not error-free.
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser

The design of the software interface should be easily understandable and aesthetics should be
beautifully presented to attract and enhance user interaction.
The software must meet all the specific requirements of the users including the incorporation
of specific functions and the design as well.
The software must not be slow and output good performance and processing speed to meet
the functional quality requirement (Horcas, Pinto, and Fuentes, 2018).
Process quality- This aspect of software quality states that-
The software must be delivered by the developers on the allotted time to their client.
The development process of the software must not build stress among the developers
during the software designing process.
The software must be developed within the allotted budget to reduce extra additional
cost.
All these three aspects, if maintained accurately, enhance the development of good quality
software which is error-free and meets all the requirements of the clients and users. The managed
attributes will ensure proper coding of software, requirement checks, processing functions, and
maintainability aspect of the software.
Change Management
It can be defined as the process of tracking down and managing of required changes in the
software which may include changes of codes, functions, and other requirements. Change
management process is an integral part of the software development process in which all the
aspects of changes and their coordination are managed.
Software change management system determines the origin of changes by prioritizing the
changes according to the following factors-
Enhancements- The process of software development is never fixed. It contains various
newer ideas, theories, researches, and finally the development. Enhancements are the new
ideas that a developer wishes to incorporate in the software. These new enhancement ideas
may make the software’s processing more efficient and excel its sustainability or may
beautifully presented to attract and enhance user interaction.
The software must meet all the specific requirements of the users including the incorporation
of specific functions and the design as well.
The software must not be slow and output good performance and processing speed to meet
the functional quality requirement (Horcas, Pinto, and Fuentes, 2018).
Process quality- This aspect of software quality states that-
The software must be delivered by the developers on the allotted time to their client.
The development process of the software must not build stress among the developers
during the software designing process.
The software must be developed within the allotted budget to reduce extra additional
cost.
All these three aspects, if maintained accurately, enhance the development of good quality
software which is error-free and meets all the requirements of the clients and users. The managed
attributes will ensure proper coding of software, requirement checks, processing functions, and
maintainability aspect of the software.
Change Management
It can be defined as the process of tracking down and managing of required changes in the
software which may include changes of codes, functions, and other requirements. Change
management process is an integral part of the software development process in which all the
aspects of changes and their coordination are managed.
Software change management system determines the origin of changes by prioritizing the
changes according to the following factors-
Enhancements- The process of software development is never fixed. It contains various
newer ideas, theories, researches, and finally the development. Enhancements are the new
ideas that a developer wishes to incorporate in the software. These new enhancement ideas
may make the software’s processing more efficient and excel its sustainability or may

threaten its presence, success, and competitions. These ideas must be documented and
properly addressed before implementing it to the actual software program to avoid any
unseen errors which can damage the existence of the system.
Planned Changes- The software that is fully built may contain errors and bugs in their
designing process which can pose various issues in the software. The software may also miss
the required functions in the development process. In order to address such issues, the
software codes should be changed to meet the specific requirements. The insertion of new
codes must be performed accordingly so that no downstream errors arise after the additional
changes made. To ensure such issues in the planned software development process, the
insertion codes must be managed to eliminate malfunctioning of other already coded
functions in the process of change.
Unexpected changes- This type of changes can be seen during the development process of
the software and also during the operational period. These changes can occur due to the
faulty codes, implementation of codes in a certain location, modification of code due to bugs
and errors, etc. The elimination of these changes requires proper maintenance and continuous
checking of the coding, or by developing a fool-proof software which is almost impossible.
Developer to mitigate such changes uses inbuilt toolsets in the software design to
continuously check if such errors evolve in the system.
The process of change management involves various decision-making process which requires
decision-makers so that the process of change can be managed efficiently with no faulty
decisions. This management system will handle all the process of evolutions that occur in the
software and manage them accordingly to improvise the software performance and reduce risks
and issues of software downfall (Shafiq et al., 2018).
Software Testing
Software testing can be described as the process of debugging a program in which the quality of
the software is determined. It includes both quality assurance and control. Quality assurance is
the methods of building quality in software whereas quality control is the method of testing the
software to derive its quality aspects. Testing of software ensures the matching of the final result
properly addressed before implementing it to the actual software program to avoid any
unseen errors which can damage the existence of the system.
Planned Changes- The software that is fully built may contain errors and bugs in their
designing process which can pose various issues in the software. The software may also miss
the required functions in the development process. In order to address such issues, the
software codes should be changed to meet the specific requirements. The insertion of new
codes must be performed accordingly so that no downstream errors arise after the additional
changes made. To ensure such issues in the planned software development process, the
insertion codes must be managed to eliminate malfunctioning of other already coded
functions in the process of change.
Unexpected changes- This type of changes can be seen during the development process of
the software and also during the operational period. These changes can occur due to the
faulty codes, implementation of codes in a certain location, modification of code due to bugs
and errors, etc. The elimination of these changes requires proper maintenance and continuous
checking of the coding, or by developing a fool-proof software which is almost impossible.
Developer to mitigate such changes uses inbuilt toolsets in the software design to
continuously check if such errors evolve in the system.
The process of change management involves various decision-making process which requires
decision-makers so that the process of change can be managed efficiently with no faulty
decisions. This management system will handle all the process of evolutions that occur in the
software and manage them accordingly to improvise the software performance and reduce risks
and issues of software downfall (Shafiq et al., 2018).
Software Testing
Software testing can be described as the process of debugging a program in which the quality of
the software is determined. It includes both quality assurance and control. Quality assurance is
the methods of building quality in software whereas quality control is the method of testing the
software to derive its quality aspects. Testing of software ensures the matching of the final result
⊘ This is a preview!⊘
Do you want full access?
Subscribe today to unlock all pages.

Trusted by 1+ million students worldwide

of the software with its expected result to confirm that the program is error free and contains no
bugs.
Software testing can be differentiated into three types depending on their scope and nature-
Performance testing- In this category of testing method, the software’s performance is tested.
This test ensures that the software performs according to the client’s expectation to meet the
user’s requirements. In this, the ability of the software is tested to determine its load handling
ability, its endurance to withstand the load, its usability performance, and scalability, etc.
(Ahmed et al., 2016).
Functional testing- In this category of testing method, the proper functioning of the software is
tested. In this test, the various functional aspects of the software are tested.
Integration testing is generally performed to verify that the integration of software
modules is performed correctly. In this method of functional testing, the various modules
developed by different developers are checked to ensure proper compatibility for
information and data flow.
Unit testing is generally performed during is development period to ensure a smooth
development process. In this method of functional testing, the various codes of the
software program are segregated in sections to easily ensure that the coding is correct
with no errors.
Other types of testing performed under functional testing include globalization testing in which
the software’s global compatibility is checked, User Acceptance Testing is performed to ensure
the design and functioning of the software is supported by user, localization testing is performed
to ensure that the software supports local and regional aspects (language, interactions) in which
the software will be implemented, and so on Salman, Turhan, and Vegas, 2)018.
Maintenance testing- In this category of software testing, the aspect of maintenance of the
software is tested. This test ensures that the software is easily maintainable during its operational
period. This test also ensures that the software does not deteriorate in its operational phase or
when changes are required or implemented (Zhou, Xiang, and Chen, 2016).
bugs.
Software testing can be differentiated into three types depending on their scope and nature-
Performance testing- In this category of testing method, the software’s performance is tested.
This test ensures that the software performs according to the client’s expectation to meet the
user’s requirements. In this, the ability of the software is tested to determine its load handling
ability, its endurance to withstand the load, its usability performance, and scalability, etc.
(Ahmed et al., 2016).
Functional testing- In this category of testing method, the proper functioning of the software is
tested. In this test, the various functional aspects of the software are tested.
Integration testing is generally performed to verify that the integration of software
modules is performed correctly. In this method of functional testing, the various modules
developed by different developers are checked to ensure proper compatibility for
information and data flow.
Unit testing is generally performed during is development period to ensure a smooth
development process. In this method of functional testing, the various codes of the
software program are segregated in sections to easily ensure that the coding is correct
with no errors.
Other types of testing performed under functional testing include globalization testing in which
the software’s global compatibility is checked, User Acceptance Testing is performed to ensure
the design and functioning of the software is supported by user, localization testing is performed
to ensure that the software supports local and regional aspects (language, interactions) in which
the software will be implemented, and so on Salman, Turhan, and Vegas, 2)018.
Maintenance testing- In this category of software testing, the aspect of maintenance of the
software is tested. This test ensures that the software is easily maintainable during its operational
period. This test also ensures that the software does not deteriorate in its operational phase or
when changes are required or implemented (Zhou, Xiang, and Chen, 2016).
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser

Conclusion
This report describes the various processes involved in the software’s development and
implementation phase. This report describes the quality of software by determining why and how
the quality of software can be maintained during its development phase. This report also
describes the important aspects of software by which the quality of the software is determined. In
this report, the software’s change management system is also described. This report describes
how changes can occur or be required in the software system and the methods of implementing
new codes in the system. This report also describes the software testing and its importance in the
software development process. It describes the various categories of software testing. In this
report, the reasons for testing and their processes are also described.
\
This report describes the various processes involved in the software’s development and
implementation phase. This report describes the quality of software by determining why and how
the quality of software can be maintained during its development phase. This report also
describes the important aspects of software by which the quality of the software is determined. In
this report, the software’s change management system is also described. This report describes
how changes can occur or be required in the software system and the methods of implementing
new codes in the system. This report also describes the software testing and its importance in the
software development process. It describes the various categories of software testing. In this
report, the reasons for testing and their processes are also described.
\

Reference
Ahmed, T.M., Bezemer, C.P., Chen, T.H., Hassan, A.E. and Shang, W., 2016, May. Studying the
effectiveness of application performance management (APM) tools for detecting performance
regressions for web applications: an experience report. In Proceedings of the 13th International
Conference on Mining Software Repositories (pp. 1-12). ACM.
Horcas, J.M., Pinto, M. and Fuentes, L., 2018. Variability models for generating efficient
configurations of functional quality attributes. Information and Software Technology, 95, pp.147-
164.
McIntosh, S., Kamei, Y., Adams, B. and Hassan, A.E., 2016. An empirical study of the impact of
modern code review practices on software quality. Empirical Software Engineering, 21(5),
pp.2146-2189.
Salman, I., Turhan, B. and Vegas, S., 2018. A controlled experiment on time pressure and
confirmation bias in functional software testing. Empirical Software Engineering, pp.1-35.
Shafiq, M., Zhang, Q., Akbar, M.A., Khan, A.A., Hussain, S., Amin, F.E., Khan, A. and Soofi,
A.A., 2018. Effect of project management in requirements engineering and requirements change
management processes for global software development. IEEE Access, 6, pp.25747-25763.
Zhou, Z.Q., Xiang, S. and Chen, T.Y., 2016. Metamorphic testing for software quality
assessment: A study of search engines. IEEE Transactions on Software Engineering, 42(3),
pp.264-284.
Ahmed, T.M., Bezemer, C.P., Chen, T.H., Hassan, A.E. and Shang, W., 2016, May. Studying the
effectiveness of application performance management (APM) tools for detecting performance
regressions for web applications: an experience report. In Proceedings of the 13th International
Conference on Mining Software Repositories (pp. 1-12). ACM.
Horcas, J.M., Pinto, M. and Fuentes, L., 2018. Variability models for generating efficient
configurations of functional quality attributes. Information and Software Technology, 95, pp.147-
164.
McIntosh, S., Kamei, Y., Adams, B. and Hassan, A.E., 2016. An empirical study of the impact of
modern code review practices on software quality. Empirical Software Engineering, 21(5),
pp.2146-2189.
Salman, I., Turhan, B. and Vegas, S., 2018. A controlled experiment on time pressure and
confirmation bias in functional software testing. Empirical Software Engineering, pp.1-35.
Shafiq, M., Zhang, Q., Akbar, M.A., Khan, A.A., Hussain, S., Amin, F.E., Khan, A. and Soofi,
A.A., 2018. Effect of project management in requirements engineering and requirements change
management processes for global software development. IEEE Access, 6, pp.25747-25763.
Zhou, Z.Q., Xiang, S. and Chen, T.Y., 2016. Metamorphic testing for software quality
assessment: A study of search engines. IEEE Transactions on Software Engineering, 42(3),
pp.264-284.
⊘ This is a preview!⊘
Do you want full access?
Subscribe today to unlock all pages.

Trusted by 1+ million students worldwide
1 out of 9
Related Documents
Your All-in-One AI-Powered Toolkit for Academic Success.
+13062052269
info@desklib.com
Available 24*7 on WhatsApp / Email
Unlock your academic potential
Copyright © 2020–2025 A2Z Services. All Rights Reserved. Developed and managed by ZUCOL.




