欢迎来到天天文库
浏览记录
ID:22137835
大小:144.29 KB
页数:16页
时间:2018-10-27
《软件工程期末复习要点归纳总结》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第一章软件工程学概论1、软件危机产生的原因软件本身的特点:难于维护、逻辑复杂软件开发与维护的方法不正确:忽略需求分析重要性、轻视软件维护课本表述:1、软件不同于硬件,它是计算机中的逻辑部件而不是物理部件2、软件不同于一般程序,它的一个显著特点是规模庞大,而且程序的复杂性将规模的增加而呈现指数上升。3、软件本身特有的特点确实给开发和维护带了一些客观困难4、软件开发与维护有关的许多错误认识与做法有关(忽略需求分析,轻视软件维护)5、对用户要求没有完整准确的认识就匆忙开始着手编写程序6、在软件不同阶段进行修改需要付出的代价是很不相同的2
2、、软件危机的表现(什么是软件危机)(1)、成本高:(2)、软件质量得不到保证:软件质量问题导致失败的软件项目非常多(3)、进度难以控制:●项目延期比比皆是●由于进度问题而取消的软件项目较常见●只有一小部分的项目能够按期完成(4)、维护十分困难:▼软件维护的多样性▼软件维护的复杂性▼软件维护的副作用3、克服软件危机(1)、管理的角度:软件开发过程的研究、文档的标准化以及人员的交流方式等(2)、软件开发方法的研究结构化软件开发方法,面向对象的开发4、软件工程的定义概括的说,软件工程师指导计算机软件开发和维护的一门工程学科。采用工程的概
3、念、原理、技术和方法来开发和维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它,这就是软件工程。(1)、软件工程就是建立和使用一套合理的工程原理,从而经济地获得可靠的、可以在实际机器上高效运行的软件。(2)、①把系统的、规范的、可度量的方法应用于软件开发、运行和维护的过程,也就是把工程应用于软件.②研究①中提到的途径总之:软件工程是应用计算机科学、数学及管理科学等原理开发软件的工程。他借鉴传统工程的原理、方法,以提高质量,降低成本为目的。5、软件工程的本质特
4、性1、关注与大型程序的构造2、中心课题是控制复杂度3、软件经常变化4、开发软件的效率非常重要5、和谐的合作是开发软件的关键6、软件必须有效地支持它的用户7、在软件工程领域中通常由具有一个文化背景的人替另外一种文化背景的人创造产品6、软件工程的基本原理1、用分阶段的生命周期计划严格管理2、坚持进行阶段评审3、实行严格的产品控制4、采用现代程序设计技术5、结果应能清楚地审查6、开发小组应该少而精7、承认不断改进软件工程实践的必要性软件工程学包含3个要素:方法、工具和过程7、软件生命周期(1)、概念:软件生命周期由软件定义、软件开发和运
5、行维护(也成软件维护)3个时期组成。(2)、内容:1、问题定义回答“要解决的问题是什么?“,写出关于问题性质、工程目标和工程规模的书面报告2、可行性分析回答”对于问题是否有行得通的解决办法?“,即探索问题是否值得去解,是否有可行的办法3、需求分析确定”为了解决这个问题,目标系统必须做什么“,确定目标系统必须具备哪些功能,得到需求规格说明书。4、总体设计回答”概括地说,应该怎样实现目标系统?“,确定程序由哪些模块组成以及模间的关系5、详细设计回答”应该怎样具体地实现这个系统呢?”,确定实现模块功能所需要的算法与数据结构6、编码和单元
6、测试写出正确的容易理解、容易维护的程序模块,然后仔细测试每个模块7、综合测试通过各种类型的测试(及相应的调试)是软件达到预定要求8、软件维护通过各种必要活动是系统持久地满足用户需求8、生命周期模型(1)、瀑布模型传统瀑布模型特点:1、阶段间具有顺序性与依赖性1、推迟实现的观点2、质量保证的观点瀑布模型优点:1、可强迫开发人员使用规范的方法(例如:结构化技术);2、严格规定每个阶段必须提交的文档;3、要求每个阶段交出的所有产品都必须通过验证。缺点:1、“瀑布模型是由文档驱动的”成为主要缺点适用范围:适合于用户需求明确、完整、无重大变
7、化的软件项目开发。(2)、快速原型模型适用范围:用户不能给出完整、准确的需求说明,或者开发者不能确定算法的有效性、操作系统的适应性或人机交互的形式等情况。(3)、增量模型特点:1、反复的应用瀑布模型的基本成分和原型模型的迭代特征,每一个线型过程产生一个“增量”的发布或提交,该增量均是一个可运行的产品。2、早期的版本实现用户的基本需求,并提供给用户评估的平台。优点:1、在较短时间内向用户提交可完成部分工作的产品;2、逐步增加产品功能可以使用户有较充裕的时间学习和适应新产品,从而减少一个全新的软件可能给客户组织带来的冲击;缺点:1、软
8、件体系结构必须是开放的;2、开发人员既要把软件系统看作整体。又要看成可独立的构件,相互矛盾;3、多个构件并行开发,具有无法集成的风险。(4)、螺旋模型基本思想:使用原型或其他方法来降低风险。适用范围:适用于内部开发大规模软件项目。优点:1、对可选方
此文档下载收益归作者所有