软件工程原理、方法与应用概论

版权申诉
0 下载量 162 浏览量 更新于2024-06-11 1 收藏 1.03MB DOC 举报
软件工程-原理、方法与应用 软件工程是指导计算机软件开发和维护的工程学科。它采用工程的概念、原理、技术和方法来开发与维护软件,目的是为了实现按照预期的进度和经费完成软件生产计划,同时提高软件的生产率和可靠性。 软件的特征是软件的开发不同于硬件设计、不同于硬件制造、不同于硬件维修。软件工程方法学是把在软件生命周期全过程中使用的一整套技术方法的集合,包括三要素:方法、工具、过程。 软件工程学的畴包括软件开发技术、软件工程管理和软件经济学等几个方面。软件开发技术包括软件开发方法学、软件工具、软件工程环境等。软件工程管理包括软件管理学、软件经济学、度量学等。 软件的开展大体经历了程序、软件、软件产品三个阶段。工具和方法是软件开发技术的两大支柱。软件开发技术包括过程式编程泛型、面向对象编程泛型、基于构件技术的编程泛型等几种编程泛型。 在面向对象程序设计中,数据和操作被封装在一个对象中,对象之间通过消息相互联系。构件是标准化/规格化的对象类。三种编程泛型的差异在于粒度由小到大依次是过程式编程式、面向对象编程式、基于构件的编程泛型。 软件工程的分化包括传统软件工程、面向对象软件工程、基于构件的软件工程等几个方面。消除软件危机的途径包括正确认识计算机软件、充分认识到软件开发是一种组织良好、管理严密、各类人员协同工作的工程项目、推广使用在实践中总结出来的开发软件的成功技术和方法、开发和使用更好的软件工具等。 软件生存周期包括计划、开发、运行三个时期。需求分析、软件分析、软件设计、编码测试、软件测试、运行维护是软件生存周期的几个阶段。需求分析包括功能需求、性能需求、环境约束、外部接口描述等几个方面。软件分析是建立与需求模型一致的,与实现无关的软件分析模型。软件设计包括总体设计/概要设计、详细设计等几个方面。软件测试包括单元测试、集成测试、系统测试等几个方面。 软件开发方法可区分为形式化方法和非形式化方法。瀑布模型是软件开发方法的一种,具有线性模型的特点,每个阶段必需完成前一个阶段的工作,适合需求明确的中小型项目。