2018《软件工程导论》重点复习题
《软件工程导论》课后习题大题

《软件工程导论》课后习题大题作者: 日期:习题2-2为方便储户,某银行拟开发计算机储蓄系统。
储户填写的存款单或取款单由业务员键入系统。
如果是存款,系统记录存款人姓名、住址、身份证号码、存款类型、存款日期、到期日期、利率及密码(可选)等信息,并打印出存款单给储户。
如果是取款,并且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并打印出利息清单给储户。
功能级数据流图:密码出对象模型:习题2-3为方便旅客,某航空公司拟开发一个机票预订系统。
旅行社把预订机票的旅客信息 (姓名、性别、工作单位、身份证号码、旅行时间、旅行目的地等 )输入进该系统,系统为旅客安排航班,印出取票通知和账单,旅客在飞机起飞的前一天 凭取票通知和账单交款取票,系统校对无误即印出机票给旅客。
数据流图:习题2-4目前住院病人主要由护士护理,这样做不仅需要大量护士,而且由于不能随时观察危重病人的病情变化, 还会延误抢救时机。
某医院打算开发一个以计算机为中心的患者监护系统,请写出数据流图。
医院对患者监护系统的基本要求是随时接收每个病人的生理信号(脉搏,体温,血压,心电图等) ,定 时记录病人情况以形成患者日志。
当某个病人的生理信号超出医生规定的安全范围时向值班护士发出警 — 告信I D -硼■诃i•用户皋/锻客収柴通如「2J 、 1hr 和廿■2.2 二交裁打印臥票账单/票款信息i订期洁牌 殳議佶息录入荷总DJL 订臬信息('1.2 >息。
此外,护士在需要时还可以要求系统印出某个指定病人的病情报告。
习题3-6复印机的工作过程大致如下:未接到复印命令时处于闲置状态,一旦接到复印命令则进入复印状态,完成一个复印命令规定的工作后又回到闲置状态,等待下一个复印命令;如果执行复印命令时发现没纸,则进入缺纸状态,发出警告, 等待装纸,装满纸后进入闲置状态,准备接收复印命令;如果复印时发生卡纸故障,则进入卡纸状态,发出警告等待维修人员来排除故障,故障排除后回到闲置状态。
软件工程导论复习题及答案

的耦合度最低。一个模块内部的内聚种类中 D 内聚的内聚度最高, E 内聚的内聚度最低。
A:① 低内聚低耦合 ② 低内聚高耦合
③ 高内聚低耦合
④ 高内聚高耦合
B:① 数据 C:① 数据 D:① 偶然 E:① 偶然
② 非直接 ② 非直接 ② 逻辑 ② 逻辑
③ 控制 ③ 控制 ③ 功能 ③ 功能
④ 内容 ④ 内容 ④ 过程 ④ 过程
2). C :例如,一个模块把开关量作为参数传送给另一模块。
3). D :例如,一个模块把一个数值量作为参数传送给另一模块。
其中, E5 的耦合性最强。
A:① 强
② 适中
③弱
④ 不考虑
B~E:
① 公共耦合
② 数据耦合
③ 逻辑耦合
④ 外部耦合
⑤ 内容耦合
⑥ 控制耦合
6.软件设计中划分模块的一个准则是 A 。两个模块之间的耦合方式中, B 耦合的耦合度最高, C 耦合
② 关于系统的高层逻辑模型
③ 用户手册
④ 操作手册
B:① 程序流程图 C:① 程序流程图 D:① 程序流程图 E:① 程序流程图
② IPO 图 ② 数据流图 ② HIPO 图 ② 算法描述
③ 成本/效益分析 ③ HIPO 图 ③ 数据字典 ③ IPO 图
④ 数据字典 ④ 算法描述 ④ 成本/效益分析 ④ HIPO 图
思想是 E ,这是提高可维护性的重要措施。
A~C:(共有下列 15 个可选择的答案供选择)
① 记录
② 集合
③ 指针
④树
⑤图
⑥表
⑦ 顺序
⑧ 选择
⑨ 重复
⑩ 线性表
⑾ 键表
⑿ 列表
⒀ 数组
⒁栈
软件工程导论复习资料

