How Agile Management Methodology Gels Into Database Administration
Agile is taking over the world. Next stop, DBAs. Learn how database administrators can benefit from the awesomeness of Agile.
Join the DZone community and get the full member experience.Join For Free
The increasing demand for high-quality database solutions has forced DBAs to embrace more innovative practices. Today, both big and small businesses are leveraging new database technologies to boost operations and get the most out of their IT infrastructure. As a database administrator, you have to keep up with the fast pace of developments in the industry in order to deliver the best services to project clients.
Well, there are many ways of delivering better services to your clients in database administration. As with any project, the methodology used in running the overall flow of tasks will determine how well everything turns out. There are many approaches to project management including extreme programming, test-driven development, and feature-driven development. However, it is Agile project management that is revolutionizing database administration and as a DBA, you need to get more insight on this methodology.
Agile Methodology in Detail
Agile project management methodology entails carrying out work in short development cycles called sprints. As a DBA, the focus will be on continuous improvement in the development of the database processes. This is a value-driven approach which allows a database administrator to deliver high-quality work and high-priority services to the database owner throughout the life of the project. It is a shift away from the former error-prone approaches to database administration which have always led to the poor relationship between DBAs and clients.
A recent Harvard Business Review report lists some of the organizations that are reaping big rewards from Agile methodology including National Public Radio, C.H. Robinson, John Deere, Saab, Mission Bell Winery, and GE. It calls Agile a revolutionary innovation which every business must embrace.
A recent HP Study carried out among developers and IT professionals showed a high concurrence rate in terms of the results parameters expected in Agile management. These include enhancing collaboration in teams (54%), increasing software quality (52%), and increasing customer satisfaction (49%).
To fully appreciate the impact of Agile management for your project, consider the following principles generally applied:
- Total customer satisfaction through early and continuous delivery of quality DBA services.
- Embracing change even in hitherto rigid stages like development. The idea is to harness change to give your customer a competitive advantage.
- Delivering quality work through shorter timescales throughout the project.
- Collaboration throughout the project between the client and the DBA team.
- Providing an idyllic environment for the DBA and necessary support.
- Enhanced communication through face-to-face conversation, which is considered the most efficient and effective method.
- Agreeing that a working DBA process is the primary measure of progress.
- Promoting sustainable development throughout the DBA project.
- Attention to good design and technical excellence to promote achievement of the Sprint goal.
- Maximizing on the work not done.
- Regular evaluation by the team to find ways of becoming more effective in service delivery to the client.
- Leveraging self-organizing teams for high-quality architectures, requirements, and database designs.
What Does an Agile DBA Do?
The integration of Agile management into database administration changes many things, especially in terms of what a DBA will be expected to do. An Agile DBA is expected to do the following:
- Full integration into the development team – A closer working relationship with application developers is expected throughout the life of the project. The DBA will be responsible for various data sources. At the core of Agile DBA is communication and in most cases co-location. The DBA ensures there are no database problems and to work effectively, they must have an idea about fundamental development techniques such as mapping objects to RDBs and Unified Modeling Language (UML), among other techniques.
- Working in an iterative and incremental manner with the development team.
- Working with enterprise administrators and enterprise architects.
- Data modeling will change from Sprint-to-Sprint and from release-to-release, meaning this will be a continuous process which an agile DBA cannot avoid.
- Continuous integration and building the database – more work in development and testing databases will be required.
In essence, being an Agile DBA entails a collaborative working style between the developer and the DBA, adoption of new, flexible development tools, the integration of tailored data management techniques which support Agile DBA management, and continuous streamlining and improvement of the DBA process.
Opinions expressed by DZone contributors are their own.