第一章。
各类软件过程模型:
1、 瀑布模型(特点:1、阶段间具有顺序性和依赖性 2、推迟实现的观点3、质量保证的观点)
2、 快速原型模型。
3、 增量模型。
4、 螺旋模型。
5、 喷泉模型。
敏捷过程。1) 个体和交互胜过过程和工具。
2) 可以工作的软件胜过面面俱到的文档。
3) 客户合作胜过合同谈判。
4) 响应变化胜过遵循计划。
极限编程(xp过程)
1) 极限编程的有效实践。
2) 极限编程的整体开发过程。
3) 极限编程的迭代过程。
第二章。可行性研究的任务。
1) 技术可行性。
2) 经济可行性。
3) 操作可行性。
可行性研究的任务:对以后的行动方针提出建议。
数据流图(dfd) 见p40
数据流图有4种基本符号:正方形(或立方体)表示数据的源点或终点;圆角矩形(或圆形)代表变换数据的处理;开口矩形(或两条平行横线)代表数据存储;箭头表示数据流,即特定数据的流动方向。(注意:
数据流与程序流程图中用箭头表示的控制流有本质不同,千万不要混淆。)
数据流图有四种基本成分: 数据流、加工(又称为数据处理)、文件、数据的源点或终点。
数据字典p47
数据字典的内容:
由对下列4类元素的定义组成。
1) 数据流;
2) 数据流分量(即数据元素);
3) 数据存储;
4) 处理。
数据字典有以下四类条目:数据流、数据项、文件、基本加工。数据项是组成数据流和数据存储的最小元素。
由数据元素组成数据的方式只有下述3种基本类型:
1) 顺序。
2) 选择。
3) 重复。
4) 可选。
第三章。有关用例文档的书写。
基本路径。1、 只书写“可观测”的。
2、 使用主动语句。
3、 句子必须以执行者或系统作为主语。
4、 每一句都要朝目标迈进。
5、 分支和循环。
6、 不要涉及界面细节。
需求分析的任务。
1、 确定对系统的综合要求。
2、 分析系统的数据要求。
3、 导出系统的逻辑模型。
4、 修正系统开发计划。
如何识别执行者,如何识别用例。
识别用例的三条原则:
1、 用例是否包含步骤。
2、 有无输入输出(业务价值)。
3、 是否在业务价值上具有独立性。
用例描述:前置:取款。
后置:取款成功。
涉众利益:客户:安全。
柜员:方便。
银行:安全,合法。
法律:保护客户、银行利益。
基本路径:1、 柜员提交取款请求。
2、 系统显示取款页面。
3、 柜员填写取款信息。
4、 系统检测信息是否充分。
5、 系统显示取款信息。
6、 柜员确认取款信息。
7、 系统显示账户信息输入界面。
8、 柜员刷卡输入帐户。
9、 取款人输入密码。
10、 系统验证帐户、密码是否合法,扣款金额。
11、 系统显示交易信息。
12、 系统打印交易单。
13、 柜员确认交易信息。
14、 系统扣除扣款金额。
15、 系统显示交易成功。
4a、显示取款不充分。
4a1、返回重写。
4a2、放弃。
4b、小于最小取款金额,或大于最大取款金额。
4b1、返回重写。
4b2、放弃。
6a、柜员不确认。
6a1、返回重写。
6a2、放弃。
第五章。模块独立。
耦合程度:(高—低)
内容耦合。公共环境耦合。
特征耦合。控制耦合。
数据耦合。ps:尽量使用数据耦合,少用控制耦合和特征耦合,限制公共环境耦合的范围,完全不用内容耦合。
内聚程度:(高--低)
功能内聚。顺序内聚。
通信内聚。过程内聚。
时间内聚。逻辑内聚。
偶然内聚。高内聚,低耦合。
启发规则。1、 改进软件结构提高模块独立性。
2、 模块规模应该适中。
3、 深度、宽度、扇出和扇入都应适当。
4、 模块的作用域应该在控制域之内。
5、 力争降低模块接口的复杂程度。
6、 设计单入口单出口的模块。
7、 模块功能都应该可以**。
软件结构图设计。
第六章。盒图。
pad图。判定表。
判定树。流图。
第七章。软件测试基础。
白盒测试技术。
逻辑覆盖。1、 语气覆盖。
2、 判定覆盖。
3、 条件覆盖。
4、 判定/条件覆盖。
5、 条件组合覆盖。
6、 点覆盖。
7、 边覆盖。
8、 路径覆盖。
控制结构测试。
1、 基本路径测试。
2、 条件测试。
3、 循环测试。
重点条件测试。
黑盒测试技术,等价类划分 p171
软件测试步骤。
1、 模块测试。
2、 子系统测试。
3、 系统测试。
4、 验收测试。
5、 平行测试。
5.在白盒测试方法中,采用控制结构测试中的条件测试方法测试程序中的条件是否会发生布尔运算错或者算数表达式错等错误,这种方法是对测试的条件给出的约束集,如c1条件表达式为l1:b1&&b2, 则c1约束集为{(t,t),(t,f),(f,t)}现有c2条件,其条件表达式为:
l2:(e1>e2)&b1&(e3=e4),请设计出c2的约束集(请写出设计过程)
软件工程导论期末复习
一 填空题。1.软件生存周期一般可分为 问题定义 可行性研究 需求分析 设计编码 测试 运行与维护阶段。2.按软件的功能进行划分,软件可以划分为系统软件支撑软件和应用软件。3.可行性研究主要集中在以下四个方面经济可行性技术可行性法律可行性和抉择。4.用户界面的可使用性是用户界面设计最重要的也是最基本...
软件工程导论复习 精
第一章,软件工程导论。一 软件工程是指导计算机软件开发和维护的一门工程学科。二 件工程的七条基本原则 1.用分阶段的生命周期计划严格管理。2.坚持进行阶段评审。3.实行严格的产品控制。4.采用现代程序设计技术。5.结果应能清楚地审查。6.开发小组的人员应该少而精。7.承认不断改进软件工程实践的必要性...
软件工程导论复习解答
一 选择题。1 软件重用的单位是 a a 软件模块b 功能。c 系统d 语句。2 软件生存周期借用了 d 中产品生存周期的概念。a 计算机科学b 需求。c 数学d 工程。3 项目开发计划是 d 文档。a 技术性b 管理性。c 设计d 需求分析。4 在结构化分析 sa 中,c 与数据流图共同构成了系统...