软件工程导论复习资料填空题1.在信息处理和运算机范畴内,一样认为软件是_法度榜样____、_文档____ 和_数据____ 。
2.数据流图的全然构成部分有_数据的源点与终点____、数据流_____、加工_____、数据文件_____。
3.数据流图和数据字典合营构成了体系的_逻辑____模型,是需求规格说明书的重要构成部分。
4.划分模块时尽量做到__高内聚、低耦合______,保持模块的自力性,尽量应用公共模块。
5.类的实例化是_对象_______。
6.人们常用硬件靠得住性的定量度量方法来度量软件的靠得住性和可用性,常用的度量软件可7.靠性的两个指标是_成功地运行的概率_______和_平均故障时刻_______。
8.将待开创的软件细化,分别估算每一个子义务所须要的开创工作量,然后将它们加起来,9.将获得软件的总开创量。
这种成本估算方法称为_自底向上_______。
10.假如一个模块被n 个模块调用,个中直截了当的上级模块的个数是m 个(m<=n )那么该模块的扇入数是____N_______ 个。
11.构造化设计以__数据流图_________ 为差不多,按必定的步调映射成软件构造。
12.软件的风险分析可包含风险辨认、风险推测和风险驾驭(或风险治理)等3项活动。
13.软件著作权挂号的3种重要类型:(1)著作权挂号;(2)著作权连续挂号;(3)权力转移立案挂号。
14.软件工程治理的重要内容有:项目经费治理,软件质量治理,项目进度治理和人员治理。
15.面向对象分析的目标是对客不雅世界的体系进行___建模_______________ 。
16.软件爱护工作的临盆性活动包含分析评判、修改设计和____编写法度榜样代码_______等。
17.为了使应用软件适应运算机情形的变更而___修改软件_______________ 的过程称为适应性爱护。
18.一个进行学生成就统计的模块其功能是先对学生的成就进行累加,然后求平均值,则该模块的内聚性是__________次序内聚________ 。
软件工程导论综合复习题

一、选择题1、软件是一种( B )性工业产品。
(1)理论(2)知识(或逻辑)(3)消耗(4)体力2、需求分析是在( B )进行的。
(1)用户(2)用户和分析人员之间(3)开发人员内部(4)使用和维护人员之间3、在软件的可行性研究中经常从不同角度对系统进行可行性研究,其中从功能角度对系统进行研究属于( B )的研究。
(1)经济可行性(2)技术可行性(3)操作可行性(4)法律可行性4、在软件工程项目中,不随参与人员的增加而使软件的生产率增加的主要问题是( D )。
(1)工作阶段的等待时间(2)生产原型的复杂性(3)参与人员所需的工作站数(4)参与人员之间的沟通困难5、需求分析阶段的研究对象是( A )。
(1)用户需求(2)分析员要求(3)系统需求(4)软硬件需求6、对某公司进行调查分析,确定是否值得开发一个新系统的工作是进行( D )。
(1)系统设计(2)系统分析(3)系统详细调查(4)系统初步调查7、系统分析员应当( D )。
(1)善于使用户接受自已的观点(2)善于使自已获得成就(3)是用户与计算机技术人员的有效协调与组织者(4)满足上述所有条件8、数据流图的绘制过程,是对新系统的需求进行综合分析和形成新系统( A )的过程。
(1)逻辑模型(2)物理模型(3)总体方案(4)可行性报告9、系统测试的目的是( D )。
(1)找出编码错误(2)找出数据错误(3)要证明程序无错(4)发现软件错误10、一个模块内部各程序段都在同一张表上操作,这个操作的内聚性称为( B )。
(1)时间内聚(2)功能内聚(3)通信内聚(4)顺序内聚11、对象是面向对象开发的基本成分,每个对象可用它的一组()和它可以执行的一组操作来定义。
(1)服务(2)参数(3)属性(4)调用12、最高程度也是最差的耦合是()。
(1)公共耦合(2)内容耦合(3)控制耦合(4)数据耦合13、概要设计阶段产生的文档不包括()。
(1)概要设计说明书(2)数据库设计说明书(3)用户手册(4)开发进度报告14、汽车有一个发动机,汽车和发动机之间的关系是()。
(完整)《软件工程导论》试题及答案,推荐文档

