软件工程教学资料-第2章习题及答案

软件工程教学资料-第2章习题及答案

ID:42019957

大小:31.50 KB

页数:4页

时间:2019-09-06

软件工程教学资料-第2章习题及答案_第1页
软件工程教学资料-第2章习题及答案_第2页
软件工程教学资料-第2章习题及答案_第3页
软件工程教学资料-第2章习题及答案_第4页
资源描述:

《软件工程教学资料-第2章习题及答案》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、第2章习题及答案一、选择题1.B2.B3.D4.A5.D6.D7.B8.A9.C10.B11.D12.A13.C二、问答题1.什么是软件生命周期?答:软件生命周期又称为软件生存周期,牛命周期的每一个阶段都有确定的任务,并产生相应的文档资料,提交给下一个阶段作为继续工作的依据。按照软件牛命周期的定义,软件的开发不仅仅是强调“编码”,而是概括了软件开发的全过程。概括地说,软件生命周期由软件定义、软件开发和运行维护(也称为软件维护)3个时期组成,每个时期又进一步划分成若干个阶段。软件定义时期的任务就是解决“做什么”的问题,即确定软件开发工程必须完

2、成的总目标;确定工程的可行性;导出实现工程目标应该采用的策略及系统必须完成的功能;估计完成该项工程需要的资源和成本,并且制定工程进度表。这个时期的工作通常又称为系统分析,由系统分析员负责完成。软件定义时期通常进一步划分成3个阶段,即问题定义、可行性研究和需求分析。开发时期的主要任务是解决“怎样做”的问题,即具体设计和实现在前一个时期定义的软件,同时要选择一种适当的开发工具,把软件设计转化为计算机可以接受的程序代码。它通常包括4个阶段:总体设计,详细设计,编码和单元测试,综合测试。其中前两个阶段又称为系统设计,后两个阶段又称为系统实现。维护时

3、期的主要任务是使软件持久地满足用户的需要。通常包括改正性维护、适应性维护、完善性维护、预防性维护。通常对维护时期不再进一步划分阶段,但是每一次维护活动本质上都是一次压缩和简化了的定义和开发过程。2.简述软件生命周期各个阶段的基本任务。答:软件生命周期每个阶段的基本任务:(1)问题定义问题定义阶段必须回答的关键问题是:“要解决的问题是什么?”只有清楚要解决的问题,才能够进行可行性研究,否则就是盲目的开发,只会白白浪费时间和金钱,最终得出的结果很可能是毫无意义的。在进行软件开发前,确切地定义问题是十分必要性,是不容忽视一个步骤。通过与客户的沟通

4、交流,系统分析员写出关于问题性质、工程目标和工程规模的书面报告,经过讨论和必要的修改之后得到客户的确认,才可以开始下一个阶段的任务。⑵可行性研究这个阶段要冋答的关键问题是:“対于上一个阶段所确定的问题有行得通的解决办法吗?”要知道并不是所有问题都有行之有效的解决办法。实际上,很多问题很难在预定的系规模或时间内解决。如果问题没有可行性的方法解决,那么花费在这个项目上的时间、资源和经费都是无谓的浪费。可行性研究的目的就是用最小的代价在最短的时间内确定问题是否能够解决。这就要求系统分析员必须进一步了解用户的需求,并在此基础上提出多种可能的系统实现

5、方案,对侮种方案都从技术可行性、经济可行性、社会因素可行性等方面进行分析,从而最终确定这个项目的可行性。(3)需求分析这个阶段的任务仍然不是具体地解决问题,而是准确地确定“为了解决这个问题,li标系统必须做什么”。需求分析就是对目标系统提出完整、清晰、具体的要求,即确定目标系统必须具备哪些功能。而可行性研究没有考虑细节的问题,并没有准确地回答“系统必须做什么”的问题,所有不能代替需求分析。用户了解他们所面对的问题,知道必须做什么,但通常不能完整准确地表达出他们的要求,更不知道怎样利用计算机解决他们的问题;软件开发人员知道怎样用软件实现人们的

6、要求,但是对待定用户的具体要求并不完全清楚。因此,系统分析员在需求分析阶段必须和用户密切配合,充分交流信息,以得出经过用户确认的系统逻辑模型。这个阶段还有一项重要的任务,就是用正式文档准确地记录对目标系统的需求,我们把该文档称为规格说明书(specification)。(4)概要设计概要设计又称为总体设计。这个阶段的基本任务是,概括地回答“如何实现目标系统?”这个问题。首先,应该设计出实现目标系统的儿种可能的方案。软件工程师应该用适当的表达工具描述每种方案,分析每种方案的优缺点,并在充分权衡各种方案的利弊的基础上,推荐一个最佳方案。此外,还

7、应该制定出实现最佳方案的详细计划。如果客户接受所推荐的方案,则应该进一步完成下述的另一项主要任务。概要设计的任务还包插设计程序的体系结构,也就是对程序进行模块化,确定程序市哪些模块组成以及模块间的关系。这一阶段确定了解决问题的策略、冃标系统中应包含的程序以及数据库的设计。(5)详细设计概要设计阶段只是比较概括的方式提出了解决问题的办法。详细设计阶段的任务则是要把解法具体化,即具体解决如何实现软件系统。同时,在这个阶段还要设计出程序的详细规格说明。这种规格说明的作用很类似于其他工程领域中工程师经常使用的工程蓝图,它们应该包含必耍的细节,程序员

8、对以根据它们在一个阶段写出实际的程序代码。详细设计也称为模块设计,在这个阶段将详细地设计每个模块,确定实现模块功能所需耍的算法和数据结构。(6)编码这个阶段的任务是将软件设计的结

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。