This one-day intensive workshop presents an in-depth exploration of agile techniques as applied to databases. It focuses on refactoring and automation using the Flyway tools and libraries. The learning experience is designed to quickly get devops, database- and application developers comfortable with the basics, and equip them with the skills that will make them successful on any agile project.
The goal is to complement developers skills and broaden their understanding of the vertical application integration, including designing database schema for reliability and tolerance for changes.
Objectives
By the end of the training workshop students will have a sophisticated understanding of, and be able to:
- Agile software- and database development methods and techniques
- Include database development in your agile software development process
- Learn to treat databases like the rest of your code: write, test, process, version, share
- Use the Flyway library and command-line tools for agile database development
- Write Flyway migrations and automate their execution
- Best practices for database versioning, schema refactoring and data migration
PREREQUISITES
A basic understanding of relational databases, Java, SQL, and a very high level of the agile application development process in general.
Duration & Format
1 day (6 hours)
Outline
- Introduction to Agile software development
- DevOps techniques in the database domain
- DevOps as merging database and application development skill sets
- Decomposing database changes into distinct migrations
- Introduction to Flyway. Command line tools and libraries
- Creating a migration: step by step introduction
- Migrations are code: incorporating into development, build, and deployment processes
- Introduction to Refactoring
- Refactoring as a tool for reliably evolving DB schema
- Practice creating a Flyway migration for refactoring
- Refactoring versus adding features
- Practice refactoring DB schema by adding columns
- Flyway principles, and operation. Configuration and usage
- Practice DB schema evolution starting from the ground up
- Combining Flyway with version control, and process automation
- Systematic overview of the types of DB refactorings
- Structural, data quality, integrity and architectural refactorings
- Practical aspects and strategies
- Relationship with ORMs and persistence frameworks
- Testing
Maximize your training experience by adding these courses to your curriculum.
Open Enrollment Courses
Open enrollment courses are a great, cost-effective option for organizations that have an immediate need to train a small number of employees.
Customized Training Programs
Customized training programs can be delivered on-site, in our training lab, or online to help organizations enhance the skills of their internal development teams.