CSC 300/307/402
Professor Stearns
Quality Attribute Examples
These examples have been written over several years by Cal Poly
students.
Each example is marked with the appropriate
grading symbol. Acceptable examples are marked
GE (good enough).
Most of the quality attributes come from the FURPS+ model
described in
Practical Software Metrics for Project Management and
Process Improvement by Robert Grady
Accuracy
- Every phone call initiated by the auto-dialer must have all
the digits exactly correct, including area code. (GE)
- Computed grades must be accurate to .01% (NM - compared to
what?)
- The system will notify the system administrator if the
input data source is corrupted. (INC or NF)
- Every video must have an unique identification. (UC)
- The displayed clock rate must be within 5 Hz of the actual
clock rate. (GE)
- If the mail list is used for a mailing, < 10% of the
letters
will be returned as undeliverable. (GE)
Adaptability
- The finished software must support new employee types without
needing to be rewritten or recompiled. (GE)
- The software must be flexible. (NM, UC)
- The software must be adaptable. (CIR, UC)
- The Mean Time to Change (MTTC) data presentation (no new
data entities) will be < 1 person-month for a senior system
developer. (GE)
Aesthetics
- All text must be pink. (GE but silly)
- The user must be pleased with the GUI appearance. (GE but
potentially
difficult to satisfy)
Compatibility
- All web client programs must interact with the server without
any changes to the server code. (GE, also NF because of the word
All)
- The system must be compatibility with MacIntosh OS 10. (NM,
UC and
far too common)
Configurability
- The system must use a java .properties file that contains key
value pairs defining the jdbc driver to use. (NR)
- The system must adapt to changes in any input record format
without
the need to recompile any code. (GE)
Consistency
- A consistent GUI is required. (NM, UC)
Correctness
- Defects/KDSI must be < 3. (GE)
Documentation
- All system documentation must be embedded in the source code.
(INC)
- The source code shall be self-documented by placing the
design description in a Javadoc-readable method header (GE)
Extensibility
- If the input data format changes, the developer will be able
to make the required changes in < 20 person-hours. (GE)
- The system must be able to support new CD formats. (NM, NF)
- A new job ticket format can be added to the system without
changing any extant .class file. (GE)
Frequency/Severity of Failure
- The system will crash no more than once per 10000
transactions. (UC - What's a crash? Is "once" an average or
not?)
- There can be no unhandled exceptions from incorrect user
input. (GE)
Human Factors
- The UI must be user-friendly. (BW, NM, UC)
- The UI must be intuitive. (NM, UC)
- All menus must have a consistent format. (GE)
Installability
- It must be possible to create and populate the database from
a script file. (GE)
- A user can install and operate the program without assistance
of any kind. (GE)
- There must be an install program. (UC)
- The installation process will be kept at a minimum. (BW/NM)
Localizability
- It must be possible to operate the system in any language.
(NF)
- All user interface components must support the locale of the
system.
If a locale is not available, US English shall be used. (UC, NM,
possibly GE if locale is defined somewhere)
- The UI language can be switched from English to German
without
recompiling nor rebuilding the program. (GE)
- The product can switch between English and metric units
without
recompiling nor rebuilding the program. (GE)
Maintainability
- A software developer with 6 months experience will be able to
correct any known defect in < 2 person-days. (GE)
- The maintenance group must be able to maintain the software.
(UC)
- Mean Time to Change (MTTC) for defects < 2 person-days.
(GE)
Portability
- The system will run, without modification, on any Java
target platform. (NF)
- The system is not portable. (X-all systems are portable)
- The system will run on Win 95/98, and NT 4.0/5.0 (X-not
portability)
- Any Java-enabled web browser must be able to access the
system data. (NM)
- The system will only work on WinTel machines. (NM, NQ)
- The software must be written endian-neutral. (GE)
- The software must be written character set-neutral. (GE)
- It must be possible to port the system to the MacIntosh
platform
with < 12 person-months of effort. (GE)
Predictability
- The system can never crash. (NF - never say never)
- The system must produce predictable results (UC, NM)
Recoverability
- During a system restart, the system will return to a
functioning state. (GE)
Reliability
- The system will be available 100% of the time (X-not
reliability)
- The MTBF is required to be > one week. (INC - What's a
failure?)
- The system must never crash. (NF)
Resource Consumption
- The system must consume a maximum of 16 Mbytes of memory.
(GE)
- The system will use no more than 25% of system resources.
(NM)
Response Time
- Query response time must be fast. (NM)
- All queries must return a response in < 2 seconds. (NF-all
is the problem)
Reusability
- All transactions must be encrypted. (NR, INC, UC)
- Only the teacher may modify grades. (NF, UC)
- The security system must be upgradable. (NM)
Security
- A password must be entered to use the system. (NR, weak -
passwords provide little or no security)
Serviceability
- A trained support person can produce a localized version of
the system without recompiling or rebuilding the system. (GE)
- A support person can reconfigure the system. (UC)
Speed
- The e-commerce engine must process a customer order in less
than 100 ms. (GE)
Testability
- All major use cases must be regression tested. (GE)
- 100% of the quality requirements must be measurable. (GE)
- 100% of the quality requirements must be met by the end
of CSC 206 (NF)
Thruput
- The system can process 100,000 checks per hour. (GE)
Understandability
- 90% of novice users can learn to operate major use cases
without
outside assistance. (GE)
- The main use cases must be accessible from the
top screen. (GE if "main" is defined in the SRS)
Usability
- The UI must be user-friendly. (BW, NM)
- The UI will exhibit conceptual integrity. (NM)
- Dr. Cerf shall be satisified with the user interface. (GE)
- Dr. Meldal shall not be dissatisifed with the user interface.
(GE)
Grading Symbols
NM - not measurable
NF - not feasible
UC - unclear
CIR - circular definition
NR - Not a requirement
INC - incomplete
BW - "bad word"
X - incorrect