🐡
曖昧な品質を捉えるために 第一章-品質とは何か
導入部で品質の重要性について説きました。
プロダクト開発における、「品質」という言葉そのものの抽象度が高いので、考え方を落とし込みます。
品質とは何か
品質とは、プロダクトやシステムがユーザーの期待を安定して満たし続けられる状態を指します。多くの場合、
- バグが少ない
- パフォーマンスが安定している
- セキュリティに問題がない
などの要素が挙げられますが、実際にはそれだけではありません。
品質についての定義について、ISO/IEC 25010の考えが参考になります。
ISO/IEC 25010では、品質を以下のような8つの特性に分類しています[1]
- 機能適合性(要求された機能が提供されているか)
- 性能効率性(応答時間、処理能力)
- 使用性(使いやすさ、直感的な操作性)
- 信頼性(障害発生時の耐久性や復旧性)
- 保守性(改修・拡張のしやすさ)
- 互換性(他システムとの連携)
- セキュリティ(不正アクセスやデータ漏洩への対策)
- 移植性(環境の変化に対応できる柔軟性)
このような分類は、品質を構造的に理解するうえでの指針になりますが、
実務においては
- 「ユーザーがどこで困っているか」
- 「どの部門が何を見ているか」
といった文脈と結びつけて捉える必要があります。
品質とは一定のしきい値で達成できるものではなく、プロダクトのライフサイクルを通じて育てていくものです。
- 運用・保守フェーズでの障害対応
- ユーザーからの声
- ログからの傾向分析
など現場の情報が品質の真の姿を表します。
エンジニアが品質に向き合うとき、それは仕様書やテストレポートの中だけでなく、日々の開発と運用の中にある「現場感覚」として扱われるべきです。
-
公式ポータル(iso25000.com)では「インタラクションキャパビリティ」など9つ目の特性が提示されることもありますが、これは可視化の都合上の補完的な扱いと解されます。 ↩︎
Discussion