软件工程复习总结:原理、方法与应用

版权申诉
0 下载量 155 浏览量 更新于2024-07-08 收藏 1.78MB PDF 举报
"软件工程-原理、方法与应用【第三版】复习总结" 本文主要涵盖了软件工程的基础概念、软件危机、软件工程的范畴及其发展、软件开发的关键技术和方法。以下是详细的知识点解析: 1. 芯片和软件发展的摩尔定律:摩尔定律指出,大约每18个月,芯片的性能和速度会翻倍;而软件生产大约每12年能提升一倍,这揭示了软件行业的快速发展。 2. 软件定义:软件不仅包括程序,还包含确保程序正常运行的数据以及描述程序使用和操作的文档。因此,软件 = 程序 + 文档。 3. 软件的特性:软件开发不同于硬件设计、制造和维修,这体现了软件的复杂性和独特性。 4. 软件危机:主要表现为软件维护成本的快速增长,这对计算机应用的扩展造成压力,而软件生产技术的进步缓慢加剧了这一问题。 5. 软件工程学:涵盖了软件开发技术,如软件开发方法学、工具和工程环境,以及软件工程管理,如软件管理学、软件经济学和度量学。 6. 软件工程的定义:软件工程是应用工程原则、技术和方法进行软件开发和维护的学科,旨在提高软件生产效率和可靠性,确保项目按期、按预算完成。 7. 软件发展的三个阶段:程序、软件、软件产品,反映了软件从简单的代码到复杂系统的发展历程。 8. 软件开发的两大支柱:工具和方法,对软件开发过程至关重要。 9. 编程泛型:包括过程式编程、面向对象编程和基于构件技术的编程,其中面向对象编程将数据和操作封装在对象中,对象通过消息进行交互。 10. 构件:作为标准化和规格化的对象类,是可复用的软件组件。 11. 编程泛型的粒度比较:过程式编程泛型的粒度最小,面向对象编程泛型其次,基于构件的编程泛型粒度最大。 12. 软件工程的分化:传统软件工程遵循结构化方法,而面向对象软件工程强调对象分析和设计,基于构件的软件工程则利用可复用构件库进行快速开发和集成。 13. 软件工程流程的演变:从传统的结构化分析、设计、编码和测试,到面向对象的分析、详细设计、编码和测试,再到基于构件的软件工程,强调领域分析、设计、构件库建立和集成。 这些知识点构成了软件工程的基础框架,对于理解软件开发的过程、方法和挑战具有重要的理论和实践价值。