《软件开发过程与模型》

来源:互联网 发布:网络推广工作计划书 编辑:程序博客网 时间:2024/05/16 02:13

1 软件开发过程:

   软件开发过程是为成功开发软件而总结出的一套的开发步骤和阶段,基本上开发任何一套软件都需要经过这些阶段

   >可行性研究与规划

      最主要的任务就是讨论与确定一个项目的可行性,首先了解项目的目的和客户的期望,也就是大体要实现什么,然后估计软件的规模,并从技术可行型,经济可行性,操作可行性,社会可行性等几个方面分析项目的可行性,如果问题没有可行性的解决方面,分析人员应该建议停止开发这项工程,以避免时间 金钱 人力等资源的浪费 。

   >需求分析

      此阶段主要目的是为了获取用户对软件功能的具体要求 加以分析 获取用户需求的方法主要有如下几个:

       >>与客户交谈  向用户提问题 向用户群体发调查问卷

       >>参观用户的工作流程 观察用户的操作

       >>与同行  专家交谈  听取他们的建议

       >>分析已经存在的同类软件产品的   需求分析

       >>从行业标准  规则中提取要求

       >>从Internet上查找资料

   >设计

       设计阶段的猪妖目的是设计如何把已经确定的需求转换成实际的软件   它包括以下几个方面:

        >>设计图形用户界面标准。

        >>设计数据库

        >>设计过程模块

        >>设计编码标准

        >>构建原型

   >开发

        >>对在原型创建阶段构建的用户界面进行最厚的修改

        >>用数据库工具软件构建数据库

        >>编写代码

   >测试

        >>单元测试

        >>集成测试

       >>数据验证测试

       >>安全性测试

   >维护

       >>这个阶段通常比较漫长,包括对用户的培训,对软件缺陷的追踪和升级准备等。

 2 软件开发过程模型

    软件开发过程模型有很种,典型和常见的开发模型有瀑布模型,(Waterfall Model)  快速原型模型(Rapid Prototype Model)  螺旋模型(Spriral Model) 迭代模型(Iterative Model)

       (1)瀑布模型 

    瀑布模型也称为"线性顺序模型"  该模型是最早的 也是最简单的一种模型,适用于一般比较小的项目或者需求非常明确的项目。

     瀑布模型实际上就是将软件开发过程中的每个阶段逐步完成 在完成时对每个阶段的开始和结束点都作了明确的规定,并产生明确的交付成果传递给下一个阶段,并且只有完

成   了一个阶段后才能开始进入下一个阶段,每个阶段还都会产生一定数量的文档, 以提交给后面的各项活动和过程。

       (2)快速原型模型

     >>第一步建造一个快速原型,实现客户或者未来用户的交互

      >>第二步在第一步的基础上开发用户满意的软件产品  。该模型可以克服瀑布模型的缺点,减少由于软件需求不明确带来的开发风险。

       (3)混合模型

      >>顾名思义是把几种不同的模型组合成一种混合模型

       (4)迭代模型

         瀑布模型强调文档的作用,并要求每个阶段都要仔细验证,这种模型的线性过程太理想化 ,不适合 现代的软件开发模式,几乎被业界抛弃。

         其实,在软件开发的早期阶段就想安全  准确 捕获用户的需求几乎是不可能的。 实际工作中,我们经常碰到的结果是需求在整

个开发过程中经常会被改动,由于这个原因导致项目的失败。  因此 ,在软件开发中 推出了迭代模型。 

原创粉丝点击