Intro Flashcards
As an End User, what is important to me in a piece of software?
–Does the software 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 software?
What perspective are you looking at the software from if you have these thoughts?
–Is the software secure from attacks that may compromise the IT infrastructure?
–Does the software appropriately use resources?(CPU, Memory, Disk Space, Bandwidth, …)
Operational / Deployment
As an Developer, what is important to me in a piece of software?
–How easy is the software to adapt to changes in requirements?
–Can the software be easily adapted to other systems?
–How easy is the software to inspect and understand?
–Can components be easily examined gauged for quality?
According to ISO/IEC 9126, what 6 attributes contribute to software quality?
1) Functionality
2) Reliability
3) Usability
4) Efficiency
5) Portability
6) Maintainability
Reliability extends to more than just not having faults. It includes:
- Avoiding ______ resulting from software faults
- Maintain ________ in the face of faults or attacks
- Reestablish ________ ___ ____ after a failure
failure
performance
performance and data
Usability extends to more than just being adequate. It Includes:
- Lets the user _______ if the program meets their needs
- _____ to use
- Liked
understand
easy
Maintainability means:
- ____ are easy to identify
- ______ are easy to understand
- Changes don’t ______ ______ _______
- Easy to _____
Defects
Changes
affect other components
test
When creating quality software from the planning phase, we decide which _____ are most important and form a _____ to asses them
criteria, plan
When creating quality software from the development phase, what 2 things should we do?
- Under go code reviews
2. Monitor regularly
________ tools and techniques create better software?
Synthetic
_______ tools and techniques measure the quality of a software
Analytical
What classification of tools are driven interactively by developers?
Manual
What classification of tools function without developer intervention?
Automated
Coding standards and design methodologies are examples of ______ _______ quality tools
manual synthetic
Program generators and compilers are examples of _____ ______ quality tools
automated synthetic