5 Möglichkeiten, wie Datenbank-Entwickler durch Automatisierung mit Agile Schritt halten können

Vor kurzem haben wir darüber geschrieben, dass sich Datenbank-Entwickler aus den agilen Prozessen ausgeschlossen fühlen. Sie fragen sich wahrscheinlich, weshalb der Prozess für Anwendungs-Entwickler so einfach ist - Scrums, Sprints und Automatisierung – zur Bereitstellung von Updates, werden mit erstaunlichem Tempo umgesetzt.

Natürlich unterscheiden sich die Risikofaktoren in der Anwendungsentwicklung von denen in der Datenbankentwicklung. Den buggy Anwendungscode zu einer früheren Version zu konvertieren ist relativ einfach. Eine Datenbank, die fehlerhafte Skripts enthält können Sie nicht einfach zurücksetzen, da das Risiko eines transaktionsbedingten Datenverlustes zu groß ist.

Ihr Prozess muss daher wesentlich bedachter ablaufen. Sie testen, überprüfen und ändern Ihre Datenbank manuell.

Wie aber können Sie Datenbank- und Anwendungsversionen synchronisieren, wenn Ihre Prozesse nicht mit diesen übereinstimmen und Sie manuell arbeiten müssen?

Automatisierung der Datenbank Entwicklung für mehr Agilität

Um mit den agilen Anwendungsentwicklungsteams Schritt zu halten, die sich auf Ihre Datenbank als Back-End Entwicklungsprozess automatisieren:

Vorbereiten der Entwicklungsumgebung

Jedes Mitglied des Datenbankentwicklungsteam muss Zugriff auf die Projektanforderungen, Ordner, Standards und die Datenbankobjektreferenzen haben und die Versionskontrolle konsistent verwenden. Durch die Freigabe über eine serverbasierte Anwendung können alle Entwickler auf die Projektdetails zugreifen, die sie benötigen, um ihre Arbeit effektiver zu gestalten.

Testcode

Testszenarien zu erstellen ist aufwendig – hierbei fällt 10x mehr Arbeit als wenn man gründlich testet. Dieser Bereich der Entwicklung ist reif für die Automatisierung. Anstatt mühsam Test-Code zu schreiben oder gleichzeitig mehrere Testschritte zu überspringen, ist es effizienter die erforderlichen Tests in Bezug auf die Anwendungsfälle zu beschreiben, die sie abzudecken haben und dann diese mit einer Anwendung als PL / SQL-Paket zu interpretieren. Auf diese Weise verbringen Entwickler mehr Zeit mit ihren Kernaufgaben und die Tests bleiben näher an der wahren Funktion der Apps.

Code überprüfen

"Terry hat eine Prozedur außerhalb eines Pakets. Schon wieder." Jeder ist es leid, Terry ständig daran zu erinnern, dass Prozedur und Funktion in ein Paket gehören. Das ist ein guter Grund, um Code-Reviews durch die Automatisierung der Analyse von PL / SQL, anhand der Regeln des Teams und der empfohlenen Praktiken, zu optimieren. Entwickler, die ihren Code gegenseitig überprüfen, suchen nach unzähligen Fehlerquellen, sodass die Automatisierung des Prozesses und das Speichern von Ergebnissen gute Maßnahmen darstellen, um schneller eine höhere Codequalität zu liefern.

Optimierung der Codeperformance

Das Schreiben von SQL-Queries ist eine Sache; diese wieder zu knacken, um die Performance zu optimieren stellt eine größere Herausforderung dar. Wenn Sie in einem Agile Prozess arbeiten, haben sie nicht viel Zeit für die Optimierung, daher sollten Sie diesen Prozess mit einem Tool automatisieren, das nach Ineffizienzen sucht und optimale SQL-Implementierungen für Sie schreibt. Sie können dann den Ausführungsplan mit der größtmöglichen Performance und die Syntax für Ihre Umgebung auswählen.

Durchführung von Integrationstests

Manuelles Ausführen von projektübergreifenden Code-Reviews, PL / SQL-Regressionstests und Performance-Tests können sicherlich das Risiko reduzieren, jedoch können gleichzeitig neue, durch Menschenhand verursachte Fehler eingeführt werden. Aufgrund der häufigen Code-Updates, für die Agile bekannt ist, ist die Bereitstellung von hochwertigem, leistungsstarkem Code in etwa so, als würde man auf ein bewegtes Ziel schießen. Durch die kontinuierliche Integration mit einer Anwendung wie Jenkins, entfällt der Großteil der Arbeit, ohne das Risiko zu erhöhen.

Neuer Tech Brief: Agile Datenbankentwicklung aktivieren

Wir haben eine technische Kurzfassung über die Agile Datenbankentwicklung mit Toad verfasst, in welcher wir erläutern, wie Sie Ihren Agile Prozess mit der Toad Development Suite für Oracle und Toad Intelligence Central optimieren können. Hierin erhalten Sie Details hinsichtlich der Vereinfachung und der Automatisierung von Datenbankentwicklungsprozessen, um Agile in Ihrer Organisation umzusetzen. Je früher Sie arbeitsintensive, und immer wiederkehrende Aufgaben automatisieren, desto eher kehren Sie und Ihre Kollegen in der Datenbank-Entwicklung dazu zurück, erfolgreich Code zu entwickeln.

Photo credit: Peter Mooney  (CC BY 2.0)

Anonymous