XtremeDatabases

XP Day 2004 logo

back to Program

Xtreme databases

Working with databases in an agile team

  • Organisers: PramodSadalage & NickAshley
  • Session duration: 60 min
  • Session type: Interactive Presentation
  • Intended audience: Developers, DBAs, Build Masters, Change Managers, Deployment Managers and Project Managers are encouraged to attend.
  • Presentation language: English
Session description:

The common belief that database design cannot be carried out using agile methodologies such as XP, coupled with the inbuilt 'conservatism' of DBAs, often leads application developers to try to 'cut out' the DBA or reduce their interactions with the database team.

Participants will be shown how the design, development and implementation of an application database could be made agile starting with making the DBA a true member of the team. Pramod & Nick will explain, in detail, how processes and tools can be used to make the database more manageable and open to refactoring, both in development and production environments. The workshop will focus on practical techniques that have been proven to achieve this on small and large-scale projects, techniques that can be taken and applied to your projects, including:

  • How the database could be structured to provide each team member with control of their own data space (similar to individual application instances).
  • How ANT/MAVEN build scripts can be used to make setup and tear down of databases a trivial task.
  • How to adopt a system where changes to the database can take place easily.
  • How to handle the change management process.
  • How migrating to production can be made easy with sequenced script files thus making the process of managing and releasing easy.
Using these techniques your development team can be far more confident about adapting the application during development. The team can feel confident that:

  • Changes and modifications will be properly documented.
  • Changes and modifications are scripted and repeatable.
  • Changes are backed-up by a suite of automated tests to ensure that the application builds.
  • The database is consistent for every application build being deployed.
This level of confidence is then sustained right through to production by leveraging the repeatability of the changes and modifications.

Using the techniques demonstrated in this session the TEAM will be far happier to evolve the data model during the development process in step with the agile approach used to build the rest of the application. The DBA can be a true member of the team and make the TEAM more productive overall.

back to Program