Software Quality Standards — ISO 5055 / CISQ
ISO/IEC 5055 衡量什么?
ISO/IEC 5055 以可自动检测的 source-code / architecture weaknesses 衡量四项结构质量:
- Reliability
- Performance Efficiency
- Security
- Maintainability
这些 weakness 映射到 CWE,可在 component 与 whole-system / architectural level 进行静态分析。
从“发现问题”到“可执行标准”
团队可将 measures 转成:
- weakness count / density;
- sigma level 或跨版本趋势;
- release gate;
- vendor acceptance criteria;
- modernization improvement target;
- 不允许进入 production 的 critical weakness list。
示例:若存在绕过 authentication 直达 database 的 unintended path,或资源未释放导致关键系统冻结,就不应只记录为普通 lint warning。
与其他标准的关系
- ISO/IEC 25010:定义更广泛的 system/software quality model;ISO 5055 只测其中四项结构特征。
- ISO/IEC 25023:更多关注 operational / behavioural measures。
- CWE:提供具体 weakness vocabulary,支持工具自动化检测。
不能替代什么
必须与下列证据结合:
- acceptance / usability testing;
- performance 与 resilience testing;
- production SLO/SLI 与 incident data;
- threat modelling、penetration testing 与 access review;
- people/process controls。
IE Project 质量 gate 示例
| Characteristic | Gate | Evidence |
|---|---|---|
| Reliability | 无 critical resource/transaction weakness | 静态分析 + failure tests |
| Performance | 无已知 unbounded operation | code scan + load test |
| Security | 无 authentication bypass / injection critical finding | SAST + threat test |
| Maintainability | 复杂度与 duplication 不超过团队阈值 | trend dashboard + review |
- 选一个工具可检测的 structural weakness。
- 写出阈值、owner、修复 SLA 与 exception approval。
- 再配一个用户/运行层指标,避免只优化代码分数。