Upload
uridbmaestro
View
360
Download
0
Tags:
Embed Size (px)
DESCRIPTION
The hot buzzwords today in software development and IT are Agile and DevOps (considered by many as the "Operations side of Agile"). This webinar will discuss the gap existing between software development, IT infrastructure, and database development regarding development (Version Control), Agile (automation of the deployment scripts), and DevOps (generating the correct deploy script based on approved changes). We will cover methods, processes, and tools that can close this gap.
Citation preview
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
CONTROL.DEPLOY.PROTECT.COMPLY
Agile to DevOps
Taking Database ALM to the Next Level
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
About dbMaestrodbMaestro provides the first and only DCM (Database Change Management) solution allowing IT organizations to improve the service provided to the business by adopting best practices methodologies to the Database Tier. Leveraging unique technology that enforces Change Policy and Deployment automation, dbMaestro enables the Development & IT teams to mitigate deployment and development risks and increase team collaboration, thus keep availability of the main services, while increase the updates rate.
About the presenter
Uri Margalit: Director of Products at dbMaestro +20 years experience in enterprise management R&D Director at Precise / VERITAS / Symantec
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
3
Agenda Yesterday, Today & Tomorrow App development vs. DB development Exploring the gap Short demo Benefits
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
4
Yesterday, Today & Tomorrow
http://upload.wikimedia.org/wikipedia/commons/6/69/Human_evolution.svg
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
5
Yesterday – Version Control Version Control becomes standard de-facto Files are Check-Out & Check-In to
reflect the change All changes are documented Ability to compare changes across the history Ability to tag a version crossing different revisions Know Who did What, When and Where
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
6
Yesterday – ALM Application Lifecycle Management is not just:
Version Control Test
Application Lifecycle Management consists of: Requirement Management Version Control Change Management Test Management Release Management
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
7
Today – Agile Adopted quickly by many organization Allow development teams to present working product
every couple of weeks
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
8
Tomorrow – DevOps Adopted quickly by many organization Collaborate development teams and operations to
ensure high quality deployments
“Every developer must think of the end user. Committing a piece of code is far from being done. It needs to work in all kinds of weird use cases. And it’s not only QA’s job to find all the bugs. Good developers want to ensure that the new features are not only coded, but tested and ultimately released to their users. Only then the task is really done.” Matthias Marschall
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
9
Poll – What do you utilize Which Method your organization utilize?
Application Version Control Database Version Control Application Lifecycle Management Agile DevOps
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
10
Methods & Processes Evolution
Version ControlKeep Track on Changes
ALMLink the change to the reason
AgileQuick developing of small requirements
DevOps
High Quality & quick deployment of development products
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
11
App development vs. DB development
http://www.flickr.com/photos/barryskeates/4376033682/sizes/o/in/photostream/
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
12
Poll – Database Version Control What is the main feature you see in a database version
control? Working directly in the Oracle IDE
(required Check-Out to the object) No need to maintain change scripts Generating the deployment scripts Integration with Change Management System (ALM) Merge & Deploy automation
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
13
App Development
Check-Out File
Modify File
Run Applications’
Tests
Check-In File
One enforced process
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
14
Two isolated processes
DB Development – Today
Check-Out Script
Modify Script
Get updated Script from DB
Check-In Script
Compile Scriptin DB
Debug Scriptin DB
Version Control Process Development Process
?
??
?
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
15
Benefits We do NOT Have Visibility into the Lifecycle of Releases Concurrent Database Development Consistent Database Environments Automated Tasks Meeting Release Schedules with Desired Quality Agility in Responding to Scope Changes
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
16
App & DB GAP
http://commons.wikimedia.org/wiki/File:New_York._Williamsburg_Bridge.jpg
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
17
Version Control App vs. DB
App DevelopmentText Based
Knowledge of the content change is not relevant
No relationship between files
Store locally
Changes published only in Check-In
Deploy done by copy & replace previous executable
DB DevelopmentMany types of objects and
syntaxReference data has many
formats
Central resource
No Change Policy Enforcement
Changes affect immediately
Deploy must preserve existing data
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
18
DB Development – The Future
Check-Out Object
Modify Object
Run Applications’
Tests
Check-In Object
One enforced process as exists in App Development
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
19
Poll – Oracle IDE Which Oracle IDE to do you use?
Oracle SQL Developer Oracle PL/SQL Developer TOAD SQL Navigator SQL*Plus
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
20
Database & Version Control Same Version Control Principles:
Object Locking Check out / in for PL/SQL Code, Structure & Data Baseline Tag / Label / Golden Copy Head / Latest Rollback Compare / Merge Deploy / Build
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
21
Version Control Demo
DEMO
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
22
Database & ALM Integration with Change Management System
Know the Reason (Why) for any change Ability to Deploy changes by Tasks Better reports on the work for each Requirement
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
24
Database & Agile More then just Compare & Sync Merge Changes from several environments
Automation (web services, command line) Deploy based on Version Control Repository 3-Way analysis
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
25
Baseline in Deployments
Source vs. Target
Action
= No Action
≠ ?
Source vs. Baseline
Target vs. Baseline
Action
= = No Action
≠ = Override
= ≠ Ignore
≠ ≠ Merge
You do not have all the information
With Baseline the unknown is now known
Simple Compare & Sync 3-way Analysis & Deploy
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
27
DevOps Deployment Many small deployments deployed frequently
Generate on-the-fly deploy scripts 3-Way Analysis – prevents wrong decisions
Application Deployment Copy & Replace Error Recovery – Replace new binary, fixed quickly
Database Deployment Alter objects Error Recovery – New deploy script, long down time
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
28
Benefits - Development Database Change Repository Follow SCM best practices (Check-Out/Check-In) All Changes are documented Manage Who can do What, Where, When & Why
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
29
Benefits - Operation Integrated Deployment Engine Business Level Audit Roles & Responsibilities Enforcement
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
30
Summary Implement ALM, Agile & DevOps methods
in database development Manage Who can do What, Where, When and Why Build Safety net to reduce issues in production
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY
31
Q&A
Q & A