软考中级(软件设计师)——系统开发基础(11分以上)【主要考理论】
目录
软考中级(软件设计师)——系统开发基础(11分以上)【主要考理论】
开发模型(★★★★★)(必考)
瀑布模型(三个阶段且每个阶段都会有产出)
V模型
喷泉模型
原型化模型
演化模型
螺旋模型
统一过程
敏捷方法
软件开发方法(★)
XP
SCRUM
Crystal Methods
FDD
ASD
DSDM
轻量型RUP
软件开发方法
需求分析(★)
软件设计(★★)
内聚与耦合的解析
软件测试与维护
白盒测试用例(★★★★)
McCabe复杂度计算(★★★)
软件质量保证(★)
软件过程改进(★★)
Gant图与Pert图(★★★★)
风险管理(★★★)
开发模型(★★★★★)(必考)
- 瀑布模型
- V模型
- 原型化模型
- 演化模型
- 虹旋模
- 统-过程
- 敏捷方法
瀑布模型(三个阶段且每个阶段都会有产出)
有测试延后的问题
V模型
问题是测试放在了编码之后。
喷泉模型
并行的问题,导致管理很难,是面向对象的。
原型化模型
对风险进行了评估,成本提升。
演化模型
螺旋模型
综合了原型化模型以及演化模型
统一过程
叫做RP,现在叫做URP
敏捷方法
这几年比较流行,敏捷开发注重【沟通】,时时反馈,4大价值观,5大原则,12大最佳实践需要看一下。
软件开发方法(★)
XP
XP(极限编程)的思想源自 Kent Beck和Ward Cunningham在软件项目中的合作经历。XP注重的核心是沟通、简明、反馈和勇气。因为知道计划永远赶不上变化,XP无需开发人员在软件开始初期做 出很多的文档。XP提倡测试先行,为了将以后出现bug的几率降到最低。
SCRUM
SCRUM是一种迭代的增量化过程,用于产品开发或工作管理。它是一种可以集合各种开发实践的经验化过程框架。SCRUM中发布产品的重要性高于一切。
该方法由Ken Schwaber和 Jeff Sutherland 提出,旨在寻求充分发挥面向对象和构件技术的开发方法,是对迭代式面向对象方法的改进。
Crystal Methods
Crystal Methods(水晶方法族)由Alistair Cockburn在20实际90年代末提出。之所以是个系列,是因为他相信不同类型的项目需要不同的方法。虽然水晶系列不如XP那样的产出效率,但会有更多的人能够接受并遵循它。
FDD
FDD (Feature-Driven Development,特性驱动开发)由Peter Coad、Jeff de Luca 、Eric Lefebvre共同开发,是一套针对中小型软件开发项目的开发模式。此外,FDD是一个模型驱动的快速迭代开发过程,它强调的是简化、实用、 易于被开发团队接受,适用于需求经常变动的项目。
ASD
ASD(Adaptive Software Development,自适应软件开发)由Jim Highsmith在1999年正式提出。ASD强调开发方法的适应性(Adaptive),这一思想来源于复杂系统的混沌理论。ASD不象其他方法那样 有很多具体的实践做法,它更侧重为ASD的重要性提供最根本的基础,并从更高的组织和管理层次来阐述开发方法为什么要具备适应性。
DSDM
DSDM(动态系统开发方法)是众多敏捷开发方法中的一种,它倡导以业务为核心,快速而有效地进行系统开发。实践证明DSDM是成功的敏捷开发方法之一。在英国,由于其在各种规模的软件组织中的成功,它已成为应用最为广泛的快速应用开发方法。
DSDM不但遵循了敏捷方法的原理,而且也适合那些成熟的传统开发方法有坚实基础的软件组织。
轻量型RUP
RUP其实是个过程的框架,它可以包容许多不同类型的过程, Craig Larman 极力主张以敏捷型方式来使用RUP。他的观点是:目前如此众多的努力以推进敏捷型方法,只不过是在接受能被视为RUP 的主流OO开发方法而已。
软件开发方法
结构化方法 用户至上 严格区分工作阶段,每阶段有任务和结果 强调系统开发过程的体性和全局性 系统开发过程工程化,文档资料标准化 自项向下,逐步分解(求精) 原型法 面向对象方法 更好的复用性 关键在于建立一个全面、合理、统的模型 分析、设计、实现三个阶段,界限不明确 面向服务的方法
需求分析(★)
这里还是比较重要的,注意多加查阅。
软件设计(★★)
分为:概要设计,项目设计,高内聚,低耦合。
内聚与耦合的解析
软件测试与维护
主要分为,静态测试与动态测试。这里比较重点,需要好好看。
有效与无效等价类,边界值分析。
白盒测试用例(★★★★)
白盒测试又称结构测试、透明盒测试、逻辑驱动测试或基于代码的测试。白盒测试是一种测试用例设计方法,盒子指的是被测试的软件,白盒指的是盒子是可视的,即清楚盒子内部的东西以及里面是如何运作的。"白盒"法全面了解程序内部逻辑结构、对所有逻辑路径进行测试。"白盒"法是穷举路径测试。在使用这一方案时,测试者必须检查程序的内部结构,从检查程序的逻辑着手,得出测试数据。贯穿程序的独立路径数是天文数字。
McCabe复杂度计算(★★★)
注意边和节点的数量
软件维护类型(★★★★)
适应性维护与完善性维护的理论要知道。占的比重较大。
软件质量保证(★)
六个空都需要记忆啊。
软件过程改进(★★)
项目管理基础
时间管理
Gant图与Pert图(★★★★)
双代号网络图
虚线代表虚工作,不占时间与资源。