软件工程导论----张海藩(第五版)课后习题答案41831.docx
《软件工程导论----张海藩(第五版)课后习题答案41831.docx》由会员分享,可在线阅读,更多相关《软件工程导论----张海藩(第五版)课后习题答案41831.docx(45页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、软件工程课后习题答案第五版软件工程导论课后习题答案第一章 软件工程概论1什么是软件件危机?软件危机是是指在计算机机软件的开发发和维护过程程中所遇到的的一系列严重重问题。这些些问题表现在在以下几个方方面:(1)用用户对开发出出的软件很难难满意。(2)软软件产品的质质量往往靠不不住。(3)一一般软件很难难维护。(4)软软件生产效率率很低。(5)软软件开发成本本越来越大。(6)软软件成本与开开发进度难以以估计。(7)软软件技术的发发展远远满足足不了计算机机应用的普及及与深入的需需要。2为什么会产产生软件危机机?(1) 开开发人员方面面,对软件产产品缺乏正确确认识,没有有真正理解软软件产品是一一个完整
2、的配配置组成。造造成开发中制制定计划盲目目、编程草率率,不考虑维维护工作的必必要性。 (2) 软软件本身方面面,对于计算算机系统来说说,软件是逻逻辑部件,软软件开发过程程没有统一的的、公认的方方法论和规范范指导,造成成软件维护困困难。(3) 尤尤其是随着软软件规模越来来越大,复杂杂程度越来越越高,原有软软件开发方式式效率不高、质质量不能保证证、成本过高高、研制周期期不易估计、维维护困难等一一系列问题更更为突出,技技术的发展已已经远远不能能适应社会需需求。3怎样克服软软件危机?(1) 充充分吸收和借借鉴人类长期期以来从事各各种工程项目目中积累的行行之有效的有有效原理、概概念、技术与与方法,特别别
3、是吸取几十十年来人类从从事计算机硬硬件研究和开开发的经验教教训。在开发发软件的过程程中努力作到到良好的组织织,严格的管管理,相互友友好的协作。(2) 推推广在实践中中总结出来的的开发软件的的成功的技术术和方法,并并研究更好、更更有效的技术术和方法,尽尽快克服在计计算机系统早早期发展阶段段形成的一些些错误概念和和作法。(3) 根根据不同的应应用领域,开开发更好的软软件工具并使使用这些工具具。将软件开开发各个阶段段使用的软件件工具集合成成一个整体,形形成一个很好好的软件开发发支环环境。总之为了解决软软件危机,既既要有技术措措施(方法和和工具),又又要有必要的的组织管理措措施。4.构成软件项项目的最
4、终产产品:应用程序、系系统程序、面面向用户的文文档资料和面面向开发者的的文档资料。5什么是软件件生存周期?软件生存周周期是指从软软件定义、开开发、使用、维维护到淘汰的的全过程。6软件生存周周期为什么划划分成阶段? (1) 任任何一个阶段段的具体任务务不仅独立,而而且简单,便便于不同人员员分工协作,从从而降低整个个软件开发工工作的困难程程度。(2) 可可以降低每个个阶段任务的的复杂程度,简简化不同阶段段的联系,有有利于工程的的组织管理,也也便于采用良良好的技术方方法。(3) 使使软件开发的的全过程以一一种有条不紊紊的方式进行行,保证软件件的质量,特特别是提高了了软件的可维维护性。7应该怎样来来划
5、分阶段?(1)每一一个阶段的任任务尽可能独独立;(2)同一一阶段内的任任务性质尽可可能相同;(3)每一一个阶段任务务的开始和结结束有严格的的标准。8软件开发模模型有几种?它们的开发发方法有可特特点?软件开发模模型有瀑布型型、渐增型和和变换型。瀑布型开发发方法是按照照软件生存周周期的划分依依次实施,每每一个阶段有有明确规定的的任务。它的的特点:(1)各各个阶段的顺顺序性和依赖赖性;(2)划划分逻辑设计计与物理设计计,尽可能推推迟程序的物物理实现;(3)每每个阶段必须须完成规定的的文档,对其其中问题通过过复审及早发发现,及早解解决。渐增型开发发方法及特点点:(1) 从部分需求求出发,先建建立一个不
6、完完全的系统,通通过测试运行行该系统取得得经验和信息息反馈,加深深对软件需求求的理解,进进一步使系统统扩充和完善善。如此反复复,直至软件件人员和用户户对所设计完完成的软件系系统满意为止止。(2) 在渐增型开开发下的软件件是随软件开开发的过程而而逐渐形成的的。(3) 渐增型开发发方法适合于于知识型软件件的开发,设设计系统时对对用户需求的的认识开始不不是很清楚的的,需要在开开发过程中不不断认识、不不断获得新的的知识去丰富富和完善系统统。多数研究究性质的试验验软件,一般般采用此方法法。变换型开发发方法及特点点:(1)从从软件需求的的形式化规格格说明出发,经经过一系列的的程序变换,得得到最终的程程序系
7、统。(2)该该方法必须有有严格的数学学理论和形式式化技术的支支持。9.什么是软件件工程?软件工程是是指导计算机机软件开发和和维护的工程程学科。(1) 它采用工程程的概念、原原理、技术和和方法来开发发和维护软件件;(2) 它将管理技技术与当前经经过时间考验验的而证明是是正确的技术术方法结合起起来;(3) 它强调使用用生存周期方方法学和结构构分析和结构构技术;(4) 经过人们长长期的努力和和探索,围绕绕着实现软件件优质高产这这个目标,从从技术到管理理两个方面做做了大量的努努力,逐渐形形成了软件件工程学这这一新的学科科。10什么是软软件工程环境境:方法与工具的结结合,加上配配套的软、硬硬件支持称为为
8、软件工程环环境。它能支支持开发者按按照软件工程程的方法,全全面完成生存存周期中的各各项任务。第二章可行性性研究习题题答案1. 问题定义义的任务和主主要工作?问题定义的的任务:将用用户提出的要要求具体化、定定量化;确定定研制系统的的范围,明确确研制的边界界。问题定义阶阶段的工作:(1) 通通过调查研究究,了解系统统需求;(2) 确确定系统的功功能需求、性性能需求、可可靠性需求、安安全及保密性性、资源、开开发费用及开开发进度等的的需求;(3) 问问题定义阶段段的产品-系统目标与与范围说明书书。2.可行性研究究目的?确定在问题题定义中所提提出的问题是是否值得去解解,在限制条条件下,问题题能否解决。3
9、可行性研究究的任务?(1) 进进一步分析和和澄清问题的的定义,在澄澄清问题的基基础上,导出出系统的逻辑辑模型;(2) 从从系统逻辑模模型中,选择择问题的若干干种主要解法法,研究每一一种解法的可可行性,为以以后的行动提提出建议;(3) 如如果问题没有有可行的解,建建议停止系统统开发;如果果问题有可行行的解,应该该推荐一个较较好的解决方方案,并为工工程制定一个个初步的计划划。4可行性研究究包括哪几方方面的内容?(1)技术术可行性:现现有技术能否否实现本系统统,现有技术术人员能否胜胜任,开发系系统的资源能能否满足;(2)经济济可行性:经经济效益是否否超出开发成成本;(3)操作作可行性:系系统操作在用
10、用户内部行得得通吗?(4)法律律可行性:新新系统开发是是否会侵犯他他人、集体或或国家利益,是是否违反国家家法律。5可行性研究究的步骤?(1)复查查系统的规模模和目标;(2)研究究目前正在使使用的系统,总总结现有系统统的优劣,提提出新系统的的雏形;(3)导出出新系统的高高层逻辑模型型;(4)推荐荐建议方案; (5)推荐荐行动方针;(6)书写写计划任务书书(可行性报报告); (7)提交交审查。6. 可行性研研究报告的主主要内容?可行性分析析的结果是可可行性研究报报告,内容包包括:(1) 系系统概述:说说明开发的系系统名称,提提出单位和开开发单位。(2) 可可行性研究的的前提:系统统目标;要求求;约
11、束和限限制;可行性性研究的基本本准则等。(3) 对对现有系统的的分析:处理理流程,图示示说明现有系系统的处理流流程和数据流流程;现有系系统存在的问问题。 (4) 系系统需求:主主要功能;主主要性能及其其要求;操作作要求;信息息要求;限制制性要求。(5) 建建议系统:系系统目标;处处理流程;系系统结构,功功能,性能;系统技术可可行性;投资资和效益分析析;操作可行行性;法律可可行性。(6) 其其它可选方案案:与国内外外同类型方案案的比较;提提出一两个可可行性方案供供论证和探讨讨。(7) 制制定下一阶段段的预算。(8) 结结论性意见:由用户方、设设计方和投资资方共同签署署意见。第三章需求分分析习题答
12、答案1.需求分析的的描述工具有有哪些?有数据流图图、数据字典典、判定表、判判定树、结构构化自然语言言、层次方框框图、Warrnier图图、IPO图图和需求描述述语言等。2.需求分析的的基本任务是是什么?准确定义未未来系统的目目标,确定为为了满足用户户的需要系统统必须做什么么。3.怎样建立目目标系统的逻逻辑模型?要要经过哪些步步骤?建立目标系系统的逻辑模模型的过程也也就是数据流流图的分解过过程。它的导导出过程如图图: 4.什么是结构构化分析?它它的结构化体体现在哪里?结构化分析析:使用数据据流程图、数数据字典、结结构化英语、判判定表和判定定树等工具,来来建立一种新新的、称为结结构化说明书书的目标
13、文档档-需求规格格说明书。结构化体现现在将软件系系统抽象为一一系列的逻辑辑加工单元,各单元之间间以数据流发发生关联。5.软件需求规规格说明书由由哪些部分组组成?组成包括:(1) 引引言:编写目目的、背景说说明、术语定定义及参考资资料等。(2) 概概述主要功能能、约束条件件或特殊需求求。(3) 数数据流图与数数据字典。(4) 用用户接口、硬硬件接口及软软件接口。(5) 性性能需求、属属性等。(6) 其其它需求,如如数据库、操操作及故障处处理等。6.为什么数据据流图要分层层?画分层的的DFD要遵遵循哪些原则则?分层的目的的:便于逐步步细化、结构构清晰。画分层的DDFD要遵循循哪些原则:(1)父图图
14、与子图之间间数据要平衡衡。(2)分解解的深度和层层次达到使加加工足够简单单、易于理解解的基本加工工为止。(3)区分分局部文件和和局部外部项项(局限于数数据流中某一一层或某几层层的文件和外外部项)。(4)不要要把控制流作作为数据流。(5)忽略略琐碎的枝节节。(6)每个个数据流要有有一个合适的的名字,尽量量使用现实系系统中有具体体意义的名字字。7.系统流程图图与数据流程程图有什么区区别?系统流程图图描述系统物物理模型的工工具,数据流流程图描述系系统逻辑模型型的工具。系统流程图图从系统功能能的角度抽象象的描述系统统的各个部分分及其相互之之间信息流动动的情况。数据流程图图从数据传送送和加工的角角度抽象
15、的描描述信息在系系统中的流动动和数据处理理的工作状况况。8.数据字典包包括哪些内容容?它的作用用是什么?数据字典是是描述数据流流图中数据的的信息的集合合。它对数据据流图上每一一个成分:数数据项、文件件(数据结构构)、数据流流、数据存储储、加工和外外部项等给以以定义和说明明;它主要由由数据流描述述、加工描述述和文件描述述三部分组成成。对用户来来讲,数据字字典为他们提提供了数据的的明确定义;对系统分析析员来讲,数数据字典帮助助他们比较容容易修改已建建立的系统逻逻辑模型。9.描述加工逻逻辑的工具有有哪些?有决策树(又称判定树树)、决策表表(又称判断断表)和结构构化语言等。10.某单位拟拟开发一个计计
16、算机房产管管理系统,要要求系统具有有分房、 调调房、退房和和查询统计等等功能。房产产科将用户申申请表输入系系统 后,系系统首先检查查申请表的合合法性,对不不合法的申请请表,系统拒拒绝接收;对对合法的申请请表根据类型型分别进行处处理。 (1) 如如果是分房申申请,则根据据申请者的情情况(年龄、工工龄、职称、职职务、家庭人人口等)计算算其分数,当当分数高于阀阀值分数时,按按分数高低将将申请单插到到分房队列的的适当位置。在在进行分房时时,从空房文文件中读出空空房信息,如如房号、面积积、等级、单单位面积房租租等,把好房房优先分给排排在分房队列列前面的符合合该等级房条条件的申请者者;从空房文文件中删掉这
17、这个房号的信信息,并从分分房队列中删删掉该申请单单,再把此房房号的信息和和住户信息一一起写到住房房文件中,输输出住房分配配单给住户,同同时计算房租租,并将算出出的房租写到到房租文件中中。 (2) 如如果是退房申申请,则从住住房文件和房房租文件中删删除有关信息息,再把此房房号的信息写写到空房文件件中。(3) 如如果是调房申申请,则根据据申请者的情情况确定其住住房等级,然然后在空房文文件中查找属属于该等级的的空房,退掉掉原住房,再再进行与分房房类似的处理理。 (4) 住住户可以向系系统查询目前前分房的阀值值分数,居住住某类房屋的的条件,某房房号的单位面面积及房租等等信息。房产产科可以要求求系统打印
18、住住房情况的统统计表,或更更改某类房屋屋的居住条件件、单位面积积和房租等。用数据流图图描绘该系统统的功能需求求;在数据字字典中给出主主要的数据流流、文件和加加工说明。 参考第四章4.5应用举例例教案之二分分析。 第四章 总体设设计习题答答案1. 系统设计计包括哪两个个阶段?系统设计包包括总体设计计与详细设计计两个阶段。2. 总体设计计的主要任务务是什么?总体设计的的主要任务是是完成软件结结构的设计,确定系统的的模块及其模模块之间的关关系。3. 什么是模模块?模块具具有哪几个特特征?总体设设计主要考虑虑什么特征?模块是数据据说明、可执执行语句等程程序对象的集集合,可以单单独命名且可可通过名字来来
19、访问。模块具有输输入和输出(参数传递)、功能、内内部数据结构构(局部变量量)和程序代代码四个特性性。概要设计主主要考虑输入入、输出(参参数传递)和和功能两个特特性。4. 什么是模模块化?模块块设计的准则则?模块化是按按规定的原则则将一个大型型软件划分为为一个个较小小的、相对独独立但又相关关的模块。模块设计的的准则:(1) 改改进软件结构构, 提高模模块独立性:在对初步模模块进行合并并、分解和移移动的分析、精精化过程中力力求提高模块块的内聚,降降低藕合。(2) 模模块大小要适适中:大约550行语句的的代码,过大大的模块应分分解以提高理理解性和可维维护性;过小小的模块,合合并到上级模模块中。(3)
20、 软软件结构图的的深度、宽度度、扇入和扇扇出要适当。一一般模块的调调用个数不要要超过5个。(4) 尽尽量降低模块块接口的复杂杂程度;(5) 设设计单入口、单单出口的模块块。(6) 模模块的作用域域应在控制域域之内。5. 变换型数数据流由哪几几部分组成?变换型结构构由三部分组组成:传入路路径、变换(加工)中心心和传出路径径。6. 变换分析析设计的步骤骤?(1) 区区分传入、传传出和变换中中心三部分,划划分DFD图图的分界线;(2) 完完成第一级分分解:建立初初始SC图的的框架;(3) 完完成第二级分分解:分解SSC图的各个个分支;(4) 对对初始结构图图按照设计准准则进行精化化与改进。7. 事务
21、型数数据流由哪几几部分组成?事务型结构构由至少一条条接受路径、一一个事务中心心与若干条动动作路径组成成。8. 事务分析析设计的步骤骤?(1) 在在DFD图中中确定事务中中心、接收部部分(包含全全部接收路径径)和发送部部分(包含全全部动作路径径);(2) 画画出SC图框框架,把DFFD图的三部部分分?quuot;映射射为事务控控制模块,接接收模块和动动作发送模块块.一般得到到SC图的顶顶层和第一层层(如果第一一层简单可以以并入顶层);(3) 分分解和细化接接收分支和动动作分支,完完成初始的SSC图;(4) 对对初始结构图图按照设计准准则进行精化化与改进。9. 比较层次次方框图与结结构图是的异异同
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 导论 张海藩 第五 课后 习题 答案 41831
限制150内