top of page


Updated: Aug 25, 2021

Software quality measures whether the software meets both functional and non-functional requirements.

Functional requirements define what the software should do. They include technical details, data processing, calculations, or any other specific function that specifies what an application intends to achieve.

Non-functional requirements, also known as quality attributes, determine how the system should work. Non-functional requirements include portability, disaster recovery, security, privacy, and availability.

Software testing detects and resolves technical issues in the software source code and evaluates the overall availability, performance, security, and compatibility of the product to ensure it meets its requirements.

Dimensions of software quality include the following features:

* Accessibility: the degree to which a different group of people, including individuals who need adaptive technologies such as voice recognition and screen magnifiers, can conveniently use the software.

* Compatibility: suitability of the software for use in a variety of environments, such as different operating systems, devices, and browsers.

* Competence: the ability of the software to perform well without wasting energy, resources, effort, time or money.

* Functionality: the ability to perform the specified functions of the software.

* Installability: the ability of the software to be installed in a specific environment.

* Localization: various languages, time zones, and other similar features that the software can run in.

* Sustainability: adding and improving features, correcting errors, etc. for how easily the software can be changed.

* Efficiency: how fast the software performs under a certain load.

* Portability: easy transfer of software from one location to another.

* Reliability: the ability of the software to perform a required function without error for a certain period of time under certain conditions.

* Scalability: a measure of software's ability to increase or decrease performance in response to changes in processing demands.

* Security: unauthorized access of software, breach of privacy, theft, loss of data, malware, etc. ability to protect against.

* Testability: testability of the software

* Availability: availability of the software

To maintain software quality once deployed, developers must continually adapt it to meet new customer requirements and address issues identified by customers. This is necessary to improve functionality, correct errors, and adjust the software code to avoid problems.How long a product will last on the market depends on the ability of developers to keep up with these maintenance requirements.

When it comes to maintenance, there are four types of changes developers can make:

1. Corrective: users often identify and report errors that developers need to fix, including coding errors and other issues that prevent the software from meeting their requirements.

2. Adaptive: developers should make regular changes to their software to ensure it is compatible with changing hardware and software environments, such as the release of a new version of the operating system.

3. Excellent: these are changes that enhance system functionality, such as improving the user interface or adjusting software code to improve performance.

4. Preventative: these changes are made to prevent software from failing and include tasks such as reconfiguring and optimizing the code.

Related Posts

See All


Valutazione 0 stelle su 5.
Non ci sono ancora valutazioni

Aggiungi una valutazione
bottom of page