IBM®
跳转到主要内容
    中国 [选择]    使用条款
 
 
Select a scope: Search for:    
    首页    产品    服务与解决方案     支持与下载    个性化服务    
跳转到主要内容

developerWorks 中国  >  Rational  >

过程混搭(Mashups):帮助项目团队混搭系统

developerWorks
文档选项

未显示需要 JavaScript 的文档选项

讨论

英文原文

英文原文


级别: 初级

Ricardo Balduino, 高级软件工程师, IBM

2009 年 7 月 15 日

Journal icon 阅读这篇关于过程混搭(Process Mashups)的概述,一类 Web 2.0 时代的软件。作者探索了使用 IBM®Mashup Center 环境,以帮助项目团队成员巩固并评价他们在项目团队中扮演角色的信息。

来自 The Rational Edge

软件开发团队想要在项目方面作出杰出的工作,不管他们在项目团队中扮演的是什么角色。软件开发最佳实践可以帮助他们增加生产效率以及产品的质量。但是在其他的地方可以许多关于最佳实践的信息。一方面可能这是一个好事,另一方面可能使得团队成员收集他们需要的信息时变得十分困难。

本文提供了关于混搭的概述:一类 Web 2.0 时代的软件。作者探索了使用 IBM®Mashup Center 环境,以帮助项目团队成员巩固并评价他们在项目团队中扮演角色的信息。这些信息可能会以结构化的格式进行呈现,例如在 IBM Rational®Method Composer 中发现的操作内容;或者以不是很结构化的格式呈现,例如文章,论坛条目等等,在网上找到。

背景

在许多的公司内,个人和组织需要评价企业数据以作出商业决策,并自动化一些业务功能以提高生产效率。但是这些专业的业务部分不能等到 IT 公司执行冗长的项目,以开发需要访问公司数据并自动化工作功能的程序。这种现实导致个人和组织快速的创建短期的程序,也就是所谓的临时程序,以满足他们当前的需要。 1

软件开发项目团队也会发生相似的情况。这些团队想要作出杰出的工作并开发高质量的软件,按时并按合约的规定来完成项目。完成这些目标的一种方式,是让团队选择并利用项目中最有名的软件开发最佳实践。但是,在大多数情况下,项目团队成员并没有需要的技巧或者时间去管理,配置并公布他们自己的过程。他们所想要做的,是评价当前已存在的过程描述。对于这一点,他们可以使用软件开发最佳实践,这些操作是从规范的过程描述中获取的,例如那些过程工程师集团在室内创建的描述,或者那些通过开放源项目访问的描述,例如 Eclipse Process Framework (EPF) 2 ,又或者商业工具,例如 Rational Method Composer 3

除了规范的过程描述,团队成员想要获得公司和软件行业内部获取的知识和经验,以任意一种可用的方式,例如从发布的书籍以及在线资源(文章,论坛,博客等等)。

对项目开发员好的消息,是他们可以从多种渠道以及多种格式找到大量的过程信息。与之相反的是,试着从不同的渠道和格式找到相关的过程信息,让个人很难记得从哪里获得的信息。合并并按项目的需要归类信息是一个额外的负担。但是,有一种想法认为规范的过程描述有时是很恐怖,并很难驾驭,这样项目团队成员需要只去选择过程描述,以及支持可以应用到项目团队特定角色的材料。另一个潜在的问题是软件开发团队并没有时间,去收集可以加强和查看这些信息的高级项目部分。投入到这样的努力中,可以让团队远离他们自己的项目活动。





回页首


过程混搭

IBM Mashup Center 4 是一个允许团队成员快速创建临时程序的强大工具,这些程序使得项目开发员可以访问重要的资源,以用在软件开发项目中的日常工作中。

混搭就是一个将来自不同渠道数据集成到单个程序中的 Web 程序 5 。这些原本并没有打算与其他数据共存的数据,一旦集成到一个混搭的页面中,就允许用户作出基于结果合并数据的决定。第三方提供用于混搭的数据 的访问方式,具有不同的方法;例如,通过公用的接口,程序编程接口(APIs),Web 服务,以及机理(遵循 Web 内容联合的 RSS 6 或者 ATOM 7 标准)。

项目团队成员可以创建混搭,包含了使用内容联合技术,例如 RSS 或者 ATOM从各种渠道获取的数据。这些技术(由像规范的过程描述,或者不规范的 Web 来源产生的数据源),允许项目开发员获取他们感兴趣,或者项目需要应用的渠道。

