Welcome!

SOA & WOA Authors: Adine Deford, Liz McMillan, Pat Romanski, Dana Gardner, Elizabeth White

Related Topics: SOA & WOA, Java, .NET, Linux, Open Source, Cloud Expo

SOA & WOA: Article

Agile Development for the Database

Extend your branch / merge strategy to database changes

All too often, database development is an afterthought in Agile Development.  Developers perfect how best to implement a solution in code, but tend to spend too little time on representing that solution in the Database.  This is unfortunate, given that 65% of your change requests require changes to the application schema, according to independent research conducted by Simon Management Group.  This finding implies that Database changes are every bit as important as the Application Code, and should be treated as tier-one artifacts in your release process.

At Datical, we typically find that development organizations process Database changes in one of two ways:

  • Developers author Database changes, which must then be reviewed and approved by the DBA team, or
  • Developers submit Database change requests to the DBA team, who then author changes.

Either scenario would work fine, as long as one or more of the DBA team could be dedicated to capturing and processing the required Database changes.  But the truth is that most DBA teams are stretched too thin to keep up with the Developers, supporting both "System DBA" work like provisioning or troubleshooting, and the more strategic "Application DBA" work of deploying packages to the appropriate environments or evolving the application's schema.

In either case, Database changes often end up being the bottleneck in your develop-test-deploy process.  It would be easy to blame the DBAs, but remember that they are charged with maintaining the integrity of your Systems of Record and protecting the data which is the lifeblood of the business.  What's needed is a different perspective.

To extend the idea of Extreme Programming: if Agile Development is good, then let's do Agile Development all the time. Limiting Agile Development to one platform or one team is simply unacceptable.  If we are going to get the flexibility we need to deliver compelling solutions to our customers quickly, we need to be Agile all through the software development life-cycle, not simply in Application Development, and that means we need to bring Agile Development to the Database.

Click here to learn more about Agile Development for the Database.

More Stories By Pete Pickerill

Pete Pickerill is Vice President of Products and Co-founder of Datical. Pete is a software industry veteran who has built his career in Austin’s technology sector. Prior to co-founding Datical, he was employee number one at Phurnace Software and helped lead the company to a high profile acquisition by BMC Software, Inc. Pete has spent the majority of his career in successful startups and the companies that acquired them including Loop One (acquired by NeoPost Solutions), WholeSecurity (acquired by Symantec, Inc.) and Phurnace Software.