一, 判断题(正确的在括号内打上"√",错误的打上"×".每题1.5分,共15分)Warnier方法也是一种面向数据结构的设计方法,其逻辑更严格.(×)PAD图在设置了五种基本控制结构后,还允许递归调用. (×)为了加快软件维护作业的进度,应尽可能增加维护人员的数目.(×)当验收测试通过,软件开发就完成了.(×)完成测试作业后,为了缩短源程序的长度应删除程序中的注解.(×)在进行总体设计时应加强模块间的联系.(×)系统结构图是精确表达程序结构的图形表示法.因此,有时也可以将系统结构图当作系统流程图使用.(×)用黑盒法测试时,测试用例是根据程序内部逻辑设计的.(×)在程序调试时,找出错误的位置和性质比改正该错误更难.(√)以对象,类,继承和通信为基础的面向对象设计方法(OOD)也是常见的软件概要设计方法之一.(√)二,单项选择题(每小题2分,共10分)试判断下列叙述中,哪个(些)是正确的(D)a,软件系统中所有的信息流都可以认为是事务流b,软件系统中所有的信息流都可以认为是变换流c,事务分析和变换分析的设计步骤是基本相似的A,a B,b C,c D,b和c进行需求分析可使用多种工具,但(B)是不适用的.A,数据流图B,PAD图C,判定表D,数据词典在详细设计阶段,经常采用的工具有(A).A,PAD B,SA C,SC D,DFD详细设计的结果基本决定了最终程序的(C)A,代码的规模B,运行速度C,质量D,可维护性使用白盒测试方法时,确定测试数据应根据(A)和指定的覆盖标准.A,程序的内部逻辑B,程序的复杂程度C,该软件的编辑人员D,程序的功能三,多项选择题(每题2分,共10分.注:正确得2分,漏选得1分,多选,错选不得分.) (ABCD)可以作为模块.A,子程序B,函数C,过程D,编译文件下面哪些测试属于黑盒测试(BCD).A,路径测试B,等价类划分C,边界值分析D,错误推测E,循环测试下列属于度量效益方法的是(ABCD).A,货币的时间价值B,投资回收期C,收入D,投资回报率软件维护的策略包括(BCD).A,定期检测维护B,改正性维护C,适应性维护D,完善性维护下列属于软件测试过程的是(ABE).A,单元测试B,组装测试C,内核测试D,法律验证E,确认测试四,简答题(每题6分,共24分)耦合性和内聚性有几种类型其耦合度,内聚强度的顺序如何答案:低:非直接耦合,数据耦合,标记耦合,控制耦合,外部耦合,公共耦合,内容耦合:高强:功能内聚,信息内聚,通信内聚,过程内聚,时间内聚,逻辑内聚,偶然内聚:弱请举例说明什么是多态,什么是重载答案:多态性是指子类对象可以像父类对象那样使用,同样的消息既可以发送给父类对象也可以发送给子类对象.也就是说,在类等级的不同层次中可以共享(公用)一个行为(方法)的名字,然而不同层次中的每个类却各自按自己的需要来实现这个行为.当对象接收到发送给它的消息时,根据该对象所属于的类动态选用在该类中定义的实现算法.重载是指一个类中有多个同名的方法,但在操作数个数或类型上有区别.例: public class A{int age;String name;public void setValue(int i) {age=i; }public void setValue(String s) {name=s; }什么是数据字典简述数据字典与数据流图的关系.答案:数据字典是关于数据的信息的集合,对数据流程图中的各个元素做完整的定义与说明,是数据流程图的补充工具.(2分)数据流图和数据字典共同构成系统的逻辑模型,没有数据字典数据流图就不严格,然而没有数据流图数据字典也难于发挥作用. 数据流图和对数据流图中每个元素的精确定义放在一起,才能共同构成系统的规格说明.(3分)简述编码风格的重要性.答案:阅读程序是软件开发和维护过程中的一个重要组成部分,程序实际上也是一种供人阅读的文章.应当在编写程序时讲求程序的风格,这将大量地减少人们读程序的时间.良好的编码风格有助于编写出可靠而又容易维护的程序,编码的风格在很大程度上决定着程序的质量. 面向对象的测试和传统开发方法的测试有什么不同答案:(1)二者都可以分成四个阶段进行.但传统测试最小单元是模块,而在面向对象环境下,最小的可测试的单元是封装了的类或对象,而不是程序模块.(2)因为面向对象软件没有一个层次的控制结构,所以传统的自顶向下和自底向上的组装策略意义不大. 每次将一个操作组装到类中(像传统的增殖式组装那样)常常行不通,因为在构成类的各个部件之间存在各种直接的和非直接的交互.对于面向对象系统的组装测试,存在两种不同的测试策略.五,分析应用题(20分)求一组数组中的最大数, 数组表示为A(n) ,n=1,2……n的自然数.(10分)请画出程序流程图(4分)请画出该算法的N-S图(3分)请用PAD图来表示该算法(3分)答案:2. 下面是某程序的流程图:(10分)计算它的环路复杂性.(3分) 答案:7为了完成基本路径测试,求它的一组独立的路径.(7分)答案:路径1: (0)—①—(13)—(19)路径2: (0)—②—③—(14)—(19)路径3: (0)—②—④—⑤—(15)—(19)路径4: (0)—②—④—⑥—⑦—(16)—(19)路径5: (0)—②—④—⑥—⑧—⑨—(17)—(19)路径6: (0)—②—④—⑥—⑧—⑩—(11)—(18)—(19)路径7: (0)—②—④—⑥—⑧—⑩—(12)—(19)六,阅读下列说明和数据流图,回答问题1至问题4,将解答填入答题纸的对应栏内.(12分) [说明]某基于微处理器的住宅安全系统,使用传感器(如红外探头,摄像头等)来检测各种意外情况,如非法进入, 火警,水灾等.房主可以在安装该系统时配置安全监控设备(如传感器,显示器,报警器等),也可以在系统运行时修改配置,通过录像机和电视机监控与系统连接的所有传感器,并通过控制面板上的键盘与系统进行信息交互.在安装过程中,系统给每个传感器赋予一个编号(即id)和类型,并设置房主密码以启动和关闭系统,设置传感器事件发生时应自动拨出的电话号码.当系统检测到一个传感器事件时,就激活警报,拨出预置的电话号码,并报告关于位置和检测到的事件的性质等信息.加工4的细化图[问题1](3分)数据流图1(住宅安全系统顶层图)中的A和B分别是什么答案:A:传感器: B:报警器[问题2](3分)数据流图2(住宅安全系统第0层DFD图)中的数据存储"配置信息"会影响图中的哪些加工答案:监控传感器,显示信息和状态[问题3](6分)将数据流图3(加工4的细化图)中的数据流补充完整,并指明加工名称,数据流的方向(输入/输出)和数据流名称.答案: 4.4"读传感器"添加输入数据流"传感器状态"4.1"显示格式"添加输出数据流"传感器数据"4.5"拨号"添加输出数据流"电话拨号"七,请以自己的实际体会说明项目管理的意义和作用.(8分)答案:(要点)软件项目管理就是对软件工程项目开发过程的管理.具体地说,就是对整个软件生存期的一切活动进行管理,以达到提高生产率,改善产品质量的目的.软件项目管理的职能:(1)制定计划:规定待完成的任务,要求,资源,人力和进度等.(2)建立项目组织:为实施计划,保证任务的完成,需要建立分工明确的责任机构.(3)配备人员:任用各种层次的技术人员和管理人员.(4)指导:鼓励和动员软件人员完成所分配的任务.(5)检验:对照计划或标准监督检查实施的情况.。
软件工程导论期末复习题_答案.

一、单向选择题(四选一、每小题3分,共18分)1、软件的发展经历了(D)个发展阶段。
0102A.一B.二C.三D.四2、需求分析的任务不包括(B)。
0401A.问题分析B.系统设计C.需求描述D.需求评审。
3、一个软件的宽度是指其控制的(C)。
0801A.模块数B.层数C.跨度D.厚度4、当模块中包含复杂的条件组合,只有(A)能够清晰地表达出各种动作之间的对应关系。
0802A.判定表和判定树B.盒图C.流程图D.关系图5、以下不属于逻辑覆盖的是(D)。
1402A.语句覆盖B.判定覆盖C.条件覆盖D.基本路径6、为适应软件运行环境的变化而修改软件的活动称为(B)。
1501A.纠错性维护B.适应性维护C.改善性维护D.预防性维护二、填空题(每空2分,共18分)1.软件可靠性是指在给定的时间间隔内,程序成功运行的(概率)。
01012.高级语言:独立于机器,面向过程或面向(对象)01013.软件项目管理的范围主要集中于3个P上,即:People人员、Problem问题和(过程)。
02014.人机界面的风格第一代界面是命令和(询问)方式。
12025.由于维护或在维护过程中其他一些不期望的行为引入的错误称为维护的(副作用)。
15046.在公式V(G)= E –N + 2中:E为程序图G中边的总数;N 为程序图中结点的总数。
V(G)又称为图G的环形(复杂度)0204。
7.任何一个基于计算机系统都可以用输入-处理-输出(IPO)图来描述,它将该系统转换成一个信息变换模型。
03038.为提高可交互性一般对所有可能造成损害的用户操作动作,应坚持要求用户(确认),例如,提问“你确实要删除…?”。
12049.文档是一种数据媒体和其上所记录的(数据)。
0101三、判断题(每小题2分,共24分,错误打X、正确打√)1.用户对软件需求的描述不精确,往往是产生软件危机的原因之一。
(√)01022.目前,软件项目的进度安排的两种比较常用的方法是程序评估与审查技术(PERT)和关键路径法(CPM)。
软件工程导论复习题含答案

软件工程导论复习题含答案软件工程习题集第1章概述(一)单项选择题1.“软件危机”产生的主要原因是( A )。
A.软件日益庞大B.开发方法不当C.开发人员编写程序能力差D.没有维护好软件 2. 软件是一种( B )性工业产品。
A. 理论B. 知识(或逻辑)C. 消耗D. 体力3. 需求分析是在( B )进行的。
A. 用户B. 用户和分析设计人员之间C. 开发人员内部 4. 软件的主要结构和功能是在( A )阶段决定的。
A. 分析设计B. 编程C. 测试D. 维护5.软件是计算机系统中与硬件相互依存的另一部分,它的组成部分是( D )。
D. 使用和维护人员间A.程序、数据 B.程序、文档 C.程序 D. 程序、数据、文档6.在软件工程时期,决定软件质量的主要因素是( A )A.管理水平 B.个人程序技术 C.小组技术水平 D.硬件的发展7. 在软件开发模型中,提出最早、应用最广泛的模型是( A )。
A. 瀑布模型B. 喷泉模型C. 增量模型D. 螺旋模型8.瀑布模型把软件生存周期划分为软件定义、软件开发与( C )三个阶段,而每一阶段又可分为若干更小的阶段。
A. 详细设计B. 可行性分析C. 运行及维护D. 测试与排错9. 计算机辅助软件工程,简称( D )。
A. SAB. SDC. SCD. CASE10. 软件危机是软件产业化过程中出现的一种现象,下述现象中:( C )是其主要表现。
① 软件需要增长难以满足。
② 软件开发成本提高。
③ 软件开发进度难以控制。
④ 软件质量不易保证。
A. ③和④B. ③和④C. 全部D. ①、②和③11 软件工程的出现主要是由于( C )。
A. 程序设计方法学的影响 C. 软件危机的出现B. 其他工程科学影响 D. 计算机的发展12、软件生成周期模型有多种,下列选项中,( C )不是软件生存周期模型。
A.螺旋模型B.增量模型C.功能模型D.瀑布模型(二)简答题1. 软件产品的特点是什么?2. 软件生产的发展经历了哪几个时代?各有何特征?3. 软件危机的概念、表现形式、产生原因、解决途径4. 简述主要的软件生存期模型(或软件开发模型)。
《软件工程导论》期末复习题知识点

《软件工程导论》期末复习知识点第一章填空题1、软件是、及其说明程序的。
答案:数据、计算机程序、各种文档2、软件工程包括软件开发技术和两大部分内容。
答案:软件工程管理选择题1、软件危机出现于,为了解决软件危机,人们提出了用____的原理来设计软件,这是软件工程诞生的基础。
A50年代末B60年代初 C 60年代末 D 70年代初A运筹学 B 工程学C软件学D软件学答案:C B2、开发软件需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作____。
A 软件投机B软件危机C软件工程D软件产生答案:B3、产生软件危机的原因有如下几点,除了______。
A 软件开发过程未经审查B 软件开发不分阶段,开发人员没有明确的分工C 所开发的软件,除了程序清单外,没有其他文档D 采用工程设计的方法开发软件,不符合软件本身的特点答案:D4、软件产品的开发主要是( )。
A 复制B 再生产C 拷贝D 研制答案: D判断题1、文档是软件产品的一部分,没有文档的软件就不称其为软件。
()答案:√2、一个成功的项目唯一提交的就是运行程序。
()答案:×3、瀑布模型不适用于需求不确定的情况。
()答案:√名词解释1、软件工程答案:软件工程是:①把系统的、规范的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用于软件;②研究①中提到的途径。
2、软件生存周期答案:软件产品从形成概念开始,经过开发、运行(使用)和维护直到退役的全过程称为软件生存周期,包括软件定义、开发、使用和维护三部分。
简答题1、简述软件危机发生的原因。
答案:(1)软件的规模加大、复杂性提高、性能增强;(2)软件是逻辑产品,尚未完全认识其本质和特点;(3)缺乏有效的、系统的开发、维护大型软件项目的技术手段和管理方法;(4)用户对软件需求的描述和软件开发人员对需求的理解往往存在差异,用户经常要求修改需求,开发人员很难适应;(5)软件开发的技术人员和管理人员缺乏软件工程化的素质和要求,对工程化的开销认识不足。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数计学院计算机科学与技术专业《软件工程导论》复习题一、选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题的括号。
) 1.软件是一种产品。
A.物质 B. 逻辑√ C. 工具 D. 文档2.软件产品的生产主要___ _ _。
A. 研制√B. 再生产C. 开发D. 生产3.软件工程是一门__ _学科。
A. 工程性B. 原理性C. 综合性√D. 理论性4.类是面向对象方法中的一个重要概念,类的描述分为:名称、和操作。
A. 角色B. 用例C. 方法D. 属性√5.下列描述中正确的是___ __。
A.软件工程的主要是解决软件开发中的技术问题B.软件工程主要解决软件产品的生产率问题C.软件工程的主要思想是强调在软件开发过程中需要运用工程化的原则√D.软件工程只是解决软件项目的问题.6.需求分析最终结果是产生。
A.项目开发计划B.可行性分析报告C.设计说明书D.需求分析说明书√7.需求分析中,开发人员要从用户那里解决最重要的问题是。
A.要让软件做什么√B.要给软件提供哪些信息C.要求软件工作效率怎样D.要让该软件具有何种结构8.分层DFD是一种比较严格又易于理解的描述方式,它的顶层图描述了系统的。
A.软件的作者B.输入与输出√C.细节D.绘制的时间9.数据字典中,一般不包括条目。
A.源点与终点√B.数据存储C.数据流D.加工10.软件需求分析是保证软件质量的重要步骤,它的实施应该是在。
A.编码阶段B.软件设计阶段√C.软件定义过程D.软件开发全过程11.软件的主要功能和结构是在阶段确定的。
A.测试B.编程C.分析设计√D.维护12.需求分析最终结果是产生。
A.需求分析说明书√B.可行性分析报告C.项目开发计划D.设计说明书13.可行性研究主要从方面进行研究。
A.技术可行性,经济可行性,操作可行性B.经济可行性,系统可行性,时间可行性C.经济可行性,系统可行性,操作可行性D.技术可行性,经济可行性,社会可行性√14.可行性分析研究的目的是。
A.项目值得开发与否√B.开发项目C.争取项目D.规划项目15.需求分析中开发人员要从用户那里了解。
A.输入的信息B.用户使用界面C.软件做什么√D.软件的规模16.需求分析阶段研究的对象是。
A.软硬件要求B.系统要求C.分析员要求D.用户需求√17.系统流程图用于可行性分析中的的描述。
A.目标系统B.当前逻辑模型C.当前运行系统√D.新系统18.数据字典是用来定义中的各个成分的具体含义的。
A.数据流图√B.功能结构图C.系统结构图D.流程图19.需求分析是。
A.软件生命周期的开始B.由系统分析人员完成C.由开发人员和系统分析人员完成D.软件开发任务的基础性工作√20.数据字典是对数据定义信息的集合,它所定义的对象都包含于。
A.软件结构B.程序框图C.数据流图√D.方框图21.结构化设计方法在软件开发中,用于。
A.测试用例设计B.程序设计C.概要设计√D.详细设计22. 在进行软件结构设计时应遵循的最主要的原理是。
A.模块独立√B.抽象C.模块化D.信息隐藏23.通信聚是指。
A.把需要同时执行的动作组合在一起形成的模块B.模块所有元素共同完成一个功能,缺一不可C.一个模块中各个处理元素都密切相关于同一功能且必须顺序执行D.各处理使用相同的输入数据或者产生相同的输出数据√24.软件的结构化设计方法中,一般分为概要设计和详细设计两阶段,其中详细设计主要是要建立。
A.软件模块√B.软件过程C.软件模型D.软件结构25.软件详细设计阶段的任务是。
A.功能设计B.算法设计√C.调用关系设计D.输入/输出设计二、填空题1.软件工程是一门综合性交叉学科,计算机学着重于理论和科学,软件工程着重于设计实现软件系统。
2.需求分析阶段产生的最重要的文档之一是需求规格说明书。
3.SA方法中的主要描述工具是DFD图与DD 字典。
4.数据字典中有4类条目,分别是数据流,数据项,数据存储,加工。
5.项目可行性分析分为经济可行性,技术可行性,社会可性性。
6.软件概要设计阶段产生的重要的文档之一是概要设计说明书。
7.软件结构是以模块为基础而组成的,一种控制层次结构。
8.反映软件结构的基本形态特征是深度,宽度和扇入,扇出。
9.数据流图一般可分为变换型和事务型两类。
10.程序流程图(PFC)又称为程序框图,它是软件开发者最熟悉的一种算法表达工具。
11.在UML 用例图中,椭圆表示用例,方框表示系统边界,小人状图案表示执行者。
三、名词解释:1.软件生存周期:指软件从提出开发要求开始,直到该软件报废为止的整个时期。
把整个生存周期划分为若干阶段,使得每个阶段有明确的任务,使规模大、结构和管理复杂的软件开发变得容易控制和管理。
(P7)2.数据字典(DD):数据字典是用来定义数据流图中的各个成分的具体含义的。
它以一种准确的、无二义性的说明方式为系统的分析、设计及维护提供了有关元素的一致的定义和详细的描述。
(P26)3.DFD图:Data Flow Diagram 数据流图,是SA方法中用于表示系统逻辑模型的一种工具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型。
(P22)4.用例模型:用例模型主要是由用例、用例描述和用例图组成,用来描述系统的外部特征。
它表示了从系统的外部用户(即执行者或角色)的观点看系统应该具备什么功能。
它说明系统实现设什么功能,一幅用例图包含的模型元素:系统、执行者、用例与用列之间关系。
(P109郭)5. Alpha测试Alpha测试是由一个用户在开发环境下进行的测试,也可以是公司部的用户在模拟实际操作环境下进行的受控测试,Alpha测试不能由程序员或测试员完成。
Alpha测试的目的是评价软件产品的功能、可使用性、可靠性、性能和支持。
测试可以从软件产品编码结束之后开始,或在模块(子系统)测试完成后开始,也可以在确认测试过程中产品达到一定的稳定和可靠程度之后再开始。
四、简答题1.软件危机主要表现在那些方面?解决软件危机的途径有那些?答:软件危机主要表现在:1)软件开发无计划性2)软件需求不充分3)软件开发过程无规4)软件产品无测评手段解决软件危机的途径有:1)软件开发是智力劳动;2)是一种组织良好、管理严密、各类人员协同配合、共同完成的工程项目。
3)充分吸取几十年来人类从事计算机硬件研究和开发的经验教训。
4)使用适当的软件工具,支持软件开发的过程总之,消除软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。
软件工程正是从管理和技术两方面研究如何更好地开发和维护计算机软件的一门新兴学科。
2.什么是需求分析?该阶段的基本任务是什么?答:需求分析指:开发人员要准确理解用户的要求,进行细致的调查分析,将用户非形式的需求述转化为完整的需求定义,再由需求定义转换到相应的形式功能规约(需求规格说明)的过程。
需求分析的基本任务是:要准确地定义新系统的目标,为了满足用户需要,回答系统必须“做什么”的问题。
在可行性研究和软件计划阶段对这个问题的回答是概括的、粗略的。
主要任务是:1)问题识别(1)功能需求:所开发的软件必须具备什么样的功能,这是最重要的。
(2)性能需求:开发软件的技术性能指标,如存储容量、运行时间等限制。
(3)环境需求:软件运行时所需要的软、硬件(如机型、外设、操作系统、数据库管理系统等)的要求。
(4)用户界面需求;人机交互方式、输入输出数据格式等等。
另外还有可靠件、安全件、保密件、可移梢件、可维护性等方面的需求,这些需求般通过双方交流、调查研究来获取,并达到如同的理解。
2)分析与综合,导出软件的逻辑模型分析人员对获取的需求,进行—致性的分析检查,在分析、综合中逐步细化软件功能并划分成各个子功能。
这里也包括对数据域进行分解,并分配到各个于功能上,以确定系统的构成及主要成分,并用图文结合的形式,建立起新系统的逻辑模型。
3)编写文档(1)编写“需求规格说明书”,把双方共同的理解与分析结果用规的方式描述出来作为今后各项工作的基础。
(2)编写初步用户使用于册,着重反映被开发软件的用户功能界面和用户使用的具体要求,用户手册能强制分析人员从用户使用的观点考虑软件。
(3)编写确认测试计划,作为今后确认和验收的依据。
(4)修改完善软件开发计划。
在需求分析阶段对待开发的系统有了更进一步的了解,所以能更准确地估计开发成本、进度及资源要求,因此对原计划要进行适当修正。
3. 什么是结构化维护?结构化维护的特点是什么?若采用软件工程的方法开发软件,则各阶段都有相应的文档,容易进行维护工作,这是一种结构化的维护。
有软件工程思想开发的软件具有各个阶段的文档,这对于理解和掌握软件功能、性能、系统结构、数据结构、系统接口和设计约束有很大作用。
进行维护活动时,首先从评价需求说明开始,搞清楚功能、性能上的改变,然后对设计说明文档进行评价,对设计说明文档进行修改和复查;根据设计的修改,再进行程序的变动;其后根据测试文档中的测试用例进行回归测试;最后,把修改后的软件再次交付使用。
这对于减少精力、减少花费、提高软件维护效率有很大作用。
4.数据流图的作用?它的优缺点?其中的符号表示什么含义?答:数据流图是用来表示系统的功能的工具。
它表示系统的逻辑模型描述了数据流在系统中流动的情况,它是一种功能模型,它用来定义系统的功能,它不能反映“如何”实现。
数据流图只描述了系统的分解,没有表达出每个数据流、数据存储和加工的具体含义。
数据流图的作用主要有以下几条:(1)系统分析员用这种工具可以自顶向下分析系统信息流程。
(2)可在图上画出需要计算机处理的部分。
(3)根据数据存贮,进一步作数据分析,向数据库设计过渡。
(4)根据数据流向,定出存取方式。
(5)对应一个处理过程,用相应的语言、判定表等工具表达处理方法。
箭头表示数据流、圆圈表示加工、双横线表示存储、方框表示数据的原点和终点。
5.详细设计的基本任务是什么?答:详细设计又称过程设计,“怎样实现”这个软件系统,对系统中的每个模块给出足够详细的过程性描述。
具体任务如下:(1)为每个模块进行详细的算法设计,用某种图形、表格、语言等工具将每个模块处理过程的详细算法描述出来。
(2)为模块的数据结构进行设计,对于需求分析、概要设计确定的概念性的数据类型进行确切的定义。
(3)对数据库进行物理设计,即确定数据库的物理结构。
物理结构主要指数据库的存储记录格式、存储记录安排和存储方法,这些都依赖于具体所使用的数据库系统。
(4)其他设计根据软件系统的类型,还可能要进行以下设计:①代码设计。
为了提高数据的输入、分类、存储、检索等操作,节约存空间,对数据库中的某些数据项的值要进行代码设计。