安徽大学软件工程作业答案
软件工程大作业(2)(答案)

软件工程大作业(2)(答案)软件工程作业第二部分一、填空1.结构化分析方法的分析策略是___自顶向下逐步求精_______。
2.衡量模块独立性的两个定性标准是_耦合性与内聚性________。
3.软件集成测试的方法主要有两种,它们是___渐增式与非渐增式测试_______。
4.继承性是子类自动共享其父类的__数据结构和方法____________机制。
5.在面向对象方法中,人们常用状态图描述类中对象的___动态行为________。
6.规定功能的软件,在一定程度上能从错误状态自动恢复到正常状态,则称该软件为____容错_____软件。
7.可行性研究的目的是用最小的代价在尽可能短的时间内确定该软件项目_是否值得开发_。
8.需求分析阶段,分析人员要确定对问题的综合需求,其中最主要的是__功能需求_。
9.软件生存周期中时间最长、花费的精力和费用最多的一个阶段是__维护_____阶段。
10.对象之间进行通信叫做__消息_____。
11.计算机辅助软件工程这一术语的英文缩写为_CASE_______。
12.McCall提出的软件质量模型包括______11________个软件质量特性。
13.为了便于对照检查,测试用例应由输入数据和预期的___输出结果____两部分组成。
14.软件结构是以____模块__________为基础而组成的一种控制层次结构。
15.结构化语言(PDL)是介于自然语言和____形式语言____之间的一种半形式语言。
16.软件概要设计的主要任务就是__软件结构的设计______。
17.结构化程序设计方法是使用___三种基本控制结构____构造程序。
18.软件开发是一个自顶向下逐步细化和求精过程,而软件测试是一个__自底向上或相反顺序 _____集成的过程。
19.在建立对象的功能模型时,使用的数据流图中包含有处理、数据流、动作对象和__数据存储对象_____。
二、选择1.UML是软件开发中的一个重要工具,它主要应用于哪种软件开发方法( C )A、基于瀑布模型的结构化方法B、基于需求动态定义的原型化方法C、基于对象的面向对象的方法D、基于数据的数据流开发方法2.面向对象的开发方法中,(B)将是面向对象技术领域内占主导地位的标准建模语言。
软件工程课后作业参考答案

第六章 作业题参考答案3.画出下列伪码程序的程序流程图和盒图: STARTIF p THENWHILE q DO f END DO ELSEBLOCK g nEND BLOCK END IF STOP 答:(1)流程图如图6-1所示:图6-1从伪码变成的程序流程图 (2)该程序的盒图如图6-2所示:图6-2 从伪码变成的程序盒图4.下图给出的程序流程图代表一个非结构化的程序,请问:(1)为什么说它是非结构化的?(2)设计一个等价的结构化程序。
(3)在(2)题的设计中你使用附加的标志变量flag吗?若没用,请再设计一个使用flag 的程序;若用了,再设计一个不用flag的程序。
答:(1)通常所说的结构化程序,是按照狭义的结构程序的定义衡量,符合定义规定的程序。
图示的程序的循环控制结构有两个出口,显然不符合狭义的结构程序的定义,因此是非结构化的程序。
(2)使用附加的标志变量flag,至少有两种方法可以把该程序改造为等价的结构化程序,图6-3描绘了等价的结构化程序的盒图。
(a)解法1(b)解法2图6-3 与该图等价的结构化程序(用flag)(3)不使用flag把该程序改造为等价的结构化程序的方法如图6-4所示。
图6-4 与该图等价的结构化程序(不用flag)8.画出下列伪码程序的流图,计算它的环形复杂度。
你觉得这个程序的逻辑有什么问题吗?C EXAMPLELOOP:DO WHILE X>0A=B+1IF A>10THEN X=AELSE Y=ZEND IFIF Y<5THEN PRINT X,YELSE IF Y=2THEN GOTO LOOPELSE C=3END IFEND IFG=H+REND DOIF F>0THEN PRINT GELSE PRINT KEND IFSTOP答:(1)该伪码的流程图如图6-8所示:图6-8 程序流程图根据该程序流程图,可得该程序流图如图6-9所示:图6-9 程序流图环形复杂度V(G)=流图中的区域数=流图中判定结点数目+1=6+1=7 (判定结点为:1、3、6、8、10、11)(2)该算法问题在于控制最外层循环的变量Z不仅没有经过初始化,并且在该循环内部没有任何有可能该变Z的语句。
软件工程作业及参考答案(版)

