InfoQ

Presentation

Recorded at:
Recorded at

Refactoring Databases: Evolutionary Database Design

Presented by Pramod Sadalage on Mar 06, 2009

Community
Architecture,
Agile
Topics
Configuration Management ,
Database Design
Tags
Database Management ,
Database
Summary
For years the norm for developers was to work in an iterative and incremental manner but for database developers to work in a more serial manner. The predominance of evolutionary development methods make it clear that the two groups need to work in the same manner to be productive as a team. Pramod presents material from "Refactoring Databases " on implementing evolutionary database development.

Bio
Pramod Sadalage is the co-author of the 2007 Jolt Productivity Award winning "Refactoring Databases: Evolutionary Database Development" and author of "Recipes for Continuous Database Integration". Pramod works as a DBA and developer at ThoughtWorks on large custom-developed applications which use agile. He has pioneered the practices and processes of agility in the database.

About the conference
QCon is a conference that is organized by the community, for the community.The result is a high quality conference experience where a tremendous amount of attention and investment has gone into having the best content on the most important topics presented by the leaders in our community. QCon is designed with the technical depth and enterprise focus of interest to technical team leads, architects, and project managers.

Related Sponsor

VersionOne is recognized by Agile practitioners as the leader in Agile project management tools. Companies such as Adobe, BBC, CNN, Dow, HP, IBM, Sony and 3M have turned to VersionOne to help deliver greater value to their customers.

Refactoring Databases by John Owens Posted Mar 8, 2009 12:39 AM
Re: Refactoring Databases by Jim Arnold Posted Mar 23, 2009 11:04 AM
Re: Refactoring Databases by Fadzlan Yahya Posted Mar 24, 2009 7:36 AM
  1. Back to top

    Refactoring Databases

    Mar 8, 2009 12:39 AM by John Owens

    The techniques employed in Refactoring Databases might well achieve all that is implied in this article. However, I think that the approach as outlined is flawed in that it suggests that changes to the corporate data structure can be determined from within a computer system.

    A change is only required within a computer system when the existing system does not meet a business need or a business need changes or a new business need occurs.

    So all such needs are driven from outside the system. If the overall data/information structure of the enterprise does not meet this new need then it must be amended. If that part of the structure supported by the computer system is amended then the system must be amended to make it support the structure.

    So change is always driven by the information needs of the business. Systems must change to support the business. They are not the business, they do not drive change.

  2. Back to top

    Re: Refactoring Databases

    Mar 23, 2009 11:04 AM by Jim Arnold

    John,

    I don't see any conflict here; the users request a feature, the developers need to change the system in order to support the new feature. Refactoring is driven by change, and its goal is to reduce the cost of change.

  3. Back to top

    Re: Refactoring Databases

    Mar 24, 2009 7:36 AM by Fadzlan Yahya

    John,

    Did you watched the presentation? What the presenter proposing are methods to cope with changes that are driven by business needs.

    I understand your concern if you are talking about refactoring per se, without any external events that triggers it, just for the sake of refactoring.

Educational Content

Brian Marick on 4 Challenges and 5 Guiding Values of Agile Software Development

Brian Marick takes us through a quick tour of the most important values and challenges to adopting Agile successfully (they aren't the typical challenges and values we hear in the community).

Are You a Software Architect?

The line between development and architecture is tricky. Does it exist at all? Is an ivory tower actually needed? There's a balance in the middle, but how do you move from developer to architect?

Agile – A Way of Life and Pragmatic Use of Authority

The word 'authority' sometimes produces an allergic response in hard-line agilists. Freedom and authority – both are bad if misused and both are good if used in right spirit for a noble cause.

Getting Started with Grails, Second Edition

"Getting Started with Grails" brings you up to speed on this modern web framework. Companies as varied as LinkedIn, Wired, and Taco Bell are all using Grails. Are you ready to get started as well?

Using ITIL V3 as a Foundation for SOA Governance

Those familiar with only ITIL V2 often scoff at the thought that ITIL could serve as a governance framework for SOA. With ITIL V3, the focus of the framework shifted towards service-orientation.

Adrian Colyer on AspectJ, tc Server and dm Server

SpringSource CTO Adrian Colyer discusses AspectJ, SpringSource's dm Server and tc Server products, OSGi and Scrum.

Adam Wiggins on Heroku

Heroku's Adam Wiggins talks about Rails, Background Jobs, Add-Ons, Ruby, and how Heroku manages to work around Ruby's inefficiencies using Erlang and other languages.

SOA as an Architectural Pattern: Best Practices in Software Architecture

For Grady Booch the foundation of a good architecture is patterns, SOA being just one of many patterns. In this Second Life presentation, Booch attempts to bring more clarity on what architecture is.