D8-02 9–10 分钟 重要程度:高
软件开发方法、语言与成熟度模型
开发方法题要分清瀑布、螺旋、Agile、DevOps 与成熟度模型。考试重点不是背流程图,而是判断哪种方法最适合风险、迭代、客户变化和过程改进。
一、必须记住
- 编译型语言把源代码编译成可执行文件,用户通常看不到原始指令;解释型语言由解释器执行源代码。
- OOP 术语包括类、对象、方法、消息、继承、委托、多态、内聚和耦合。
- Waterfall 是顺序阶段模型,传统上一个阶段完成后才进入下一个阶段。
- Spiral Model 通过多轮迭代处理需求、设计、实现和风险,适合风险较高或需求演进的项目。
- Agile 强调客户协作、快速交付、拥抱变化,工作软件是主要进度度量。
- Scrum、Kanban、RAD、AUP、DSDM、XP 都属于常见敏捷或快速开发相关方法。
- SW-CMM 从 Initial、Repeatable、Defined、Managed 到 Optimizing 衡量软件过程成熟度。
- SAMM、BSIMM 和 IDEAL 都可用于软件安全能力或过程改进评估。
二、核心概念
语言与代码可见性
编译后的程序不易被用户直接检查,恶意或不熟练的开发者可能把后门或缺陷藏在二进制中。解释型语言源码更容易被查看,但仍需要访问控制、代码审查和依赖管理。
开发生命周期模型
Waterfall 强调顺序,适合需求稳定的环境;Spiral 把风险分析和迭代结合;Agile 适合需求变化较快、需要频繁交付反馈的场景。
过程成熟度
SW-CMM 强调软件质量依赖开发过程质量。SAMM 和 BSIMM 更关注软件安全活动成熟度,IDEAL 用启动、诊断、建立、行动、学习推动过程改进。
三、CISSP 判断规则
- 问线性、阶段完成后进入下一阶段,选 Waterfall。
- 问风险驱动、多次迭代瀑布,选 Spiral。
- 问客户协作、欢迎变化、工作软件衡量进度,选 Agile。
- 问软件过程成熟度五级,选 SW-CMM。
- 问 OWASP 维护的软件保证成熟度模型,选 SAMM。
四、常见陷阱
- Agile 不代表没有安全、没有文档或没有控制;安全活动仍要进入 backlog、评审和测试。
- Waterfall 不是永远错误,需求稳定和监管强的项目仍可能适用。
- 编译型语言不自动安全,解释型语言也不自动可控。
五、英文关键字
Compiled language Interpreted language OOP Waterfall Model Spiral Model Agile Scrum Kanban RAD XP SW-CMM SAMM BSIMM IDEAL
小测验
1. 项目需求经常变化,团队需要频繁交付可工作的软件,最符合哪种方法?
Agile 强调客户协作、快速交付和欢迎变化;工作软件是主要进度度量。
2. 哪种模型把瀑布式活动反复迭代,并特别适合风险驱动开发?
Spiral Model 通过多轮迭代处理风险、需求和实现。
3. SW-CMM 的最高阶段强调什么?
SW-CMM Optimizing 阶段强调持续改进、缺陷预防和变更管理。
本节进度
完成后会保存在当前浏览器。线上版可保存;不同手机、平板之间暂不自动同步。
尚未完成