没有合适的资源?快使用搜索试试~ 我知道了~
软件工程期末总结题目总结:1. (第12章:代码工程质量):结构化程序设计是什么,?给一段代码,是结构化的吗,不是的话把它改成结构化的。答:结构化程序设计:所有
资源详情
资源评论
资源推荐
软件工程期末总结
题目总结:
1. (第 12 章:代码工程质量):
结构化程序设计是什么,?
给一段代码,是结构化的吗,不是的话把它改成结构化的。
答:
结构化程序设计:所有的程序都可以由以下 3 张语句块构成:(1)赋值语句块
(2)if-then-else 语句块(3)while 循环块。这 3 中语句块是不再分隔的语句块。
此时便是结构化程序。如果出现如 goto 语句,则会发生从一个模块转移到另一
个模块或另一个模块内部,破坏了程序的结构化,此时就不再是结构化程序。
【注:可以有限制的使用 goto 语句而不破坏程序的结构化】
2. (第 13 章:软件测试理论与技术):
1 根据代码,画 program flow
2 填表,熟练理解 语句覆盖,分支覆盖,MC/DC 概念
Table 6-2: Test-Cases
Test-cases (测试用例)
Inputs
Outputs expected
The need of coverage test
(测试要求)
AA
BB
CC
x
y
z
Statement coverage = 100%
(语句覆盖达 100%)
1
1
1
1
1
0
Branch coverage or
Decision–Decision Path(DDP)
= 100%
(分支覆盖达 100%)
1
1
0
1
1
0
1
0
1
MC/DC = 100%
1
1
0
1
1
1
1
0
1
0
1
0
Table 6-1:
x = 3.0;
y = 3.0;
if (AA && BB)
{
z = x + y;
if (CC)
{ z = y + x/y;}
else
{ y = x + y}
}
z = z + x/y;
第二章 基于计算机的系统
计算机系统故障种类:
(1) 硬件故障
(2) 软件故障
系统软件故障通常可以分为以下几类:
A. 计算机的除零错误
B.指向内存地址的指针超出规定的内存范围
C.整形数上溢或下溢
D. 浮点数上溢出或下溢出
E.其它类型的错误包括数据精度不够,输出或显示的数据位数不够等等。
以下为 WEB 服务器的典型故障:
A. 资源耗尽。例如,内存泄露,线程池耗尽导致的速率降低,资源密集处理
导致服务请求超时,快速增长的日志文件消耗掉磁盘
B.计算逻辑错误。例如,引用数据库中的表,使用未释放的你村,指针奔溃,
程序死锁等造成的同步错误。
C.系通过在,系统过载导致的资源竞争,以及与其它软件进程之间的频繁交
互。
D. 可恢复的代码错误。系统的容错设计过于复杂,并且没得到充分的测试。
E.系统的升级错误。例如,升级前的备份工作出现问题,升级时未检查升级前
后的软件兼容问题。软件升级后自动进入到缺省状态。继承错误或第三方软
件有错。
(3) 人为操作故障
因错误操作导致的刺痛故障主要分为配置错误,规程错误和综合错误,以下是
详细介绍。
A. 配置错误。其发生原因可能是由于错误的配置导致系统复位缺省的配置或
是配置文件崩溃,启动脚本忽略了必要的服务等等。
B.规程错误。其发生原因可能是由于数据库备份出现故障,恢复了错误的备
份,忘记启动 WEB 服务器,错误删除文件,不正确输入,以及忘记删除日
志文件导致磁盘被占满。
C.综合错误。其发生原因可能是有与设备滑落造成创伤,或是电源意外断开。
第三章 软件开发过程
软件开发过程使用模型:
1. 瀑布模型
软件对安全和性能有极其严格的要求,容不得半点疏漏,比如航空航天软件。
这样用瀑布模型的话能够有效地控制每一环节,所有流程都有文档可循。
2. 快速原型模式
快速体现用户需求,确保交付的产品满足用户的要求,非常适合界面和人机交
互的系统的快速开发。
当时是规模不是很大的,商业型的应用软件,更倾向于快速得到可用的软件。
而且软件需要能够适应市场的变化作出相应的调整。原型模型无疑是更适合
的。
3. 增量模型
优点:
(1)采用增量模型的优点是人员分配灵活,刚开始不用投入大量人力资源;
(2)如果核心产品很受欢迎,则可增加人力实现下一个增量;
(3)可先发布部分功能给客户,对客户起到镇静剂的作用
应用:
(1)进行已有产品升级或新版本开发,增量模型是非常适合的;
(2)对完成期限严格要求的产品,可以使用增量模型;
4. 渐进式模型
强调目标与方案之间相互调试不是一步到位,注重反馈调节,不断微调,而且
注重对现行政策的修改和补充
应用:
中小规模的交互式系统
大系统的一部分(例如,用户接口)
生命周期较短的系统
5. 螺旋模型
螺旋式模型采用周期性方法开发,每个项目阶段使用瀑布式模型法,每个周期
都包括需求定义,风险分析,工程实现,评审共 4 个阶段,进行迭代。因此它
强调了进行风险分析,适用于做庞大,复杂,高风险系统。
6. 同步和稳定模型
满足未来的用户需求,确保部件能够成功集成,适合小规模和大规模的产品开
发。但所体现的是“足够好”而不是等到产品“完美”才发布,除微软之外没
有得到普遍使用
7. 建造和调试模型
适合短程序,不需要维护的程序,几乎没有软件工程的概念,不适合任何稍大
的程序。
8. 形式化方法
形式化方法是指通过数学的方法来解决软件工程领域的问题,主要包含建立精
确的数学模型以及对模型的分析活动,。此种方法的出发点是数学逻辑方法,目
的是开发可靠的软件产品。
第四章 软件质量
ISO 9126 模型
从产品质量观点出发,产品质量模型将产品质量分解为许多质量因素。ISO
9126 模型将软件质量属性划分为 6 个特性(功能性,可靠性,易用性,效率,
维护性和可移植性)
相关名词解释:
功能性:功能性是指软件在指定条件下使用时,软件产品提供满足明确和隐含
要求的功能的能力,包含密安性,互操作性,适合性,准确性等。
可靠性:可靠性是指在特定条件下使用时,软件产品维持规定的性能级别的能
力。包括成熟性,容错性,易恢复性。
易用性:易用性是从用户观点来看,指在特定条件下使用时,软件产品被理
解,学习,使用和吸引用户的能力。包括易理解性,易操作性,易学习性,吸
引性。
效率:在规定条件下软件产品所占有的资源数量以及所提供的功能和性能的能
力。包括时间特性,资源利用性.
可维护性:是指软件产品可被修改和维护的能力,包括易分析性,易修改性,
稳定性,已测试性。
可移植性:软件产品从一个环境迁移到另一种环境的能力。
第五章 系统的可信赖性
相关名词解释:
可信赖性:人们对基于计算机系统所提供的服务的信任程度,包括以下属性:
可靠性:系统服务的连续程度
安全性:不会给环境和人员带来灾难性的后果,获得安全性的方法是设计容错
机制,容错是从发生事故和错误组合的系统设计概率角度出发的,而没有考虑
系统被攻击的情况。容错是指一个系统有多个独立的部件同时完成一个任务。
可维护性:修复和进入正常工作状态的能力
密安性:由可用性和具有授权的完整性和保密性所构成。包括:防止非授权用
户存取或访问系统中的信息,以及防止意外事故等引起的不希望的信息泄露。
完整性:不会发生不适当的修改信息的情况
可用性:
密保性:
生存性,鲁棒性:在系统被攻击时,系统面对攻击的坚固和抵抗程度。
第六章:
软件销售与采购
采购过程:
1. 策划组织采购策略,评审采购者的目的
2. 建立一个适合组织需要的采购过程
3. 定义软件需求
4. 识别潜在供货商
5. 准备合同要求
6. 方案评审,选择供货商
7. 监督和管理供货商
8. 软件验收
9. 运行
第八章 需求工程
相关概念:
软件开发周期的六个步骤:
1. 制定计划(确定要开发软件系统的总目标,给出功能、 性能、可靠性以及
接口等方面的要求,完成该软件任务的可行性研究,制定出完成开发任务的实
施计划)
2. 需求分析(对待开发软件提出的需求进行分析并给出详细的定义)
3. 设计(把各项需求转换成软件的体系结构,对每个模块要完成的工作进行具
体的描述,为源程序编写打下基础)
4. 程序编码(把软件设计转换成计算机可以接受的程序代码)
5. 测试(通过单元模块测试和组装测试,对各项需求进行有效性测试)
6. 运行维护(改正性维护 适应性维护 完善性维护 )
需求分析:是软件开发周期最重要的阶段,目的是从非正式的思想中提炼出“规
格说明或规范”,提出系统的功能和非功能需求,以及如何测量是否满足这些要
求的准则或度量标准,将这些编写成为文档即需求规范,如果此规范描述的是
系统级的,包括了软件和硬件则称为系统需求规范;如果只包括软件则称为软
件需求规范。
需求类型:用户需求,系统需求(建设者角度)
需求内涵:功能需求,非功能需求,领域和行业需求(可以归到非功能需求
中)
第十章 体系结构设计
Philippe Kruchten 建立了“4+1”视图模型。该模型从四个角度(逻辑、实现、进
程和部署)指出不同的相关利益方关心的事情。
及时进步哩!
剩余22页未读,继续阅读
臭人鹏
- 粉丝: 24
- 资源: 329
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0