2023年软件工程课后作业-软件工程第4版课后答案.docx
《2023年软件工程课后作业-软件工程第4版课后答案.docx》由会员分享,可在线阅读,更多相关《2023年软件工程课后作业-软件工程第4版课后答案.docx(12页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、2023年软件工程课后作业:软件工程第4版课后答案 第一章 一、什么是软件危机?它有哪些典型表现?为什么会出现软件危机? 软件危机是指在计算机软件开发、运用与维护过程中遇到的一系列严峻问题和难题。它包括两方面:如何开发软件,已满意对软件日益增长的需求;如何维护数量不断增长的已有软件。 软件危机的典型表现: (1) 对软件开发成本和进度的估计经常很不精确 (2) 用户对已完成的软件不满足的现象时有发生 (3) 软件产品的质量往往是靠不住的 (4) 软件经常是不行维护的。 (5) 软件通常没有适当的文档资料。 (6) 软件成本、软件维护费在计算机系统总成本中所占比例逐年上升。 (7) 开发生产率提
2、高的速度远跟不上计算机应用普及的需求。 软件危机出现的缘由: (1) 来自软件自身的特点:是逻辑部件,缺乏可见性;规模浩大、困难,修改、维护困难。 (2) 软件开发与维护的方法不当:忽视需求分析; 认为软件开发等于程序编写; 轻视软件维护。 (3) 供求冲突将是一个永恒的主题:面对日益增长的软件需求,人们显得力不从心。 四、简述结构化范型和面对对象范型的要点,并分析他们的优缺点。 1. 传统方法学:也称为生命周期方法学或结构化范型。 优点:把软件生命周期划分成若干个阶段,每个阶段的任务相对独立,而且比较简洁,便于不同人员分工协作,从而降低了整个软件开发过程的困难程度。 缺点:当软件规模浩大时,
3、或者对软件的需求是模糊的或会承受时 间而改变的时候,开发出的软件往往不胜利;而且维护起来仍旧很困难。 2. 面对对象方法学: 优点:降低了软件产品的困难性;提高了软件的可理解性;简化了软件的开发和维护工作;促进了软件重用。 七、什么是软件生命周期模型?试比较瀑布模型、快速原型模型、增量模型和螺旋模型的优缺点,说明每种模型的运用范围。 软件生命周期模型是跨越整个生存期的系统开发、运作和维护所实施的全部过程、活动和任务的结构框架。 瀑布模型 优点:它供应了一个模板,这个模板使得分析、设计、编码、测试和支持的方法可以在该模板下有一个共同的指导。虽然有不少缺陷但比在软件开发中随意的状态要好得多。 缺点
4、: (1) 实际的项目大部分状况难以根据该模型给出的依次进行,而且这种模型的迭代是间接的,这很简单由微小的改变而造成大的混乱。 (2) 常常状况下客户难以表达真正的需求,而这种模型却要求如此,这种模型是不欢迎具有二义性问题存在的。 (3) 客户要等到开发周期的晚期才能看到程序运行的测试版本,而在这时发觉大的错误时,可能引起客户的惊惶,而后果也可能是灾 难性的。 快速原型模型 优点:运用户能够感受到实际的系统,使开发者能够快速地构造出系统的框架。 缺点:产品的先天性不足,因为开发者经常须要做实现上的折中,可能采纳不合适的操作系统或程序设计语言,以使原型能够尽快工作。 增量模型 优点: (1) 人
5、员安排敏捷,刚起先不用投入大量人力资源,当核心产品很受欢迎时,可增加人力实现下一个增量。 (2) 当配备的人员不能在设定的期限内完成产品时,它供应了一种先推出核心产品的途径,这样就可以先发布部分功能给客户,对客户起到冷静剂的作用。 缺点: (1) 至始至终开发者和客户纠缠在一起,直到完全版本出来。 (2) 适合于软件需求不明确、设计方案有肯定风险的软件项目。该模型具有肯定的市场。 螺旋模型 优点:对于大型系统及软件的开发,这种模型是一个很好的方法。开发者和客户能够较好地对待和理解每一个演化级别上的风险。 缺点: (1) 须要相当的风险分析评估的特地技术,且胜利依靠于这种技术。 (2) 很明显一
6、个大的没有被发觉的风险问题,将会导致问题的发生,可能导致演化的方法失去限制。 (3) 这种模型相对比较新,应用不广泛,其功效须要进一步的验证。 该模型适合于大型软件的开发 九、试探讨Rational 统一过程的优缺点。 优点:提高了团队生产力,在迭代的开发过程、需求管理、基于组建的体系结构、可视化软件建模、验证软件质量及限制软件变更等方面、针对全部关键的开发活动为每个开发成员供应了必要的准则、模版和工具指导,并确保全体成员共享相同的学问基础。它建立了简洁和清楚的过程结构,为开发过程供应较大的通用性。 十Rational 统一过程主要适用于何种项目? 大型的需求不断改变的困难软件系统项目 其次章
7、 1. 在软件开发的早期阶段为什么要进行可行性探讨? 应当从哪些方面探讨目标系统的可行性? 答:(1)开发一个软件时,须要推断原定的系统模型和目标是否现实,系统完成后所能带来的效益是否大到值得投资开发这个系统的程度,假如做不到这些,那么花费在这些工程上的任何时间、人力、软硬件资源和经费,都是无谓的奢侈。可行性探讨的实质是要进行一次大大压缩简化了的系统分析和设计过程,就是在较高层次上以较抽象的方式进行的系统分析和设计的过程。可行性探讨的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。(2)一般说来,至少应当从以下三个方面探讨每种解法的可行性: a. 技术可行性。b. 经济可行性。 c
8、. 操作可行性。 第三章 一、为什么要进行需求分析?通常对软件系统有哪些要求? 答:1) 为了开发出真正满意用户需求的软件产品,首先必需知道用户的需求。对软件需求的深化理解是软件开发工作获得胜利的前提条件,不论我们把设计和编码工作做得如何精彩,不能真正满意用户需求的程序只会令用户悲观,给开发者带来苦恼。 2) 确定对系统的综合要求:1、功能需求;2、性能需求;3、牢靠性和可用性需求;4、出错处理需求;5、接口需求;6、约束;7、逆向需求;8、将来可以提出的要求,分析系统的数据要求。 三、1 银行计算机储蓄系统的工作过程大致如下:储户填写的存款单或取款单由业务员键入系统,假如是存款则系统记录存款
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2023 软件工程 课后 作业 答案
限制150内