软件工程作业及参考答案(最新版)-标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII软件工程一、软件危机与软件工程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.质量保证② A.需求分析 B.可行性研究C总体设计 D模块化设计③ A.文档编制 B.运行维护C.测试 D.验收8.软件开发中常采用的生命周期方法,由于其特征而一般称其为()。
A.层次模型B.瀑布模型 C.螺旋模型 D.对象模型9.描述软件生存周期的瀑布模型包括计划、(A)、设计、编码、测试、维护等阶段。
其中,设计阶段又可以分成(B)和(C)两个步骤。
A:①需求分析②可行性研究③需求调查④问题定义B,C:①方案设计②代码设计③概要(总体)设计④数据设计⑤详细设计10.什么是软件危机软件危机产生的原因11.生命周期阶段的划分每个阶段的任务二、可行性研究1.可行性研究的任务步骤对于各种可能的方案,从哪几个方面进行可行性研究参考答案:任务:在尽可能短的时间内确定该软件项目是否能够开发,是否值得开发。
软件工程习题及答案.doc

软件工程习题及答案:一、选择题:D1. 为了提升测试的效率,应当。
A、随机地选用测试数据B、取全部可能的输入数据作为测试数据C、在达成编码后拟订软件的测试计划D、选择发现错误可能性大的数据作为测试数据D2. 与设计测试数据没关的文档是。
A、需求说明书B、设计说明书C、源程序D、项目开发设计B3. 结构设计是一种应用最宽泛的系统设计方法,是以为基础、自顶向下、逐渐求精和模块化的过程。
A、数据流B、数据流图C、数据库D、数据结构A4. 纲要设计的结果是供给一份。
A、模块说明书B、框图C、程序D、数据结构B5. 需求剖析是由剖析员经认识用户的要求,仔细仔细地调研、剖析,最后应成立目标系统的逻辑模型并写出。
A、模块说明书B、软件规格说明书C、项目开发计划D、合同文档D6. 说明是提升程序可读性的有效手段,好的程序说明占到程序总量的。
A、 1/6B、 1/5C、1/4 D 、 1/3A7. 变换型和事务型是程序结构的标准形式。
从某处获取数据,再对这些数据作办理,而后将结果送出是属于。
A、变换型B、事务型B8. PAD( Problem Analysis Diagram )图是一种工具。
A、系统描述B、详尽设计C、测试D、编程协助A9. 排错一般是在测试发现错误后进行,此中找到错误地点占排错总工作量的。
A、 95%B、 5%C、 50%D、 20%A10. 分层数据流图是一种比较严格又易于理解的描述方式,它的顶层描述了系统的。
A、总貌B、细节C、抽象D、软件的作者B11. 数据流图中,当数据流向或流自文件时,。
A、数据流要命名,文件不用命名B、数据流不用命名,有文件名就足够了C、数据流和文件均要命名,因为流出和流进数据流是不一样的D、数据流和文件均不要命名,经过加工可自然反应出B12. 剖析员是。
A、用户中系统的直接使用者B、用户和软件人员的中间人C、软件的编程人员D、用户和软件人员的领导A13. 在软件开发中,有益于发挥集体智慧的一种做法是。
《软件工程》作业与参考答案

