《软件工程导论》课后习题详细答案_第1页
《软件工程导论》课后习题详细答案_第2页
《软件工程导论》课后习题详细答案_第3页
《软件工程导论》课后习题详细答案_第4页
《软件工程导论》课后习题详细答案_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。这些问题表现在以下几个方面:(1)用户对开发出的软件很难满意。(2)软件产品的质量往往靠不住。(3)一般软件很难维护。(4)软件(5)(6)(7)足不了计算机应用的普及与深入的需要。(2)软件本身方面,对于计算机系统来说,软件是逻辑部件,软件开发过程没有统一的、公认的方法论和规范指导,造成软件维护困难。(3)尤其是(1)充分吸收和借鉴人类长期以来从事各种工程项目中积累的行之有效的有效原理、概念、技术与方法,特别是吸取几十年来人类从事计算机硬件研究和开发的经验教训。在开发软件的过程中努力作到良好的组织,严格的管理,相互友好的协作。(2)推广在实践中总结出来的开发软件的成功的技术和方法,并研究更好、更有效的技术和方法,尽快克服在计算机系统早期发展阶段形成的一些错误概念和作法。(3)根据不同的应用领域,开发更好的软件工具并使用这些工具。将软件开发各个阶段使用的软件工具集合成一个整体,形成一个很好的软件开发支环环境。总之为了解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。。(1)在1985M

)4080e7

