Back to IF3250 Proyek Perangkat Lunak

Software Quality and ISO/IEC 25010

Questions/Cues

  • Bagaimana IEEE dan Pressman mendefinisikan kualitas perangkat lunak?
  • Apa itu ISO/IEC 25010 (SQuaRE)?
  • Apa delapan karakteristik kualitas produk menurut ISO 25010?
  • Apa sub-karakteristik dari tiap karakteristik?

Reference Points

  • Software Quality and Metrics (Halaman 3-4)
  • Software Quality and Metrics (Halaman 5)

Definisi Kualitas Perangkat Lunak

Definisi IEEE: Software quality adalah the degree to which system, component, or process meets:

  • specified requirements (persyaratan yang dispesifikasikan), dan
  • customer or user needs or expectations (kebutuhan atau ekspektasi pelanggan/pengguna).

Definisi Pressman: Software quality didefinisikan sebagai conformance terhadap:

  • explicitly stated functional and performance requirements (persyaratan fungsional dan performa yang dinyatakan eksplisit),
  • explicitly documented development standards (standar pengembangan yang terdokumentasi eksplisit), dan
  • implicit characteristics yang diharapkan dari semua perangkat lunak yang dikembangkan secara profesional.

Kunci dari kedua definisi: kualitas = kesesuaian terhadap requirement eksplisit dan ekspektasi implisit. Karakteristik implisit (mis. “tidak crash”) sering tidak ditulis namun tetap menentukan persepsi kualitas.

ISO/IEC 25010:2011 — SQuaRE

ISO/IEC 25010:2011 adalah bagian dari SQuaRE (Systems and software Quality Requirements and Evaluation). Standar ini mendefinisikan model System/Software Product Quality dengan delapan karakteristik, masing-masing memiliki sub-karakteristik.

KarakteristikSub-karakteristik
Functional SuitabilityFunctional completeness, Functional correctness, Functional appropriateness
Performance EfficiencyTime behaviour, Resource utilization, Capacity
Compatibility *Co-existence, Interoperability
UsabilityAppropriateness recognizability, Learnability, Operability, User error protection, User interface aesthetics, Accessibility
ReliabilityMaturity, Availability, Fault tolerance, Recoverability
Security *Confidentiality, Integrity, Authenticity, Non-repudiation, Accountability
MaintainabilityModularity, Reusability, Analysability, Modifiability, Testability
PortabilityAdaptability, Installability, Replaceability

Tanda * (Compatibility & Security) menandai karakteristik yang baru ditambahkan/diperkuat pada ISO 25010 dibanding pendahulunya (ISO 9126).

flowchart LR
    Q["System/Software<br/>Product Quality"]
    Q --> FS["Functional Suitability"]
    Q --> PE["Performance Efficiency"]
    Q --> CO["Compatibility *"]
    Q --> US["Usability"]
    Q --> RE["Reliability"]
    Q --> SE["Security *"]
    Q --> MA["Maintainability"]
    Q --> PO["Portability"]

Summary

Kualitas perangkat lunak adalah kesesuaian (conformance) terhadap persyaratan eksplisit (fungsional, performa, standar) dan karakteristik/ekspektasi implisit — dirumuskan oleh IEEE (memenuhi specified requirements + user needs) dan Pressman. Standar ISO/IEC 25010:2011 (SQuaRE) memodelkan kualitas produk dalam delapan karakteristik: Functional Suitability, Performance Efficiency, Compatibility, Usability, Reliability, Security, Maintainability, dan Portability — masing-masing dengan sub-karakteristik terukur. Model ini menjadi dasar untuk mengukur kualitas, yang ditindaklanjuti melalui metrik di Software Measurement Fundamentals.