利用软件测试开源工具Rational ClearQuest 进行变更管理 软件测试工具
关键字:Rational 管理技术
ClearQuest MultiSite 主控权的功能就是确保一个 ClearQuest 记录只能够同一时间在一个数据库镜像站点更新。一个登陆到站点的用户如果没有记录的主控权,只能查看记录信息,而不能够对它进行修改。要想进行记录更新,用户必须登陆到拥有主控权的站点。
考虑这样一个场景,客户在伦敦,支持代表在班加罗尔,开发人员在罗利,测试人员在北京。如果这个变更请求的确认发生在北京,这也是一个数据库镜像的地点,这个记录所有者可能要从一个站点更换到另一个站点,比如这个记录的状况从活动变更到解决以及修正需要确认的情况。(注意:用户可以登陆到任何一个镜像中来读取信息,但是必须登陆到一个拥有主控权的镜像才能变更这个记录。)
乐观锁定
当两个人要更新同一个记录时,ClearQuest 就可以利用乐观锁定来处理这种情况。第一个保存记录更新的人——并不是第一个为了更新而打开记录的人——会成功。其它的变更就不会被保存。因此,第二个试图更新记录的人将需要重新得到这个记录并重新进行他或者她的更新。
我可以推荐一个减少这些麻烦的技术,因为 IBM Rational 内部也使用它,就是利用一个叫作 Record_Script_Alias 的 ClearQuest scripted Action 类型创建一个记录。这个 Action 在一个远程的或者同时正在进行更新的记录上执行。它可以创建一个新的记录并且在这个带有 Action 记录 ID 的新记录上更新一个新的字段。ClearQuest 然后创建一个从这个新的记录 ID 到这个 Action 记录的 反向引用(back-reference),不管是否设置了主控权。这两个记录都是对方的相关扩展——直接在当前站点,接下来就镜像到其他站点。这个反向引用确保相连接的记录能够合适地更新。也就是说,当您创建一个记录并更新涉及的字段时,这个反向引用将会更新相关的记录,不管主控权还是乐观锁的争用。
这里还有一个更进一步的提示:当创建子记录作为创建父记录的副产品时,使用您创建的父记录的 Commit Event 来创建这个子记录。
所有权(Ownership)的角色
由于镜像的局限性,对于 ClearQuest 来说不能实时地确定记录是否在更多的站点被创建或者变更。因此,如果记录在多个站点被创建并反向引用,对于用户来说是不可能在事前知道这些情况的。您可以通过分配所有权和确定最有可能执行 Action 的人(或者唯一的人员)来进行限制。这样就缩减了与记录相关的冗余的过程,更有效地创建一个虚拟调度机制。
这个方法同时还简化了主控权和乐观锁争用问题的解决。就是说,您即可以象上面所描述的一样来创建一个记录然后用反向引用连接记录,也可以用所有者指派的隐含更新来构建记录。您不必同时使用两种方法。
基于角色的用户体验
为了设计、实现和管理变更管理系统,ClearQuest 产品支持基于角色的模型 。
文章来源于领测软件测试网 https://www.ltesting.net/