Bill Roper (billroper) wrote,
Bill Roper
billroper

Munging the Entire Codebase

Entertainingly, that's a pretty good description of the project that I've embarked upon at work, having finally succeeded in creating a new ClearCase view to do it in. I'm making a change to a part of the system that hasn't been really touched since 1995 or thereabouts and the reverberations are going to be tremendous.

Historically, we've keyed the accounts in our system using a 32-bit integer, which we subdivide internally into three segments of 4, 2, and 3 digits. I'm converting this to be three alphanumeric fields of arbitrary length, but with the same basic meanings as the three pre-existing segments. This means I need to start from the bottom of the system and work up until everyone agrees on the new key format.

Now it happens that the old keys were sometimes wrapped in another class that also carried additional keys for dimensional instances of the accounts. And after trying a little of this and a little of that, I realized that my life was going to be absolutely miserable unless I simply converted the old 32-bit integer key to a new class all its own which I could then embed inside the existing class.

So that's what I'm doing now, hacking and slashing my way through the code and killing off the hundreds of resulting compilation errors. You change something here, then you run and change something there, then...

Once this is done, I can move on to the next phase of the project where I rearrange the entire account structure, but one step at a time. :)
Tags: musings, work
Subscribe
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 0 comments