水果蔬菜冷库:如何进行界面和业务逻辑分开的原型化开发

来源:百度文库 编辑:中财网 时间:2024/04/28 23:32:02
     

一、比较结构化系统开发与原型化开发的优缺点  

 结构化系统开发方法(Structured Method)原型化开发方法(Prototype Method)基本思想在系统建立之前信息就能被充分理解。它要求严格划分开发阶段,用规范的方法与图表工具有步骤地来完成各阶段的工作,每个阶段都以规范的文档资料作为其成果,最终得到满足用户预先需要的系统。因为需要预先确定好,开发阶段不再接受新的需求,开发人员就像关起来按照步骤闷头开发,所以这个方法往往也叫封闭式开发方法。开发人员对用户提出的问题进行总结,就系统的主要需求取得一致意见后,开发一个原型,该原型是由开发人员与用户合作,共同确定系统的基本要求和主要功能,并在较短时间内开发的一个实验性的、简单易用的小型系统。原型应该是可以运行的,可以修改的。运行原型,反复对原型进行“补充需求-修改”这一过程,使之逐步完善,直到用户对系统满意为止。优 点(1)逻辑设计与物理设计分开
(2)开发过程中形成一套规范化的文档,便于后期的修改和维护
(3)可以采用现代化的系统设计手段,降低开发周期以及提高系统稳定性,协调各个功能和部分使之没有冲突。
(1)需求表示清楚,用户参与度高,用户满意度较高
(2)降低启动阶段的风险
(3)系统一边运行一边修改,最后缩短了最终产品BATA测试时间
缺 点(1)开发周期长
(2)系统对行业通行的功能可能非常强大,但难以适应最为个性化的需求变化
(3)开发过程复杂繁琐
(1)原型法不适用于开发已经有大量已知需求的大型系统
(2)需求捕捉容易忽略记录整理以及变化历史,需要借助其他工具
(3)文档相对零散,各个功能和部分协调性差,因而难于维护
(4)如果用户合作不好,盲目纠错,会拖延开发进程
适用范围该方法适用于一些组织相对稳定、业务处理过程规范、需求明确且在一定时期内不会发生大的变化的大型复杂系统的开发(1)用户需求不清,管理及业务不稳定,需求经常变化
(2)规模小,不太复杂
(3)开发信息系统的最终用户界面

二、少有纯粹的系统开发与原型化开发

    在复杂变化的MIS开发过程中,很少单纯采用上述任何一种方法,因为克服各自的缺点成本还是很高的,往往对于业务处理过程规范、需求明确的部分采用系统开发,而经常变动的功能需求个别维护。

一些历史悠久的利益既得的MIS开发厂商中,对于“摸着石头过河”的阶段的成果(可以认为是原型化开发过程的产品)进行推倒重来式的系统开发,希望能使原型化开发时的系统各个功能和部分更加协调,以便使系统更加稳定,既定需求的部分能更容易维护。

    所以,在整个MIS的组成中,对于新的需求基本上是原型化开发。经过较长时间的维护后又往往进行再设计,从而使用系统开发方法。从而很多系统都经历着和经历过“局部原型化开发-系统开发”的周而复始的过程。

三、原型化开发方法的要点

1 开发出一个原型

    整个原型可能是一个简单系统,也可能是一个复杂系统的某个简单新增部分。作为介绍,笔者认为第一个事情是新建一个Form,然后根据用户的需求放置一些相关的控件,例如:

        

2 与客户充分交流,记录需求,形成文档

    这个时候,响应 Button1 点击事件开始时一般是空的。但是如果这个时候能进行需求录入,那么大大的方便了与用户的交流,用户也能在此上下文中准确表述业务需求,体现对用户的尊重,搜集需求更为畅顺。当然,用户自己输入需求文本说明或者流程说明,对于开发商来说就更好了。于是我们对 Button1 的点击事件写入响应代码:

void __fastcall TForm1::Button1Click(TObject *Sender)
{
    UnternimatedFunction((dobject)this,__FUNC__,L"待定功能",L"001",L"001");
}

    UnternimatedFunction函数可以指定该功能的介绍、编号及其子号,方便归档管理。可以看到,这样写还可以把界面和业务分开实现。这么简单的写了之后,开发人员在与用户交流的时候就可以点击该按钮了。点击之后出现一个需求搜集对话框:

        

    点击“原文描述”按钮就可以输入用户需求的文字描述了。输入好了之后按“产生文档”按钮产生文档进行历史保存。

    如果用户需要用流程图来描述需求,也可以点击“流程图”按钮,调用 DD 来画图:

           

3 保存历史,适时整理

对产生的文档要保存好历史,适时整理,协调好其他功能,不然容易产生各个功能部分的冲突。