Professional Documents
Culture Documents
Software Quality Standards - ISO25010 - CAPSTONE PROJECT 2
Software Quality Standards - ISO25010 - CAPSTONE PROJECT 2
source: https://www.monterail.com/blog/software-qa-standards-iso-25010 1
LIFE CYCLE OF INTERNATIONAL ISO STANDARDS FOR
SOFTWARE DEVELOPMENT EVALUATION
source: https://www.iso.org/standard/35733.html 2
LIFE CYCLE OF INTERNATIONAL ISO STANDARDS FOR
SOFTWARE DEVELOPMENT EVALUATION
source: https://www.monterail.com/blog/software-qa-standards-iso-25010
3
ISO/IEC 9126 categorization of software quality
requirements.
source: https://www.monterail.com/blog/software-qa-standards-iso-25010
4
ISO/IEC 25010 categorization of software quality requirements
Source: ISO20500.com
source: https://www.monterail.com/blog/software-qa-standards-iso-25010 5
What is Quality and How We Look at The Metrics
The standard categorizes app functionalities and lists all aspects of the app that
must be verified before the app may be released.
1. FUNCTIONAL SUITABILITY
—i.e. what does the app do? In particular:
a. Functional completeness—is the app in line with the specification? Does it have the
functions it was supposed to have?
b. Functional correctness—does it provide the correct results?
c. Functional appropriateness —does it fulfill its function?
source: https://www.monterail.com/blog/software-qa-standards-iso-25010
7
What Does ISO/IEC 25010 Include?
2. PERFORMANCE EFFICIENCY
—does the app use an optimal amount of resources?
a. Time behavior—are the response and processing times or throughput rates reasonable?
b. Resource utilization—are the amounts and types of resources used reasonable?
c. Capacity—are the maximum limits reasonable?
source: https://www.monterail.com/blog/software-qa-standards-iso-25010
8
What Does ISO/IEC 25010 Include?
3. COMPATIBILITY
—can the app work cross-platform or share data with other products, systems
or components?
a. Co-existence—can the app share a common environment and resources with other
products?
b. Interoperability—can it exchange information and use the information that has been
exchanged?
source: https://www.monterail.com/blog/software-qa-standards-iso-25010
9
What Does ISO/IEC 25010 Include?
4. USABILITY
—can specific users use the app in specific conditions?
As you know, every app is different and has different users. Like for example an app that was
develop, need to adjust the UI for users of all ages and make it run on all kinds of phones, including feature
phones.
a. Appropriateness recognizability—can users can recognize whether the app is appropriate for their needs?
b. Learnability—is it easy to learn how the app works?
c. Operability—is the app easy to operate and control?
d. User error protection—does the app protect users against making errors?
e. User interface aesthetics—is the user interface pleasing to the eye? (watch out—that’s a very subjective issue!)
f. Accessibility—can the app be used by people of all characteristics and capabilities?
The last factor is particularly important, as we should keep in mind all sorts of prospective users that
might end up using our app. For this purpose, I’d recommend checking out the Axe accessibility browser
tool—a handy extension for verifying apps e.g. against color-blindness.
source: https://www.monterail.com/blog/software-qa-standards-iso-25010
10
What Does ISO/IEC 25010 Include?
5. RELIABILITY
—an extremely important issue. Here, we look closer at:
6. SECURITY
—does the app protect information and data? For EU countries this is additionally
connected with GDPR rules, which we need to be particularly aware of:
7. MAINTAINABILITY
—will it be possible for the app to be modified or improved in the future, or will it
adapt to changes in the environment?
a. Modularity—if an app is built with components, does changing one component impact other
components? (Which makes any changes to the app easier and faster.)
b. Reusability—can an asset be used in more than one system, or in building other assets? Again,
this might be extremely time-saving when changing or expanding the app.
c. Analyzability—is it easy to analyze any activities in the app that need to be taken into account?
(Again, do not overanalyze. Look at what is important.)
d. Modifiability—is the app easy to modify without harming present product quality?
e. Testability—can the app be tested, also automatically?
Maintainability should be taken into account at the planning stage of the app
development cycle.
source: https://www.monterail.com/blog/software-qa-standards-iso-25010
13
What Does ISO/IEC 25010 Include?
8. PORTABILITY
—can the software be used in various environments?
source: https://www.monterail.com/blog/software-qa-standards-iso-25010
14
How ISO 25010 Standard Helps Us Measure Quality
▪ Software development is a process. And we need to have full control of this process in order to arrive at
satisfactory results—i.e. a working piece of software that meets our requirements and quality goals—and
do so within a reasonable timeframe and budget.
▪ We care deeply about the core functions of the software we make. Therefore, they need to work. And to
check whether they work correctly, we test them in and out, trying to take a fresh approach to the task
of evaluation every single time. The problem is, however, that you miss some things if you repeat the
same procedures every day.
▪ So, in order to systematize the work, all the tasks and bugs related to a given app and to make sure we
didn’t miss anything, after all that is said and done, we will always need to open the ISO 25010 Standard
and go through all of the criterion, asking questions about the elements on the list which make us, sort
of a QA of the QA process.
▪ Obviously, not all of the items on the list are applicable or important, for example—installability is crucial
for mobile apps, but not for the QA process.
▪ In these cases, we look at the ISO/IEC 25010 standard and run a quality check of the application following
those eight quality factors.
source: https://www.monterail.com/blog/software-qa-standards-iso-25010 15
How ISO 25010 Standard Helps Us Measure Quality
▪ Software development is a process. And we need to have full control of this process in order to arrive at
satisfactory results—i.e. a working piece of software that meets our requirements and quality goals—and
do so within a reasonable timeframe and budget.
▪ We care deeply about the core functions of the software we make. Therefore, they need to work. And to
check whether they work correctly, we test them in and out, trying to take a fresh approach to the task
of evaluation every single time. The problem is, however, that you miss some things if you repeat the
same procedures every day.
▪ So, in order to systematize the work, all the tasks and bugs related to a given app and to make sure we
didn’t miss anything, after all that is said and done, we will always need to open the ISO 25010 Standard
and go through all of the criterion, asking questions about the elements on the list which make us, sort
of a QA of the QA process.
▪ Obviously, not all of the items on the list are applicable or important, for example—installability is crucial
for mobile apps, but not for the QA process.
▪ In these cases, we look at the ISO/IEC 25010 standard and run a quality check of the application following
those eight quality factors.
source: https://www.monterail.com/blog/software-qa-standards-iso-25010 16
Is ISO 25010 Standard Good For Everyone?
▪ Each project is different, so you cannot exactly treat the list as a ready-made plan
of action. First, think about what is important for the client and the user. And
remember to think about it from the very beginning of your work with the client.
▪ Every organization benefits from “best practices” and predictability. Process
standardization and automation of testing saves us considerable time and
money, and helps protect ourselves against common bugs. But predicting
obstacles and errors cannot be added to the product after the product itself is
already built.
source: https://www.monterail.com/blog/software-qa-standards-iso-25010 17
REMEMBER!
source: https://www.monterail.com/blog/software-qa-standards-iso-25010 18
Sample Survey Questionnaire
19
Sample Survey Questionnaire
20