01-intro
01-intro
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?
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?
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?
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