基于XML的快速原型方法

时间:2022-09-15 11:17:13

基于XML的快速原型方法

摘要:为了充分有效地获取用户需求,软件工程过程中经常需要创建和评价原型,但是如果在原型中投入太多资源,可能会导致项目失去管理层和客户的支持,或给产品本身带来风险。该文建议,使用XML等网络标准语言,简单快速地开发原型,可以缩短开发周期,节约开发成本,有效地达到原型方法的目标和解决相关问题。

关键词:需求分析;原型;快速原型方法;XML

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2012)31-7475-03

软件开发进入到工程阶段后,需求驱动着开发过程,充分有效地获取用户需求往往成为决定软件产品质量的关键因素。但是,因为各种原因,开发人员与客户不能完全理解彼此意图的情况时有发生:开发者不清楚用户真正期望的产品是什么样子;或者,用户不知道项目组最终将会交付出怎样的作品;再或者,各自心里有数却不能明确且完整地传达给对方。此时常用的做法一般是搭建一个最终产品的粗略样貌,称之为软件原型(Software Prototype),开发人员向客户展示原型并建议客户试用,根据客户反馈的信息来修正原型,调整下一步的工作。此过程被称为原型法(Prototyping)。

与传统分析设计方法那种到最后才能让用户看到结果的做法相比,原型法通过制作灵活的软件原型代替或部分代替不易更改的规格说明文档,以促使双方在需求问题上尽早达成一致意见;此外,原型也可在项目组内部作为部门间的接口,用于组织评议,意见征求和人员间沟通等。

原型通常具备几个基本特点:它有足够的精确程度,一定程度上能够代表最后的软件;但是它又不能非常细致,它一定比最后的软件实现起来简单的多。有一些项目组对是否要投入额外的资源来开发原型存在疑虑,而且一些客户也可能会由于产品质量或交付时间受到 原型影响而产生意见。所以本文建议,原型的规模应得到控制,开发周期应该很短,迭代次数可以很多。此种原型一般被称为快速原型(Rapid Prototype)。对于快速原型,内容和交互的精确度不是其主要追求,甚至在界面的精确度上也可以为了效率做出让步。快速原型在帮助确认需求的同时,更多用于寻找新创意和验证新设计。

1 常用的原型设计方法

原型法和原型本身并没有明确的标准,公司和开发人员一旦决定要制作原型,便会在获取一组基本的需求后,利用自己熟悉或容易得到的工具来试着构造。通常构造原型的方法有:

1.1使用实际开发最终产品的工具

项目软件实际的开发工具一般也是开发者熟练掌握的工具,这样开发出的原型有机会通过不断删改和增补逐渐演化成最终的产品。但是这种演化的方式对大多数项目而言都不太适合,通常只有网站或事务型软件的项目可能会采用。

和演化型原型相对的是抛弃型,如果使用同样的工具来开发原型,不论是演化型还是抛弃型,则每次迭代都要考虑代码是否复用的问题,可能会给快速原型方法带来很多限制。

1.2使用专门的原型设计软件

一些项目组会有自己常用的原型设计软件,可能是自己开发的,也可能是购买于第三方。这类软件通常是图形编辑软件、设计图形用户界面的软件,或制作演示文稿的软件。使用这些软件制作的原型在外观上都有不错的表现,但能提供的交互功能相对有限。

1.3使用基于第四代技术的软件

第四代技术被认为是面向对象开发的后继,目前已经有了一些基本的应用,例如可复用构件、甚高级语言、可视化软件开发工具等,这类技术的特点是面向应用,学习较简单,制作快捷,但应用领域有较多限制,编译时间也较长。

快速原型应尽量选择能缩短开发周期,节省开发成本的方法,本文根据这一出发点,给出一种基于XML的方法,并讨论此种方法是否适合拿来做快速原型设计。

2 一种构造快速原型的方法

2.1 绘制概念原型

不论何种原型都源于和客户的沟通,分析人员有必要在早期形成对客户期望的基本概念,并作为继续制作原型的依据。因为要追求快速,概念阶段的原型一般不要求具有配色或界面皮肤之类的细节特征,但需要描绘出有哪些基本元素,以及各元素的大致布局。此种程度的原型也被称为线框(Wire frame)或草图(Sketch)。纸笔和图形编辑软件是这阶段的首选工具。

2.2 使用标记语言定义原型的框架

依照草图快速建立计算机可以处理的模型时,本文认为,广泛应用于网络的标记语言具有一定的优势。适用性最广泛的SGML(Standard Generalized Markup Language,标准通用标记语言),理论上也适合于编写原型,但SGML的复杂程度可能会影响它的效率。XML(Extensible Markup Language,可扩展标记语言)是SGML的一个精简的子集,XML特别适合用于定义数据和标记数据类型,以及描述和交换独立于应用程序或供应商的结构化数据。软件的构造必然是结构化的数据,比较起来XML是更适合用于定义原型的语言。

例如,要构造一个常见的窗口结构,用XML可以这样写:

上一篇:探索校企合作的高职信息管理专业建设利弊 下一篇:农村小学作文教学的现状分析与对策