软考--软件设计师(软件工程总结1)

目录

1.定义

2.软件生存周期

3.软件过程(即软件开发中遵循的一系列可预测的步骤)

​编辑4.软件开发模型

5.需求分析(软件需求分析,系统需求分析或需求分析工程)

[6. 需求工程](#6. 需求工程)

7.系统设计

8.系统测试


1.定义

软件工程:指的是应用计算机科学,数学及管理科学等原理,以工程化的原则和方法来解决软件问题的工程。

目的是:提高软件生产率,提高软件质量,降低软件成本。

计算机软件:指的是计算机系统中的程序及其文档。

2.软件生存周期

软件生存周期包括以下七个方面:

1.可行性分析与项目开发计划:确定软件的开发目标及其可行性。产生的文档有:可行性分析报告,项目开发计划。

2.需求分析:确定软件系统要做什么,功能,性能,数据和界面等要求。产生文档:软件需求说明书

3.概要设计:设计软件的结构,明确软件由哪些模块组成。产生文档:概要设计说明书

4.详细设计:对每一模块的功能进一步详细,具体的描述。产生文档:详细设计文档。

5.编码:程序代码

6.测试:另一个部门的软件设计师或系统设计师进行测试。产生文档:软件测试计划,测试用例,测试报告。

7.维护:是生存周期中时间最长的阶段。

3.软件过程(即软件开发中遵循的一系列可预测的步骤)

1.软件过程中能力成熟度模型:

CMM(能力成熟度模型):初始级,可重复级,已定义级,已管理级,优化级。

CMMI(能力成熟度模型集成):初始级,已管理级,已定义级,定量管理级,优化级。

连续式模型:未完成的,已执行的,已管理的,已定义级的,定量管理级的,优化的。

4.软件开发模型

1.瀑布模型:结构化方法的模型

适用场合:需求明确或二次开发

优点:容易理解,成本低,强调开发的阶段性早期计划及需求调查和产品测试

缺点:客户必须能完整,正确和清晰的表达需求

2.演化模型:适用于软件需求不够明确的情况

(1)快速原型模型:

在开发初期构造一个简易系统(可为界面,可为初步的系统),以比较低的成本来获取比较全面的用户需求。

适用场合:用户需求不明确,需求经常变化且系统规模不太大,不太复杂的软件项目。

(2)螺旋模型:

将瀑布模型和原型模型结合起来,并强调风险分析。

与瀑布模型相比,支持用户希求的动态变化。

适用场合:用于庞大,复杂且具有高风险的系统。

3.增量模型:

先做一块核心模块,之后交给用户体验,之后再做另一块核心模型...(风险小

4.喷泉模型:

适用于面向对象的开发方法。

5.基于构件的开发模型:利用预先包装的构件来构造应用系统。

构件:面向软件系统体系架构的可复用软件模块。

具有许多螺旋模型的特点。本质上是演化模型,需要以迭代的方式构建软件。

  1. 统一过程(UP):

典型代表:RUP

7.敏捷开发方法:尽可能早的,持续的对有价值的软件进行交付

5.需求分析(软件需求分析,系统需求分析或需求分析工程)

准确理解用户和项目的功能,性能,可靠性等具体要求。

6. 需求工程

是一个不断反复的需求定义,文档记录,需求演进的过程,并最终在验证的基础上冻结需求。

可以细分为6个阶段:

7.系统设计

1,概要设计

2.详细设计

8.系统测试

1.传统软件的测试策略

软件测试分为4步:单元测试,集成测试,确认测试和系统测试

单元测试:也叫模块测试。侧重于模块中的内部处理逻辑和数据结构

在每个模块进行测试时,需要开发两种模块:

2.集成测试

3.确认测试

4.系统测试

相关推荐
holeer5 天前
【V3.0】「酒店 × 视觉AI」项目 | 需求分析说明书(软件工程概论 - 课程作业三)
人工智能·软件工程·需求分析·原型设计·总体设计·结构化设计
雾江流5 天前
Xtra 2.54.1 | Twitch直播第三方客户端,开源纯净无广
软件工程
张较瘦_6 天前
[论文阅读] AI + 教育 | 不是单纯看视频!软件工程培训的游戏化融合之道
论文阅读·人工智能·软件工程
张较瘦_6 天前
[论文阅读] AI + 软件工程 | 用统计置信度破解AI功能正确性评估难题——SCFC方法详解
论文阅读·人工智能·软件工程
@insist1236 天前
软考-软件设计师-计算机体系结构核心考点与应用
软件工程·软考·软件设计师
零一iTEM7 天前
Bambu Studio 在Windows上无法启动
笔记·软件工程·学习方法
yzx9910137 天前
重构边界:软件工程与计算机科学的未来就业方向深度观
重构·软件工程
木枷8 天前
KIMI-DEV: AGENTLESS TRAINING AS SKILL PRIORFOR SWE-AGENTS
人工智能·软件工程
木枷10 天前
SWE-smith: Scaling Data for Software Engineering Agents
人工智能·软件工程
郝学胜-神的一滴10 天前
在Vibe Coding时代,学习设计模式与软件架构
人工智能·学习·设计模式·架构·软件工程