一个组织所采用的软件配置管理(SCM)方法会显著的影响开发软件产品的质量,通过SCM,是指我们的识别、组织、控制和跟踪软件的系统结构、功能、演进和团队协作的过程。简而言之,SCM是软件组件、特性、变更和团队成员的“粘合剂”,本文将会展示我们在ChiliPLoP ’98开始开发的SCM模式语言中的模式。
1. 模式语言的动机
SCM有很多方法,以及结构、规则和处理工作可以恰当的应用于特定场景。这个场景以及前面提到的SCM规则是由组织和体系结构决定的,我们的目标是将SCM结构置入其它已存在结构的场景中,使我们更容易的决定如何为你的场景架设有效的SCM过程。
这些SCM结构可以描述为“模式”:命名的“真知灼见”传达了对反复出现的问题,经过实战证明了的解决方案,每一个模式都平衡了一组相互竞争的关注面的问题(见[Appleton97]),符合组织框架的SCM模式可以按照如下方式分组:
组织模式:
定义组织结构的模式,包含描述团队规模、管理样式及其它的模式。(见[Beedle97]和[OrgPats])
架构模式:
高层次上软件结构的如何定义的模式,这类模式的一些例子已经在先前的PLoP会议记录([Berczuk95]和[Berczuk96])和一些如[POSA]的书中出版。
过程定义(构成)模式(Forming):
这些模式描述了结构,例如项目目录层次,以及那些事情要在项目开始阶段设置。
维护(保留)模式:
这些是影响组织日常工作的SCM模式。
下面的图是这些模式分类

模式组织
过程定义(构成Forming)模式与维护(保留Preserving)模式之间的线有一点模糊,但我们感觉这个区别对于理解开发过程模式语言非常重要,因为每一类模式之间的强关联(例如,如果你设置的目录树会影响文件检入和检出的处理),我们不应该花费太多的时间来查看何种模式会适合,而应该关注每种模式的出处。
我们这里纪录的模式必须在对问题所在环境充分理解的情况下应用,下面的图显示了我们正在工作的模式,以及他们与粗体显示的语言的关系。有些模式之前已经发布([Berczuk97]),有些则是刚产生的状态。
Related posts:

0 Responses
Stay in touch with the conversation, subscribe to the RSS feed for comments on this post.