Archive for March, 2010

Preventing Data Corruption

Tuesday, March 23rd, 2010

Recently, ZDNet published an article on the reasons for application failure. One of the main reasons mentioned in the article is Data Corruption. The article notes that developers have unfettered and uncoordinated access to database values which can cause a ripple effect on incorrect reports, bills and inventory problems. This seems to be a common problem for development teams and DBAs.

dbMaestro TeamWork can help address these issues by applying standard SCM methodology to the structure and data-content of the database. TeamWork can apply locks to schema and values in the database in order to ensure that any modification is performed under the project’s guidelines for change. TeamWork ensures that a developer must first check-out the data in a table before modifying it. This provides a number of advantages:

  1. Ensure that only one developer can make changes to an object at any given time;
  2. Data or schema cannot be changed without adhering to change-control procedures;
  3. A complete audit-trail is maintained (you can track what change was made by which developer, and when);
  4. All changes are kept in a versioned time-line which allows a rollback to any previous (and known good) version of data or schema.

TeamWork can assist development teams and DBAs by preventing the introduction of costly data-corruption into the database development process and facilitating recovery from such situations.

  • Share/Bookmark

Three-way analysis and merge: advantages vs. traditional compare and sync tools

Thursday, March 18th, 2010

Three-way analysis & merge are very different to traditional compare and sync tools, both from a technical point of view, and from a practical point of view.

Using a traditional comparison tool – we compare A to B, performing a two-way-compare (development to testing for instance).  Comparing A to B will result in very shallow results.  For example, “A is different than B”, or “object X is in A and not in B.”   There is no way of knowing if either A or B has changed, or if X was added in A or deleted from B.  As a result, you have to start looking for additional information, go ask the developers, the DBAs, etc.

This is incomplete information, and of course, after you investigate and understand the reason for change, and decide what is the safest thing to do – relying on compare and sync tools will only enable you to either deploy A or deploy B, nothing in-between!

Using dbMaestro TeamWork will get you a deep examination of changes, leveraged by a three-way-analysis:

All changes are analyzed and examined with relevance to previous versions or a reference environment (this is an A vs. B vs. C analysis, hence a three-way-compare).  When deploying changes from development to integration, TeamWork will also analyze the previous revisions of the relevant database objects, and return with very informative and final results.  If A is different than B, you will know if A changed or B changed, because you know what their previous state was.  The result is a perfect understanding of changes that enables TeamWork to recommend the appropriate action.

If an object has changed in development – TeamWork will suggest you deploy it to integration.  However, if another team has updated the integration environment, and it is different to development, TeamWork knows it will cause damage to overwrite integration, and will recommend you ignore the change, or take it back to development.  All of this comes with complete documentation of each change, and the reasons it was introduced.

But the good stuff doesn’t end there – TeamWork will also deal with conflicts: if a change was introduced to both A and B (typical when more than one team develops for the same database), an automatic conflict resolving engine will come into play.  Based on all the analyzed information, TeamWork will suggest combined code, taking all changes into consideration and merging changes from both development and integration into a single piece of code.

The TeamWork three-way-analysis and automatic conflict code resolver is a unique offering for the database world.

  • Share/Bookmark

CMCrossroads article re-tweet

Friday, March 12th, 2010

CMCrossroads has recently re-tweeted about an article we published several months ago. The article is a good starting point with regards to SCM concepts and how these can (and should) be applied to database development methodologies. SCM has been around for a long time and the methodology is solid. It’s time database development got the same boost.

  • Share/Bookmark

Microsoft Visual Studio Team System integration

Monday, March 1st, 2010

We are very pleased to be able to announce the immediate availability of our integration with Microsoft’s Visual Studio Team System (VSTS).  This is a key deliverable for us and one that finally provides VSTS customers with the ability to track database modifications in tandem with application source code changes.  Extending software configuration management (SCM) capabilities to the database is our core focus and being able to provide integration directly into management systems like VSTS is critical to our customers and our long term success.  With this announcement, we are now able to provide direct integration into IBM Rational and Microsoft VSTS and will continue to work to extend this capability to other systems.

 Here quickly are some of the highlights of this integration and the associated benefits:

•   Allows users to correlate VSTS and TeamWork projects, including linking database changes and updates with VSTS activities and saving extended information about database activities within VSTS

•   Provides a single point of management (and audit) for application source and database changes allowing for access to aggregated information about code and database changes within VSTS

•   A single vocabulary to drill down into project tasks and impact analysis (what was changed when feature X was developed or bug Y fixed – from code and database perspectives)

•   A single process to achieve code and database deployment based on Microsoft VSTS definitions (activities and work items).

We look forward to bringing you even more news shortly on other key activities related to integration with and certification of dbMaestro TeamWork.

More information about this can be found by following the link below:

http://www.dbmaestro.com/dbmaestro/610.aspx

  • Share/Bookmark