【软件工程】软件工程方法论——方法与生存期模型(持续更新中……)

软件工程方法论——方法与生存期模型(持续更新中……)

        • 【更新日志】
  • 软件工程方法
    • 结构化/面向过程方法
    • 面向对象方法
    • 面向服务方法(持续更新中……)
    • 面向数据方法(持续更新中……)
    • 形式化方法
  • 生存期模型(持续更新中……)
    • 瀑布模型(持续更新中……)
    • 原型模型(持续更新中……)
    • 增量模型(持续更新中……)
    • 螺旋模型(持续更新中……)
    • 统一过程(持续更新中……)
    • 敏捷过程(持续更新中……)

【更新日志】

最近更新:

软件工程方法

软件工程方法论:通常把软件开发生命周期全过程中使用的一整套技术的集合称为方法学/方法论,也称为范型

  • 缺点使在适应需求变化方面不够灵活,结构化方法要么面向行为,要么面向数据,缺乏使两者有机结合的机制。因为软件系统在本质上是信息处理系统,数据和对它的操作是密不可分的,将数据和操作人为地分离成两个独立的部分,不符合自然界事物的组成规律
  • 面向对象方法

    概念: 面向对象方法是从面向对象的程序设计发展起来的。面向对象方法把数据和行为看成同等重要,它是将数据和对数据的操作紧密地结合起来的方法,这也是面向对象方法和传统方法的重要区别

    (面向过程程序设计与面向对象程序设计的区别详见桐小白专业基础专栏文章《抽象数据类型和面向过程与面向对象》)

    特点:

    • 面向对象方法的出发点和基本原则是尽量模拟人类习惯的思维方式,使开发软件的方法和过程尽可能接近人类认识问题和解决问题的方法与过程,从而使描述问题的问题空间与其解空间在结构上尽可能一致

    杂项概述:

    • 一方面,面向对象方法向软件开发的前期阶段发展,包括面向对象设计(OOD)、面向对象分析(OOA),目前面向对象方法已经应用到软件开发生命周期的各个阶段,形成一整套完善技术
    • 另一方面,面向对象方法在越来越广泛的计算机软硬件领域得以发展,如面向对象程序设计方法学、面向对象数据库、面向对象操作系统、面向对象软件开发环境、面向对象的智能程序设计、面向对象的计算机体系结构等。面向对象方法已经成为软件开发的主流技术
    • 目前使用最广泛的统一建模语言为UML,由三位著名专家Grady Booch、Ivar Jacobson和James Rumbaugh将各自独立的OOA和OOD方法中最优秀的特性组合在一起,于1996年提出,1997年被OMG(对象管理组织)采纳,成为面向对象技术的标准建模语言

    【详细后续更新……】

    面向服务方法(持续更新中……)

    概念: 为了提升快速构建软件系统以及响应业务变化的能力,充分复用已有资源,以及实现跨平台的数据共享和业务协同,面向服务的软件工程方法应运而生。简单说,服务是指与业务相关且独立于技术的业务接口,通过组合各种服务来构建软件系统

    特点:

    • 企业内部或外部的服务提供者都可以提供服务,只要这些服务符合特定的标准要求,企业就可以将这些服务有机组合起来构建软件系统
    • 服务的绑定可以延迟到这些服务被部署或者执行的时候,因此能够非常灵活地更换服务提供者以及服务
    • 由于计算密集型的处理可以迁移到外部的服务上,因此软件系统的规模会大大降低(这一点对于移动设备来说更为重要,因为移动设备的处理能力和存储空间都有限)

    面向服务体系结构(SOA):

    • 万维 联盟(W3C)将SOA定义为:一套组件或者服务,能够被调用且接口描述能够被发布和发现
    • 结构化信息标准促进组织对SOA定义为:SOA是为组织和运用存在于不同所有者或领域的分布式功能而提供的一种软件架构的范例

    【即SOA强调的是一种体系结构模型,根据企业的业务需求通过 络对松耦合的不同服务进行灵活的分布式部署、整合和使用,这些服务独立于编程语言、实现方式和运行平台】

    SOA关键特性:

    • 服务之间的松耦合特性:不同服务的功能不要相互依赖,一个服务应该能够自己实现所提供的结构功能,而不依赖于其它的服务
    • 服务的抽象性:服务接口的定义及描述与系统实现硬件平台、操作系统和编程语言无关,服务的使用者也无须关心服务的具体实现逻辑
    • 服务的粗粒度:在相对较粗的粒度上对应用服务或业务模块进行封装与重用
    • 服务的复用性:真正复用的不是代码段或模块的复用,也不是对象或组件内部行为的复用,而是可被发布、发现和使用的服务级别的复用

    面向数据方法(持续更新中……)

    概念: 面向数据方法是基于数据思维,从业务逻辑的角度,强调将一切业务”数据化“;从体系结构的角度,突出”面向数据和以数据为核心“的思想

    形式化方法

    概念: 是一种基于形式化数学变换的软件开发方法,它将系统的规格说明转换为可执行的程序。该过程的具体描述如下(为简化模型未画出过程的迭代)

    即为了确认形式化规格说明与软件需求的一致性,往往以形式化设计规格说明为基础开发一个软件原型。用户可以从人机界面和系统主要功能、性能等几个方面对原型进行评审。必要时可以对软件需求、形式化设计规格说明和原型进行修改,直到原型被确认为止。也即达成软件开发人员对形式化规格说明进行一系列变换直至生成计算机可执行的程序。

    多部变换过程的独立性: 每一步变换对相关的模型描述是“封闭的”。即每一步变换的正确性仅与该步变换所依据的规格说明(Mi)以及变换后的规格说明(Mi+1)有关,在此意义上变换步骤独立于其他变换步骤。变换的独立性可以控制错误的蔓延

    【软件工程】软件工程方法论——方法与生存期模型(持续更新中……)

    生存期模型(持续更新中……)

    瀑布模型(持续更新中……)

    原型模型(持续更新中……)

    增量模型(持续更新中……)

    螺旋模型(持续更新中……)

    统一过程(持续更新中……)

    敏捷过程(持续更新中……)

    持续更新中……
    我是桐小白,一个摸爬滚打的计算机小白

    声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

    上一篇 2020年9月19日
    下一篇 2020年9月19日

    相关推荐