BT
x Your opinion matters! Please fill in the InfoQ Survey about your reading habits!

InfoQ Presentation: Scott Ambler on Database Refactoring

by Deborah Hartmann Preuss on Mar 10, 2007 |
Scott Ambler is the author of many books, including The Object Primer, Agile Model Driven Development, Agile Database Techniques: Effective Strategies for the Agile Software Developer, and Refactoring Databases: Evolutionary Database Design. He is passionate about expanding Agile practices to include a broad variety of development roles: in recent years he has been championing the integration of database roles into the Agile team's patterns of software development. This InfoQ video, Database Refactoring captured Ambler's talk at Agile2006.

The presentation started with warnings, and an invitation from Ambler to remain open minded:
  •  Some of these ideas may not fit well into your existing environment,
  •  Some will challenge your existing notions about software development,
  •  Some will confirm your unvoiced suspicions.
Ambler considers the following roles as candidate participants in the Agile Database approach:
  • the Agile DBA: Anyone who is actively involved with the creation and evolution of the data aspects of one or more applications. Includes activities typically associated with the traditional roles of database programmers, database administrators (DBAs), data testers, data modelers, business analysts, project managers, and deployment engineers.
  • the Enterprise Administrator: includes, but is not limited to, the responsibilities associated with traditional roles of data administrators, network administrators, reuse engineers, and software process specialists.
  • the Application Developer: who works closely with Agile DBAs
Ambler's key topics included: Code Refactoring (as background), Database Refactoring, Why Database Refactoring is Hard, and Transition Windows, which make room for the challenging practice of database refactoring. The presentation went on to outline his process of Database Refactoring and provided examples.

Database refactoring is to data structures what code refactoring is to the codebase: a way to incrementally evolve database structures and procedures, to keep in step with the evolutionary design practice of Agile developers. Note that database refactorings are a subset of schema transformations, but, like code refactorings, they do not add functionality.  And, like code refactoring, they are enabled by a regression test suite, which acts as a safety net, particularly for making quick or risky changes.

Some of the other practices Ambler recommended to enable an Agile Database approach: sandboxes, configuration management,  encapsulated database access.  View the InfoQ Presentation Database Refactoring filmed at Agile2006.

A note on tooling: it goes without saying that automation allows teams to apply these practices more quickly, further increasing agility. Microsoft's Visual Studio for Database Professionals is one of the first toolsets offered to help teams extend Agile practices to the DBA community.  In the future, Agile Teams can also expect to be using the Eclipse platform to implement these database practices: Ambler, a committer on the Eclipse Process Framework, is contributing his Agile Data ideas to the project, though only a few are embedded in the product at present. 

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Can this be downloaded? by Ali Anwar

The presentation stops download after 10-15 min., I'm behine 512 ADSL, I really like the presentation and would love to complete it, is there a way to download it?

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

1 Discuss

Educational Content

General Feedback
Bugs
Advertising
Editorial
InfoQ.com and all content copyright © 2006-2014 C4Media Inc. InfoQ.com hosted at Contegix, the best ISP we've ever worked with.
Privacy policy
BT