time 
设为首页】【收藏本站
当前位置: 主页 > 软件工程 > 分析与建模 > 原型法和面向对象的分析与设计方法(4)

原型法和面向对象的分析与设计方法(4)

时间:2009-12-01 20:28 点击:758次 字体:[ ]




  在“需求分析”、“原型设计”两个阶段中,开发者和用户一起为想象中的系统的某些主要部分定义需求和规格说明,并由开发者在规格说明级用原型描述语言构造一个系统原型,它代表了部分系统,包括那些为满足用户需求的必要属性。该原型可用来帮助分析和设计工作,而不是一个软件产品。

  在演示原型期间,用户可以根据他所期望的系统行为来评价原型的实际行为。如果原型不能满意地运行,用户能立刻找出问题和不可接受的地方,并与开发者重新定义需求。该过程一直持续到用户认为该原型能成功地体现想象中的系统的主要部分功能为止。在这期间,用户和开发者都不要为程序算法或设计技巧等枝节问题分心,而是要确定开发者是否理解了用户的意思,同时试验实现它们的若干方法。

  有了满意的系统原型,同时也积累了使用原型的经验,用户常会提出新目标,从而进一步重新原型周期。新目标的范围要比修改或补充不满意的原型大。

  软件原型(software prototype)是软件的最初版本,以最少的费用、最短的时间开发出的、以反映最后软件的主要特征的系统。它具有以下特征:

  1.它是一个可实际运行的系统

  2.它没有固定的生存期。一种极端是扔掉原型(以最简便方式大量借用已有软件,做出最后产品的模型,证实产品设想是成功的,但产品中并不使用);另一种极端是最终产品的一部分即增量原型(先做出最终产品的核心部分,逐步增加补充模块),演进原型居于其中(每一版本扔掉一点,增加一点,逐步完善至最终产品)。

  3.从需求分析到最终产品都可作原型,即可为不同目标作原型。

  4.它必须快速、廉价。

  5.它是迭代过程的集成部分,即每次经用户评价后修改、运行,不断重复双方认可。

9.1.3 原型法的工作步骤

  利用原型法进行信息系统的设计过程中,分四步进行:首先快速分析,弄清用户/设计者的基本信息需求;然后构造原型,开发初始原型系统;之后,用户和系统开发人员使用并评价原型;最后系统开发人员修改和完善原型系统。

1. 原型法中的两个角色

  在信息系统的设计过程中主要有两种角色:用户和系统设计者。

  (1)用户(user)

  用户是信息应用系统的使用者,能从管理信息系统中寻求帮助,能胜任他的职能领域工作。

  (2)系统设计者(system designer)

  系统专业人员是系统的设计者,他能够使用各种有效的开发工具、能知道系统的数据资源、在信息系统的设计中已建立第四代语言。

