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

目录

1.定义

2.软件生存周期

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

​编辑4.软件开发模型

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

6. 需求工程

7.系统设计

8.系统测试


1.定义

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

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

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

2.软件生存周期

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

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

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

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

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

5.编码:程序代码

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

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

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

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

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

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

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



4.软件开发模型

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

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

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

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

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

(1)快速原型模型:

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

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

(2)螺旋模型:

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

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

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

3.增量模型:

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

4.喷泉模型:

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

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

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

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

6. 统一过程(UP):

典型代表:RUP

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

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

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

6. 需求工程

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

可以细分为6个阶段:

7.系统设计

1,概要设计

2.详细设计

8.系统测试

1.传统软件的测试策略

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

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

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

2.集成测试

3.确认测试

4.系统测试

  • 9
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值