Please enable JavaScript.
Coggle requires JavaScript to display documents.
Software Quality Assurance, Software Quality Assurance (Functional…
Software Quality Assurance
Software Quality Assurance
IEEE Defintion. 1/ A planned an systematic pattern of all actions necessary to provide adequate confidence that an item or product conforms to established technical requirements.
2/ A set of activities designed to evaluate the process by which the products are developed or manufactured. Contrast with quality development.
a supporting process that has to provide the independent assurance in which all the work products, activities and processes comply with the predefined plans
Checks that the right things are being done.
In the right order
By the right people
To professional standards
In a controlled manner
Functional Attributes
Boolean Attributes
. It the product either has them, or does not have them
Correctness
: product behaves according to its specification for all possible situations in the domain of the specification
Robustness
: is correct plus behaves reasonably for situations outside the domain of the specification
Statistical Attributes
. The product has them to a lesser or greater degree.
Dependability
. The probability that the system behaves according to its specifications for a period of operational time
Reliability
: the probability that the system operates for a period of time without violating its specification
Safety
" the probability that the software product operates for a given amount of time without causing a catastrophic failure
Security
Failures that result from system design flaws, security refers primarily to voluntary actions by malicious actors
Confidentiality
ability to prevent unauthorised access to confidential data entrusted to its custody
Integrity
ability to prevent loss or damage to critical data
Authentication
&
Authorisation
Ensure access is only grant to correct identified actors (users or systems) and that they only receive privileges according to their rightful status.
Availability
To continue delivering service to its user community
Measure using MTTD (mean time to detection(of a security vulnerability)) and MTTE (Mean Time to Exploitation) and
Operational attributes
Latency
: time between a query and the response time
Throughput
the volume of processes per time unit
Efficiency
The ability to deliver with minimal computer resources
Capacity
Number of simultaneous users the system can sustain while preserving degree of service
Usability Attributes
ease of use
consider heterogeneous user community
heterogeneous - diverse in character or content.
Ease of Learning
consider heterogeneous user community
Customisability
tune to specific functionality
Interoperability
Working with other applications
Business Attributes
Development Cost
Maintainability
Portability
Reusability
Structural Attributes
Design Integrity
simplicity, orthogonality, consistency
In computer programming, orthogonality means that operations change just one thing without affecting others.
Modularity
Cohesion and coupling
Testability
the extend to which one can test. Measured by:
Controllability: variety of inputs we can supply
Observability: the extent to which we can infer the output
Adaptability
: the ease with which it can be modified to accommodate requirement changes