精华内容
下载资源
问答
  • 关注蓝色按钮微信公众号了解更多信息原型法(Prototyping)原型法概述 原型是一个可以实际运行、反复修改,可以不断完善的系统。 基本思想: 在管理信息系统开发的开始阶段,凭借...原型法开发过程 1、确定系统...

    关注蓝色按钮微信公众号了解更多信息

    原型法(Prototyping)

    原型法概述

      原型是一个可以实际运行、反复修改,可以不断完善的系统。

      基本思想:

      在管理信息系统开发的开始阶段,凭借系统开发售货员对用户需求的理解与用户共同确定系统的基本要求和主要功能,在强有力的人、软件环境支持下,给出一个满足用户需求的初始系统原型,然后与用户反复协商修改,最终形成MIS系统。

    原型法的开发过程

      1、确定系统的基本要求和功能--依据

      2、构造初始原型

      3、运行、评价、修改原型

      4、确定原型后处理

    c0f7ab7a7e16e31189b3b565204ea831.png

      工作流程如图

    原型法的特点

      1、遵循了人们认识事物的客观规律,易于掌握和接受

      2、将模拟的手段引入系统分析的初始阶段,沟通了人们(用户和开发人员)的思想,缩短了用户和系统分析人员之间的距离,解决了结构化方法中最难于解决的一环。强调用户参与、描述、运行、沟通。

      3、充分利用最新的软件工具,摆脱了传统的方法,使系统开发的时间、费用大大地减少,效率、技术等方面都大大地提高。强调软件工具支持。

    原型法的优缺点

      1、从原理到流程十分简单,最终总可以获得一个满意的MIS--无高深理论和技术(方法本身)

      2、用户与开发者思想易于沟通

      3、使用软件工具效率高,摆脱了传统方法

      4、要求管理基础工作完整、准确,一般只适用于小型系统

    原型法的应用范围

      适合于:处理过程明确、简单系统;涉及面窄的小型系统。

      不适合于:大型、复杂系统,难以模拟;存在大量运算、逻辑性强的处理系统;管理基础工作不完善、处理过程不规范的系统;大量批处理系统。

    0f34a9bf3b7c6dc3d1891b906030cd70.png

    原型法周期控制的必要性

      原型法虽有其优点,但也有其缺陷。原型法的主要缺点在于系统的开发缺乏统一规划和标准,导致对系统的开发缺乏有效的控制。原型法根据环境的变化和用户的要求对原型进行修改。由于用户需求具有模糊性和变化性,使开发人员无法确定自己是否已"圆满"完成任务,从而使开发过程无法终止,成为一个"死循环"。因此,必须对原型法开发周期进行控制。

    原型法与生命周期法之比较

      在信息系统开发中常见的另一种方法为生命周期法。它强调整体上的协调和规划,为保证整体性和全局性,它要求用户在分析阶段能够提出准确、完整的系统需求,开发者则据此给出严格的需求定义和描述,并按此进行阶段性的系统开发。为了保证生命周期法的成功必须满足两个条件:首先,用户应该能清楚、完整地提供有关系统的需求,而系统开发者要能够完整、正确地理解和定义这些需求;其次,在整个开发期间,需求一旦定义就不会再发生变化。而现实生活中常常会出现相反的情况:一方面,用户由于缺乏计算机知识,很难确定和表达对未来系统的全面需求,而开发人员对用户的工作环境和内容又不熟悉,对所要解决的问题模糊不清(至少在短时间内),从而导致双方在沟通上出现各种问题,用户无法清楚、完整地表达需求,而开发者不能全面和正确地理解和定义用户需求;另一方面,由于生命周期法的开发周期一般较长,又要求系统设计的目标必须明确,在开发期内用户需求和企业环境很可能发生很大变化,使生命周期法不能适应环境、需求的变化,导致开发出来的系统达不到企业和用户的新需求。而且生命周期法的开发周期较长,用户不能在短期内看到成果,也就不能及时提出修改意见。

      鉴于此种情况,很多企业转向了更加符合实际情况的原型法。原型法则假定开发人员和用户一开始并不能正确、完整地定义需求,在开发过程中用户的需求也随着企业环境的变化而变化。原型法利用对原型的不断修改与完善解决了这两个问题。首先,原型法在系统开发初始阶段只提出一个满足用户基本需求的原型;其次,原型法更多地遵循了人们认识事物的规律,采取了"修改一反馈"循环往复的开发方式。在一个开发人员不熟悉的业务领域,用户需求不可能被开发者迅速、准确地理解,能有一个基础模型不断启发诱导,可以给用户一个非常直观、形象的印象,使用户在开发过程中逐渐加深对系统的理解,使双方都能参与到原型的完善之中,及早发现原型的不足和缺陷,及时进行修改和完善,从而使系统能不断地适应用户的新要求和企业环境的变化。而且在开发过程中用户不断参与评价和修改模型,逐步地消除了用户对计算机的恐惧感和抵触情绪,使其对计算机的了解不断深化,这也有助于用户能够更好地理解、定义系统需求,更好地与系统开发人员进行交流,同时也使用户在系统切换之后能更快、更好地掌握系统使用方法,更好地发挥系统的性能。因此原型法与生命周期法相比具有成功率高、开发周期短、适应性强、可靠性强、成本低和调试容易的特点。

      由于生命周期法本身存在的问题和原型法异常优越的性能特点,使得不少企业在开发信息系统时会倾向于选择原型法。

    50097504ce55e1d99c802b464adb8fcd.png
    展开全文
  • 软件开发包括需求、设计、编码和测试等阶段,有时也包括维护阶段。  软件开发模型能清晰、直观地表达软件开发全过程,明确规定了要完成的主要活动和任务,用来作为软件项目工作的基础。  最早出现的软件...
    软件开发模型(Software Development Model)是指软件开发全部过程、活动和任务的结构框架。软件开发包括需求、设计、编码和测试等阶段,有时也包括维护阶段。

        软件开发模型能清晰、直观地表达软件开发全过程,明确规定了要完成的主要活动和任务,用来作为软件项目工作的基础。


        最早出现的软件开发模型是1970年W·Royce提出的瀑布模型。该模型给出了固定的顺序,将生存期活动从上一个阶段向下一个阶段逐级过渡,如同流水下泻,最终得到所开发的软件产品,投入使用。但计算拓广到统计分析、商业事务等领域时,大多数程序采用高级语言(如FORTRAN、COBOL等)编写。瀑布模式模型也存在着缺乏灵活性、无法通过并发活动澄清本来不够确切的需求等缺点。

        典型的开发模型有:①瀑布模型(waterfall model);②渐增模型/演化/迭代(inCRemental model);③原型模型(prototype model);④螺旋模型(SPIral model);⑤喷泉模型(fountAIn model);⑥智能模型(intelligent model) ; 7. 混合模型(hybrid model)



    1. 边做边改模型(Build-and-Fix Model)
      遗憾的是,许多产品都是使用"边做边改"模型来开发的。在这种模型中,既没有规格说明,也没有经过设计,软件随着客户的需要一次又一次地不断被修改.


      在这个模型中,开发人员拿到项目立即根据需求编写程序,调试通过后生成软件的第一个版本。在提供给用户使用后,如果程序出现错误,或者用户提出新的要求,开发人员重新修改代码,直到用户满意为止。
      这是一种类似作坊的开发方式,对编写几百行的小程序来说还不错,但这种方法对任何规模的开发来说都是不能令人满意的,其主要问题在于:
      (1) 缺少规划和设计环节,软件的结构随着不断的修改越来越糟,导致无法继续修改;
      (2) 忽略需求环节,给软件开发带来很大的风险;
      (3) 没有考虑测试和程序的可维护性,也没有任何文档,软件的维护十分困难。

    2. 瀑布模型(Waterfall Model)
      1970年WinSTon Royce提出了著名的"瀑布模型",直到80年代早期,它一直是唯一被广泛采用的软件开发模型。
      瀑布模型将软件生命周期划分为制定计划、需求分析、软件设计、程序编写、软件测试和运行维护等六个基本活动,并且规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落。

        在瀑布模型中,软件开发的各项活动严格按照线性方式进行,当前活动接受上一项活动的工作结果,实施完成所需的工作内容。当前活动的工作结果需要进行验证,如果验证通过,则该结果作为下一项活动的输入,继续进行下一项活动,否则返回修改。
      瀑布模型强调文档的作用,并要求每个阶段都要仔细验证。但是,这种模型的线性过程太理想化,已不再适合现代的软件开发模式,几乎被业界抛弃,其主要问题在于:
      (1) 各个阶段的划分完全固定,阶段之间产生大量的文档,极大地增加了工作量;
      (2) 由于开发模型是线性的,用户只有等到整个过程的末期才能见到开发成果,从而增加了开发的风险;
      (3) 早期的错误可能要等到开发后期的测试阶段才能发现,进而带来严重的后果。

      我们应该认识到,"线性"是人们最容易掌握并能熟练应用的思想方法。当人们碰到一个复杂的"非线性"问题时,总是千方百计地将其分解或转化为一系列简单的线性问题,然后逐个解决。一个软件系统的整体可能是复杂的,而单个子程序总是简单的,可以用线性的方式来实现,否则干活就太累了。线性是一种简洁,简洁就是美。当我们领会了线性的精神,就不要再呆板地套用线性模型的外表,而应该用活它。例如增量模型实质就是分段的线性模型,螺旋模型则是接连的弯曲了的线性模型,在其它模型中也能够找到线性模型的影子。

    3. 快速原型模型(RAPId Prototype Model)
      快速原型模型的第一步是建造一个快速原型,实现客户或未来的用户与系统的交互,用户或客户对原型进行评价,进一步细化待开发软件的需求。通过逐步调整原型使其满足客户的要求,开发人员可以确定客户的真正需求是什么;第二步则在第一步的基础上开发客户满意的软件产品。
      显然,快速原型方法可以克服瀑布模型的缺点,减少由于软件需求不明确带来的开发风险,具有显著的效果。

      快速原型的关键在于尽可能快速地建造出软件原型,一旦确定了客户的真正需求,所建造的原型将被丢弃。因此,原型系统的内部结构并不重要,重要的是必须迅速建立原型,随之迅速修改原型,以反映客户的需求。

    4. 增量模型(Incremental Model)
      与建造大厦相同,软件也是一步一步建造起来的。在增量模型中,软件被作为一系列的增量构件来设计、实现、集成和测试,每一个构件是由多种相互作用的模块所形成的提供特定功能的代码片段构成.
      增量模型在各个阶段并不交付一个可运行的完整产品,而是交付满足客户需求的一个子集的可运行产品。整个产品被分解成若干个构件,开发人员逐个构件地交付产品,这样做的好处是软件开发可以较好地适应变化,客户可以不断地看到所开发的软件,从而降低开发风险。但是,增量模型也存在以下缺陷:
      (1) 由于各个构件是逐渐并入已有的软件体系结构中的,所以加入构件必须不破坏已构造好的系统部分,这需要软件具备开放式的体系结构。
      (2) 在开发过程中,需求的变化是不可避免的。增量模型的灵活性可以使其适应这种变化的能力大大优于瀑布模型和快速原型模型,但也很容易退化为边做边改模型,从而是软件过程的控制失去整体性。

     在使用增量模型时,第一个增量往往是实现基本需求的核心产品。核心产品交付用户使用后,经过评价形成下一个增量的开发计划,它包括对核心产品的修改和一些新功能的发布。这个过程在每个增量发布后不断重复,直到产生最终的完善产品。
      例如,使用增量模型开发字处理软件。可以考虑,第一个增量发布基本的文件管理、编辑和文档生成功能,第二个增量发布更加完善的编辑和文档生成功能,第三个增量实现拼写和文法检查功能,第四个增量完成高级的页面布局功能。

    5.螺旋模型(Spiral Model)
      1988年,Barry Boehm正式发表了软件系统开发的"螺旋模型",它将瀑布模型和快速原型模型结合起来,强调了其他模型所忽视的风险分析,特别适合于大型复杂的系统。
      螺旋模型沿着螺线进行若干次迭代,图中的四个象限代表了以下活动:
      (1) 制定计划:确定软件目标,选定实施方案,弄清项目开发的限制条件;
      (2) 风险分析:分析评估所选方案,考虑如何识别和消除风险;
      (3) 实施工程:实施软件开发和验证;
      (4) 客户评估:评价开发工作,提出修正建议,制定下一步计划。
      螺旋模型由风险驱动,强调可选方案和约束条件从而支持软件的重用,有助于将软件质量作为特殊目标融入产品开发之中。但是,螺旋模型也有一定的限制条件,具体如下:
      (1) 螺旋模型强调风险分析,但要求许多客户接受和相信这种分析,并做出相关反应是不容易的,因此,这种模型往往适应于内部的大规模软件开发。
      (2) 如果执行风险分析将大大影响项目的利润,那么进行风险分析毫无意义,因此,螺旋模型只适合于大规模软件项目。
      (3) 软件开发人员应该擅长寻找可能的风险,准确地分析风险,否则将会带来更大的风险

          一个阶段首先是确定该阶段的目标,完成这些目标的选择方案及其约束条件,然后从风险角度分析方案的开发策略,努力排除各种潜在的风险,有时需要通过建造原型来完成。如果某些风险不能排除,该方案立即终止,否则启动下一个开发步骤。最后,评价该阶段的结果,并设计下一个阶段。

    6.演化模型(incremental model)

        主要针对事先不能完整定义需求的软件开发。用户可以给出待开发系统的核心需求,并且当看到核心需求实现后,能够有效地提出反馈,以支持系统的最终设计和实现。软件开发人员根据用户的需求,首先开发核心系统。当该核心系统投入运行后,用户试用之,完成他们的工作,并提出精化系统、增强系统能力的需求。软件开发人员根据用户的反馈,实施开发的迭代过程。第一迭代过程均由需求、设计、编码、测试、集成等阶段组成,为整个系统增加一个可定义的、可管理的子集。

        在开发模式上采取分批循环开发的办法,每循环开发一部分的功能,它们成为这个产品的原型的新增功能。于是,设计就不断地演化出新的系统。 实际上,这个模型可看作是重复执行的多个“瀑布模型”。

        “演化模型”要求开发人员有能力把项目的产品需求分解为不同组,以便分批循环开发。这种分组并不是绝对随意性的,而是要根据功能的重要性及对总体设计的基础结构的影响而作出判断。有经验指出,每个开发循环以六周到八周为适当的长度。


    7.喷泉模型(fountain model, (面向对象的生存期模型, OO模型))
        喷泉模型与传统的结构化生存期比较,具有更多的增量和迭代性质,生存期的各个阶段可以相互重叠和多次反复,而且在项目的整个生存期中还可以嵌入子生存期。就像水喷上去又可以落下来,可以落在中间,也可以落在最底部。

    8.智能模型(四代技术(4GL))
        智能模型拥有一组工具(如数据查询、报表生成、数据处理、屏幕定义、代码生成、高层图形功能及电子表格等),每个工具都能使开发人员在高层次上定义软件的某些特性,并把开发人员定义的这些软件自动地生成为源代码。这种方法需要四代语言(4GL)的支持。4GL不同于三代语言,其主要特征是用户界面极端友好,即使没有受过训练的非专业程序员,也能用它编写程序;它是一种声明式、交互式和非过程性编程语言。4GL还具有高效的程序代码、智能缺省假设、完备的数据库和应用程序生成器。目前市场上流行的4GL(如FoXPro等)都不同程度地具有上述特征。但4GL目前主要限于事务信息系统的中、小型应用程序的开发。

    9.混合模型(hybrid model)
        过程开发模型又叫混合模型(hybrid model),或元模型(meta-model),把几种不同模型组合成一种混合模型,它允许一个项目能沿着最有效的路径发展,这就是过程开发模型(或混合模型)。实际上,一些软件开发单位都是使用几种不同的开发方法组成他们自己的混合模型。

    各种模型的比较
      每个软件开发组织应该选择适合于该组织的软件开发模型,并且应该随着当前正在开发的特定产品特性而变化,以减小所选模型的缺点,充分利用其优点,下表列出了几种常见模型的优缺点。

    展开全文
  • 快速原型法(转)

    2013-06-28 11:34:00
    原型可以使他们的想象更具体化,有助于说明和纠正这些不确定性,总的来说通过原型法可以很好的减少项目风险。 水平和垂直的原型  我们和业务人员经常谈到的是水平原型,水平原型也叫做“行为原型” (behavioral ...

    为什么需要原型

      建立原型的主要原因是为了解决在产品开发的早期阶段不确定的问题,利用这些不确定性来判断系统中哪一部分需要建立原型和希望从用户对原型的评价中获得什么。原型可以使他们的想象更具体化,有助于说明和纠正这些不确定性,总的来说通过原型法可以很好的减少项目风险。

    水平和垂直的原型

      我们和业务人员经常谈到的是水平原型,水平原型也叫做“行为原型” (behavioral prototype)。探索预期系统的一些特定行为,并达到细化需求的目的。当用户在考虑原型中所提出的功能可否使他们完成各自的业务任务时,原型使用户 所探讨的问题更加具体化。它更多从业务需求着手,应用在需求阶段。

      垂直原型(vertical prototype),也叫做结构化原型或概念的证明,实现了一部分应用功能。当预期实现阶段可能存在技术风险时,可以开发一个垂直原型。垂直原型通常用 在生产运行环境中的生产工具构造,使其结果一目了然(更有意义)。比起在软件的需求开发阶段,垂直原型更常用于软件的设计阶段以减少风险。

    抛弃型原型或进化型原型

      从原型存在生命时机考虑分为抛弃型原型和进行型原型,抛弃型原型不作为最终产品的一部分,只是作为探索性的回答一些需求问题,细化需求并提高需求质量。由于在开发阶段最终将抛弃这些原型,因此不需要花太大力气去建立该原型。

      进化型原型是在已经清楚地定义了需求的情况下,为开发渐进式产品提供了坚实的开发基础,作为产品的部分实现。与抛弃型原型的快速、粗略的特点相 比,进化式模型一开始就必须具有健壮性和产品质量级的代码。因此,对于描述相同的功能,建立进化型原型比建立抛弃型原型所花的时间要多。一个进化型原型必 须设计为易于升级和优化的,因此,你必须重视软件系统性和完整性的设计原则。要达到进化型原型的质量要求并没有捷径。进化型原型一般在处理架构时会采用。

     

    低保真原型和高保真原型

      原型分低保真原型和高保真原型,低保真原型目标在于表达工作主要内容,体现静态的元素,不需要动态交互。高保真原型目标是作出一个和实际上线后 的产 品差不多的样子,不仅包括静态的界面,还包括交互,甚至有的还把数据保存、逻辑验证等都包含在内。如果客户要求开发之前必须看到和实际产品一样的原型时, 这时就需要做高保真原型,如果对于小型项目,或者只是用来做交流主要需求用时,就可以做低保真原型。

     

    原型工具

       需求在产品开发中的重要性已经是不需争议的事实,现在需求方法有很多, 业界最常用的一种办法就是通过原型展现需求,通过用例表达需求。业务人员掌握制作原型能够更快更清楚的表达业务,同客户和开发可以进行更直观的沟通,使得大家在理解上容易更一致。然而原型工具有非常多,比如大多数人用过的Excel、Access、Delphi、PowerPoint、Axure、Balsamiq Mockups、ForeUI、iRise、Lucid Spec、Mockup Screens、Pencil、Serena等,甚至开发工具雅奇等也可以用来做原型。工欲善其事,必先利其器,对于刚刚使用原型方法的业务人员来说,如何选择适合自己的原型工具呢?这就需要首先根据原型的目的明确做原型的粒度。

      在限定时间内能够将需求表达更清晰需要一个合适的工具。业务人员一般都不会有什么编程经验,我们怎么能够做出表达静态元素界面,又能加入动态交互功能的原型呢?为了能在需求阶段都能够更好的采用原型开发方法,我搜集并使用过多种原型工具,希望找打一款比较使用简单,但又能实现一般的交互功能,最好是业务人员学个一个小时就可以完全自己动手使用了。我用过一个原型工具 GUI Design Studio ,它的主要特点就是操作简单,不需要开发人员帮助,通过半个小时的学习后你将可以自己开始做原型了。《原型工具GUI Design Studio》对这个工具的使用进行可简单介绍。

     

     原型不仅仅是界面

      我们可以通过原型来引导用户来使用系统解决问题,但原型不仅仅是需求,它还是设计、开发工具,所以作原型时不仅需要客户的参与,也需要技术人员的参与,但应该尽量由业务人员而非开发人员来实现原型的需求部分。 下面是在UCD社区里面看到的一张图,原型最主要功能是表现界面,但要做好界面其实不容易,山下面还有很多东西需要 考虑才能支撑界面,其实做原型的过程就是设计系统的过程。我们都希望尽量把开发工作前移,需求能做的工作就不留到开发环节做。如果软件模式一定,那么框架 做得好的话就一定可以让业务人员来做一部分现在属于开发人员的工作(注:这部分工作其实本就该属于业务人员),那时大家就能体会到开发软件就如同做原型一 样的乐趣了!

      

    OpenExpressApp对原型的支持

      细心的读者在《OpenExpressApp架构-信息系统开发平台》中的Roadmap图中能看到右边的OpenTool中包括对原型的支持。OEA关注点更多的是从软件工程向业务工程的转移,所以和业务相关的原型会作为一个重点工具来考虑。

     

      使用原型有三个主要目的:

    1. 作为一种需求工具,明确并完善需求原型,它初步实现所理解的系统的一部分。
    2. 作为一种设计工具,探索设计选择方案原型,探索不同的用户界面技术,使系统达到最佳的可用性,并且可以评价可能的技术方案。
    3. 作为一种开发工具,发展为最终的产品原型,是产品最初子集的完整功能实现,通过一系列小规模的开发循环后可以完成整个产品的开发。

    转载于:https://www.cnblogs.com/liuqi19820/p/3160539.html

    展开全文
  • 需求入门: 原型开发

    2019-07-28 07:09:41
    原型可以使他们的想象更具体化,有助于说明和纠正这些不确定性,总的来说通过原型法可以很好的减少项目风险。 水平和垂直的原型  我们和业务人员经常谈到的是水平原型,水平原型也叫做“行为原型” (behavioral ...

    为什么需要原型

      建立原型的主要原因是为了解决在产品开发的早期阶段不确定的问题,利用这些不确定性来判断系统中哪一部分需要建立原型和希望从用户对原型的评价中获得什么。原型可以使他们的想象更具体化,有助于说明和纠正这些不确定性,总的来说通过原型法可以很好的减少项目风险。

    水平和垂直的原型

      我们和业务人员经常谈到的是水平原型,水平原型也叫做“行为原型” (behavioral prototype)。探索预期系统的一些特定行为,并达到细化需求的目的。当用户在考虑原型中所提出的功能可否使他们完成各自的业务任务时,原型使用户所探讨的问题更加具体化。它更多从业务需求着手,应用在需求阶段。

      垂直原型(vertical prototype),也叫做结构化原型或概念的证明,实现了一部分应用功能。当预期实现阶段可能存在技术风险时,可以开发一个垂直原型。垂直原型通常用在生产运行环境中的生产工具构造,使其结果一目了然(更有意义)。比起在软件的需求开发阶段,垂直原型更常用于软件的设计阶段以减少风险。

    抛弃型原型或进化型原型

      从原型存在生命时机考虑分为抛弃型原型和进行型原型,抛弃型原型不作为最终产品的一部分,只是作为探索性的回答一些需求问题,细化需求并提高需求质量。由于在开发阶段最终将抛弃这些原型,因此不需要花太大力气去建立该原型。

      进化型原型是在已经清楚地定义了需求的情况下,为开发渐进式产品提供了坚实的开发基础,作为产品的部分实现。与抛弃型原型的快速、粗略的特点相比,进化式模型一开始就必须具有健壮性和产品质量级的代码。因此,对于描述相同的功能,建立进化型原型比建立抛弃型原型所花的时间要多。一个进化型原型必须设计为易于升级和优化的,因此,你必须重视软件系统性和完整性的设计原则。要达到进化型原型的质量要求并没有捷径。进化型原型一般在处理架构时会采用。

    低保真原型和高保真原型

      原型分低保真原型和高保真原型,低保真原型目标在于表达工作主要内容,体现静态的元素,不需要动态交互。高保真原型目标是作出一个和实际上线后的产品差不多的样子,不仅包括静态的界面,还包括交互,甚至有的还把数据保存、逻辑验证等都包含在内。如果客户要求开发之前必须看到和实际产品一样的原型时,这时就需要做高保真原型,如果对于小型项目,或者只是用来做交流主要需求用时,就可以做低保真原型。

    原型工具

      需求在产品开发中的重要性已经是不需争议的事实,现在需求方法有很多,业界最常用的一种办法就是通过原型展现需求,通过用例表达需求。业务人员掌握制作原型能够更快更清楚的表达业务,同客户和开发可以进行更直观的沟通,使得大家在理解上容易更一致。然而原型工具有非常多,比如大多数人用过的ExcelAccessDelphiPowerPoint、Axure、Balsamiq Mockups、ForeUI、iRise、Lucid Spec、Mockup Screens、Pencil、Serena等,甚至开发工具雅奇等也可以用来做原型。工欲善其事,必先利其器,对于刚刚使用原型方法的业务人员来说,如何选择适合自己的原型工具呢?这就需要首先根据原型的目的明确做原型的粒度。

      在限定时间内能够将需求表达更清晰需要一个合适的工具。业务人员一般都不会有什么编程经验,我们怎么能够做出表达静态元素界面,又能加入动态交互功能的原型呢?为了能在需求阶段都能够更好的采用原型开发方法,我搜集并使用过多种原型工具,希望找打一款比较使用简单,但又能实现一般的交互功能,最好是业务人员学个一个小时就可以完全自己动手使用了。我用过一个原型工具 GUI Design Studio它的主要特点就是操作简单,不需要开发人员帮助,通过半个小时的学习后你将可以自己开始做原型了。《原型工具GUI Design Studio》对这个工具的使用进行可简单介绍。


     原型不仅仅是界面

      我们可以通过原型来引导用户来使用系统解决问题,但原型不仅仅是需求,它还是设计、开发工具,所以作原型时不仅需要客户的参与,也需要技术人员的参与,但应该尽量由业务人员而非开发人员来实现原型的需求部分。下面是在UCD社区里面看到的一张图,原型最主要功能是表现界面,但要做好界面其实不容易,山下面还有很多东西需要考虑才能支撑界面,其实做原型的过程就是设计系统的过程。我们都希望尽量把开发工作前移,需求能做的工作就不留到开发环节做。如果软件模式一定,那么框架做得好的话就一定可以让业务人员来做一部分现在属于开发人员的工作(注:这部分工作其实本就该属于业务人员),那时大家就能体会到开发软件就如同做原型一样的乐趣了!

      

    OpenExpressApp对原型的支持

      细心的读者在《OpenExpressApp架构-信息系统开发平台》中的Roadmap图中能看到右边的OpenTool中包括对原型的支持。OEA关注点更多的是从软件工程向业务工程的转移,所以和业务相关的原型会作为一个重点工具来考虑。

      使用原型有三个主要目的:

    1. 作为一种需求工具,明确并完善需求原型,它初步实现所理解的系统的一部分。
    2. 作为一种设计工具,探索设计选择方案原型,探索不同的用户界面技术,使系统达到最佳的可用性,并且可以评价可能的技术方案。
    3. 作为一种开发工具,发展为最终的产品原型,是产品最初子集的完整功能实现,通过一系列小规模的开发循环后可以完成整个产品的开发。

      OEA的原型工具将会考虑集成需求工具、设计工具和开发工具与一体,由业务需求人员、设计师和开发人员在OpenExpressApp平台下进行连贯的开发,它做的是水平、进化型、高保真原型。

    需求入门: 需求工程=需求开发+需求管理

    转载于:https://www.cnblogs.com/vincent_shi/archive/2009/11/16/1603717.html

    展开全文
  • 1 前言 需求分析阶段是管理信息系统(MIS)开发最重要的阶段。MIS开发的需求阶段首先是...原型法由于改变了系统的分析、设计和实现三个顺序阶段的观点[2],改变了传统的自顶向下的开发模式,降低了软件需求的风险,因
  • 采用简化原型法进行需求分析

    千次阅读 2004-12-27 22:48:00
    1 前言 需求分析阶段是管理信息系统(MIS)开发最重要的阶段。MIS开发的需求阶段首先是了解...原型法由于改变了系统的分析、设计和实现三个顺序阶段的观点[2],改变了传统的自顶向下的开发模式,降低了软件需求的风险
  • 需求入门: 原型开发

    2011-08-14 18:16:52
    原型可以使他们的想象更具体化,有助于说明和纠正这些不确定性,总的来说通过原型法可以很好的减少项目风险。 水平和垂直的原型 我们和业务人员经常谈到的是水平原型,水平原型也叫做“行为原型” (behavioral ...
  • Home 如何进行界面和业务逻辑分开的原型开发原型开发的特定应用场合 由于生命周期严格分阶段
  • 发布于:软件开发网 来源:Internet 作者:网络收集 时间:2008-11-25 点击: 11/3/2009 10:51:36 AM 前言:需求分析阶段是管理信息系统(MIS)开发最重要的阶段。MIS开发的需求阶段首先是了解和澄清用户的需求,然后严格...
  • 原型法适用于用户没有确定其需求的明确内容的时候。他先是根据已给的和分析的需求,建立一个原始模型,这是一个可以修改的模型(在声明周期法中,需求分析一般不再多修改)。在软件开发的各个阶段都把有关信息相互...
  • 通过提高项目管理能力,针对不同情况,在不同阶段,正确运用不同的工程方法,才能有效地控制风险,使软件开发保持强大的适应变化的能力,也就保持了软件开发者的生存能力...快速原型法为我们提供了一个很好的解决办法。
  • 软件工程各阶段开发文档

    千次阅读 2017-07-17 15:29:13
    我们知道,软件工程是一个指导开发者管理项目、开发项目的学科,有很多业内行之有效的开发模型,如:快速原型法、螺旋模型、敏捷开发等等。软件工程把开发一个项目划分成了不同阶段,使得项目开发有迹可循,有条不紊...
  • 文章目录瀑布模型/改进的瀑布模型螺旋模型增量和迭代模型原型法快速和敏捷开发关于选择生命周期模型的最后的总结 瀑布模型/改进的瀑布模型 虽然瀑布模型仍然存在很多的问题有待解决,但瀑布模型仍然是最基本的和最效...
  • 本方法改进以"原型法"为基础,通过在软件界面原型的基础上增加了"成员属性信息"、"成员约束信息"和"非功能需求信息"3项内容,用来描述原型的静态属性特征,同时使用"业务流程图"和"数据流图"定义系统的动态特征。...
  • 开发模型

    2019-10-14 18:12:01
    11.01 瀑布模型 1--瀑布模型是结构化当中的模型,...原型法只适用于需求阶段---原型会构建一个简易的系统 增量模型前两个月先做一块(重要的),给用户使用发现问题,接着两个月又开发其他模块,系统越来越...
  • 系统开发基础

    2019-07-23 14:03:17
    软件开发方法 软件开发方法 软件开发模型 构件与软件重用 逆向工程 ... 原型法:适用于需求不明确的开发,包括抛弃型原型和进化型原型 面向对象方法:更好的复用性,关键在于建立一个全面,合...
  • 信息系统的开发方法

    2011-04-20 00:32:00
    信息系统的开发方法有三种,分别是结构法、原型法和面向对象法。 结构法:强调工作的整体性和全局性,严格区分工作阶段原型法:在需求不明确的情况下,快速的创建原型明确需求。 面向对象法:直观、方便为特点...
  • 生命周期

    千次阅读 2007-05-09 21:06:00
    6、生命周期法的优点是什么,原型法的缺点是什么?(1) 强调系统的整体性、全局性。它采用“自顶向下” 的原则分析和设计系统,首先解决全局问题,强调在系统整体优化的前提下,来考虑具体的解决方案。 (2) 严格区分...
  • 软件开发模型

    2019-06-05 17:13:33
    瀑布模型 瀑布模型的一个重要特点:软件开发阶段划分是明确的,一个阶段到下一个阶段有明显的界线。 当软件需求明确、稳定时,可以采用...根据不同的迭代特点,演化模型可以演变为螺旋模型、增量模型和原型法...
  • 软件开发之螺旋模型

    千次阅读 2020-02-29 23:49:59
    该模型是快速原型法,以进化的开发方式为中心,在每个项目阶段使用瀑布模型法。这种模型的每一个周期都包括需求定义、风险分析、工程实现和评审4个阶段,由这4个阶段进行迭代。软件开发过程每迭代一次,软件开发又...

空空如也

空空如也

1 2 3 4 5 6
收藏数 116
精华内容 46
关键字:

原型法开发阶段