五种常用RAD的测验比较

 五种常用RAD的测验比较

似乎每家生产软件开放工具或平台的供应商都宣称他们的工具或平台可以用来进行“快速应用程序开发(RAD)”,但是却很少用证据来支持这一说法。
  
  什么是 RAD?
  除了是一种市场称谓之外,RAD 还可以用来描述在60到90天之内设计和开发的应用程序。James Martin 于上个世纪80年代中期在Dupont工作时提出了这个概念。就是在那里他和Scott Shultz 使用一个他们称之为快速交互性生产原型的方法学形式化地提出了一个开发应用程序的系统,这种原型使用流程图来设计程序和应用程序。
  
  Martin 被认为是计算机辅助设计之父,并且他最初的成果已经成长、增大和扩展为我们目前所知道的设计准则 RAD。经过多年的发展,RAD 已经成长为包括很多用于定义 RAD 项目的基本原则。
  
  首先,RAD 项目使用原型来刻画特征。RAD 原型帮助我们快速步入设计过程并演示应用程序的观感,并减少为确定特性和功能而从用户那里收集需求的时间。
  
  RAD 的概念是,通过一组来自用户的基本需求,开发人员通常可以在工作室环境下快速地构建一个原型,用户可以与这个原型交互并建议特性、功能增强等,而这个原型则作为联合需求设计(JRD,joint requirements planning)或联合应用程序开发(JRD,joint application development)过程的一部分。所以任何被吹捧为 RAD 工具的开发工具或开发平台应该能够方便地从一个 JRD 工作室收集用户需求,并应该能够快速地创建能够在 JAD 工作室中供用户查看和修改的应用程序原型。
  
  一个好的 RAD 工具还应该为开发人员提供使用基于组件的架构来快速添加和删除特性的工具,而添加和删除特性要在不须要大量重新编写代码的情况下完成。除了在 RAD 项目的过程中更改用户需求之外,多数项目是“有时间限制的”,即为项目完成设置了一个时间期限。在这个时间期限内有任何不能交付的特性或功能都应该被删除或推迟到将来的发布中。
  
  使用 RAD 方法创建应用程序的第二个特点是可能同时有很多开发人员正在同一个应用程序上工作,并且这些开发人员能够在他们的团队中扮演很多角色。例如,可能有一个开发人员已经为正在讨论的应用程序创建了架构,并设计了用户界面和后台代码。而同一个资源可能还在被用于开发成测试计划,用于测试应用程序,书写文档,以及最终培训用户。在更正式的项目中,这些角色可以在多种资源中分配。在一个 RAD 项目中,时间和资源限制通常意味着这些(或更多)角色通常必须由单个开发人员所担任。对于支持 RAD 这一方面的 IDE,它必须适应不同的角色;相反,开发人员必须担任和支持这些角色中的一个。
  
  除了支持团队中的不同角色外,RAD 工具还必须能够支持使用第三方组件来交付用户需求。在构建与购买的争论中,开发人员必须能够购买他们没有时间去构建或不倾向于自己构建的组件。例如,如果一个开发人员正为一个应用程序进行编码和界面设计两种工作,那么他必须能够集成那些可以减少每个任务所需时间的组件(比如代码库、UI 组件等)。
  
  最后也是最重要的一点是,对使用 RAD 方法创建的应用程序的最后检验是看这些应用程序是否符合特定的商业用途。在使用严格意义上的软件开发周期(SDLC,software development lifecycle)创建应用程序的一般阶段中,在这个周期中有很多可交付品(deliverable)必须交付,包括正式的访谈、详细的设计文档、与现有系统审的语义映射、流程文档等。
  
  在一个 RAD 项目中,在项目结束时首要的问题是“这个应用程序符合它被创建的商业过程吗?”如果答案是肯定的,那么项目就被认识是成功的。出于这一目的,RAD 工具应该提供以下能力,即能够快速创建能够解决即将到来的商业问题的应用程序。虽然有一些 SDLC 要素包括在 RAD 项目中,但这不是首要问题。例如,对于一个真正的 RAD 工具,生成过程流图或数据库方案的能力并不像交付商业过程所需的功能那么重要。
  
  对五种 RAD 工具的测试
  在查看不同的开发工具和开发平台来进行实地测试时,我们分析对比了典型的 RAD 项目元素,包括快速和简单数据录入窗体,以及绑定到后台的一个简单的数据库表。根据 RAD 方法学,我们使用每个工具构建了原型,标注出一个工具在哪些地方提供效率,哪些地方有待提高。我们还分析了 IDE 对RAD 设计原则以及所需任务适应性的特性和功能的支持。
  
  Microsoft Visual Studio.NET 2003
  Visual Studio.NET 2003 可以用来为 .NET Framework 以多种语言创建 Web 和 Windows 应用程序,它支持的语言包括 C#、VB.NET、C++、J# 和其它支持 CLR 兼容的语言,从图1可以看出。作为 RAD,Visual Studio 的一个最独特的优点就是多语言支持,这一特点使开发人员能够构建具有由不同语言编写的组件的应用程序,使组织能够有效利用组织内现有的技能。
  
  对于快速创建原型,Visual Studio 的表现也相当突出,因为它提供了很多工具和组件,可以用来快速地创建数据驱动的应用程序。与 SQL Server 的紧密集成也是一个亮点,虽然需要访问保存在其它平台中的信息的开发人员可能会发现连接到他们的底层数据比较麻烦。
  
  目前很多数据库供应商已经提供了嵌入到Visual Studio 的工具,包括 Oracle 和 DB2,这样就使得数据库集成不再麻烦。除数据库支持外,针对Visual Studio 的第三方组件的发展也很迅速,这样就使开发人员能够购买提供他们所需功能组件,从而节省时间,也无须再掌握构建这种功能的技能。
  
  将Visual Studio 看成 RAD 工具的一个主要缺点是,微软为工作于一个项目的开发人员团队所提供的工具不尽如人意。对于版本和源代码控制,多数Visual Studio 开发人员会使用微软的 Source Safe,这一工具很难跨多个地点或工作场所使用。此外,Visual Studio 不提供对其它开发人员角色(架构师、测试员等)的很多支持,所以你需要使用微软其它的工具或第三方工具来满足这些角色的独特需要。
  
  微软最近宣布说它将在Visual Studio 2005 的发布中捆绑很多新工具,这些工具主要提供给架构、单元测试以及团队开发使用,但是很显然目前这个版本和 RAD 项目缺少这些工具,你可能没有时间去等新版本出来。
  


  

图1:Microsoft Visual Studio.NET
Sun Java Studio Creator
  Sun 最近发布了Java Studio Creator 的第一个版本,Java Studio Creator 可以用来创建 JSP Web 应用程序。如图2所示,这个 IDE 本身组织得很好,但是它没有在市场上存在较长时间的其它工具那些成熟。
  
  使用Java Studio Creator 创建原型是一个麻烦的过程,即使更改像字体名称或字体大小之类的简单属性可能都很困难。Sun 做得比较好的一个地方是多页面应用程序的开发,在Java Studio Creator 中你可以在页面间拖放连接(connection),这样使得在页面间创建链接非常轻松。
  
  幸运的是,虽然Java Studio Creator 在创建原型上有所欠缺,但是它在其它方面表现很好,提供了开发和部署 Java 应用程序所需要的各种东西,包括一个 SQL 数据库服务器,一个应用程序服务器,以及 Java SDK。对于那些寻求开始 Java 开发项目并且使用 Java 语言的开发人员来说,这个包罗万象的方法可以使项目快速地展开。
  
  然而,对于需要一个开发团队协同工作的 RAD 项目,Java Studio Creator 并不很适合——你最好使用 Sun 的 Java Studio Enterprise 产品,这是一个更适合大型开发团队的集成套件。但是对于需要快速进入开发状态的小型开发团队来说,Java Studio Creator 可能正好适合。
  
  说到第三方组件,虽然目前有很多 Java 组件,但是只有很少几个能够与Java Studio Creator IDE 集成。随着这个工具的成熟,你或许会看到对集成工具集的更多支持,但是在第一个发布版本中,它还难于与其它更加成熟的工具较量。
  
 

  
图2: Sun Java Studio Creator

  
  BEA Web Logic Workshop 8.1
  WebLogic Workshop 8.1 是 BEA 向RAD 工具阵地进军的武器,该工具可以用来创建 Web 应用程序、Web 服务、JSP、门户、EJB 和过程工作流。在第一次打开 WebLogic Workshop 时,你会注意到它的观感与其它 RAD 工具比较相似,但是WebLogic Workshop 提供了很多工具,这些工具使得创建 Web 应用程序的原型更加容易。
  
  首先,数据集成比较紧凑,允许你快速创建数据驱动的 Web 页面和站点,它提供了很多预先配置好的控件,使用这些控件可以很容易地绑定到数据源,以及显示、编辑和更新数据。该工具还包括一些可以用来控制重复元素和页面的控件,而在其它工具中你可以要手工编写代码来实现这一功能。你还可以使用WebLogic Workshop 中的页面流来分离表现、业务逻辑实现和导航控件,如图3所示。
  
  另外还有一个茁壮成长的第三方组件提供商团体,他们提供的组件可以扩展 BEA WebLogic 平台。虽然目前来说 BEA WebLogic Workshop 可用的组件没有Visual Studio 可用的组件那么多,但是几类主要的第三方工具(用户界面、图表和图形、附加功能、报表等)都已经出现。
  
  WebLogic Workshop IDE 中的用户界面也很直观易用,即使你是一位 BEA 工具和 Java 开发的新手。此外,在这个 IDE 内生成(build)和测试应用程序相当的快速和简单。这就意味着你可以快速地在一个应用程序的多个版本间切换,面无须等待生成过程。
  
  对于初次接触 JSP 开发的开发人员来说,BEA WebLogic Workshop 提供了开发 JSP 应用程序的最简单方法,开发人员不需要了解任何底层框架就可以进入开发状态。对于老手的 Java 开发人员来说,这个 IDE 为开发人员提供了很多高级特性,这些高级特性会使他们感觉很自在,并控制底层组件。
  
  至于互操作性,你可以使用BEA WebLogic Workshop 创建能够被其它平台或语言(包括 .NET)消费的 Web 服务,而无须手工干涉或修改 Web 服务本身。
  

  