2. 原型法的工作步骤

  (1) 快速分析,弄清用户的基本信息需求。(Plan)

  在分析者和用户的紧密配合下,快速确定软件系统的基本要求。根据原型所要体现的特性(或界面形式、或处理功能、或总体结构、或模拟性能等),描述基本规格说明,以满足开发原型的需要。快速分析的关键是要注意选取分析和描述的内容,围绕使用原型的目标,集中力量,确定局部的需求说明,从而尽快开始构造原型。

  如果是在需求分析阶段要使用原型法,必须从系统结构、逻辑结构、用户特性、应用约束、项目管理和项目环境等多方面来考虑,以决定是否采用原型法。

  当系统规模很大、要求复杂、系统服务不清晰时,在需求分析阶段先开发一个系统原型是很值得的。特别当性能要求比较高时,在系统原型上先做一些试验也是很必要的。

  这个步骤的目标是:讨论构造原型的过程;写出一简明的骨架式说明性报告,反映用户的信息需求方面的基本看法和要求;列出数据元素和它们之间的关系;确定所需数据的可用性;概括出业务原型的任务并估计其成本;考虑业务原型的可能使用。

  用户的基本责任是根据系统的输出来清晰地描述自己的基本需要。设计者和用户共同负责来规定系统的范围,确定数据的可用性。设计者的基本责任是确定现实的用户期望,估价开发一原型的成本。

  这个步骤的中心是用户和设计者定义基本的信息需求。讨论的焦点是数据的提取、过程模拟。

  (2) 构造原型,开发初始原型系统。(Implement)

  在快速分析的基础上,根据基本规格说明,尽快实现一个可运行的系统。为此需要强有力的软件工具的支持,例如采用非常高级的语言实现原型,引入以数据库为核心的开发工具等。并忽略最终系统在某些细节上的要求,例如安全性、健壮性、异常处理等。主要考虑原型系统应充分反映的待评价的特性,暂时忽略一切次要的内容。例如,如果构造原型的目的是确定系统输入界面的形式,可以利用输入界面自动生成工具,由界面形式的描述和数据域的定义立即生成简单的输入模块,而暂时不考虑参数检查、值域检查和后处理工作,从而尽快地把原型提供给用户使用。如果要利用原型确定系统的总体结构,而忽略转储、恢复等维护功能,使用户能够通过运行菜单来了解系统的总体结构。

  初始原型的质量对于原型生存期的后续步骤的成败是至关重要的。如果它有明显的缺陷,会带给用户一种不好的思路;如果为追求完整而做得太大,就不容易修改。这时,会增加修改的工作量。因此,要有一个好的初始原型。

  提交一个初始原型所需要的时间根据问题的规模、复杂性、完整程度的不同而不同。3——6周提交一个系统的初始原型应是可能的,最大限度不能超过两个月。两个月后提交的应是一个系统而不是一个原型。

  综上所述,本步骤的目标是:建立一个能运行的交互式应用系统来满足用户的基本信息需求。

  在这一步骤中用户没有责任,由设计者去负责建立一个初始原型,其中包括与设计者的需求及能力相适应的对话,还包括收集用户对初始原型的反映的设施。

  设计者的主要工作有:编辑设计所需的数据库;构造数据变换或生成模块;开发和安装原型数据库;建立合适的菜单或语言对话来提高友好的用户输入/输出接口;装配或编写所需的应用程序模块;把初始原型交付给用户,并且演示如何工作、确定是否满足设计者的基本需求、解释接口和特点、确定用户是否能很舒适地使用系统。

  本步骤的原则是:

  ① 建立模型的速度是关键因素,而不是运行的效率。

  ② 初始原型必须满足用户的基本需求。

  ③ 初始原型不求完善,它只响应用户的基本已知需求。

  ④ 用户使用原型必须要很舒适。

  ⑤ 用户-系统接口必须尽可能简单,使用户在用初始原型工作时不致于受到阻碍。

  (3) 用户和开发人员使用并评价原型。(Measure)

  这阶段是频繁通信,发现问题,消除误解的重要阶段。其目的是验证原型的正确程度,进而开发新的并修改原有的需求。它必须通过所有相关人员的检查、评价和测试。

  由于原型忽略了许多内容,它集中反映了要评价的特性,外观看起来可能会有些残缺不全。用户要在开发者的指导下试用原型,在试用的过程中考核评价原型的特性,分析其运行结果是否满足规格说明的要求,以及规格说明的描述是否满足用户的愿望。纠正过去交互中的误解和分析中的错误,增补新的要求,并为满足环境变化或用户的新设想而引起系统需求的变动而提出全面的修改意见。

  为了鼓励用户来评价原型,应当充分地解释原型的合理性,但不要为它辩护,以求能广泛征求用户的意见,在交互中达到完善。

  在演示/评价/修改的迭代初期,主要达到的目的是:

  ① 原型通过用户验收,让用户能获得有关系统的亲身经验,必须使之更好地理解实际的信息需求和最能满足这些需要的系统种类。;

  ② 总体检查,找出隐含的错误;

  ③ 在操作原型时,使用户感到熟悉和舒适。

  而在迭代的后期,要达到的主要目的是:

  ① 应发现丢失和不正确的功能;

  ② 测试思路和提出建议;

  ③ 改善/系统界面。

  开发者不应认为提供了完整的模型就等于系统的成功。因为即使开发过程完全正确,用户还是可以提出一些有意义的修改意见,这不能看作是对开发者的批评,而是在开发过程中的一种自然的现象。原型化的目标是鼓励改进和创造,而不是仅仅保持某种设想。

  在本步骤中的原则是:对实际系统的亲身经验能产生对系统的真实理解;用户总会找到系统第一个版本的问题;让用户确定什么时候更改是必需的,并控制总开发时间;如果用户在一定时间里(比如说一个月)没有和开发者联系,那么用户可能是对系统表示满意,也可能是遇到某些麻烦,设计者应该与用户联系。



本文地址 : http://www.fengfly.com/plus/view-158810-1.html
标签: 对象 方法 分析 设计 原型 面向
------分隔线----------------------------
最新评论 查看所有评论
发表评论 查看所有评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
验证码: