首页 > 编程知识 正文

信息系统的软件开发方法和软件开发模型的区别,简述软件开发模型

时间:2023-05-05 10:46:49 阅读:252002 作者:4221

我搞不清软件开发方法和开发模型这两个概念。

书本上这两部分都放在《软件工程》这一章节里,但是是分开介绍的,并没有阐明二者之间的关系,比较割裂。我尝试在互联网上找找资料,但都非常少。这里先把一些学习心得记录下来,等待以后完善。

一、铺垫知识
系统生命周期分为四个阶段。

系统规划系统开发系统运维系统更新或消亡

其中重头戏是系统开发阶段。这一阶段可以进一步细化为:

总体规划 系统分析 系统设计 系统实施 系统验收

开发方法 和 开发模型 都属于软件开发阶段的套路。

二、开发方法

开发方法有很多种分类,不同标准有不同的分类:从开发风范分,可分为自顶向下和自底向上的开发方法;从开发性质看,可分为形式化方法和非形式化方法;从适用范围看,可分为整体性方法和局部性方法。

但基本上,通常是分为结构化方法面向对象方法

结构化方法对应系统开发的不同阶段,有结构化分析(SA),结构化设计,结构化程序设计,等等。同样,面向对象方法也有面向对象分析(OOA),面向对象设计之类。其中,SA对应的是ER图,数据流图,数据字典等;而OOA则主要输出类图、用例图、活动图。

结构化方法应用广泛和成熟,我们张嘴就来的“概要设计”、“详细设计”,其实就属于结构化方法。

三、开发模型

开发模型,基本上所有人都至少知道一两个,比如瀑布模型,螺旋模型。除此之外,还有构件组装模型、V模型、喷泉模型、统一过程、快速应用开发、敏捷开发,等等。

开发模型,简单而言,就是项目的大致开发方式和步骤。它是一种规划和套路,包括需求、设计、编码、测试等几个阶段都有处置方法。

四、开发方法与开发模型

开发模型与开发方法不是同一类事物。开发模型是一种规划和相对稳定的套路,对系统开发阶段的不同环节有不同的处理流程。
而开发方法是一种方法学,主要是针对系统开发阶段中的设计和编码进行实现。

但实际应用中,二者往往重叠得很厉害,边界不是非常清晰。比如大名鼎鼎的原型法,大家耳熟能详,按书本上的意思,应当归类为开发方法,但我一直以为它是开发模型。

我想,开发模型是从系统分析、设计、编码到测试,甚至还包括维护阶段,基本上是关注了软件开发阶段的整个过程。而软件开发方法,只局限在某一个阶段。

软件开发模型(Software Development Model)是指软件开发全部过程、活动和任务的结构框架。软件开发过程包括需求、设计、编码和测试等阶段,有时也包括维护阶段。软件开发模型能清晰、直观地表达软件开发全过程,明确规定了要完成的主要任务和活动,用来作为软件项目工作的基础。对于不同的软件项目,针对应用需求、项目复杂程度、规模等不同要求,可以采用不同的开发模型,并采用相应的人员组织策略、管理方法、工具和环境。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。