< img height="1" width="1" style="display:none" src="https://a.gdt.qq.com/pixel?user_action_set_id=1200686054&action_type=PAGE_VIEW&noscript=1"/>

OA系统开发方法

文:鼎捷ERP

作者:鼎捷软件 | 发布时间:2012-11-30 14:50:34

6.3系统开发方法
    多数系统的开发都是一件很混乱的活动,经常被描述为“编程和安装”。OA软件的编写没有多少基础性的计划,系统的设计也是从许多短期的决策拼凑出来的。如果你的系统很小这种方法还是挺有效的,但是随着系统不断的成长,想要给系统增添新的功能就变得越来越困难。不仅如此,系统漏洞也越来越普遍而且修补也越来越困难。
    当今,系统已经非常巨大和复杂,以至于大量的设计师、分析师、开发人员、测试人员以及用户共同工作才能创造出驱动这些系统的成千上万条定制化编写的代码。就是因为这个原因,开发者们提出了许多不同的系统开发生命周期方法论来组织和弄清这个过程——比如瀑布开发法、快速应用开发法(RAD)、极端编程法以及敏捷开发法。
6,3.1瀑布开发法
    传统的瀑布开发法是一种基于活动的连续过程,在瀑布开发法中,SDLC(系统开发生命周期法)中从计划到实施的每一个阶段都是紧跟着另一个阶段的。瀑布开发法是较老的软件开发方法之一,大约已经存在30年了(见图6-5)。使用这种方法的协同软件开发项目的成功率只有大概1/10。导致瀑布开发法如此低的成功率的主要原因是它不能提供其不确定性的水平,因此完成复杂的软件开发项目通常需要一些创造力,包括:
    ·企业问题:根据企业用户的实际需求来精确定义和表达企业问题。对于这个问题可能需要持续的不止一次的尝试来区分什么是用户想要的和什么是用户真正需要的。
    ·计划:管理成本、资源和时间限制。如果一名程序员退出会对计划产生什么影响?某一个阶段的计划延迟将怎样影响项目的总成本?
    ·解决方案:定义适合的IT框架,即灵活的、划算的、可升级的、可靠的IT框架。当各个方面的众多因素都必须达成一致时,确定IT框架不可能通过逐步的方法来进行。


    瀑布开发法的问题在于它假设用户能够预先详细的说明所有的业务需求。不幸的是,业务需求随着组织的变化而变化,在开发过程进行的同时要求对所有业务需求进行大量的反馈和反复的磋商,软件之所以“软”,是因为它必须很容易进行修改和使用以适应组织的动态变化。就像业务问题随着时间不断发展一样,软件也必须不断地发展。因此,在软件正式投入使用之前,很精确的定义所有的业务需求是现实的,而软件投入使用可能是较初的分析阶段完成之后的几个月甚至几年,企业和业务问题都将已经产生变化了。
6.3.2快速应用开发法
    为了适应经济的快节奏,快速应用开发法已经成为了加速系统开发的普遍途径。快速应用开发法(RAD),也称为快速原型法,它强调用户广泛的参与到一个现行系统原型的快速演化构建之中以加快系统开发过程(见图6-6)。RAD的基本原则包括:
    ·首先集中构建一个原型(比如一个工作模型),它看起来和工作起来都比较像所设计的系统,
    ·积极地邀请系统用户参与分析、设计以及开发阶段的工作,
    ·通过反复的交互式的结构化方法来加快业务需求的收集。
    原型是指对信息系统的用户需求或者所提出的设计的一个较小规模的表述或者工作流模型。运用RAD方法时,原型是分析阶段的一个基本组成部分。


6,3.3极端编程法
    极端编程(XP)法是指将一个项目拆分成许多很小的阶段,在第一个阶段完成后,开发者才能继续下一个阶段。极端编程法很像一个智力拼图玩具,有很多小块。单个的小块没有意义,但是当它们结合起来后就能够看到整个系统。极端编程法与瀑布开发法的较大不同在于极端编程法将其各个阶段迭代循环。例如,瀑布开发法开发整个系统,然而极端编程法则是循环着开发系统(见图6-7)。

        
    微软公司开发IE浏览器和NetscapeCommunicatiOns公司开发Communicator使用的就是极端编程法。两家公司当时每晚都进行整个项目的汇编,把现有的各个部分都集合起来。他们设立了完成日期并付出了巨大的努力来让客户参与到每一个版本中来。极端编程法能让微软和Netscape在系统规格随着时间变化时,对数以百万条代码进行管理。较重要的是,两家公司经常运用用户设计评论和战略对话来获得和吸取用户反馈。
    极端编程法是显然违背传统的B2B软件开发方法的,而很多不同行业的组织都运用它开发出了成功的软件。极端编程法成功的一个原因就是它强调客户满意。极端编程法能够使开发人员适应变化的客户和业务需求,即使是在系统开发生命周期的晚期,而且它很强调团队合作。管理人员、客户和开发人员组成了开发团队来致力于交付一个高质量的软件。极端编程法实施一种简单而有效的方法来进行团队开发,它能够快速的适应需求和技术的变化。
6.3.4敏捷开发法
    敏捷开发法,极端编程法的一种形式,是指通过及早的连续的交付有用的软件组件来达到客户满意。敏捷开发法与极端编程法相似,但是它较少地关注于团队编程而较多地关注于限定项目范围。敏捷开发项目设置较小数量的需求然后将它们变成可交付的产品。敏捷开发就像它听起来那样:快速而有效,小巧而敏捷:较低的成本,较少的功能,时间较短的开发项目。
    敏捷联盟,一群软件开发人员,已经把改善软件开发过程作为它的使命。它的宣言包括以下原则:
  ·通过及早的连续的交付有价值的系统来使客户满意:   
  ·欢迎变化的需求,即使是在开发后期:
  .在整个项目的开发过程中,企业人员和开发人员必须每天一起工作,
  ·有目的的选择个人来设立项目,为他们提供环境和他们所需的,并且相信他们会完成任务,
  ·较好的结构、需求和设计来自于自我组织的团队,
  .在正常的休息时间里,团队反思应该如何变得更有效,然后相应的调整团队的行为。

上一页:工作流系统开发生命周期的几个阶段

下一页:协同软件开发外包类型的选择

相关新闻

  • 协同软件开发外包类型的选择

    对于许多公司,特定的IT服务,比如应用系统开发、维护以及帮助办公处等,都属于职能的范畴,这些都是离岸外包的目标。具有明确的需求和规格并且较终用户和开发团队的相互作用程度较小的数据转换和系统转植是典型的适合离岸外包的项目。

  • 资源外包的优缺点

    通过把支持非关键业务职能的系统开发工作进行资源外包, 组织能够将力量集中在支持重要的、唯一的核心能力的系统开发上。简而言之,BPO意味着检查组成企业业务和功能单元的流程,然后与专业的服务提供商一起来再造和外包这些流程。

  • 工作流系统开发生命周期的几个阶段

    系统开发生命周期的分析阶段是指较终用户和信息技术专家共同工作为目标系统收集、理解和表达业务需求。6.2.5第五阶段:测试 系统开发生命周期的测试阶段是验证系统运行和是否满足所有在系统分析阶段定义的业务需求。

关注我们

留言板

咨询热线:400-626-5858