Comments
yourfanat wrote: I am using another tool for Oracle developers - dbForge Studio for Oracle. This IDE has lots of usefull features, among them: oracle designer, code competion and formatter, query builder, debugger, profiler, erxport/import, reports and many others. The latest version supports Oracle 12C. More information here.
Cloud Expo on Google News
SYS-CON.TV
Cloud Expo & Virtualization 2009 East
PLATINUM SPONSORS:
IBM
Smarter Business Solutions Through Dynamic Infrastructure
IBM
Smarter Insights: How the CIO Becomes a Hero Again
Microsoft
Windows Azure
GOLD SPONSORS:
Appsense
Why VDI?
CA
Maximizing the Business Value of Virtualization in Enterprise and Cloud Computing Environments
ExactTarget
Messaging in the Cloud - Email, SMS and Voice
Freedom OSS
Stairway to the Cloud
Sun
Sun's Incubation Platform: Helping Startups Serve the Enterprise
POWER PANELS:
Cloud Computing & Enterprise IT: Cost & Operational Benefits
How and Why is a Flexible IT Infrastructure the Key To the Future?
Click For 2008 West
Event Webcasts
Continuous Integration | @DevOpsSummit @Datical #ContinuousIntegration
Bringing Continuous Integration to the Database

In 2006, Martin Fowler posted his now famous essay on Continuous Integration. Looking back, what seemed revolutionary, radical or just plain crazy is now common, pedestrian and "just what you do." I love it.

Back then, building and releasing software was a real pain. Integration was something you did at the end, after code complete, and we didn't know how long it would take. Some people may recall how we, as an industry, spent a massive amount of time integrating code from one team with another, or even just between developers that sat next to each other. The arguments against it at the time seemed valid and impactful. Now they seem weak and silly.

Fowler proposed Continuous Integration, an idea that was simple, elegant and had far-reaching repercussions. By producing constant, automated, self-testing builds in development, a huge amount of resource overhead typically incurred down the line was eliminated.

Fowler calls out two arguments against Continuous Integration: "It can't work (here)" and "Doing it won't make much difference." Now that we see that Continuous Integration canwork here and that it will make a huge difference, let's make the database a top-tier software citizen and recognize its importance in our software development lifecycle. It is time for the Continuous Integration database.

The database is just as important as the application because it is part of the application. For far too long, we have heard from DBAs about the special import the database has. Or we have seen software developers denigrate the database as a consistent dumping ground. Both sides are wrong. We need continuous Integration to include database changes.

Now, I would argue that the data itself is the most important asset here. After all, the data will live far longer than the application or the database that contains it, as the application morphs from one platform to the next or structured databases are exchanged for semi-structured. But the database is not any more or less important than the application. Separately they are worthless; together they become valuable.

Thus, if our database structure and stored logic depends so much on the application (and vice versa), it is time that we give the database its due as a software asset. We must include DDL in our single source code repository and Continuous Integration. We also must include, alongside the DDL, mechanisms to gracefully upgrade and downgrade database schema to align with the application.

If the database is just as important as the application, then the database infrastructure is also just as important as the application infrastructure. The fact that we can fire up a server in the cloud to host an app but must wait weeks to get a database set up is embarrassing. Unacceptable. Bizarre. Negligent.

Once application code and DDL are linked in the source code repository and a new release is in place that will update any older copy of database schema, it should be simple to quickly provision an independent development and testing environment.

Just as Continuous Integration eliminated the dreaded, "never-ending" integration stage of software development, when we adopt Continuous Integration for the database, we can expect mountains of wasted effort to simply evaporate.

No longer do we have to meet to discuss which version of the database works with which version of the application. After all, every bit of friction between DBAs and application developers is a thinly-veiled integration exercise. And in today's Continuous Integration environment, that's just unnecessary.

Find out how Datical DB can automate database changes in your Continuous Integration process.

About Robert Reeves
Robert Reeves is President and Co-founder of Datical. Previously, as Datical’s Chief Technical Officer, Robert Reeves advocated for customers and provided technical architecture leadership. Prior to co-founding Datical, Robert was a Director at the Austin Technology Incubator. At ATI, he provided real world entrepreneurial expertise to ATI member companies to aid in market validation, product development and fundraising efforts. Robert cofounded Phurnace Software in 2005. He invented and created the flagship product, Phurnace Deliver, which provides middleware infrastructure management to multiple Fortune 500 companies. As Chief Technology Officer, he led technical evangelism efforts, product vision and large account technical sales efforts. After BMC Software acquired Phurnace in 2009, Robert served as Chief Architect and lead worldwide technical evangelism.

Latest Cloud Developer Stories
They say multi-cloud is coming, but organizations are leveraging multiple clouds already. According to a study by 451 Research, only 21% of organizations were using a single cloud. If you've found yourself unprepared for the barrage of cloud services introduced in your organizati...
Adding public cloud resources to an existing application can be a daunting process. The tools that you currently use to manage the software and hardware outside the cloud aren’t always the best tools to efficiently grow into the cloud. All of the major configuration management to...
Organizations planning enterprise data center consolidation and modernization projects are faced with a challenging, costly reality. Requirements to deploy modern, cloud-native applications simultaneously with traditional client/server applications are almost impossible to achiev...
CI/CD is conceptually straightforward, yet often technically intricate to implement since it requires time and opportunities to develop intimate understanding on not only DevOps processes and operations, but likely product integrations with multiple platforms. This session intend...
Let’s face it, embracing new storage technologies, capabilities and upgrading to new hardware often adds complexity and increases costs. In his session at 18th Cloud Expo, Seth Oxenhorn, Vice President of Business Development & Alliances at FalconStor, discussed how a truly heter...
Subscribe to the World's Most Powerful Newsletters
Subscribe to Our Rss Feeds & Get Your SYS-CON News Live!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021



SYS-CON Featured Whitepapers
ADS BY GOOGLE