Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[alf-dev] Notes on ALF/SCM Vocabulary

Hi,
 
I'd like to publish my notes on Notes on ALF/SCM Vocabulary:
 
Objects
 * missing SVN terms for all objects
Workspace
 (Subversion: Working copy)
 - a unique name within the SCM system -> why client workspace should have a unique name within the SCM system?..
 
Element
 (Subversion: ??)
 - an element-type -> is meta-data an element as well?
 
Version
 (Subversion: Revision for a single file ?? or [none])
 
Change-Set
 (Subversion: Revision)
 
Branch/Stream
 (Subversion: Branch)
 - I think that Stream should be defined as a Private Branch and be another different object, more connects to a workspace definition - it's a 'workspace with the unique name within the SCM system' (see Workspace)
 - Owner is not relevant for a Branch, since a Branch exists in the repository and not on the local/client machine that has an owner
 
Configuration
 (Subversion: svn:externals can be a part of the configuration)
 
Baseline -> I think the name should be Tag or Label
 (Subversion: Tag)
 - Owner is not relevant for a Tag, since a Tag exists in the repository and not on the local/client machine that has an owner
 
Component
 (CVS: can be a Module (also aliased module), SVN: [none], can be defined using svn externals, but too limited)
 
Repository
 (Subversion: Repository)
 - i think 'An owner' is not relevant here as well
 - Permissions - can be problematic to define
 
Use Cases
Create a workspace
 - CreateWorkspace method must have a user and password parameters, or should always come after some kind of login method
 
Modify a workspace
I think this use case is irrelevant - if you change load-rules, configuration, or location of the workspace, it is a different workspace, so you should use 'CreateWorkspace' method for it;
unless you mean the "Switch" operation - create a different workspace under the same location - in this case location parameter is irrelevant.
 
Create new versions of an element
 - additional parameters for CreateNewVersions method:
        String   comment,       // optional comment
        String   issueId        // optional issue id from supported Issue Tracker
 
Create a new stream (branch) to support parallel development
 - additional parameter for CreateStream method (i think it should be CreateBranch):
  otherOptions OtherOptions // tool specific options
 
Capture a baseline (snapshot) -> i think CreateBaseline should be CreateTag
 
Promote versions up to a higher-level stream or branch -> I think this use case is a private case of 'Perform merges of versions, from one branch/stream to another'
 
 
Thank you,


regards,
Liya Jan
Professional CM Manager
www.tikalk.com
e-mail: liya@xxxxxxxxxx
mobile: 0544299477

Back to the top