Friday, July 29, 2011

Change Management In Cognos BI

Change management is a difficult beast in any software environment, but in a multi-server Cognos BI environment it's especially hard. Partly because IBM Cognos doesn't seem to think anyone would have a multi server environment or do change management. But even a small team can quickly end up with many developers working with many different objects at different layers of the application stack (Database, ETL, Metadata modeling, OLAP objects, Reporting) and this can become a nightmare to wrangle. I'll discuss change management within a multi-developer project later, lets keep it at the package level for now. you have a multi server architecture, lets say it looks like this:

Development > (deploys to) Test > UAT/Regression Testing > Production

So how do you coordinate multiple developers working on multiple projects at different stages of release? One way we make this easier is with the concept of packages. Whatever you develop in development can't make it out of development until it is packaged into a release candidate. This packaging could be merely conceptual or you could actually move files around, but a package is generally defined as the set of data, metadata and bi objects for this application. (this includes all database changes, etls, OLAP objects, scripts, etc for that version of the application to function in production) This candidate can then move through the other environments and eventually into production, but only that package. Any failures in the testing stages, for example, would need to be addressed in Dev and promoted as a new package. This also lets me know what's in what environment as I can refer to them as packages (HR v1.2.1 is moving to test, Accounting v1.0 is moving to production, etc). We do some other neat tricks for version management with subversion tagging, documentation and a change control software for Cognos items called Motio, but this is the heart of my change management procedure. Only whole packages can move out of development or into the next stage! Here's what that workflow might look like.


In my next post I'll talk about the numbering scheme I use for packaging. Hold on to your seats!

No comments:

Post a Comment