Software Quality Factors & its trade-offs

Common Factors of Software Quality


Efforts needed for modification, fault removal or for environmental change.


Risk of unexpected effect of modifications.


Efforts needed for validating the modified software.


Ability of the software to be easily operated by a given user in a given environment.


Response time for given throughput.


Combination of Maturity, Fault tolerance and Recoverability for certain point in time.

Main Factors and Sub Factors of Software Quality

Main FactorsSub FactorsQuality Assurance Method
EfficiencyTime BehaviorPerformance
ReliabilityCombination of Maturity, Fault tolerance and RecoverabilityAvailability

Trade-offs between Software Quality Factors

  • Inappropriate use of resources can reduce availability. For example, holding a particular resource for a long time without using it may cause resource starvation and an inability to handle additional concurrent user requests.
  • Lack of documentation may delay management and future upgrades in the software.
  • Increased memory consumption may result in reduced performance.
  • Increased database server processing may result in reduced throughput.
  • Complex applications with many processing permutations are not tested consistently, perhaps because automated or granular testing cannot be performed if the application has a monolithic design. Design systems to be modular to support testing.
  • If the code base is large or complex, the refactoring of the codes will be difficult.
  • Lack of tracing ability will leads to difficulty in modifiability.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s