3

I am currently working on company which has several products with the same release cycle.

The problem that i got is i will need to create release file which include all files released and what the change for. And there are number of occasions where clients pullback from the change close to the release date.

The difficulty that i got is every time i create the release file, i have to got through all changed file and determine what the change is for and rollback the change if the client decide to pullback.

Do anyone know better solutions for change management that i can offer to management?

Thank you very much

Ps. I try to look at scrum already but i am not sure that it able to address my difficulty.

user85996
  • 133
  • 1
  • 5
  • Scrum has little to do with change management per se. Try to be more specific, edit your question and tell us what tools you use for versioning and what kinds of files that go with your release. – Spoike Apr 02 '09 at 05:51
  • Are you using CVS, SVN, or some similar tool? – tpdi Apr 02 '09 at 04:06

3 Answers3

4

Version Control

Having a version control system is good, bug using it effectively is better. There are several ways to branch and merge effectively, two that might work for you are "per-feature" and "per-client".

Per Feature

In this setup, you create a copy of the main code (the trunk) for each new feature that you implement. Once the feature is complete, merge it back into the trunk. If you update the trunk before the feature is complete, or you complete a different feature, it is possible to merge those changes from the trunk into all of the branches.

Per Client

Same as per-feature, but each client gets their own branch, so that a feature rolled back for one is not removed from another. To combine the two, you might structure your repository like this:

Repos
+---Core
|   +---branches
|   +---tags
|   \---trunk
+---Client1
|   +---branches
|   +---tags
|   \---trunk
\---Client2
    +---branches
    +---tags
    \---trunk

Project Managemet

Now, to address your actual question. I can't really say much about this from experience, but I am planning to add Trac to my project soon, because it looks simple to use, and it's free. You can see from their site how Trac's developers use their own application to set milestones and organize issues. If you want to look into more possibilities, then Wikipedia has a few lists.

Community
  • 1
  • 1
Nate Parsons
  • 14,431
  • 13
  • 51
  • 67
0

There is a solution to your problem using ]project-open[, but it's not an easy one:

  • ]po[ includes a ticket tracker that you can use for tracking your customer's change requests.
  • After implementing a change request, you need to include the #ticket_id in your commit comments, so that ]po[ can associate commits with change tickets. You need to have the ]po[ package intranet-cvs-integration installed and configured correctly for this purpose. The package name includes "CVS", but it can also integrates with SVN and GIT.
  • Finally, you have to create a script that applies the commits selectively to your code baseline, depending on the status of each change ticket.

This way you can automatically produce your release files, depending on the status of your change tickets.

fraber
  • 1,204
  • 1
  • 8
  • 21
0

You're probably best using a source code repository such as Git, Subversion, Mercurial etc.

Which one to use depends heavily on your needs and platform, however you're probably new to SCM tools so I'd recomment subversion with TortoisSVN.

James Davies
  • 9,602
  • 5
  • 38
  • 42
  • hi, we already use source control but source control is per item change. What i looks for is maybe something similar to source control but for change (business requirement, which client, what file modified). – user85996 Apr 02 '09 at 05:17