为帮助考生备考2023年软考软件设计师,编程学习网软考为大家整理了2023年软件设计师备考知识点集锦,希望对大家掌握软件设计师考试知识点会有帮助。
为帮助考生了解2023年软考软件设计师考试知识点,编程学习网软考为大家整理了2023年软件设计师备考知识点集锦,希望对大家备考会有帮助。以下为2023年软考软件设计师备考知识点集锦部分内容,完整内容请考生点击资料下载查看。
第1章 系统开发基础
一、软件工程概述(2星)
1、CMM模型
初始级:杂乱无章,甚至混乱,几乎没有明确定义的步骤,项目的成功完全依赖个人的努力和英雄式核心人物的作用。
可重复级:建立了基本的项目管理过程和实践来跟踪项目费用、进度和功能特性,有必要的过程准则来重复以前在同类项目中的成功。
已定义级:管理和工程两方面的软件过程已经文档化、标准化,并综合成整个软件开发组织的标准过程。
已管理级:制定了软件过程和产品质量的详细度量标准。
优化级:加强了定量分析。通过来自过程质量反馈和来自新观念、新技术的反馈使过程能不断持续地改进。
2、CMMI阶段式模型
初始的:过程不可预测且缺乏控制。
已管理的:过程为项目服务。
已定义的:过程为组织服务。
定量管理的:过程已度量和控制。
优化的:集中于过程改进。
3、CMM连续式模型
CLO(未完成的):过程域未执行或未得到CL1中定义的所有目标。
CL1(已执行的):其共性目标是过程将可标识的输入工作产品转换成可标识的输出工作产品,以实现支持过程域的特定目标。
CL2(已管理的):其共性目标是集中于已管理的过程的制度化。CL3(已定义级的):其共性目标集中于已定义的过程的制度化。CL4(定量管理的):其共性目标集中于可定量管理的过程的制度化。
CL5(优化的):使用量化(统计学)手段改变和优化过程域,以满足客户的改变和持续改进计划中的过程域的功效。
二、软件开发方法(3星)
1、结构化开发方法:用户至上,严格区分工作阶段,每阶段有任务和结果,强调系统开发过程的整体性和全局性,系统开发过程工程化,文档资料标准化,自顶向下,逐步分解(求精)。
2、原型开发方法:适用于需求不明确的情况。
3、面向对象开发方法:更好的复用性,关键在于建立一个全面、合理、统一的模型,分析、设计、实现三个阶段,界限不明确。
4、面向服务开发方法:面向对象更高标准的抽象。
三、软件开发模型(5星)
1、瀑布模型:瀑布模型是将软件生存周期中的各个活动规定为依线性顺序连接的若干阶段的模型,包括需求分析、设计、编码、运行与维护。
瀑布模型的特点是容易理解,管理成本低,每个阶段都有对应的成果产物,各个阶段有明显的界限划分和顺序要求,一旦发生错误,整个项目推倒重新开始。
适用于需求明确的项目,一般表述为需求明确或二次开发,或者对于数据处理类型的项目
2、V模型:强调测试贯穿项日始终,而不是集巾在测试阶段。是一种测试的开发模型。
3、喷泉模型:典型的面向对象的模型。特点是迭代、无间隙。会将软件开发划分为多个阶段,但各个阶段无明显界限,并且可以迭代交叉。
4、原型模型:典型的原型开发方法模型。适用于需求不明确的场景,可以帮助用户明确需求。
5、增量模型:融合了瀑布模型的基本成分和原型实现的选代特征,可以有多个可用版本的发布,核心功能往往最先完成,在此基础上,每轮迭代会有新的增量发布,核心功能可以得到充分测试。强调每一个增量均发布一个可操作的产品。
6、螺旋模型:典型特点是引入了风险分析。结合了瀑布模型和演化模型的优点,最主要的特点在于加入了风险分析。它是由制定计划、风险分析、实施工程、客户评估这一循环组成的,它最初从概念项目开始第一个螺旋。属于面向对象开发模型,强调风险引入。
7、统一过程(在软件设计师考试中UP、RUP都指统一过程):典型特点是用例驱动、以架构为中心、迭代和增量。统一过程把一个项目分为四个不同的阶段:
构思阶段:包括用户沟通和计划活动两个方面,强调定义和细化用例,并将其作为主要模型。
细化阶段:包括用户沟通和建模活动,重点是创建分析和设计模型,强调类的定义和体系结构的表示。
构建阶段:将设计转化为实现,并进行集成和测试。
移交阶段:将产品发布给用户进行测试评价,并收集用户的意见,之后再次进行迭代修改产品使之完善
8、敏捷开发:是一种以人为核心、选代、循序渐进的开发方法,适用于小团队和小项目,具有小步快跑的思想。常见的敏捷开发方法有极限编程法、水晶法、并列争球法和自适应软件开发方法。