一、填空(15分)1、需求分析的任务:1)。
确定目标系统的综合要求A。
目标系统的功能要求B。
目标系统的性能要求C。
目标系统运行的环境要求D。
目标系统的扩展要求2)。
分析目标系统的数据要求A。
需要哪些数据?B。
数据之间有什么联系?C。
数据有什么属性及数据结构?D。
对数据的处理逻辑?3)。
导出目标系统的逻辑模型4)。
修正系统流程图5)。
修正系统开发计划6)。
开发原型系统2、模块设计准则1)、改进软件结构提高模块独立性(低耦合高内聚)2)、模块规模要适中3)、深度、宽度、扇入及扇出要适当4)、设计单入口单出口的模块5)、模块功能应该可以预测6)、降低接口的复杂性7)、模块的作用域应该在控制域之内3、软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题,具体表现在哪些方面?1)、无法开发复杂程度高的软件2)、成本和进度估计不准3)、无统一科学的规范,软件不可维护4)、无质量保证,可靠性差5)、软件常不能满足用户的需求6)、无适当的文档资料7)、软件生产率太低4 、总体设计的任务1)、设计系统的物理实现方案2)、设计软件的整体结构,划分程序功能模块,决定模块间的接口关系和传递信息; 3)、设计系统全局的存贮数据结构4)、设计系统I/O的方式和格式;5)、设计系统安全性、出错处理及代码等6)、设计组装测试计划。
5、从下列关于结构化程序设计的叙述中选出5条正确的叙述。
①程序设计比较方便,但比较难以维护。
②便于由多个人分工编制大型程序。
③软件的功能便于扩充。
④程序易于理解,也便于排错。
⑤在主存储器能够容纳得下的前提下,应使模块尽可能大,以便减少模块的个数。
⑥模块之间的接口叫做数据文件。
⑦只要模块之间的接口关系不变,各模块内部实现细节的修改将不会影响别的模块。
⑧模块间的单向调用关系叫做模块的层次结构。
⑨模块越小,模块化的优点越明显。
一般来说,模块的大小都在10行以下。
答:正确的叙述有②、③、④、⑦、⑧。
(完整版)软件工程习题+答案(可编辑修改word版)

一、选择题1.软件开发瀑布模型中的软件定义时期各个阶段依次是:(B)A)可行性研究,问题定义,需求分析。
B)问题定义,可行性研究,需求分析。
C)可行性研究,需求分析,问题定义。
D)以上顺序都不对。
(软件开发时期:概要设计、详细设计、软件实现、软件测试)2.可行性研究主要从以下几个方面进行研究:(A)A)技术可行性,经济可行性,操作可行性。
B)技术可行性,经济可行性,系统可行性。
C)经济可行性,系统可行性,操作可行性。
D)经济可行性,系统可行性,时间可行性。
3.耦合是对软件不同模块之间互连程度的度量。
各种耦合按从强到弱排列如下:(C)A)内容耦合,控制耦合,数据耦合,公共环境耦合。
B)内容耦合,控制耦合,公共环境耦合,数据耦合。
C)内容耦合,公共环境耦合,控制耦合,数据耦合。
(内容耦合、公共耦合、外部耦合、控制耦合、特征耦合、数据耦合)D)控制耦合,内容耦合,数据耦合,公共环境耦合。
4.在详细设计阶段所使用到的设计工具是:(C )A)程序流程图,PAD 图,N-S 图,HIPO 图,判定表,判定树.B)数据流程图,Yourdon 图,程序流程图,PAD 图,N-S 图,HIPO 图。
C)判定表,判定树,PDL,程序流程图,PAD 图,N-S 图。
D)判定表,判定树,数据流程图,系统流程图,程序流程图,层次图。
详细设计阶段工具:判定表、判定树、数据流程图、系统流程图、程序流程图、PAD 图、N-S 图、PDL在软件详细设计阶段,常用的图形描述工具有程序流程图,盒图(NS 图)和问题分析图(PAD) .常用的语言描述工具为 PDL(程序设计语言) ,常用的表格描述工具有判定表和判定树.DFD 数据流图:总体设计阶段5.按照软件工程的原则,模块的作用域和模块的控制域之间的关系是:(A)A)模块的作用域应在模块的控制域之内。
B)模块的控制域应在模块的作用域之内。
C)模块的控制域与模块的作用域互相独立。
D)以上说法都不对。
《软件工程》练习题答案

《软件工程》练习题一答案一、单选题1.C 2.A 3.C 4.D 5.B6.C 7.C 8.C 9.D 10.D11.D 12.A 13.B 14.A 15.A16.A 17.D 18.A 19.D 20.B21.A 22.C 23.C 24.A 25.C26.C 27.B 28.C 29.B 30.C31.A 32.D 33.C 34.B 35.C36.A 37.B 38.C 39.C 40.D41.B 42.D 43.B 44.A 45.D46.C 47.B 48.D 49.D 50.B51.A二、填空题1.软件配置管理2.容错功能3.11 4.模块5.F/(1+(n*i))6.管理技术7.软件工具软件开发环境8.数据字典DD9.可测试性10.父图子图11.数据结构12.防错程序设计13.空间14.可行性研究15.需求16.需求建模技术17.层数18.经济19.概率20.过程21.IPO 22.资源23.数学24.重复25.模块数26.系统约束27.从属28.软件工程29.复杂30.外部31.风险估算32.文档33.数据源34.动态多变量35.数据流图36.三种基本控制结构37.事务分析设计38.功能39.用户组织的管理模式及规范40.符号表示习惯41.不可再分解的42..软件需求明确43.累计经济效益(折合成现在值)44.硬件/操作系统45.差别估算法三、判断题1.错2.对3.对4.错5.错6.错7.对四、名词解释1.软件生存周期模型是描述软件开发过程中各种活动如何执行的模型。
2.数据字典是用来定义数据流图中的各个成分的具体含义的。
它以一种准确的、无二义性的说明方式为系统的分析、设计及维护提供了有关元素的一致的定义和详细的描述。
3.内聚性是模块独立性的衡量标准之一,它是指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。
4.JSP方法是面向数据结构的设计方法,其定义了一组以数据结构为指导的映射过程,它根据输入、输出的数据结构,按一定的规则映射成软件的过程描述,即程序结构。
2022年安徽工程大学软件工程专业《操作系统》科目期末试卷B(有答案)