例如,一个项目领导可能会对采用一种开发操作而感兴趣,例如项目中的迭代开发,她可能会参考论坛,技术库,以及提供支持的博客,然后搜索特定的条目以及提供关于迭代开发技术信息的文章。除了在因特网上访问的非正式的内容,该项目领导可能还会获取使用领导工具,例如 EPF Composer (见于下面)或者 Rational Method Composer,创建的结构化过程描述的支持。

在许多的 IT 公司内,过程工程师创建过程文件:过程工作流程,产品,模板,指导以及其它等等,项目开发员在他们的日常项目活动中可以遵循这些文件,并产生管理者和投资者想要看到的结果。过程管理员在开发过程模型和描述时,应用诸如 Software Process Engineering Meta-model (SPEM) 8 这样的工具。IT 商人和开放源动机提供了工具,以支持遵循 SPEM 标准的过程文件的创建。

一个范例是开放源项目 EPF,它提供了用于管理,配置和公布过程文件的名为 EPF Composer 9 的工具。EPF 项目还提供在 EPF Composer 中获取的范例过程,例如 EPF Practices,Open Unified Process (OpenUP),Scrum,eXtreme Programming (XP)以及其他部分。一个可以购买到的工具是 Rational Method Composer,它构建在 EPF Composer 的顶部,并为企业管理,配置以及公布过程文件而添加高级的功能。

EPF Composer 或者 Rational Method Composer 发布的过程内容可以部署到 EPF Wiki 10 ,这是一个通过添加评论,更改已存在的内容,添加新页面等等,允许过程用户浏览和就公布的过程内容进行合作的环境。

一旦这些资源可以从 EPF Wiki 以及 Web 渠道得到,那么这些内容可以包含在混搭环境中,这些环境例如有 IBM Mashup Center,在这里来自网上不同渠道的过程信息,可以得到合并和查看。Mashup Center 提供了基于浏览器的工具,以创建来自各种数据源的工具和技术,并为后续混搭的创建将这些有用的部分存储到一个目录下。

接下来我为所谓的“过程混搭”引入典型的人员和用法。您可以使用 Mashup Center 以创建这些用法的混搭,并包含 EPF Composer 和 Rational Method Composer 向 EPF Wiki 公布产生的过程描述,以及其他 Web 的来源。

注意:在本文中,我介绍了 IBM Mashup Center 中创建混搭的技术的应用。但是,读者或者环境以及工具可以使用这些工具,并为应用它们提供能力,例如 IBM Rational Team Concert 显示版 11 ,IBM Lotus®Notes® 12 ,以及等等。





回页首


过程混搭的范例应用

让我们验证一下创建和使用过程混搭的实用方式。在这里,我会引入展示软件开发项目中两个典型角色的人员,例如项目领导和开发员。让我们看一下这些专业人员在他们的日常项目活动中,想要达到什么样的目标。

人员 1: Jill

Jill 是一个采用新软件开发操作的项目领导,以改进她管理项目的方式。她想要增加项目达到一定质量的几率,按时并按质量的交付。她也想要向团队提供 Web 上可用的最新信息的访问方式。Jill 想要提供项目实践状态的简单访问方式,这样她就可以帮助团队识别缺陷,并改进他们工作的方式。

人员 2: Tim

Tim 是一个由 Jill 领导的项目的软件开发员。他想要创建高质量的软件,因此渴望遵循软件开发最佳实践。Tim也想要知道,公司及行业内的同行正在对技术和工具讨论什么。该信息来自讨论论坛,实践社团以及其他可用的来源。他需要访问技术聊天室,文章以及其他可利用的服务,来帮组他做好这一份工作。

基于 Jill 和 Tim 想要达到的这些与项目有关的专业目标,接下来我会详细介绍他们的实际项目和角色需要,以及混搭的使用是怎样快速的提供过程信息,帮组他们更好的完成工作的。

事例 1:我的操作

Tim,作为一个软件开发员,想要写出一个好的项目,这样他就需要有一个可用的好的指导,来让他的日常工作变得更加容易和有效。他想要查看项目采用的操作的列表,以及每一项操作的相关文件。他还想通过访问同行标记的 Web 页面,讨论同行参加的论坛,以及软件团队创建的相关文章,来意识到他的同行怎样去讨论相关的话题。

