常用的开发方法

  • 结构化开发方法 常考
  • 面向对象开发
  • 原型化方法 常考
  • 面向服务方法

结构化开发方法

常考

定义

也成为生命周期法,由结构化分析(SA)、结构化设计(SD)、结构化程序设计(SP)三部分组成,其精髓是自顶向下、逐步求精和模块化设计。

模型

瀑布式开发模型(与敏捷开发相反)

特点

  • 开发目标清晰(需求明确)

需求明确、用户第一

  • 开发工作阶段化

根据不同生命周期依序开发

  • 开发文档规范化

适合点&不适合点

适合数据处理领域的问题;

不适合规模较大、比较复杂的系统开发,这是因为其有以下局限性:

  1. 开发周期长(每个阶段都需要前面的阶段已完成)
  2. 难以适应需求变化
  3. 很少考虑数据结构

面向对象方法(OO方法)

定义

该方法认为,每一个事物都是对象,每个对象都属于某个对象类。

优点

  1. 符合人们的思维习惯,有利于开发过程中用户与开发人员交流、缩短开发周期。
  2. 普适性强,适合各类系统的开发

缺点

必须依靠一定的OO技术支持,在大型项目的开发上有一定的局限性。

综上,一些大型系统的开发,会将 结构化开发 和 面向对象开发 进行结合:

  • 首先,使用结构化开发方法,将上而下将整体划分;
  • 其次,自下向上使用 面向对象 进行开发。

两者相互依存、不可替代。
(注:考卷中,说A技术可以替代B技术,一般都是错的。一般都是相辅相成的)


原型化方法

常考

定义

利用系统开发工具,快速建立一个系统原型展示给用户,在此基础上与用户交流,最终实现快速开发。
(用户需求不明确,需要通过原型确认)

分类

根据功能分类

  1. 水平原型 (行为原型):通常只是功能导航,并未真正实现功能
  2. 垂直原型 (结构化原型): 实现了一部分功能

根据最终结果分类

  1. 抛弃式原型:达到预期后,原型本身被抛弃。
  2. 演化式原型:在原型基础上进行研发,适合用于Web项目。

开发过程

image.png

特点

  1. 使系统开发周期缩短,成本和风险降低(逐步确认用户需求)
  2. 以用户为中心来开发系统,用户参与程度大大提高,提升开发成功率
  3. 用户对系统的结构和功能易于接受

面向服务开发方法

简单了解即可

如开发打卡功能时,考虑到该功能为其他公司服务。提高系统可复用性、信息资源共享。