《软件工程的基本原理.ppt》由会员分享,可在线阅读,更多相关《软件工程的基本原理.ppt(14页珍藏版)》请在三一办公上搜索。
1、1,1.2 软件工程的基本原理,2,什么是软件工程?,工程-将理论和所学的知识应用于实践的科学。软件工程-应用计算机科学、数学及管理科学等原理,开发软件的工程。借鉴传统工程的原则、方法,以提高质量,降低成本为目的。其中:软件工程是一门交叉性学科。,计算机科学、数学用于构造模型与算法;工程科学用于制定规范、设计模型、评估成本;管理科学用于计划、资源、质量、成本等的管理。,3,软件工程是指导计算机软件开发和维护的工程学科。采用工程的概念、原理、技术和方法来开发和维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来即软件工程。,软件工程的基本定义,4,用分阶段的生命周期
2、严格管理;坚持进行阶段评审;实行严格的产品控制;采用现代程序设计技术;结果应能清楚地审查;开发小组人员应少而精;承认不断改进软件工程实践的必要性。,软件工程的基本原理,5,软件工程三个要素,方法,工具,过程,软件工程三要素,为软件开发提供“如何做”的技术,6,软件工程三个要素,方法,工具,过程,软件工程三要素,为软件工程方法提供支撑环境,7,软件工程三个要素,方法,工具,过程,软件工程三要素,软件过程是将软件工程的方法和工具综合起来,进行软件开发。,方法使用的顺序要求交付的文档资料为保证质量和适应变化所需要的管理软件开发各个阶段完成的里程碑,定义了:,8,软件工程的基本目标,付出较低的开发成本
3、达到要求的软件功能取得较好的软件性能开发的软件易于移植需要较低的维护费用能按时完成开发工作,及时交付使用,9,软件工程基本原则,抽象:采用分层次抽象,自顶向下、逐层细化的办法控制软件开发过程的复杂性。信息隐蔽:将模块设计成“黑箱”,实现的细节隐藏在模块内部,不让模块的使用者直接访问。这就是信息封装,使用与实现分离的原则。模块化:如C语言程序中的函数过程,C+语言程序中的类。模块化有助于信息隐蔽和抽象,有助于表示复杂的系统。,10,软件工程基本原则,局部化:要求在一个物理模块内集中逻辑上相互关联的计算机资源,保证模块之间具有松散的耦合,模块内部具有较强的内聚。这有助于控制解的复杂性。确定性:软件
4、开发过程中所有概念的表达应是确定的、无歧义性的、规范的。一致性:整个软件系统的各个模块应使用一致的概念、符号和术语。程序内部接口应保持一致。软件和硬件、操作系统的接口应保持一致。系统规格说明与系统行为应保持一致。用于形式化规格说明的公理系统应保持一致。,11,软件工程基本原则,完备性:软件系统不丢失任何重要成分,可以完全实现系统所要求功能的程度。为了保证系统的完备性,在软件开发和运行过程中需要严格的技术评审。可验证性:开发大型的软件系统需要对系统自顶向下、逐层分解。系统分解应遵循系统易于检查、测试、评审的原则,以确保系统的正确性。,12,软件工程过程及其内容,规格说明:规定软件的功能及运行限制软件开发:产生满足规格说明的软件软件确认:对软件能否满足用户要求进行确认软件演进:为满足用户的变更要求的演进,软件过程是为获得软件产品,在软件工具支持下由软件人员完成的一系列软件工程活动。,13,可理解性;可见性;可支持性;可接受性;可靠性;健壮性;可维护性;速度。,软件工程的过程特性,14,思考题,什么是软件工程三要素?软件工程的基本目标是什么?软件工程的基本原则是什么?软件工程的基本原理是什么?,