1.5 传统的软件工程和面向对象的软件工程


  • 传统软件工程方法
    1. 采用结构化技术(结构化分析、结构化设计和结构化实现)来完成软件开发的各项任务
    2. 具体过程如下:
      • 采用结构化技术(结构化分析、结构化设计和结构化实现)完成软件开发的各项任务。
      • 把软件生存周期划分成若干个阶段,然后顺序完成各个阶段的任务。
      • 每一个阶段的开始和结束都有严格标准,前一阶段结束的标准是后一阶段工作开始的标准。
      • 在每一阶段结束之前必须正式地进行严格的技术审查和管理复审。
  • 面向对象软件工程方法
    1. 重点:在软件生存周期的分析阶段。
      • 面向对象方法在开发的早期就定义了一系列面向问题领域的对象,即建立了对象模型,整个开发过程统一使用这些对象,并不过分充实和扩展对象模型。
    2. 特点:
      • 开发阶段界限模糊
      • 开发过程逐步求精
      • 开发活动反复迭代
  • 两种软件工程方法的对比
    1. 与面向过程的软件工程的开发思想相比,面向对象开发方法不再是以功能划分为导向,而是以对象作为整个问题分析的中心,围绕对象展开系统的分析与设计工作。
    2. 开发过程方面,面向对象软件工程和传统软件工程一样也是把软件开发划分为分析、设计、编码和测试等几个阶段,但各个阶段的具体工作不同。
      • 面向对象
        1. 可行性研究
        2. 需求分析(确定类、对象)
        3. 软件设计(对象的设计)
      • 面向过程
        1. 可行性研究
        2. 需求分析(确定用户需求)
        3. 软件设计(软件总体框架和模块内部算法的设计)
      • 面向对象(面向过程)
        1. 软件编码
        2. 软件测试
        3. 软件维护

  目录