软件工程复习大纲(精)

上传人:cl****1 文档编号:494080343 上传时间:2023-05-05 格式:DOC 页数:24 大小:79.50KB
返回 下载 相关 举报
软件工程复习大纲(精)_第1页
第1页 / 共24页
软件工程复习大纲(精)_第2页
第2页 / 共24页
软件工程复习大纲(精)_第3页
第3页 / 共24页
软件工程复习大纲(精)_第4页
第4页 / 共24页
软件工程复习大纲(精)_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《软件工程复习大纲(精)》由会员分享,可在线阅读,更多相关《软件工程复习大纲(精)(24页珍藏版)》请在金锄头文库上搜索。

1、第一章软件工程学概述1. 什么是软件危机?软件危机表现在哪些方面?软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。(1软件开发成本和进度难以控制(2用户需求不明确、变更过多(3软件质量差(4软件 维护困难(5软件成本日益增长(6开发进度难以控制(7软件产品 供不应求”2. 软件工程是指什么?软件工程的性质是什么?软件工程就是为了经济地获得可靠的且能在实际机器上有效地运行的软件,而建立和使用完善的工程原理。或者:把系统的、规范的、可度量的途径应用于软件开发、运行和维护过 程;研究中提到的研究。1软件工程关注于大型程序的构造2软件工程的中心课题是控制复杂性3软件经常变化4开发软件

2、的效率非常重要5和谐地合作是开发软件的关键6软件必须有效地支持它的用户7在软件工程领域中是由具有一种文化背景的人替具有另一种文化背景的人3. 软件工程面临的问题有哪些?4. 什么是软件工程过程?它包含哪些过程?5. 什么是软件生存周期,它包括哪些活动?软件生存周期由定义、开发、运行维护三个时期组成 ,每个时期又进一步可划 分为若干个阶段。问题定义,可行性研究,需求分析,总体设计,详细设计,编码和单元 测试,综合测试,共七个。6. 什么是软件生存周期模型?它有哪些主要模型,各个的含义及适用场合是什么?软件生命周期模型是从软件项目需求定义直至软件经使用后废弃为止,跨越整个生存周期的系统开发、运作和

3、维护所实施的全部过程、活动和任务的结构框架。目前常见的模型有瀑布模型(历史悠久、广为人知,它的优势在于它是规范的文档驱动的方法;这种模型的问题是,最终开发出的软件产品可能不是哟偶那个 湖真正需要的、快速原型模型(为了克服瀑布模型的缺点而设计,通过一个快速构建起来 起一个可在计算机上运行的原型系统,让用户使用原型并收集用户反馈意见的办法, 获取用户的真正需求、增量模型(具有可在软件开发的早期阶段使投资获得明显回 报的较易维护的优点,但是要求软件具有开放的结构是使用这种模型时固有的困 难、螺旋模型(适用于内部开发的大型软件项目,但是只有在开发人员具有风险分析 和排除分先的经验及专门知识时,使用这种

4、模型才会取得成功等。7. 结构化方法总的指导思想是什么?8. 软件开发的目标是什么?第二章可行性研究1、可行性研究的任务有哪些?可行性研究的主要任务是 了解客户的要求及现实环境,从技术、经济和社会因 素等三方面研究并论证本软件项目的可行性,编写可行性研究报告,制定初步项目开 发计划。”可行性研究的最根本任务:对软件开发以后的行动方针提出建议。2、可行性研究包括哪些步骤?1复查系统规模和目标2研究目前正在使用的系统3导出新系统的高层逻辑模型4进一步定义冋题5导出和评价供选择的解法6推荐行动方针7草拟开发计划8书写文档提交审查3、可行性研究报告包括哪些主要内容?引言(编写目的、背景、定义、参考资料

5、,可行性研究的前提(要求、目标、条 件、假定和限制、进行可行性研究的方法、评价尺度 ,对现有系统的分析(数据流程 和处理流程、工作负荷、费用开支、人员、设备、局限性 ,所建议的系统(对所建议 系统的说明、数据流程和处理流程、改进之处、影响、局限性、技术条件方面的可 行性,可选择的其他方案,投资和收益分析,社会条件方向的可能性4、什么是数据流图?其作用是什么?通过什么完成其细化操作?其中的基本符号 各表示什么含义?数据流图是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中 所经受的变换。在数据流图中没有任何具体的物理部件,它只是描绘数据在软件中流动和被处 理的逻辑过程,是系统逻辑功能的

6、图形表示,即使不是专业的计算机技术人员也容易 理解它,因此是分析员与用户之间极好的通信工具。设计数据流图时只需考虑系统必须完成的基本逻辑功能,完全不需要考虑怎样 具体地实现这些功能,所以它也是今后进行软件设计的很好的出发点。细化:为了表达数据处理过程的数据加工情况,需要采用层次结构的数据流图。 按照系统的层次结构进行逐步分解,并以分层的数据流图反映这种结构关系,能清楚 地表达和容易理解整个系统。4种基本符号:正方形(或立方体表示数据的源点或终点;圆角矩形(或圆形代表变 换数据的处理;开口矩形(平行线代表数据存储;箭头表示数据流,即特定数据的流动 方向。5、什么是数据字典?其作用是什么?它有哪些

7、条目?和数据流图之间有什么关系?数据字典是关于数据的信息的集合,也就是对数据流图种包含的所有元素的定 义的集合。作用是在软件分析和设计的过程中给人提供关于数据的描述信息。数据 流图和数据字典共同构成系统的逻辑模型,没有数据字典数据流图就不严格,没有数 据流图数据字典也难于发挥作用。6建立数据字典的形式是什么?一般说来,数据字典应该由对下列4类元素的定义组成:(1数据流(2数据流分量(即数据元素(3数据存储(4处理CASE结构化分析与设计工具(大型软件来实现7、结构化语言的结构由哪些部分组成?8、结构化分析方法的描述工具有哪些?第三章需求分析1、需求分析的基本任务是什么?目标是什么?基本任务不是

8、确定系统怎样完成它的工作,而是确定系统必须完成哪些工作,也 就是对目标系统提出完整、准确、清晰、具体的要求。目的是确定目标系统必须具 备哪些功能。具体如下:(1确定对系统的综合要求功能需求、性能需求、可靠性和可用性需求、出错处理需求、接口需求、约 束、逆向需求、将来可能提出的要求,共8项(2分析系统的数据要求(3导出系统的逻辑模型(4修正系统开发计划2、需求分析的难点主要表现在哪些方面?需求获取和分析有一定的难度,因为:1项目相关人员通常并不真正知道希望计算机做什么,让他们清晰的表达出需要系统做什么是件困难的事,他们或许提出不切实际的要求。2项目相关人员用自己的语言表达需求,这些语言包含很多工

9、作中的专业术语和专业知识。系统分析员没有这些知识和经验,而他们又必须了解这些需求3不同的项目相关人员有不同的需求,可能以不同的方式表达,分析人员必须发 现所有潜在的需求资源,而且能发现这些需求的相容或冲突之处。经济和业务环境决定了分析是动态的,需求在分析过程中会发生变更。个别需 求的重要程度会改变,新的需求会从新的项目相关人员那里得到。3、ER图的含义及绘制方法。ER图-是用来建立数据模型的工具。ER图中包含了实体(即数据对象、关系 和属性等3种基本成分。通常用矩形框代表实体;用连接相关实体的菱形框表示关 系;用椭圆形或圆角矩形表示实体(或关系的属性;并用直线把实体(或关系与其属性 连接起来。

10、4、状态转换图的含义及描制方法。状态转换图(简称为状态图:通过描绘系统的状态及引起系统状态转换的事件,来 表示系统的行为。此外,状态图还指明了作为特定事件的结果系统将做哪些动作(例 如,处理数据。初态用实心圆表示,终态用一对同心圆(内圆为实心圆表示。中间状态用圆角矩形表示,可以用两条水平横线把它分成上、中、下3个部分。上面部分为状态的名称,这部分是必须有的;中间部分为状态变量的名字和值,这 部分是可选的;下面部分是活动表,这部分也是可选的。活动表的语法格式:事件名(参数表/动作表达式其中,事件名”可以是任何事件的名称。在活动表中经常使用下述3种标准事件:entry, exit和do。entry

11、事件指定进入该状态的动作,exit事件指定退出该状态的动 作,而do事件则指定在该状态下的动作。需要时可以为事件指定参数表。活动表中 的动作表达式描述应做的具体动作。状态图中两个状态之间带箭头的连线称为状态转换,箭头指明了转换方向状态变迁通常是由事件触发的,在这种情况下应在表示状态转换的箭头线上标 出触发转换的事件表达式;如果在箭头线上未标明事件,则表示在源状态的内部活动 执行完之后自动触发转换。事件表达式的语法:事件说明守卫条件/动作表达式事件说明的语法为:事件名(参数表。守卫条件是一个布尔表达式。如果同时使用事件说明和守卫条件,则当且仅当 事件发生且布尔表达式为真时,状态转换才发生。如果只

12、有守卫条件没有事件说明, 则只要守卫条件为真状态转换就发生。动作表达式是一个过程表达式,当状态转换开始时执行该表达式。第五章总体设计1、什么是软件总体设计?软件总体设计的基本任务是什么?总体设计又称概要设计或初步设计,目的是回答 概括地说,系统应该如何实现?” 这个问题。基本任务:(1系统方案设计首先以数据流图为基础寻找实现目标系统的各种不同的方案 ,为每个合理的方 案准备一份系统流程图,列出组成系统的所有物理元素(程序、文件、数据库、人工 过程和文档等等,每个物理元素仍然处于黑盒子级,进行成本/效益分析,制定实现这 个方案的进度计划。(2综合分析比较这些合理的方案,从中选出一个最佳方案。(3

13、体系结构设计设计软件的结构,确定系统中每个程序是由哪些模块组成的,以及这些模块相互 间的关系。2、衡量模块独立的两个标准是什么?它们各表示什么含义?模块独立程度的度量标准:内聚和耦合。耦合:模块间互相依赖(连接的紧密程度。耦合强弱取决于模块间接口的复杂程 度,进入或访问一个模块的点,以及通过接口的数据。内聚:模块内部各个元素彼此结合的紧密程度,是信息隐藏和局部化概念的自然 扩展。3、什么是软件结构?结构图的主要内容有哪些?软件结构(Software Structure是指一种层次表况,由软件组成成分构造软件的过 程、方法和表示。结构图和层次图类似,也是描绘软件结构的图形工具。不仅能够表示软件结

14、构 而且还能够表示出模块接口间信息的传递关系,是一种较好的开发与维护人员通信 的工具结构图基本符号:方框一一模块,框内注明模块的名字或或主要功能方框间连线一一模块调用关系(上方的模块调用下方的模块带注释的箭头一一模块间传递的信息箭头尾部空心圆数据信息还有一些附加的符号,可以表示模块的选择调用或循环调用4、什么是面向数据流的设计方法?它有哪些策略?面向数据流的设计方法:把数据流图中的信息流映射成软件结构。信息流包括:变换流和事物流。(1变换分析:把数据流图按预先确定的模式映射成软件结构的一系列设计步骤 的总称。(2事物分析在数据流具有明显的事务特点时,也就是有一个明显的 发射中 心”事务中心时,

15、还是以采用事务分析方法为宜。(3设计优化:模块功能的完善化;消除重复功能,改善软件结构。5、软件设计的基本原理是什么?模块化、抽象、逐步求精、信息隐蔽和局部化、模块独立。6画结构图应该注意的事项是什么?画结构图应注意的事项如下: 同一名字的模块在结构图中仅出现一次 调用关系只能从上到下 不严格表示模块的调用次序,习惯上从左到右.有时为了减少连线的交叉,适当 地调整同一层模块左右位置,以保持结构图的清晰性7、衡量模块独立性的两个定性的度量标准是什么 ?模块独立:具有独立功能而且和其他模块之间没有过多的相互作用的模块模块独立程度的度量标准:内聚和耦合。8、什么是耦合性?模块的耦合性有哪些内容?各种耦合性的排列顺序是什么? 耦合:模块间互相依赖(连接的紧密程度;影响耦合强度的因素:1一个模块对另一个模块的引用;2一个模块向另一个模块传递的数据量;3一个模块施加到另一个模块的控制的数量;4模块之间接口的复杂程度。在软件设计中应该追求尽可能松散耦合。对模块的测试或维护时,不需要对系统的其他模块有很多了解。此外,由于模块间联系简单,发生在一处的错误传播到整个系统的可能性就

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 活动策划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号