这个事例可以按照下列方式来在 IBM Mashup Center 中执行。Tim 从不同的渠道获得利用信息,如下:

  • 一个操作和操作细节的列表来自 EPF Wiki。在这种情况下,Tim 可以指向 EPF Wiki 的公司部署,它最有可能包含 Tim 公司项目遵循的定制系列的操作;又或者他可以指向 EPF Project 本身的 EPF Wiki 开放源部署,它包含了任何人都要遵循的操作。结果如图 1 中的工具 A 和 B 所示。

  • 条目来自 Web 上可用的信息。第一个来源是 IBM developerWorks 中的 Rational Forum。® 13 ,它显示了 Tim 所采取操作相关的讨论话题。第二个来源是显示公司同行标记页面的程序,因此评价了共享信息的社会网络方面。第三个来源是 developerWorks 上的 IBM Technical Library 14 ,这就允许 Tim 去获取与他所采用操作相关的文章和其他的信息。这些结果会分别显示在图 1 中的工具 C,D 以及 E 上。

通过向一个页面引入所有这些来源,现在 Tim 并不需要从他的因特网浏览器的不同窗口中去获取这些来源。所有的事情都出现在同一个页面中。而且,信息的显示是动态的:随着 Tim 从工具 A 中选择不同的操作,例如迭代开发操作,他可以马上看到与其他工具中特定操作相关的一切事物,例如来自 EPF Wiki 的操作细节,关于迭代开发的论坛讨论,同行所标记的页面,以及解释迭代开发技术具体信息的文章。随着 Tim 点击这些结果,工具 E 中的链接就会显示 Tim 需要阅读的细节信息。

因为 Tim 正在从事 Jill 领导的项目,所以他决定公布这个页面并与 Jill 共享它,这样 Jill 就可以遵循与迭代开发最佳实践相关的相同的指导原则和技术。

Screen image

图 1. 事例 1 的混搭页面:我的操作
点击以放大

事例 2:采取的操作

Jill 作为一个项目领导,不仅仅想要遵循操作,例如迭代开发以及其他内容,还要确保她的团队最大程度的遵循了这些操作提供的指导原则。她想让团队公开的参入讨论,并评价目标,以帮助他们评价他们在工作中的表现。如果在看到团队自我评价的结果之后,Jill 意识到团队需要更正活动的方向,这样他就需要访问指导原则,模板,范例,于是他们就能学会朝前发展的最佳方式。

这种事例可以在 IBM Mashup Center 中执行。Jill 从不同的渠道获取信息,例如:

  • 关于操作和操作细节的列表来自 EPF Wiki。结果显示在图 2 中的工具 A,B 和 C 中。

  • 有一系列问题显示了每一项操作想要达到的目标。问题可以帮助团队成员评价,他们是否在遵循,以及利用采取每一项操作带来的益处。团队可以发现 IBM Measured Capability Improvement Framework (MCIF) 15 中的每一个问题。问题列表存储在一个扩展卡中,这就可以用于 Mashup Center 的输入,以创建图 2 中工具 D 显示的信息。

  • 下面的图片或者表格显示了团队自我评价提供的一致数据(反应了每一个 MCIF Self Assessment 问题的回应)。例如,Jim 在一个扩展卡中,收集了每一个团队成员关于他们对特定操作想法的回答;当他们并不遵循操作的那个方面时,给出数字 1,当他们已经掌握特定的方面时,给出数字 5。团队成员投票的数据,会显示在图 2 中工具 E 的饼状图中。

Screen image

图 2. 事例的混搭页面:采取的操作
点击以放大

对于前面的采取操作显示板,Jill 和团队可以看到他们在什么区域做的比较好,在什么区域尚有待改进的真实图片。虽然自我评价的结果建立在每一个团队成员的主观分析基础之上,但是拥有这个可用的信息,可以帮助促进讨论,并实时检测团队过程的成熟性。除此之外,使用同一页面中可用的操作描述,团队可以快速找到支持需要改进区域的过程。

在上面的例子中,团队在每一次迭代的末尾进行回顾,发现团队做的并不是那么完美,这可以通过图片中倒数第二的低值得到验证,并最终在解释细节的工具 C 中找到文字描述。





回页首


结论

我们生存在一个信息指数增长的时代,越来越多的信息可以为我们所利用,一个人不能保证时刻与现存的信息保存一致,就算将其隔离在兴趣的一个特定的区域也是这样,例如技术,科学,政策等等。因特网时代的来临,加速了信息的传播,那些以前不能访问信息的用户现在也能进行访问了。

