软考--软件设计师(软件工程总结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.系统测试

相关推荐
数字时代全景窗6 小时前
数字的长征:从蒸汽机到智能体——可计算化革命的底层演进脉络
人工智能·架构·软件工程
极创信息7 小时前
信创软件快速适配信创改造,实战落地思路
java·大数据·数据库·人工智能·mvc·软件工程·hibernate
sensen_kiss10 小时前
CPT304 SoftwareEngineeringII 软件工程 2 Pt.3 设计模式(上)
设计模式·软件工程
威尔逊·柏斯科·希伯理10 小时前
软考-软件工程(1-软件工程基础与开发方法)
软件工程
workflower1 天前
农业信息化
大数据·人工智能·设计模式·机器人·软件工程
雪碧聊技术1 天前
上午题_软件工程
软件工程
互联网推荐官2 天前
上海物联网应用开发技术路径深度拆解:协议接入、数据架构与平台选型实战指南
物联网·struts·架构·软件工程
互联网推荐官2 天前
上海软件定制开发技术路径深度拆解:架构选型、工程落地与平台能力实测
人工智能·软件工程
软服之家2 天前
Lidar360 9.1&Lidar360MLS9.1雷达点云数据处理软件
软件工程
rolt2 天前
[答疑]把缺省伪状态和历史伪状态合并可行吗
软件工程·架构师·uml