1、软件是 数据 、 计算机程序 及其说明程序的 各种文档 。 2、概要设计主要是把各项 功能需求 转换成系统的 体系结构 。 3、面向对象开发方法包括 OOA 、OOD 、 OOP 三部分。
4、结构化设计中以数据流图为基础的两种具体分析设计方法是 变换分析 、 事物分析 设计。
5、在单元测试时,需要为被测模块设计 驱动模块 和 桩模块 。
6、CMM把软件过程从无序到有序的进化分成5个阶段,排序而形成5个逐层提高的等级,分别是初始级、可重复级 、已定义级、 已管理级 和可优化级。 7.子类自动共享父类的 属性 和 操作 的机制称为继承。
8. 软件工程管理的具体内容包括对开发人员、组织机构、 用户 、 文档资料 等方面的管理。
9、可行性研究的三个方面是 技术可行性 、 社会可行性 和__经济可行性__。
10、在软件概要设计阶段,建立软件结构后,还应为每个模块写一份 处理说明 和_接口说明__。
11、在画分层的DFD时,父图与子图的输入输出数据流要__平衡__。
12、在详细设计阶段,除了对模块内的算法进行设计,还应对模块内的__数据结构_进行设计。
13. 对象的抽象是___类___。
14. 基线的作用是把各阶段的开发工作划分得更加明确,便于检查与确认阶段成果。因此,基线可以作为项目的一个___检查点__。
15. 软件工程包括软件开发技术和__软件工程管理__两大部分内容。 16、开发过程管理包括项目计划、控制和___任务管理__等。
17、CASE是多年来在软件开发管理、软件开发方法、软件开发环境和__软件工具__等方面研究和发展的产物。
18、数据字典中有四类条目,分别是___数据流 、数据项、 数据存储 、基本加工。 19、用于描述基本加工的小说明的三种描述工具是结构化语言 、 判定表 、 判定树_。 20、子类只继承一个父类的属性和操作,这称为__单重继承__。 21、 McCabe复杂性度量又称__环路度量_。
22、喷泉模型是一种以用户需求为动力,以__对象__为驱动的模型。 23、Jackson图不仅可表示程序结构,还可表示___数据结构__。
24、详细设计的任务是确定每个模块的内部特性,即模块的 算法 和 数据结构 。 25、UML提供的构建系统动态模型的机制有 动态视图 视图(包括顺序图和协作图)、 静态视图 视图、功能视图。 26、软件质量管理由软件质量保证、 软件质量规划 和 软件质量控制 三方面活动组成。 27、用等价类划分法设计一个测试用例时,使其覆盖__尽可能多的__尚未被覆盖的合理等价类; 覆盖__一个_不合理等价类。
28、需求分析阶段产生的最重要的文档是__需求规格说明书_。
29、两个模块都使用同一张表,模块的这种耦合称为___公共耦合__。 30、被测试程序不在机器上运行,而是采用人工检测和计算机辅助分析检测的手段称为_静态_测试。
31、采用手工方法开发软件只有程序而无文档,维护困难,这是一种__非结构化__维护。 32、结构化方法是一种面向数据流的开发方法。由结构化分析、_结构化方法_、结构化程序设计构成。
33、 对象之间进行通信的构造叫做_消息_。
34、 按软件服务对象的范围可以把软件划分为 项目 软件和 产品 软件。
35、瀑布模型将软件生命期划分为若干阶段,各个阶段之间是通过 文档 实现过渡的。 36、概要设计主要是把各项功能需求转换成系统的__体系结构__。
37、详细设计的任务是确定每个模块的内部特性,即模块的 数据结构 和 算法 。 38、结构化程序设计方法提倡开发人员的组织形式是__主程序员组_。
39、软件质量管理由软件质量保证、软件质量规划和 软件质量控制 三方面活动组成。 40、类具有操作,它是对象__行为 _的抽象。 41、产品管理包括版本管理和__配置管理___。
42、集成测试中的具体方法是___渐增式 和 非渐增式___测试方法。 43、增量模型适合于__软件需求_不明确、设计方案有一定风险的软件项目。 44、结构化分析方法的分析策略是__自顶向下逐步求精__。 45、可行性研究实质上是要在较高层次上以较抽象的方式进行___需求分析和设计__的过程。 46、衡量模块独立性的两个定性标准是__耦合性与内聚性___。 47、Jackson方法是一种面向__数据结构__的设计方法。
48、维护阶段是软件生存周期中花费精力和费用___最多___的阶段。 49、继承性是子类自动共享其父类的__数据结构和方法__机制。
50、在面向对象方法中,人们常用状态图描述类中对象的_动态行为_。
51、规定功能的软件,在一定程度上能从错误状态自动恢复到正常状态,则称该软件为___容错__软件。
52.软件工程包括3个要素,即方法、工具、过程。 53.软件生存周期是指一个软件从提出开发要求开始直到该软件报废不止的整个时期。通常,软件生存周期包括问题定义、可行性研究,需求分析,总体设计, 详细设计 ,_编码_,测试,维护活动,可以将这些活动以适当方式分配到不同阶段去完成
54.数据流图中的箭头表示__数据流__。软件结构图中的箭头方向表示___模块调用__。 55.___可行性研究___的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。
56.数据流图仅反映系统必须完成的逻辑功能,所以它是一种__功能_模型。
软件工程简答题
三、简答题(简要回答下列问题,每小题4分*5=20) 1、什么是软件工程?它目标和内容是什么?
软件工程就是用科学的知识和技术原理来定义,开发,维护软件的一门学科。
软件工程目标:付出较低开发成本;达到要求的功能;取得较好的性能;开发的软件易于移植;只需较低的维护费用;能按时完成开发任务,及时交付使用;开发的软件可靠性高。
软件工程内容:包括开发技术和开发管理两个方面。
2、软件开发中有哪几种过程模型?哪些适用于面向对象的软件开发?
软件开发中常见的软件过程模型有瀑布模型、原型模型、螺旋模型、喷泉模型、统一软
件过程等。
其中喷泉模型、统一软件过程适用于面向对象的软件开发。 4、什么是软件概要设计?该阶段的基本任务是什么?
把一个软件需求转换为软件表示时,首先设计出软件总的体系结构。称为概要设计或结构设计。 基本任务:
⑴设计软件系统结构
⑵进行数据结构及数据库的设计 ⑶编写概要设计的文档 ⑷评审 6、软件测试要经过哪些步骤?这些测试与软件开发各阶段之间有什么关系?(答案不是很好,书本上的V模型,画出V模型)
软件测试要经过的步骤是:单元测试→集成测试→确认测试→系统测试。
单元测试对源程序中每一个程序单元进行测试,检查各个模块是否正确实现规定的功能,从而发现模块在编码中或算法中的错误。该阶段涉及编码和详细设计文档。
集成测试是为了检查与设计相关的软件体系结构的有关问题,也就是检查概要设计是否合理有效。
确认测试主要是检查已实现的软件是否满足需求规格说明书中确定了的各种需求。 系统测试是把已确认的软件与其他系统元素(如硬件、其他支持软件、数据、人工等)结合在一起进行测试。以确定软件是否可以支付使用。 7、什么是软件生存周期?它有哪几个活动?
软件生存周期:一个软件从提出开发要求开始直到该软件报废为止的整个时期。
包括:可行性分析和项目开发计划,需求分析,概要设计,详细设计,编码,测试,维护。
8、衡量模块独立性的两个标准是什么?各表示什么含义? 内聚和耦合。
内聚:又称为块内联系,指模块内部各成分之间相互关联的程度,以高内聚为设计目标。 耦合:也称块间联系,模块之间相互联系程度的度量,联系越紧密,耦合性越强,独立性越差,以低耦合为设计目标。
10、什么是需求分析?需求分析阶段的基本任务是什么?
需求分析:开发人员准确地理解用户的要求,进行细致的调查分析,将用户非形式的需求陈述转化为完整的需求定义,再由需求定义转换到相应的需求规格说明的过程。
基本任务: ⑴问题识别
⑵分析与综合,导出软件的逻辑模型 ⑶编写文档
12、单元测试有哪些内容?
单元测试主要针对模块的以下五个基本特征进行测试: (1)模块接口 (2)局部数据结构 (3)重要的执行路径 (4)错误处理 (5)边界条件
14、软件设计的基本原理包括哪些内容?
⑴模块化:模块是软件的组成部分,是具有独立功能且可命名的一段程序,所有模块组成整体,可以满足问题的要求。
⑵抽象:认识复杂现象过程所使用权的工具,只考虑事物本质的共同特性,忽略细节和其它因素。通过抽象确定组成软件的过程实体。
⑶信息隐蔽:将模块实现自身功能的细节与数据\隐蔽\起来。模块间仅交换为完成系统功能所必须的信息。
⑷模块独立性:每个模块只完成系统要求的独立的子功能。 21、说明面向对象的特征?(答案错误,自己去整理答案)
面向对象的特征是:
(1)对象唯一性。每个对象都有自身唯一的标识,在对象生存期中,其标识不变,不同的对象不能有不同的标识。
(2)分类性。是指将具有一致的数据结构(属性)和行为(操作)的对象抽象成类
(3)继承性。是子类自动共享父类数据结构和方法的机制,这是类之间的一种关系。 (4)多态性。是指相同的操作或函数过程可以作用于多种类型的对象上并获得不同的结果。
24、请简述黑盒测试和白盒测试有何区别,黑盒测试有哪些常用方法?
黑盒测试和白盒测试的区别:前者基于功能,后者基于结构; 黑盒测试常用方法有:边界值、等价类、因果图、错误推测法等。 26、CMM全称是什么?分为哪几个级别?
CMM全称是软件能力成熟度模型;
从无序到有序的进化分成5个级别,分别为:
1 初始级;2 可重复级;3 已定义级;4 已管理级;5 优化级。 28、软件生命周期划分为哪几个阶段?
软件生命周期分为三个时期八个阶段: 软件定义:问题定义、可行性研究;
软件开发:需求分析、概要设计、详细设计、编码、测试; 软件运行:软件维护
《软件工程》应用题
四、应用题(每小题10分*3=30)
1.某培训中心要研制一个计算机管理系统。它的业务是: 将学员发来的信件收集分类后,按几种不同的情况处理。
(1)如果是报名的,则将报名数据送给负责报名事务的职员,他们将查阅课程文件,检查该课程是否额满,然后在学生文件、课程文件上登记,并开出报告单交财务部门,财务人员开出发票给学生。
(2)如果是想注销原来已选修的课程,则由注销人员在课程文件、学生文件和帐目文件上做相应的修改,并给学生注销单。
(3)如果是付款的,则由财务人员在帐目文件上登记,也给学生一张收费收据。 要求:
(1)对以上问题画出数据流程图。 (2)画出该培训管理的软件结构图。 解答:
(1)数据流图
(2)软件体系结构
2.建立窗口系统的对象模型,问题陈述如下:“窗口分为对话窗、图形窗、滚动窗三种。对话窗中有若干对话项,由唯一的项名字来确定;对话项分为按钮、选择项和正文项三种,选择项中有若干选择项入口。图形窗中有若干形状元素,形状元素分为一维形状和二维形状。一维形状又分为直线、圆弧、折线;二维形状分为圆、椭圆、矩形、多边形,其中折线与多边形由若干有序顶点组成。正文窗是滚动窗的一种,而图形滚动窗既是图形窗又是滚动窗。” 解答:(泛化关系)