(字如果字长为16P

((2)如果一条指令的长度为一个字,则使存储器装满程序共需4474263为了开发出4474263

(程序员的月平均工资是4000美元,开发出4474263

4

((3)在1995M

)73

(字如果字长为32P

(如果一条指令为一个字长,则为使存储器装满程序共需73,577,679在1995年一名程序员每天可开发出30条指令,每月可开发出600

(

((1)任何一个阶段的具体任务不仅独立,而且简单,便于不同人员分工协作,从而降低整个软件开发工作的困难程度。(2)可以降低每个阶段任务的复杂程度,简化不同阶段的联系,有利于工程的组织管理,也便于采用良好的技术方法。(3)使软件开发的全过程以一种有条不紊的方式进行,保证软件的质量,特6-1..1-6什么是软件过程?它与软件工程方法学有何关系软件过程是软件工程方法学的3渐增型开发方法及特点:(1)从部分需求出发,先建立一个不完全的系统,通过测试运行该系统取得经验计完成的软件系统满意为止。(2)在渐增型开发下的软件是随软件开发的过程而逐渐形成的。(3)渐增型开变换型开发方法及特点什么是软件工程(1)它采用工程的概念、原理、技术和方法来开发和维护软件;(2)它将管理技术与当前经过时间考验的而证明是正确的技术方法结合起来;(3)它强调使用生存周期方法学和结构分析和结构技术;(4)经过人们长期的努力和探索,围绕着实现软件优质高产这个目标,从技术到管理两个方面做了大量的努什么是软件工程环境第二章可行性研究问题定义的任务和主要工作问题定义阶段的工作:(1)通过调查研究,了解系统需求;等的需求;(3)问题定义阶段的产品--可行性研究目的进一步分析和澄清问题的定义,在澄清问题的基础上,导出系统的逻辑模型;2)模型中,选择问题的若干种主要解法,研究每一种解法的可行性,为以后的行动提出建议;(3)如果问题没有可行的解,建议停止系统开发;如果问题有可行的解,应该推荐一个较好的解决方案,并为工程制定一个初步的计划。2-4目前住院病人主要由护士护理,这样做不仅需要大量护士,而且由于不能随时观察危重病人的病情变医院对患者<#>监护系统的基本要求是随时接收每个病人的生理信号(脉搏、体温、血压、心电图等)F4F1F2F6D1F5D2F3F5安全范F5安全范 D2患者安全范分析信 危及病人信F2F4F2F6D1F6日 F1要求报 产生病情报F2 F5安全范 D2患者安全范F2生理信 D3生理信F4F2F2F6 生理信F6D1F1要求报 (1)复查系统的规模和目标;(2)研究目前正在使用的系统,总结现有系统的优劣,提出新系统的(3)(4)(5)(6)书写计划任务书(报告);(7)提交审查。5-1.2-5北京某高校可用的电话号码有以下几类:校内电话号码由4位数字组成,第1位数字不是0;校外电08位数字(第1位不是若是外地电话则拨3位区码再拨8位电话号码(第1位不是0)。请用定义数据字典的方法,定义上述的电话号码。符 含 x=[...,...]或 x=[a,b],x=[a|{...}或 重 x={a},x= 可 x= 基本数据元 x= 连结 x=校内电话号码=非零数字+3位数 //后面继续定非零数字数字零3位数字=3{数字 数字可行性分析的结果是可行性研究报告,内容包括:(1)系统概述:说明开发的系统名称,提出单位和开发单位。(2)可行性研究的前提:系统目标;要求;约束和限制;可行性研究的基本准则等。(3)现有系统的分析:处理流程,图示说明现有系统的处理流程和数据流程;现有系统存在的问题。(4)系统需系统结构,功能,性能;系统技术可行性;投资和效益分析;操作可行性;法律可行性。(6)其它可选方案:与国内外同类型方案的比较;提出一两个可行性方案供论证和探讨。(7)制定下一阶段的预算。(8)结论性意第三章需求分析需求分析的描述工具有哪些需求分析的基本任务是什么怎样建立目标系统的逻辑模型?要经过哪些步骤3-3.3-3储户填写的存款单或取款单由业务员存款则系统记录存款人姓名、住址(或电话号码)、身份证号码、存款类型、存款日期、到期日期、利率及密码(可选)等信息,并印出存单给储户;如果是取款而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并印出利息清单给储户。请用数据流图描绘本系统的功能,并用实体- F5存款信息F5D1存款信 储 F2F2F5F7F7D1ER本问题中共有两类实体,分别是“储户和“储蓄所”,在它们之间存在“存取款”关系。因为一位储“存取款”(储户的属性主要有姓名、住址、电话号码和身份证号码,储蓄所的属性主要是名称、地址和电话号码数额、类型、到期日期、利率和密码则是关系类型存取款什么是结构化分析?它的结构化体现在哪里结构化体现在将软件系统抽象为一系列的逻辑加工单元,软件需求规格说明书由哪些部分组成组成包括:1)引言:编写目的、背景说明、术语定义及参考资料等。(2)概述主要功能、约束条件或特殊需求。(3)数据流图与数据字典。(4)用户接口、硬件接口及软件接口。(5)性能需求、属性等。(6)为什么数据流图要分层?DFD要遵循哪些原则DFD要遵循哪些原则:(1)父图与子图之间数据要平衡。(2)分解的深度和层次达到使加工足3-6复印机的工作过程大致如下:未接到复印命令时处于闲置状态,一旦接到复印命令则进入复印状态,从问题陈述可知,复印机的状态主要有“闲置”“复印”“缺纸”和“卡纸”。“复印命令”“完成复印命令”“发现缺纸”“装满纸”“发生卡纸故障”和“排除了卡纸故障”系统流程图与数据流程图有什么区别数据字典包括哪些内容?数据字典是描述数据流图中数据的信息的集合。它对数据流图上每一个成分:数据项、文件(数据结构)部分组成。对用户来讲,,容易修改已建立的系统逻辑模型。描述加工逻辑的工具有哪些有决策树(又称判定树)、决策表(又称判断表)某单位拟开发一个计算机房产管理系统,要求系统具有分房、调房、退房和查询统计等功能。房产科再把此房号的信息和住户信息一起写到住房文件中,输出住房分配单给住户,同时计算房租,并将算出的房租写到房租文件中。(2)如果是退房申请,则从住房文件和房租文件中删除有关信息,再把此房号的信息写到空房文件中。(3)如果是调房申请,则根据申请者的情况确定其住房等级,然后在空房文件中查找属于该等级的空房,退掉原住房,再进行与分房类似的处理。(4)住户可以向系统查询目前分房的阀值分或更改某类房屋的居住条件、单位面积和房租等。第四章总体设计系统设计包括哪两个阶段总体设计的主要任务是完成软件结构的设计,4-3一个浮点二进制数的构成是:一个可选的符号(+或-)E,110101E--〈bit〉符号[...]a|bab位,则保持该状态不变;若接收到字符E,则进人“等待输人指数”状态;若接收到其他字符,则进人终模块设计的准则:(1)改进软件结构,提高模块独立性:在对初步模块进行合并、分解和移动的分析、精化过程中力求提高模块的内聚,降低藕合。(2)模块大小要适中:50行语句的代码,过大的模块应分解以提高理解性和可维护性;过小的模块,合并到上级模块中。(3)软件结构图的深度、宽度、扇入和扇5个。(4)尽量降低模块接口的复杂程度;(5)设计单入口、单出口的模块。(6)模块的作用域应在控制域之内。变换型结构由三部分组成:传入路径、变换(加工)变换分析设计的步骤?(1)DFD图的分界线;(2)完成第一级分解:SC图的框架;(3)完成第二级分解:SC图的各个分支;(4)对初始结构图按照设计准则事务分析设计的步骤?(1)DFD图中确定事务中心、接收部分(包含全部接收路径)和发送部分(包含全部动作路径);(2)SC图框架,DFD图的三部分分?quot;映射"为事务控制模块,接收模块和动作发送模块.SC图的顶层和第一层(如果第一层简单可以并入顶层);(3)分解和细化接收分支和动作分支,完SC图;(4)对初始结构图按照设计准则进行精化与改进。层次方框图描绘数据的层次结构,结构图描绘的是软件结构。(2)二者都采用多层次矩形框树形结构。层次方框图的顶层矩形框代表完整的数据结构,下面各层矩形框依次代表上个框数据的子集;结构图详细设计的目的为软件结构图(SCHC图)中的每一个模块确定采用的算法和块内数据结构,用某种选定的表达工详细设计的主要任务编写软件的“详细设计说明书”.软件人员要完成的工作(1)为每一个模块确定采用的算法,选择某种适当的工具表达算法的过程,写出模块的详细过程描述(2)确定每一模块使用的数据结构.(3)确定模块结构的细节,包括对系统外部的接口和用户界面,对系统内部其它模块的接口,以及关于模块输入数据、输出数据及局部数据的全部细节.(4)为每一个模块设计出一组测结构化程序设计的基本原则在详细设计中所有模块都使用单入口、单出口的顺序、选择、循环三种基本控制结构比较面向数据流和面向数据结构两类设计方法的异同相同点:(1)遵守结构程序设计“由顶向下”逐步细化的原则,并以其为共同的基础;(2)均服从“程序不同点:(1)DFD表示软件的逻辑模型,在设据结构出发导出它的程序结构。(2)SC图,面向数据结构的JacksonLCP方法的异同似。它们的主要差别是:(1)LCPWarnier图JacksonJackson图有更大的通用性;(2)Jackson方法的步骤和指导原LCP设计二.(1)(1)流程图;(2)N—S图;(3)PAD图;(4)PDLPDL找出它们之间的对应单元;(2)Jackson图表示的程序结构;(3)列出程序所需用的操作,并加到上一步画出的程序结构图上;(4)Jackson伪代码写出程序的过程表示。起始卡之前属前置部分,K1卡;起始卡与终了卡之间属分批部分,K2卡。如图:Jackson方法编一程序,要求依次完成下列分析工作 统计起始卡前卡片的张数, K1K3卡总批数, K1卡的张数, K3卡的批数, A、B、C、DER模型。该仓库主要管理零件的订购和供应等事项。仓库向工程项目供应”,是多对多(MN)联系;类似地,零件与供应商之间的联系“订购”,也是多对多(MN)实体类型“零件”的主要属性是:零件编号,零件名称,颜色,重量。实体类型“工程项目”项目编号,项目名称,开工日期。实体类型“供应商”的属性主要有:供应商编号,供应商名称,地址。系类型“供应”的属性是,向某工程项目供应的某种零件的数量。联系类型“订购”购的某种零件的数量。DFDSD配件库 暂存订货暂存订货 暂存订货编辑 获取货 件信储蓄系统2-机票预定系统2-(2)患者监护系统2-F3F5F5D1存款信 储F5F4F6 F8F8D2 P3.1取款 信P6

存密存密密存款 存款单据率设 存取存账 取票通

机机票航 航班信

4.美国某大学有200名教师,校方与教师工会刚刚签订一项协议。按照协议,所有年工资超过$26000($26000)的教师工资将保持不变,年工资少于$26000的教师将增加工资,所增加工资数额按下述方要求:(1)画出此系统的数据流图;(2)(3)设计上述的工资调整程序(HIPO图描绘设计结果),设计时分别采用两种算法,并比较两种(4)校核新工检索需调资导入工资档案导入工输入调资档案资标准工资数据 计算新校核新 更新新工原工资档 导入原 工资档 调资后工资档第六章编码的任务?使用选定的程序设计语言,把模块的过程性描述翻译为用语言书写的源程序(源代码)源程序要求:正确可靠、简明清晰、效率高。(1)源程序的正确性是对程序质量的最基本要求;(2)源程序的简明清晰,便于验证源代码和模块规格说明的一致性,容易进行测试和维护;(3)对于大多数模块,编码时应该把简明清晰放在第一位;(4)除了编码阶段产生源代码外,在测试阶段也需要编写一些程序设计语言的特点(1)名字说明:程序中使用对象的名字,能为编译程序所检查和识别;(2)类型说明:定义对象的类型,确定该对象的使用方式;(3)初始化:为变量提供适当的初始值或由系统给变量赋一特殊的表明未初始化的值;(4)对象的局部性:程序中真正需要的那部分才能访问的对象;语句等;(7)IF语句、CASE语句等;(8)异常处理:为程序运行过程中发生的错误和意外事件提供检测和处理上的帮助;(9)独立编译:能分别编译各个程序单元。 Ada语言或汇编语言,系统软件开发选CSQL、dBASE等数据库语言等。 构)与指针动态数据结构的Pascal语言或C语言。(8) 编码风格的指导原则。(1)第四代语言(4GL)应具备哪些的特征?(1)具有很强的数据管理能力,能对数据库进行有效的存取、查些命令说明“做什么”,不必描述实现的细节;(3)能满足多功能、一体化的要求。为此,语言中除必须含有IFpWHILEqENDDOENDENDIFTTflag,至少有两种方法可以把该程序改造为等价的结构化程序,图示盒图描绘了等不使用flag8 LOOP:DOWHILEX>0IFTHENX=AELSEY=ZENDIFTHENPRINTX,YELSEIFY=2THENGOTOLOOPELSEC=3ENDPrintFPrint Print

V(G)=E-=17-=6=判断结点 P代表交易的总金额,Q代表每股的售价,n(1)低于14n是100第16列(规则16)P超过10000Q在14元到25不是1000.1;(3)如果班级人数超过60人,课酬增加:基本课酬×0.2;(4)如果教师是副教授,课酬增加:基本课酬人数40<人数课酬:9元/课酬:10元/课酬:11元/课酬:12元/第七章习题参考答案一.测试与调试的主要区别?(1)测试从一个侧面证明程序员的失败;调试证明程序员的正确;2)测试可知内部条件开始,除统计性调试外,结果是不可预见的;(3)测试有计划并且要进行测试设计;调试不受时间约束;(4)测试是发现错误、改正错误、重新测试的过程;调试是一个推理的过程;(5)测试执行是有规程的;调试执行要求程序员进行必要的推理;(6)测试由独立的测试组在不了解软件设计的件下完成;调试由了解详细设计的程序员完成;(7)大多数测试的执行和设计可由工具支持;调试用的工具主要人工复审的方式和作用什么是黑盒测试?黑盒测试主要采用的技术有哪些黑盒测试主要采用的技术有:什么是白盒测试?白盒测试主要采用的技术有哪些路径测试技术中几种主要覆盖的含义?举例说明语句覆盖:判定覆盖:条件覆盖:条件组合测试:(例略等价分类法的测试技术采用的一般方法?举例说明?(1)为每个等价类编号;(2)设计一个新的测试方案,以尽可能多的覆盖尚未被覆盖的有效等价类,重复这一步骤,直到所有有效等价类被覆盖为止。(3)设计一个新的测试方案,使它覆盖一个尚未被覆盖的无效等价类,重复这一步骤,直到所有无效等价类被覆盖为止。软件测试的一般步骤比较集成试的两种方式的优劣软件测试的策略?(1)在任何情况下都应使用边界值分析的方法。(2)必要时用等价类划分法补充测试方案。(3)必要时再用错误推测法补充测试方案。(4)对照程序逻辑,检查已设计出的测试方案。(5)根2002001111ABCD90度/110度/8000度/12000度/9000度/11000度/三.

A>1,B¹0或A£1,B=0A=2,B=1或A=1,B=0前缀:非‘0’或‘1’的三位数字;后缀:4位数字。 有非数字字符;2.3.前3.2009994.有非数字字符;5.起始位为6.起始位为‘1’;7.8.后4.9.有非数字字符;10.11. 200~999之间的 )276-(635)805-(20A)723-(33)234-(5555)345-(345)5A2-起始位为(345)012-起始位为(345)132-(345)92-(345)4562-(345)342-(345)342-(345)562-4(3)INPUT(A,B,//判定表达式IFA>5 ENDIF//判定表达式 B>10THEN

//判定表达式IFC>15 ENDIFPRINT(X,Y,Z)ENDIF第八章软件维护对前面各章中分析的各应用系统,提出改进和扩充功能的要求?(1)教材销售采购系统;(2)图书管理系统;(3)房产管理系统。第九章软件工程管理(1)费用管理:对软件开发进行成本核算,使软件生产按照商品生产的规律办事。包括:以简单、科学方质完成。(2)质量管理:按项目的质量保证计划,确保各个开发阶段的开发和维护工作全部按软件工程的规范进行,保证软件产品的质量。(3)配置管理:通过对于程序、文档和数据的各种版本所进行的管理,保证资料的完整性与一致性。4的费用和进度,圆满完成计划所规定的软件项目。开发软件项目产品,在多数情况下,用户给不出明确的想法和要求。(3)在研制开发过程中,文档资料是不可缺少的,但工作量又是巨大的,往往也是人们不愿去作的。(5)参加软自顶向下估计:首先估算出项目总的开发成本,然后在项目内部进行成本分配。由少数专家参与,依自底向上估计将开发任务分成若干子任务,子任务又分成子子任务,直到每一个单元内容足够明确为止;影响软件质量的主要因素有哪些?(1)产品运行:正确性、风险性、效率、完整性、健壮性和可用性;(2)产品修改:可理解性、可维护性、灵活性、可测试性;(3)产品转移:可移植性、可重用性和互运行性。PERT图。第十章软件工程环境软件生存周期可将其分为如下几类:(1)需求分析:如数据流图绘制与分析工具、状态转换图绘制与分析图、PDL(程序设计语言)PAD(问题分析图)支持工具等。(3)编码:集成化的程序员工作平台。如各种正文编辑器和常规的编译程序、汇编程序、连结程序及符号调试器等。(4)软件测试:如静态分析器、

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论