不断积累应用开发中产生的知识,使得诸如文档、帮助平台、质量保证人员等等能够快速有效地共享这些知识,而不会额外增加沟通成本。
因此,技术协同加强了“同心环”之间的合作,从开发环境向外扩展到:
技术协同
程序管理办公室(PMO)
项目管理功能(PM)
下面我们将看到,这些不同的功能组的需求是有差别的,但是它们都有一个共同的目标-技术协同。
开发需求
当前的分布式开发环境强调软件配置管理解决方案的能力:
产品化的信息库:StarTeam提供一个可伸缩、成熟的信息库,完全面向对象,版本化所有的对象(包括文件、目录、视图和变化请求),完全支持多重实体关系。StarTeam信息库使用了扩展的行业标准,如ODBC、COM、JAVA beans和Active-X等等。
真正的客户/服务器体系结构:基于文件系统的工具(如PVCS和SourceSafe)很难有效地运行在WAN、Internet或WEB环境中,因为其性能是难以接受的。
WAN/WEB优化:StarTeam特别针对WAN、Internet和WEB进行了优化,增强了诸多特性,如加密、压缩、增量式提交(即只提交差异部分而不是这个文件)、数据库的远程同步(无需传输所有相关的文件)等等。
可视化配置管理:特别方便使用,且功能强大,允许开发人员以一种可视化和直观的方式定义任何数量的数据库切片,支持分阶段、“时间游动”和调试。
所有信息库对象之间的通用化链接:用户自然地用关系表示上下文相关的内容,而与其他开发人员共享这些关联内容对他们的工作来说是至关重要的。StarTeam支持对这种关系的要求,跨所有对象类型(文件、版本、会话和变化请求等)的通用化链接简便易用。
功能集成:为什么开发人员不得不使用两个单独的应用:一个制作变化,另一个跟踪这些变化和外部变化请求之间的关系?StarTeam在一个高效率的用户界面下集成了所有这些功能。
易于使用:屡获殊荣的StarTeam图形用户界面是一个高效率、直观、使用方便的开发环境。
与开发工具集成:StarTeam与所有主流的开发工具集成。同时,StarTeam提供应用接口开发的能力(通过COM和JAVA beans)。
与其它配置管理软件的透明互操作:如果你的开发队伍已经使用了其它版本控制工具,如PVCS和 SourceSafe,StarTeam保护和继承你当前的工作和投资,你可以在一个用户界面下透明地使用三个产品的版本档案(单独或通过StarTeam)。这不是导入/导出功能,这是完全的透明互操作!
技术协同
传统上将开发环境划分为开发、测试、集成和产品,越来越独立于与其它技术功能,如文档、设计、计划、外部资源、管理、帮助平台、经营主管、客户等等。
作为一个例子,让我们考虑WEB应用开发:JAVA开发人员如何能够没有说明文档、设计人员、手册编写人员等的密切协同?
如果不能满足下列关键需求,则这些技术协同将不能发挥作用:
非常容易使用:传统的开发工具需要大量的使用培训。而让管理人员去上课是乎有些困难。
熟悉文件管理界面:用于存取文件夹、文件和任何其它对象的界面应该与Windows资源管理器相似,绝大多数合作者都会使用它。
地理位置独立:管理人员和开发人员都可能分布在不同的地方,或临时变动工作地点,但他们都需要随时访问有关系统。
直接的关联导航:StarTeam的多向链接能给技术协同者带来巨大的好处,因为链接提供了一个容易跟随、直观的导航机制,轻松访问与特定对象关联的文件、变化请求和会话等。
线索化的会话:在开发和维护过程中,StarTeam用线索化的会话的形式保持日常的活动和决定,用户将从中积累大量有价值的知识,这些知识库可以直接被其它技术协同者访问。
程序管理办公室(PMO)
在大型项目中,经常需要一个程序办公室,是管理这个应用的中心。
根据行业专家的研究报告,如果不使用集中的记录数据库,程序办公室将无法开展工作,集中数据库中所有受影响的对象会被跟踪。
StarTeam 2000是StarTeam Professional的一个特别版本,增加了以上功能,提供对依从跟踪系统(Compliance Tracking System)的综合支持。
CTS变成了建立记录数据库的理想工具,通过与StarTeam的集成,将数字化财富、依从工作及其在软件部件上的表示形成了一个闭环。
项目管理功能
开发环境处理文件、变化和资源,项目管理针对任务、工作分配、依赖关系和时间。
尽管有许多项目管理产品,如Microsoft Project,但通常都不能很好地支持开发项目,因为跟踪制作变化的时间、执行它们所用的资源和更新贯穿整个生命周期的项目信息需要很高的开销。
这是很不幸的,因为开发人员确实希望从项目管理功能中获得好处,并且因为诸如应用软件这样关键的财富游离于项目管理框架之外。
要提高团队生产力,必须将项目管理功能与开发环境集成在一起。集成必须能够:
支持任务,任务是一个完全激活的对象,用于关联资源、变化请求 、工作分配和变化。
完全集成任务对象与开发信息库中维护的其它对象。
支持项目模板,因此任务和工作分配能够自动应用到相似的项目中。
开发信息库和MS Project引擎之间透明、双向的数据更新。
StarBase支持上述功能,为你提供了一个完整的应用开发项目管理解决方案。
协同的所有原理是-自底向上。即从低层的服务到高层次的协同功能。
首先,协同提供的基本的服务是产品化的、成熟的版本控制和软件配置管理。因为协同是建立在应用财富之上的,它们必须被安全地管理、审查、保护和版本化。
StarTeam提供的版本控制引擎支持典型的软件开发事务,如文件差异分析和合并、版本标签、建立支持和文件管理等等。
StarTeam的版本控制引擎与Oracle、Symantec、Allaire、Haht Software等其它许多软件公司提供的版本控制工具是一样的。
共同访问信息技术财富
多少年来,开发队伍已经使用版本控制保护其信息技术财富。因此,当在开发小组之间实现协同时,你将发现开发小组会逐渐抛弃传统的版本控制工具。