欢迎来到天天文库
浏览记录
ID:19617242
大小:296.62 KB
页数:13页
时间:2018-10-04
《软件工程总结 具体》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第一章1.什么是软件危机?它有哪些典型表现?为什么会产生软件危机?软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。这些问题表现在以下几个方面: (1)用户对开发出的软件很难满意。 (2)软件产品的质量往往靠不住。 (3)一般软件很难维护。 (4)软件生产效率很低。 (5)软件开发成本越来越大。 (6)软件成本与开发进度难以估计。 (7)软件技术的发展远远满足不了计算机应用的普及与深入的需要。产生软件危机的原因 (1)开发人员方面,对软件产品缺乏正确认识,没有真正理解软件产品是一个
2、完整的配置组成。造成开发中制定计划盲目、编程草率,不考虑维护工作的必要性。 (2)软件本身方面,对于计算机系统来说,软件是逻辑部件,软件开发过程没有统一的、公认的方法论和规范指导,造成软件维护困难。 (3)尤其是随着软件规模越来越大,复杂程度越来越高,原有软件开发方式效率不高、质量不能保证、成本过高、研制周期不易估计、维护困难等一系列问题更为突出,技术的发展已经远远不能适应社会需求。2.假设自己是一家软件公司的总工程师,当把图1.1给手下的软件工程师们观看,告诉他们及早发现并改正错误的重要性时,有人不同意这个观点,认为要求
3、在错误进入软件之前就清除它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么,一个人怎么能在设计阶段清楚他呢?”应该怎样反驳他?反驳:发生在编码时期的故障极有可能是需求分析阶段由于操作不当产生的,所以必须及时消除错误,否则,到了后期软件运行和维护阶段再回过头来修改,将会付出更大的代价。3.什么是软件工程?它有哪些本质特性?怎样用软件工程消除软件危机? 软件工程是指导计算机软件开发和维护的工程学科。 (1)它采用工程的概念、原理、技术和方法来开发和维护软件; (2)它将管理技术与当前经过时间考验的而证明是正确
4、的技术方法结合起来; (3)它强调使用生存周期方法学和结构分析和结构技术; (4)经过人们长期的努力和探索,围绕着实现软件优质高产这个目标,从技术到管理两个方面做了大量的努力,逐渐形成了"软件工程学"这一新的学科。消除软件危机的措施:(1)对计算机软件有一个正确的认识(软件≠程序)(2)必须充分认识到软件开发不是某种个体劳动的神秘技巧,而应该是一种组织良好、管理严密、各类人员协同配合、共同完成的工程项目。(3)推广使用在实践中总结出来的开发软件的成功技术和方法。(4)开发和使用更好的软件工具&1.技术措施推广和使用在实
5、践中总结出的好的软件开发技术和方法,并不断探索和研究更有效的技术。开发和使用更好的软件工具,包括采用好的开发工具,系统分析和辅助设计工具等,以提高工作效率。&2.管理措施吸收和借鉴人类长期以来从事各类工程项目所积累的行之有效的原理、概念、技术和方法4.软件生命周期的定义:一个软件从定义、开发、使用和维护,直到最终被废弃为止的整个过程软件生命周期的构成:5.软件生命周期的各个阶段和任务:定义时期:问题定义可行性研究需求分析开发时期:总体设计详细设计编码和单元测试综合测试维护时期:综合测试(1)问题定义:通过对系统实际用户和使用部
6、门负责人的访问调查,明确要解决问题性质、工程目标和规模。(2)可行性研究:导出系统的高层逻辑模型(数据流图),并在此基础上更准确、更具体的确定工程的规模和目标;更准确的估计系统的成本和效益。(3)需求分析:和用户密切配合,充分交流信息,以得到用户确认的系统逻辑模型(数据流图、数据字典及简要的算法表示的系统逻辑模型)。(4)总体设计:1)提出几种可能的解决方案,权衡各种方案的利弊,并推荐出最佳方案;2)设计软件的结构,确定软件的模块构成及模块之间的关系。(5)详细设计:把解决问题的方案具体化,设计出程序的详细规格说明,并包含必要
7、的细节信息。(6)编码和单元测试:将详细设计的结果翻译成高级程序设计语言的源程序,并仔细测试编写的每一个模块。(7)综合测试:通过各类型的严格测试与调试,使软件达到预定的要求。1)集成测试:各模块装配后测试;2)验收测试:按规格说明书。(8)软件维护:通过必要的维护工作使得系统持久的满足用户的需要:1)改正性维护;2)适应性维护;3)完善性维护;4)预防性维护6.软件工程的定义:采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的技术方法结合起来,来指导软件的开发与维护7.软件工
8、程的基本原理:(1)用分阶段的生命周期计划严格管理项目概要计划,里程碑计划,项目控制计划,产品控制计划,验证计划,运行维护计划。(2)坚持进行阶段评审(评审过程)每个阶段都进行严格的评审,以便尽早发现错误。(3)实行严格的产品控制实行基准配置(经过阶段评审后的软件配置成份,包
此文档下载收益归作者所有