1 / 15第一章绪论1.软件:是能够完成预定功能和性能的可执行的计算机诚信度。包括使程序正常执行所需的数据,以及有关描述程序操作和使用的文档。即:软件= 程序 + 文档2.软件的特征:软件的开发不同于硬件设计、不同于硬件制造、不同于硬件维修。3.软件工程方法学:把在软件生命周期全过程中使用的一整套技术方法的集合。三要素:方法、工具、过程4.软件工程学的范畴:软件开发技术 (软件开发方法学、软件工具、 软件工程环境) 、软件工程管理 (软件管理学、 软件经济学、 度量学)。5.软件工程:是指导计算机软件开发和维护的工程学科。它采用工程的概念、原理、技术和方法来开发与维护软件,目的是为了实现按照预期的进度和经费完成软件生产计划,同时提高软件的生产率和可靠性。6.软件的发展:大体经历了程序、软件、软件产品3 个阶段。7.工具和方法是软件开发技术的2 大支柱。8.3 种编程泛型:过程式编程泛型、面向对象编程泛型、基于构件技术的编程泛型9.面向对象程序设计中,数据和操作被封装在一个对象中,对象之间则是通过消息相互联系。10. 构件:标准化 / 规格化的对象类。11. 3 种编程泛型的差异: 粒度由小到大依次是:过程式编程范式、面向对象编程范式、基于构件的编程泛型。12. 软件工程的分化:1、传统软件工程2、面向对象软件工程3、基于构件的软件工程13. 消除软件危机的途径:①正确认识计算机软件;②充分认识到软件开发是一种组织良好、管理严密、各类人员协同工作的工程项目;推广使用在实践中总结出来的开发软件的成功的技术和方法;③开发和使用更好的软件工具。第七章软件生存周期与软件过程1.软件生存周期:计划、开发、运行3 个时期。需求分析 -》软件分析 -》软件设计 -》编码测试 -》软件测试 -》运行维护2.需求分析(用户视角) :功能需求、性能需求、环境约束、外部接口描述。3.软件分析(开发人员视角):建立与需求模型一致的,与实现无关的软件分析模型。4.软件设计:总体设计/概要设计、详细设计(确定软件的数据结构和操作)。5.软件测试:单元测试、集成测试、系统测试。6.软件开发方法可区分:形式化方法、非形式化方法。开发模型特点场合瀑布模型 ( 历史悠久、广为人知,它的优势在于它是规范的、文档驱动的方法;这种模型的问题是,最终开发的软件产品可能并不是客户真正需要的)线性模型,每个阶段必须完成固定文档需求明确的中小型软件开发快速原型模型(正是为了...