SIT软件工程概述学习目标了解软件工程与软件开发的关系.PPTVIP

  • 24
  • 0
  • 约6.68千字
  • 约 37页
  • 2018-08-28 发布于天津
  • 举报

SIT软件工程概述学习目标了解软件工程与软件开发的关系.PPT

SIT软件工程概述学习目标了解软件工程与软件开发的关系

1.5 软件过程模型 图1.11中四个象限表示了定义的四个主要活动: 1)计划:目标的确定,可选方案和限制 2)风险分析:可选方案的分析,风险的确定、解决 3)工程:下一级产品的开发 4)用户评价:工程结果的评价 该模型的优点: 1)产品演化的任何阶段都可以采用原型开发方法; 2)保留了传统生存期逐步求精和细化的方法。 该模型的缺陷: 它很难让用户确信这种演化方法是可以控制的。它要求有风险评价的专门技术,因为这些专门技术决定评价的成功与否。 1.5 软件过程模型 1.5.4特殊的过程模型 1.面向对象生存期模型 面向对象的方法学可以概括为: 面向对象的方法=对象+类+继承+消息通信 1)客观世界是由各种对象组成的。 2)所有对象按其结构成分,可以划分为各种对象类。 3)一个对象类可以从已定义的其他对象类中继承(Inheritance)某些成分或者整个对象类。 4)局部于一个对象的私有成分都被“封装”在对象内部,外部不能访问。对象之间仅能通过消息传递互相作用。 1.5 软件过程模型 2. 基于组件的开发 基于组件的软件开发,即CBSD,是一种基于分布对象技术、强调通过可复用构件设计与构造软件系统的软件复用途径。 3. 形式化方法 形式化方法的一个重要研究内容是形式规约(Formal Specification,也称形式规范或形式化描述),它是对程序“做什么”(what to do)的数学描述,是用具有精确语义的形式语言书写的程序功能描述,它是设计和编制程序的出发点,也是验证程序是否正确的依据。 1.5 软件过程模型 1.5.5统一过程模型 统一过程模型是一种“用例驱动,以体系结构为核心,迭代及增量”的软件过程框架,由UML方法和工具支持。统一过程定义了五个阶段: 1.起始阶段:包括用户沟通和计划活动两个方面,强调定义和细化用例,并将其作为主要模型。 2.细化阶段:包括用户沟通和建模活动,重点是创建分析和设计模型,强调类的定义和体系结构的表示。 3.构建阶段:细化设计模型,并将设计模型转化为软件构建实现。 4.转化阶段:将软件从开发人员传递给最终用户,并由用户完成beta测试和验收测试。 5.生产阶段:持续地监控软件的运作,并提供技术支持。 1.6 软件工程方法 软件工程方法是软件工程学科的核心内容,从60年代末以来,出现了许多软件工程方法,其中最具影响的是结构化方法、JSD方法和面向对象方法。所有方法都基于同样的思路:开发能够用图形表示的系统模型,并用这些模型来描述或设计系统。这些方法还包括许多不同的组件: 1.6 软件工程方法 1.7 软件工程所面临的主要问题 1.发展方向:敏捷开发 ,面向侧面的程序设计AOP 。 2.面临问题:遗留系统的挑战 ,多样性的挑战 ,交付上的挑战 3.职业和道德上的责任:机密 ,工作能力 ,知识产权 ,计算机滥用 。 SIT 第一章 软件工程概述 学习目标 : 了解软件工程与软件开发的关系,理解其中的重要概念; 了解软件危机,软件工程存在的必要性; 了解软件工程与其他工程管理的内在联系及区别; 理解软件生命周期。 1.1 软件发展概述 1.1.1软件 软件(Software)是能够完成预定功能和性能的可执行的计算机程序和使程序正常执行所需要的数据,加上描述软件开发过程及其管理、程序的操作和使用的有关文档。 软件还可以简要的定义为: 软件 = 程序 + 数据 + 文档 程序:按事先设计的功能和性能需求执行的指令序列; 数据:是程序能正常操纵信息的数据结构; 文档:与程序开发及过程管理、维护和使用有关的图文材料。 1.1 软件发展概述 一般情况下,软件被划分为系统软件、应用软件,其中系统软件包括操作系统和支撑软件。其中系统软件为计算机使用提供最基本的功能,但是并不针对某一特定应用领域;而应用软件则恰好相反,不同的应用软件根据用户和所服务的领域提供不同的功能。系统软件为计算机使用提供最基本的功能,可分为操作系统和支撑软件,其中操作系统是最基本的软件。系统软件是负责管理计算机系统中各种独立的硬件,使得它们可以协调工作。系统软件使得计算机使用者和其他软件将计算机当作一个整体而不需要顾及到底层每个硬件是如何工作的。 1.1 软件发展概述 1.1.2软件危机 软件危机(Software??crisis)指的是计算机软件的开发和维护过程所遇到的一系列严重问题,其表现如下: ①对软件开发成本和进度的估算很不准确,用户很不满意; ②质量很不可靠; ③没有适当的文档; ④软件成本比重上升; ⑤供不应求:软件开发生产率跟不上计算机应用迅速深入的趋势。 1.1 软件发展概述 那么,究竟是什么原因导致了软件危机的发生呢?软件本身具有逻辑部件复杂和规模庞大的特点是其客观原因,而不正确的开发

文档评论(0)

1亿VIP精品文档

相关文档