List of system quality attributes

{{short description|Non-functional requirements for system evaluation}}

{{Multiple issues|

{{prose|date=September 2015}}

{{refimprove|date=January 2017}}

}}

{{Use dmy dates|date=January 2018}}

Within systems engineering, quality attributes are realized non-functional requirements used to evaluate the performance of a system. These are sometimes named architecture characteristics, or "ilities" after the suffix many of the words share. They are usually architecturally significant requirements that require architects' attention.{{Cite journal |doi = 10.1109/MS.2012.174|title = Characterizing Architecturally Significant Requirements|journal = IEEE Software|volume = 30|issue = 2|pages = 38–45|year = 2013|last1 = Chen|first1 = Lianping|hdl = 10344/3061| s2cid=17399565 |url = https://ulir.ul.ie/bitstream/10344/3061/2/Chen_2013_characterising.pdf|hdl-access = free}}

In software architecture, these attributed are known as "architectural characteristic" or non-functional requirements. Note that it's software architects' responsibility to match these attributes with business requirements and user requirements. Note that synchronous communication between software architectural components, entangles them and they must share the same architectural characteristics. {{Cite book |title=Fundamentals of Software Architecture: An Engineering Approach |year=2020 |isbn=978-1492043454 |last1=Richards |first1=Mark |last2=Ford |first2=Neal |publisher=O'Reilly Media, Incorporated }}

Quality attributes

Notable quality attributes include:

{{div col|colwidth=20em}}

{{div col end}}

{{Clear}}

Many of these quality attributes can also be applied to data quality.

Common subsets

  • Together, reliability, availability, serviceability, usability and installability, are referred to as RASUI.
  • Functionality, usability, reliability, performance and supportability are together referred to as FURPS in relation to software requirements.
  • Agility in working software is an aggregation of seven architecturally sensitive attributes: debuggability, extensibility, portability, scalability, securability, testability and understandability.
  • For databases reliability, availability, scalability and recoverability (RASR), is an important concept.
  • Atomicity, consistency, isolation (sometimes integrity), durability (ACID) is a transaction metric.
  • When dealing with safety-critical systems, the acronym reliability, availability, maintainability and safety (RAMS) is frequently used.{{Citation needed|date=January 2020}}
  • Dependability is an aggregate of availability, reliability, safety, integrity and maintainability.
  • Integrity depends on security and survivability.
  • Security is a composite of confidentiality, integrity and availability. Security and dependability are often treated together.

See also

References

{{Reflist}}

Further reading

  • {{cite book |author-link=Thomas Erl |first=Thomas |last=Erl |title=SOA: Principles of Service Design |publisher=Prentice Hall |year=2007 |isbn=9780132344821 |url=https://books.google.com/books?id=mkQJvjR2sX0C}}
  • {{cite journal |first1=R. |last1=Gitzel |first2=A. |last2=Korthausa |first3=M. |last3=Schadera |title=Using established Web Engineering knowledge in model-driven approaches |journal=Science of Computer Programming |volume=66 |issue=2 |pages=105–124 |date=30 April 2007 |doi=10.1016/j.scico.2006.09.001 |doi-access=free }}
  • {{cite book |first1=Len |last1=Bass |first2=Paul C. |last2=Clements |first3=Rick |last3=Kazman |title=Software Architecture in Practice |edition=3rd |year=2012 |publisher=Addison-Wesley |isbn=9780321815736 |url=https://books.google.com/books?id=-II73rBDXCYC}}

{{Software quality}}

{{DEFAULTSORT:List Of System Quality Attributes}}

Category:Software engineering terminology

Category:Software requirements

Category:Software quality

Category:Systems engineering