在本文中,我探讨了过程内容获取以及混搭,以向那些需要访问描述和有关怎样采取软件开发最佳实践的支持材料的项目开发员,提供商业价值。这些专业人员可以利用混搭环境和工具,以快速的创建混搭信息源的临时软件,这些信息源与软件需求有关,因此,以一种灵活且低成本的方式,更加容易的理解过程指导,以帮助他们执行每天的日常工作。





回页首


注意

  1. Cherbakov,L.,Bravery,A.,Goodman,B. D.,& Baggett,J. “变更公司 IT 开发模型:开发 Grassroots Computing 的潜力”IBM Systems Journal,Volume 46,Number 4,September 25,2007。见于http://www.research.ibm.com/journal/sj/464/cherbakov.html

  2. 见于 Eclipse Process Framework Web 网站:http://www.eclipse.org/epf

  3. 见于 ibm.com 上的 IBM Rational Method Composer 主页:http://www-01.ibm.com/software/awdtools/rmc/index.html

  4. 见于 ibm.com 上的IBM Lotus Mashups 主页:http://www-01.ibm.com/software/lotus/products/mashups/

  5. 见于混搭上的 Wikipedia 定义:http://en.wikipedia.org/wiki/Mashup_(web_application_hybrid)

  6. 查看 RSS 的 Wikipedia 定义:http://en.wikipedia.org/wiki/RSS_(file_format)

  7. 查看 ATOM 的 Wikipedia 定义:http://en.wikipedia.org/wiki/Atom_(standard)

  8. Haumer,P. et al.Software Process Engineering Meta-model(2007 年 7 月) 。Object Management Group。SPEM version 2.0 specification。取直 http://www.omg.org/technology/documents/formal/spem.htm

  9. Haumer,P.Eclipse Process Framework Composer(2007 年 2 月)。取自 Eclipse Process Framework Web 网站:http://www.eclipse.org/epf/general/EPFComposerOverviewPart1.pdfhttp://www.eclipse.org/epf/general/EPFComposerOverviewPart2.pdf

  10. EPF Wiki 的开发源部署:http://epf.eclipse.org/

  11. ibm.com 上的 IBM Rational Team Concert 页面:http://www-01.ibm.com/software/awdtools/rtc/index.html

  12. ibm.com 上的 IBM Lotus Notes 主页: http://www-01.ibm.com/software/lotus/products/notes/

  13. IBM developerWorks 论坛:http://www.ibm.com/developerworks/forums/index.html

  14. IBM developerWorks Technical Library:http://www.ibm.com/developerworks/views/rational/libraryview.jsp

  15. ibm.com 上的 IBM Measured Capability Improvement Framework 主页:http://www-01.ibm.com/software/rational/mcif/



参考资料

学习
  • IBM Rational 敏捷开发工具包:本工具包将帮助您了解 IBM Rational 为敏捷开发所提供的技术和解决方案,以及最佳实践。帮助您更好地运用 IBM Rational 软件实施敏捷开发,将敏捷开发的实践落到实处。

  • 查看 Rational Edge 电子期刊 其他精彩文章,获得了解高效软件开发背后的概念。

  • 访问 developerWorks 上的 Rational 软件专区,了解有关 Rational 软件交付平台产品的技术资源和最佳实践。

  • 了解 IBM Rational 软件交付平台,包括适用于并行开发和地域分布式团队的协作工具,以及用于架构管理、资产管理、变更和发布管理,集成需求管理、过程和组合管理,和质量管理。

  • 订阅 IBM developerWorks 时事通讯,获得有关最佳的 developerWorks 教程、文章、下载、社区活动、网络广播和事件的每周更新。

  • 浏览 技术书店,获得有关这些和其它技术主题的书籍。


获得产品和技术

讨论


关于作者

Ricardo Balduino

Ricardo Balduino 是 IBM 的一名高级软件工程师,并且是 Eclipse Process Framework (EPF) 项目的一名成员。他在软件行业有十五年多的经验,包括开发行业过程自动化和金融服务的软件应用程序,以及交付培训和咨询服务,以帮助组织采用正式和敏捷的软件开发实践。他拥有加利福尼亚 Sao Paulo 州立大学的计算机科学的学士学位。




对本文的评价








IBM 公司保留在 developerWorks 网站上发表的内容的著作权。未经IBM公司或原始作者的书面明确许可,请勿转载。如果您希望转载,请通过 提交转载请求表单 联系我们的编辑团队。
    关于 IBM 隐私条约 联系 IBM 使用条款