图3: BEA WebLogic Workshop
Borland C# Builder
  Borland 的C# Builder 是用于 .NET 开发的产品,C# Builder提供了创建 .NET Framework 应用程序的一个替代方案。Borland 已经有了很多为不同语言和平台创建 IDE 的经验,并且这些经验在C# Builder 闪出光芒,如图4所示。
  
  首先,使用C# Builder 创建原型是一个非常轻松的过程,整洁一致的 IDE 使得快速创建和排版页面元素很容易。用户界面本身与Visual Studio 中的 UI 相似,并且开发人员熟悉那个环境,因此使用C# Builder 进行开发将不会遇到任何麻烦。对于工具间的兼容性问题,用C# Builder 创建的项目可以导也到Visual Studio 兼容的项目中。
  
  除了与Visual Studio IDE 的外观相似之外,C# Builder 还可以使用很多针对Visual Studio 的第三方组件和工具,即使它们不是为C# Builder 编写的(在深入开发过程之前需要向第三方组件供应商确认,以保证这些组件支持在C# Builder 中使用)。
  
  对于构建组件驱动的应用程序,C# Builder 相比其它 RAD 的王牌是它通过Janeva以及 Borland 的对象请求代理(object request broker)提供的与 J2EE 应用程序之间的互操作性,对象请求代理是一个针对 .NET Framework 的Visibroker实现。通过Janeva可以使用你的组织内现有的 J2EE 应用程序,这样就潜在地节省了 RAD 项目的时间。
  
  C# Builder 对面向团队的开发也提供很好的支持,因为它支持源代码控制和版本控制。很多来自其它 Borland 产品的工具和技术使得C# Builder 成为一个万能的工具,使用它可以进行建模和构建应用程序,而且 C# Builder 还支持各种开发角色(架构师、建模师、开发人员)。
  
 

  
图4: Borland C# Builder

  
  IBM WebSphere Studio Application Developer 5.1.2
  IBM 以自己的IBM WebSphere Studio 进军 RAD 工具市场,IBM WebSphere Studio 是基于来自Eclipse 项目的技术建立起来的工具。如图5所示,WebSphere Studio 最适合有经验的开发团队,它提供很多高级特性,但是,勿庸置疑这些高级特性将会搞乱那些 Java 开发新手。
  
  IBM 的折衷点是WebSphere Studio 可以看作是一个 RAD 开发的“强大工具”。在创建 Web 应用程序的原型时,你可以使用 Web Site Navigations 工具快速地为你的应用程序布局整个站点地图,然后在其它时间填充内容。此外,WebSphere Studio 还附带了支持JavaServer Faces 组件的工具,如果你具有 Faces 的经验,其一致性可以增加你的开发速度。
  
  对于由大型团队开发来说,WebSphere Studio 还使用 Rational ClearCase LT 进行版本控制,使用集成的 UML 工具迎合同样在这个项目中工作的架构师。IBM 在将 Rational 的技术集成到其开发工具这一方面做地也很好,这对于寻求单一供应商(或者甚至是单一产品)解决方案的开发人员来说是个意外惊喜。
  

  
图5: IBM WebSphere Studio Application Developer

  
  总结
  想从这一组工具中选出一个满足所有 RAD 原则的工具势必非常困难。每个工具都有它们独到的长处以及适合特定情况的地方。例如,如果考虑让一个具有不同 CLR 经验的开发人员团队快速创建原型的话,Visual Studio 是最能够适合这种环境的工具。
  
  另一方面,如果你需要构建一个集成 .NET 和 J2EE 组件的应用程序,并且希望将其标准化到一种单一语言上,C# Builder 可能是最适合这一要求的工具。而且大量的第三方组件和插件意味着你可以购买常用的组件,而无须亲自构建它们。
  
  至于 Java 方面,则呈现 BEA 和 IBM 两马并驾齐驱的局面。IBM 最大的优点是它将 Rational 工具集成到了自己的产品中——在大型开发环境中,这可以增加开发速度,减少原型交互的时间。
  
  因此,具体选择使用哪种工具要看你手头的开发人员资源以及他们的技能情况,还有你所偏好的平台以及所需的特性。虽然没有哪个 IDE 看上去能够提供一个完整的 RAD 解决方案,但是它们都提供了足够的 RAD 支持,足以使它们成为你的下个 RAD 项目所采用开发工具的竞争者。
来源:来源不祥
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值