- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件工程复习资料(黑大内部资料)
黑龙江大学软件工程复习资料
软件危机
软件危机产生的原因:软件维护费用急剧上升,威胁计算机应用;软件生产技术落后;没有好的方法和管理.
软件危机的表现形式:对软件开发成本和进度的估计常常很不准确;用户对”已完成的”软件系统不满意的现象经常发生;软件产品的质量往往靠不住;软件常常是不可维护的;软件通常没有适当的文档资料;软件成本在计算机系统总成本中所占的比例逐年上升;软件开发生产率提高的速度,既跟不上硬件的发展速度,也远远跟不上计算机应用迅速普及的趋势.
软件的生存周期:问题定义;可行性研究;需求分析;概要设计;详细分析;编码;测试;维护
SA的步骤:了解当前系统的工作流程获得当前系统的物理模型;抽象出当前系统的逻辑模型;建立目标系统的逻辑模型;做进一步的补充与优化
基本符号:矩形(源点|终点);○和□(加工处理);[和〓(存储);→(数据流)
SD步骤:(为了实现从DFD到SC的映射步骤)复审DFD图,必要时可再次修改和细化;鉴别DFD的特征,确定是变换型还是事务型;按SD的转换规则把DFD转化为初始的SC图;按照优化原则改进SC图,得到最终SC
变换型映射步骤:划分DFD的边界;建立初始SC图的步骤;分解SC图的各个分支
事务型映射步骤:在DFD图上确定事务中心,接收部分和发送部分;画出SC图的框架;分解和细化接收分支和发送分支,完成初始SC图.
耦合有:非直接耦合;数据耦合;特征耦合;控制耦合;外部耦合;公共环境耦合;内容耦合
内聚有:偶然内聚;逻辑内聚;时间内聚;过程内聚;通信内聚;顺序内聚;功能内聚(由弱到强)
设计原则:高内聚,低耦合;改进软件结构,提高模块独立性;模块规模应适中;深度,宽度,扇出和扇入都应适中;模块的作用域应该在控制之内;力争降低模块接口的的复杂程度;设计单入口单出口的模块;模块功能应该可以预测
9.Jackson的设计步骤:分析并确定输入数据和输出数据的逻辑结构,开用Jackson图描绘这些数据结构;找出输入数据结构和输出数据结构中有对应关系的数据单元;用三条原则从描绘数据结构的Jackson图导出描绘程序结构的Jackson图;列出所有操作和条件,并且把它们分配到程序结构图的适当位置.
10.用伪码表示程序
三种结构:顺序结构;选择结构;重复结构
11.测试过程:单元测试;集成测试;确认测试;运行测试
12.测试技术分为墨盒测试和白盒测试.白盒测试包括逻辑覆盖(语句覆盖;判定覆盖;条件覆盖;判定|条件覆盖;条件组合覆盖)基本路径测试和循环测试.黑盒测试包括等价类划分,边界值分析,错误推测和因果图法
静态分析(不执行程序)静态分析器,代码复审.动态分析(执行程序)黑盒测试和白盒测试,白盒是结构测试,黑盒是功能测试
路径覆盖法(点覆盖,边覆盖和基本路径覆盖)
13.软件工程学包括三个要素(方法,工具,过程)
14.面向数据流设计的目标是:给出设计软件结构的一个系统化的途径,通常把编码和测试统称为实现.
15.软件=程序+数据+文档
16.Jackson是一种面向数据结构的方法
17.面向对象的三种分析模型是类-对象模型,对象关系模型和对象行为模型
18.数据流图的类型有变换型和事务型
19.设计常用的表达工具有:流程图N-S图;判定表和判定树;PAD图
20.结构化设计是一种面向数据流的设计方法
21.软件工程是用科学知识和技术原理定义开发,维护软件的一门学科
22.瀑布模型的特点:阶段的顺序性和依赖性;推迟实现的特点;质量保证;存在问题
23.软件开发模型有1传统软件开发模型(瀑布模型和快速模型)2软件演化模型(增量模型和螺旋模型)3面向对象的模型(构件集成模型)4形式化方法模型(转换模型和净空模型)
24.软件周期是描述软件开发过程中各种活动如何执行的过程主要的生存周期模型有瀑布模型,快速模型,增量模型,螺旋模型,变换模型,净空模型和集成模型
25.软件编码风格:(源程序代码简明清晰,易读易懂是好程序的一个重要指标)程序的内部文档;数据说明;语句构造;输入输出;效率(程序运行时间;存储器效率;输入输出的效率)
26.维护是生存周期最长费用最多的阶段:完善性维护(50%);适应性维护(24%);纠错性维护(20%);预防性维护(5%)
27.软件的可维护性:可理解性;可修改性;可测试性
28.提高可维护性方法:签订明确的软件质量目标;利用先进的软件开发技术和工具;建立明确的费用保证工作;选择可维护的语言;改进程序文档
填空题
传统的瀑布模型把软件生存周期划分为问题定义,可性行性研究,需求分析,概要设计,详细设计,编码,测试和维护共8个阶段.
软件=数据+程序+文档
画数据流的正确做法是:从系统的基本模型开始,逐层地对系统进行分解,每分解一次,系统的加工数量都足够简单,不必再分解为止
结构化分析方
文档评论(0)