0% found this document useful (0 votes)
9 views

01-intro

Uploaded by

Abhay Dhiman
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views

01-intro

Uploaded by

Abhay Dhiman
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 17

CMPT 473

Soware Tesng, Reliability and Security


Intro to Soware Quality
Nick Sumner
What is Soware Quality?
● Bad soware costs developers and users billions of dollars a year, but
why?
– What is `good' soware?
– What is `bad' soware?

19
It is a Ma)er of Perspecve
Your role relave to the soware changes what is important to you.

● End Users
– Does the soware have all desired features?
– Can it reliably produce correct results for good input?
– Does it securely & gracefully handle bad input?
– It it easy to use?
– Is it responsive?
– Does it integrate well with other soware?

What are the consequences of missing these goals? 30


It is a Ma)er of Perspecve
● Operaonal / Deployment
– Is the soware secure from a)acks that may compromise the IT
infrastructure?
– Does the soware appropriately use resources?
(CPU, Memory, Disk Space, Bandwidth, ...)

What are the consequences of missing these goals?

34
It is a Ma)er of Perspecve
● Developers
– How easy is the soware to adapt to changes in requirements?
– Can the soware be easily adapted to other systems?
– How easy is the soware to inspect and understand?
– Can components be easily examined gauged for quality?

What are the consequences of missing these goals? 40


Standardized
● ISO/IEC 9126 groups them as:

Almost:
1) Funconality
2) Reliability End User
Soware Quality 3) Usability
4) E3ciency Operaonal
5) Portability Developer
6) Maintainability
42
Going Deeper
● Reliability – Doesn't just mean not having faults!
– Avoid failure resulng from soware faults
– Maintain performance in the face of faults or a)acks
– Reestablish performance and data aer a failure

44
Going Deeper
● Usability- Beyond adequate to polished
– Helps user understand whether the program meets their needs
– Features & uses are easy to learn
– Easy to operate & control
– Liked!

46
Going Deeper
● Maintainability- Makes developers lives easier
– Defects are easy to idenfy
– Changes are easy to understand & don't aNect other components
– The soware is easy to test

48
How Can We Measure Quality?
These characteriscs may be vague or ill deCned.
So how do we do it?
● Planning
– Decide what criteria are most important
– Form a plan to assess them, directly or indirectly

51
How Can We Measure Quality?
These characteriscs may be vague or ill deCned.
So how do we do it?
● Planning
● Process
– Code reviews help to improve maintainability & reduce bugs
– Regular monitoring

52
How Can We Measure Quality?
These characteriscs may be vague or ill deCned.
So how do we do it?
● Planning
● Process
● Tesng!!
– Show that you meet the minimum agreed requirements
– Observe defects and performance issues.

53
Quality Processes
Quality as a Process
The quality of soware comes from the quality of
the process used to build it.

Requirements
SpeciCcaon
Design
In every aspect of
Implementaon
development Tesng
Documentaon
Maintenance
56
Quality as a Process
How can we assist the process?

● Synthec- Tools and techniques structured to create be)er soware


● Analycal- Tools and techniques that measure the quality of soware

● Manual- Driven interacvely by developers


● Automated- Funcon w/o developer intervenon

59
Quality as a Process
Synthec Analycal
Manual ●


design methodologies
prototyping


walk-throughs
inspecons
● coding standards ● audits
● templates
● documentaon standards

Automated ●


program generators
compilers


model checkers
program veriers
● development ● program checkers
environments ● unit tesng
● integraon tesng
● system tesng 63
Quality as a Process
Integrang these into the process is a core part of the quality plan
● Set goals
● Establish pracces
● Measure progress

65

You might also like