2022年安徽工程大学软件工程专业《操作系统》科目期末试卷B(有答案)一、选择题1、系统管理设备是通过一些数据结构来进行的,下前的()不属于设备管理数据结构。
A.FCBB.DCTC.SDTD.COCT2、提高单机资源利用率的关键技术是()。
A.SPOOLing技术B.虚拟技术C.交换技术D.多道程序设计技术3、可重入程序是通过()方法来改善系统性能的。
A.改变时间片长度B.改变用户数C.提高对换速度D.减少对换数量4、目标程序对应的地址空间是()A.名空间B.逻辑地址空间C.存储空间D.物理地址空间5、在可变分区分配管理中,某一作业完成后,系统收回其内存空间,并与相邻区合并,为此修改空闲区说明表,造成空闲分区数减1的情况是()。
A.无上邻空闲分区,也无下邻空闲分区B.有上邻空闲分区,但无下邻空闲分区C.无上邻空闲分区,但有下邻空闲分区D.有上邻空闲分区,也有下邻空闲分区6、假定下列指令已装入指令寄存器,则执行时不可能导致CPU从用户态变为内核态(系统态)的是()。
A.DIV R0,R1;(R0)/(R1)→ROB.INT n;产生软中断C.NOT RO;寄存器R0的内容取非D.MOV RO,addr;把地址 addr处的内存数据放入寄存器RO中7、实时操作系统必须在()内处理完来白外部的事件。
A.一个机器周期B.被控对象规定时间C.周转时间D.时间片8、在磁盘上容易导致存储碎片发生的物理文件结构是()A.链接B.连续C.索引D.索引和链接9、采用直接存取法来读写磁盘上的物理记求时,效率最高的是()A.连续结构的文件B.索引结构的文件C.链接结构文件D.其他结构文件10、下列关于管程的叙述中,错误的是()。
A.管程只能用于实现进程的互斥B.管程是由编程语言支持的进程同步机制C.任何时候只能有一个进程在管程中执行D.管程中定义的变量只能被管程内的过程访问11、下面哪个特征是并发程序执行的特点()。
A.程序执行的间断性B.相通信的可能性C.产生死锁的可能性D.资源分配的动态性12、采用时间片轮转调度算法分配CPU时,当处于执行状态的进程用完一个时间片后,它的状态是()A.阻塞B.运行C.就绪D.消亡二、填空题13、在页式虚拟存储系统中,选择页面调度算法时应尽量注意减少或避免__________现象的发生。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3-3 银行计算机储蓄系统的工作过程大致如下:储户填写的 存款单或取款单由业务员键入系统,如果是存款则系统记 录存款人姓名、住址(或电话号码)、身份证号码、存款类 型、存款日期、到期日期、利率及密码(可选)等信息,并 印出存单给储户;如果是取款而且存款时留有密码,则系 统首先核对储户密码,若密码正确或存款时未留密码,则 系统计算利息并印出利息清单给储户。 请用数据流图描绘本系统的功能,并用实体-联系图描绘 系统中的数据对象。
• 7-4(3) 设计下列伪码程序的语句覆盖和路径覆盖 测试用例:
START INPUT (A, B, C) //判定表达式1 IF A>5 THEN X=10 ELSE X=1 END IF //判定表达式2 IF B>10 THEN Y=20 ELSE Y=2 END IF
//判定表达式3 IF C>15 THEN Z=30 ELSE Z=3 END IF PRINT (X, Y, Z) STOP
• 从问题陈述可知,复印机的状态主要有“闲置”、 “复印”、“缺纸”和“卡纸”。引起状态转换 的事件主要是“复印命令”、“完成复印命令”、 “发现缺纸”、“装满纸”、“发生卡纸故障” 和“排除了卡纸故障”。
用面向数据流的方法设计储蓄系统软件结构
银行储蓄系 统
款 单 取 款 单
利率存源自利 存单 息清单软件工程习题课
2012.12.24
1-6 什么是软件过程?它与软件工程方法学有何关系? 软件过程是为了开发出高质量的软件产品所需完成的 一系列任务的框架,它规定了完成各项任务的工作步 骤。 软件过程定义了运用技术方法的顺序、应该交付的文 档资料、为保证软件质量和协调软件变化必须采取的 管理措施,以及标志完成了相应开发活动的里程碑。 软件过程是软件工程方法学的3个重要组成部分之一。
• 设有一个档案管理系统,要求用户输入以 年月表示的日期。假设日期限定在1990年1 月~2049年12月,并规定日期由6位数字字 符组成,前4位表示年,后2位表示月。现 用等价类划分法设计测试用例,来测试程 序的"日期检查功能"。
语句覆盖的测试用例
判定 1 1 2 F T 2 F T 3 F T A 1 输入 B 1 C 1 预期的输出 X 1 Y 2 Z 3
序号
20 40 60 10 20 30
路径覆盖的测试用例
序号 1 2 3 4 5 6 7 8 1 F F F F T T T T 判定 2 F F T T F F T T 3 F T F T F T F T A 1 1 1 1 20 20 20 20 输入 B 1 1 40 40 1 1 40 40 C 1 60 1 60 1 60 1 60 预期的输出 X 1 1 1 1 10 10 10 10 Y 2 2 20 20 2 2 20 20 Z 3 30 3 30 3 30 3 30
• 3-6 复印机的工作过程大致如下:未接到复印命 令时处于闲置状态,一旦接到复印命令则进入复 印状态,完成一个复印命令规定的工作后又回到 闲置状态,等待下一个复印命令;如果执行复印 命令时发现没纸,则进入缺纸状态,发出警告, 等待装纸,装满纸后进入闲置状态,准备接收复 印命令;如果复印时发生卡纸故障,则进入卡纸 状态,发出警告等待维修人员来排除故障,故障 排除后回到闲置状态。 • 请用状态转换图描绘复印机的行为。
密 码
业务单据录 入
利 率
存款单
储蓄业务处理
存款单
单据输出
利 息
存单
款
存单
密码
取
息 利 利率
清
单
密 码
单
存款利 率设置
存款单据输 入
取款单 据输入
存款
取款
存单
利息清单
6-3 画出下列伪码程序的程序流程图和盒图 START IF p THEN WHILE q DO f END DO ELSE BLOCK g n END BLOCK END IF STOP
2-5 北京某高校可用的电话号码有以下几类:校内电话号码 由4位数字组成,第1位数字不是0;校外电话又分为本市 电话和外地电话两类,拨校外电话需先拨0,若是本市电 话则再接着拨8位数字(第1位不是0),若是外地电话则拨3 位区码再拨8位电话号码(第1位不是0)。 请用定义数据字典的方法,定义上述的电话号码。
• 6-7 令P代表交易的总金额,Q代表每股的售价,
n代表交易的股数。 • 判定表的每一列是一条计算规则。例如,第1列 (规则1)规定,当交易总金额P少于1000元,且每 股售价Q低于14元,且交易的股数n是100的倍数 时,给经纪人的手续费为:(l+0.05)×0.084P • 第16列(规则16)表明,当交易总金额P超过10000 元,且每股售价Q在14元到25元之间,且交易的 股数n不是100的倍数时,手续费为 (1+0.06)×(0.04P+134)
• • • • • • • • • • •
电话号码=[校内电话号码|校外电话号码] 校内电话号码=非零数字+ 3 位数字 //后面继续定义 校外电话号码=[本市号码|外地号码] 本市号码=数字零+8位数字 外地号码=数字零+3位数字+8位数字 非零数字=[1|2|3|4|5|6|7|8|9] 数字零=0 3位数字=3{数字}3 //3至3个数字 8位数字=非零数字+7位数字 7位数字=7{数字}7 数字=[0|1|2|3|4|5|6|7|8|9]