DevOps must be Database-Driven, welcome to DDDevOps
DevOps is DevOps, but at the same time, DevOps is only DevOps if it’s Database-Driven DevOps (or DDDevOps, if you will).
Contemporary approaches to software application development do of course rely upon access to a database function that can ‘feed’ the codebase with the required data streams that the app itself will need at any single point in time.
The means that ensuring quality and consistency within database code is crucial.
But there’s a problem.
Most organisations already have a huge amount of legacy database code.
The means that developers will experience inconsistencies and find data difficult to find, particularly with multiple developers and DBAs contributing to the code base.
Ensuring consistent code quality is therefore a big challenge for DevOps teams.
The latest version of Redgate’s SQL Prompt aims to address part of this issue.
As well as providing real-time code analysis that spots issues and mistakes as users type, it can also analyse an entire script of legacy of code, whatever size, enabling developers to see a list of all the issues contained within it.
SQL Prompt plugs into SQL Server Management Studio and Visual Studio and enables developers to write, format, refactor and analyse SQL code.
When SQL Prompt v9 launched in November 2017, it introduced a code analysis feature which spots code issues and hidden pitfalls as users type.
It parses the code, as a compiler would, but rather than compile the code, it checks the syntax for compliance with a built-in set of over 90 rules. It then highlights each issue, or ‘code smell’, by underlining the offending line of code with a green squiggle.
Developers can see any issues they’ve introduced and explanations and suggestions to improve their code and fix the errors are provided, along with links to further reading online.
Redgate says that this ensures that all code committed to source control complies with a common set of coding standards and practices, and prevents issues from creeping into the build that might, now or eventually, cause performance, maintenance or security problems.
According to Redgate, “The latest update to SQL Prompt also allows users to analyze an entire script of legacy code and see a list of all the issues contained within it. If users double-click on an issue, they’ll see that line highlighted in the code and can view more details. Code issues can also be grouped by type and exported to a CSV file which can be shared across a team or attached to a ticket in bug-tracking or task management software.”
The company says that this makes it easy to learn about the health of certain sections of the database code, or assign clean-up tasks, with each developer on a team assigned a set of issue types.
The issue of technical debt is obviously a very real issue… for mission critical deployments it seems likely that we should move towards more use of tools to guide us towards a team’s defined coding standards.