软考(软件设计师)考点总结 — 软件工程基础知识

软件开发模型

软件工程的任务是基于需求分析的结果,建立各种设计模型,给出问题的解决方案。分为概要设计与详细设计两个阶段。
概要设计: 软件体系结构的设计、模块划分、数据设计和接口设计。
详细设计阶段: 数据结构与算法设计。

快速原型模型:
在项目开发的初级阶段构造一个简易的系统,逐步演化为最终产品(适用于需求不明确的情况)。往往只应用与需求分析阶段。

喷泉模型: 适合面向对象开发

构件组装模型(CBSD):
把软件开发中的各个模块作成标准构件,然后将构件进行组装就得到了我们需要的软件。极大的提高了软件开发的复用性,可以使软件开发的总时长极大减小,软件成本降低,可靠性提高。

信息系统开发方法:

连续式模型包括六个过程域能力等级(CL):
CL0:未完成的,未执行或未达到CL1定义的所有目标。
CL1:已执行的,共形目标是过程将可标识的输入工作产品转换成可标识的输出工作产品,以实现支持过程域的特定目标。
CL2:已管理的,共性目标集中与已管理的过程的制度化。
CL3:已定义的,共性目标集中与已定义的过程的制度化
CL4:定量管理的,共性目标集中可定量管理的过程的制度化,
CL5:优化的使用量化手段改变和优化过程域,以对付客户要求的该百年或持续改进计划中的过程域功效。

CMM软件开发能力成熟度模型,给出了一个从个别的过程达到成熟的规范化过程的一个框架,分为五个阶段:
等级1:初始级,混乱不可预测
等级2:重复级,项目的到监控和追踪,有稳定的策划和产品基线。
等级3:确定级,通过软件过程定义和制度优化确保对产品质量的控制
等级4:管理级,产品质量得到策划,软件过程基于度量的追踪
等级5:优化级,持续的过程能力改进。

软件配置管理SCM: 用于整个软件工程的过程,其主要目标是标识变更、控制变更、确保变更正确实现, 告变更。
其主要内容包括:版本管理、配置支持、变更支持、过程支持、团队支持、变化 告、审计支持

ISO/IEC 9126软件质量模型: 定义了六个软件质量标准

结构化设计:

耦合:
①无直接耦合: 两个模块之间没有直接的关系,它们之间的联系完全是通过主模块的控制和调用来实现的。
②数据耦合: 指两个模块之间有调用关系,传递的是简单的数据值,相当于高级语言中的值传递。
③标记耦合: 指两个模块之间传递的是数据结构
④控制耦合: 指一个模块调用另一个模块时,传递的是控制变量,被调用模块通过该控制变量的值有选择地执行模块内的某一功能。
⑤外部耦合: 模块间通过软件之外的环境联结(如I/O将模块耦合到特定的设备、格式、通信协议上)。
⑥公共耦合: 指多个模块都访问同一个公共数据环境
⑦内容耦合: 当一个模块直接使用另一个模块的内部数据,或通过非正常入口转入另一个模块内部的耦合。
耦合性:无直接耦合<数据耦合<标记耦合<控制耦合<外部耦合<公共耦合<内容耦合(耦合性越低,模块独立性越强)

测试用例设计:

McCabe复杂度:

项目管理基础知识:

冗余

通常冗余附加技术分为四类:结构冗余、信息冗余、时间冗余、冗余附加

冗余附加技术: 实现其他类型冗余技术所需要的资源技术,包括程序指令、数据、存储和调用它们的空间通道等。
在屏蔽硬件错误的容错技术中,冗余附加技术包括:关键程序和数据的冗余存储及调用:检测、表决、切换、重构、纠错和 复的实现。
在屏蔽软件的冗余技术中,冗余附加技术包括:冗余备份程序的存储及调用;实现错误检测和错误恢复程序;实现错误软件所需要的固化程序。

风险评估

软件风险包括两个特性:不确定性和损失

风险的优先级通常是根据风险暴露(风险曝光度)设定的。风险暴露=风险影响*风险概率

软考(软件设计师)考点总结 -- 软件工程基础知识

项目的主要风险:
项目风险:涉及各 种的预算、进度、人员、资源以及和客户相关的问题;
技术风险:潜在的设计、实现、对阶、测试等维护问题
业务风险:建立一个无人想要的项目的风险、失去预算的风险等
商业风险:市场风险、策略风险、管理风险预算风险等

软考历年真题及B站相关视频课件:
链接:https://pan.baidu.com/s/1e4d1-HGOzcEVHSK8Q0j_xA
提取码:acij

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年4月22日
下一篇 2021年4月22日

相关推荐