SlideShare a Scribd company logo
DevOps Best Practice for
Oracle SOA and BPM
Rubicon Red
The Facts
Founded in 2009, Rubicon Red’s mission has been to lead customers to
success on their Oracle middleware journey.
This is the origin of our name; helping customers cross the “Rubicon” in
their successful adoption of the Oracle Middleware “Red” stack.
 Largest dedicated Fusion Middleware consulting and managed
support services business in Australia.
 Offices in Brisbane, Sydney, Melbourne, Adelaide and Redwood
Shores California
 Offshore development and support centre in Hyderabad India.
 One of the founding members of the Red Expert Alliance
https://www.redexpertalliance.com
Recognised global leader in Oracle Fusion Middleware
Thought Leadership. Innovation. Unrivalled Expertise.
Oracle Customer Advisory Boards
• Oracle SOA
• Oracle BPM
• Oracle WebLogic
Rubicon Red
Recognised global leader in Oracle Fusion Middleware
Thought Leadership. Innovation. Unrivalled Expertise.
Oracle A/NZ Specialised
Partner of the Year 2014
Middleware
2nd
year
I N N O V A T I O N
A W A R D 2 0 1 4
I N N O V A T I O N
A W A R D 2 0 1 1
I N N O V A T I O N
A W A R D 2 0 1 0
I N N O V A T I O N
A W A R D F I N A L I S T
2 0 1 5
x3
x3
The value organizations deliver through products & services is
increasingly defined by the software that underpins them
Software is a Competitive Advantage
Organizations are in a Digital Race
Solution not delivered by a single system
Rather a patch work of applications, each one performing a particular
business function
5
Oracle Middleware provides the platform to combine these business
apps, into an integrated solution
Majority of IT projects fail to
deliver on-time and on-budget.
Software project waste 40%+ of resources
Gene Kim - Why Everyone Needs DevOps Now: 15 Year Study Of High Performing Technology Orgs
The Human Cost…
The Impact of Technology Failures
High Profile Technology Failures Increasingly Common
NYSE Says Wednesday
Outage Caused by
Software Update
July 10th 2015
United Airlines blames
grounding of hundreds of
flights on computer glitch
July 8th 2015
U.S. visa system will be
offline until at least next
week
June 17th 2015
• On average - a single major technology failure can cost a business as much as $US 10.8 million.
• 45% of organisations experience a loss of brand equity or market share following a major
technology failure
Techradar – Dec 2014
DevOps
A better way?
200x
*over 3 years
Faster lead times
than their peers
60xFewer failures
50%Higher market
cap growth*
30xDeploy code
more frequently
• Featured on 800 CEO Reads Top 25:
What Corporate America Is Reading
June, 2013
• Novel on how DevOps can be used to
• Address many of the process issues that
plague IT Delivery / Operations
• Align Development & Operations
• Align IT with the Business
• Help the Business Win
“3 Ways” of DevOps
• The First Way: Systems Thinking emphasizes the performance of the entire
system as opposed to the performance of a specific silo of work or department
• The Second Way is about creating and amplifying the right to left feedback loops
• The Third Way is about creating a culture that fosters both continual
experimentation, taking risks and learning from failure; and understanding the
repetition and practice is the prerequisite to mastery.
Work in Small Batches
Getting Feedback Fast – FAIL FAST
• Faster Feedback
• Validate assumptions
• Solve Problems Quickly
• Easier to find & fix defects
• Reduce Overhead
• Organizations get better at things
they do frequently
• Reduce Risk
13
Release small chunks of
functionality frequently
Get regular validation on
the production readiness
of your application
Incorporate
feedback rapidly.
Fail fast and learn
fast
Breaking the Bottlenecks In The Flow
1. Environment Creation
2. Code Deployment
3. Test setup and run
4. Overly tight architecture
5. Development
6. Product Management
Leading A DevOps Transformation: Lessons Learned – Gene Kim
Takes weeks/months to provision and
configure Oracle Middleware Environments
Manual build & deployment of code
Painful, Resource Intensive and Stressful stage of Oracle Middleware Implementations
• Manual deployments
• SLOW & ERROR PRONE
• Inconsistent across environments
• Neither repeatable nor reliable
• Require extensive documentation (often
outdated)
• Which leads to
• Long delivery times
• Ongoing Project delays
• Significant risk of Major Production Issues with
associated financial and brand damage
“What do you mean, ‘it’s not
working in production?’
I TESTED IT BEFORE WE
RELEASED!”
Delaying integration means…
Invalid assumptions discovered late in the process!
• Integration designs are full of “un-
identified” assumptions
• Need to integrate with actual systems
to validate
• Correcting issues with core design
patterns can result in significant time
delays
• Frequent and early releases into SIT
critical for integration projects.
17
Systems implemented in isolation
make assumptions about other
systems with which they will
integrate.
Minimise differences between environments
Version Control all Middleware Configuration
18
Issues caused by Configuration Drift are often the most difficult to diagnose
and result in many wasted weeks/months of man effort to resolve.
Configuration Drift !
Test Teams standby Idle ….
Waiting for deployment errors to be fixed
 Test Team Idle whilst
 Deployment is being performed
 Performing smoke tests and
resolving deployment issues
 Turning around blocking defects
 etc.
• Lack of Testing
19
“How long would it take your organization
to deploy a change that involved just one
single line of code?”
Mary and Tom Poppendieck, Implementing Lean Software Development
“The test team has approx. 18% down-time,
waiting for deployment issues to be resolved,
every 8 days of delay is costing me 1 FTE”
Programme Manager - Major Bank
Defects discovered late in delivery
Cost of defect removal increases exponentially as the development lifecycle progresses.
The later defects are found and fixed, the greater the risk to the business they pose.
Outage In Production….
Waiting for deployment errors to be fixed
 60% of Production failures
caused by
 human error or
 lack of automation
 80% of all IT services outages
caused by unauthorized
configuration changes
 99% of DR failures caused by
Config Drift
• Lack of Testing
21
“Configuration drift and unauthorized
configuration changes account for nearly
80% of all IT service outages”
source: Gartner Research
Technical Debt
Every time we take a “short cut” we create
technical debt:
• Manually configure an environment
• Create code without automated tests
• Manually do deployment
Technical debt is what you feel the next time you want
to make a change
Gene Kim – Author The Phoenix Project
DevOps; The First Way…
Accelerate Flow to Production
 Work in Small Batches
 Create Safety / Flow Through
Automation
 Automated Environments, means
identical DEV, TST, PRD
 Continuous Integration / Testing
 Automated Regression Testing
 Continuous Delivery / Deployment
 Blue / Green Deployment
 Define a Reference Architecture
 Should “Target” Flow, i.e. reduce
Technical Debt
• Lack of Testing
23
“The process for releasing/deploying
software MUST be repeatable and reliable”
Continuous Delivery is a Key Practice of DevOps
24
Agile Development
Continuous Integration
Continuous Delivery
Continuous Deployment
DevOps
Automating Environment Creation
Lessons Learned on our Journey of Discovery
A declarative based
solution for the
install, configuration
and continuous
deployment of Oracle
Fusion Middleware
and Applications.
• Still need to manually build
first environment to create
“Gold” Image.
• Significant amount of manual
work to update clone with
environment specific details.
• Any changes to “gold”
environment requires new
gold image to be created.
Cloning / Gold Images
100% Automated
Rollout of Oracle FusionNo way to propagate changes to previously created environments.
• Significant Investment to
implement and maintain
• Scripts get “big” very quickly,
complex to maintain.
• Brittle, tied to a particular
topology/configuration.
• Need re-write /re-factor each
time Oracle make a new
release.
WLST
Scripting
Software Defined
Environments
Automating Oracle Middleware Platform Lifecycle
Software Defined Environments
Fully automated
provisioning of Oracle
Middleware
Environments in
minutes, at the push
of a button
Platform Provisioning
Fully automated
ongoing patching and
configuration
management of your
Oracle Middleware
environments.
Lifecycle Management
Establish a standard
process for delivering
Oracle Middleware
environments
on-premise and
on-cloud.
Enables Hybrid Cloud
Delivering Platform as a Service
Drives Strong Governance & Consistency
• Activate push button automation of
 Environment provisioning / tear
down
 Configuration updates
 Continuous Integration
• Implement governance and version
control for Platform Configuration
• Define Integration Reference
Architecture
• Standardise on single integration technology stack for
on-premise that can in future move to the cloud
• Define & implement consistent FMW blueprint for all
environments.
Software Defined Environments
Drive Strong Governance & Consistency
29
Use a consistent
Platform Blueprint
across ALL
environments.
PRODCI PRE-PRODSIT
Environments become more production-like
Version Control and Promote Configuration Changes
DEV
Issues caused by Configuration Drift are often the most difficult to diagnose
and result in many wasted weeks/months of man effort to resolve.
Platform Blueprints
• Define standard topology
• Ensure consistency across
all environments
• EDG Templates provided
out of the box
Platform Models
• Map Blueprint to Specific
Environment
• Defines environment
specific details
Blueprints & Models version
controlled
• Control promotion to new
environments
• Easy to rollback to previous
environment
Fully automated provision
• Provision new
environments in minutes
Demo: Install & Configure
Automating the Path to Production
SOA & BPM Environments
Path to Production
Develop &
Test Code
Automated
Build
CI
Deploy & Test
SIT
Deploy & Test
UAT
Deploy & Test
CAPACITY
Deploy & Test
PRE-PROD
Deploy & Test
PROD
Deploy & Test
• Dev Environment
• Developers build, fix & unit test code
prior to committing
• CI Environment
• Automated Build & Deployment of Code
• Automated Tests
• Non-Production Environments
• Automated Deployment
• Automated Tests
• Long running / manual tests come last
• PROD
Automating the Software Delivery Pipeline
33
“How long would it take your organization to deploy a change that involved just one single line of code?”
Mary and Tom Poppendieck, Implementing Lean Software Development
The set of processes, procedures and tools used to promote code from development into production.
Orchestrating the Delivery Pipeline
Leverage CI Tools such as Jenkins, Hudson, Bamboo
Orchestrates Delivery Pipeline
• Pipeline consists of various jobs
• Build, Deploy, Test, etc
• Split out by phase / environment
• Dev, CI, SIT, UAT, etc
For Example
• DEV Pipeline
• Triggered whenever code change committed
• CI Pipeline
• Scheduled Nightly
• Non-Prod Pipelines
• Triggered Manually – when business decides.
34
Build Automation
Build Binaries Once… Deploy to Multiple Environments
Keep environment specific
configurations OUT of the build
This includes environment specific SCA Configuration Plans, OSB Customization Files
Environment Delivery Pipeline
For Non-Production Environments
Re-Provision
Middleware
Platform
Configure
Release
Configure
Middleware
Platform
Deploy Release
Smoke Test
Environment
Specific Tests
• Re-Provision Middleware Platform
• Prevents Configuration Drift
• Configure Release
• Update environment specific config, e.g.
Web Service Endpoint
• Configure Middleware Platform
• Resources, e.g. Data Sources, JMS
• Create & Configure Adapters
• Perform Environment Specific Tests
• Longer running tests
• Manual Test Performed as late in the
processes as reasonable
36
Application Promotion
Minimise differences between environments
37
Use a consistent Platform
Blueprint across ALL
environments.
Re-Provision Non-Prod
Platforms to eliminate
configuration drift.
PRODCI PRE-PROD
CAPACITY
UAT
SIT
Environments become more production-like
Increasing Confidence in build’s production readiness
DEV
Issues caused by Configuration Drift are often the most difficult to diagnose
and result in many wasted weeks/months of man effort to resolve.
Automated Deployment
Drives Strong Governance & Consistency
Automated Builds
• Compilation and packaging of code
centrally in an automated fashion
Application Blueprints
• Defines which artefacts, resources
make up a release package
• Build once, deploy to multiple
environments.
Application Models
• Captures environment specific
details.
Fully Automated Build and Deployment
Quickly Deploy and Manage Releases across Environments
Build Quality In
“Cease dependence on
mass inspection to
achieve quality. Improve
the process and build
quality into the product in
the first place”
39
W. Edwards Deming
Different Kinds of Testing
• Treat test code as production code
• Includes Test Data
• Not all tests call external systems
• Make use of Mock Services
• Run smoke tests first
• Perform short running tests before
long running tests
• Perform Manual Testing after
Automated Tests
• Continually maintain your tests
40
Functional Acceptance
Tests
Journey Tests
Showcases
Usability Testing
Unit tests
Integration tests
System tests
Non-Functional
Acceptance Tests
Performance, scaling, …
Automated
Automated Manual / Automated
Technology Facing
Business Facing
Supportprogramming
CritiqueProject
Diagram invented by Brian Marick
Manual
Design Code to Simplify Testing …
Use a layered reference architecture
• BPM Projects
• Mock Service Layers
• Use Automated Testing
• SOA Project
• Same Approach
• Mock IVS Layer
Service layering, use of Mock Services & Automated Testing
Increase productivity and improves code quality.
41
Blue / Green Deployments
• Allows time to validate new
release is behaving as
expected before go-live
• Zero down-time for go-live.
• Makes rollback very simple
Blue Environment
Release N
Green Environment
Release N+1
Router
Continuous Deliver Tool Chain For…
Oracle SOA Suite and Oracle BPM Suite
43
Pipeline
Orchestration
Source Code
Management
OSB, SCA Build
Automation
Software Repository
Oracle Middleware
Platform
Provisioning
Configure Oracle
Middleware
Platform
Configure & Deploy
OSB, SOA, BPM
Artefacts
Automated Testing
Nexus
Benefits of DevOps
Reduce Risk, Decrease Costs, Speed Up Time to Market
Reduce Risk
.
Reduce risk of projects
delays, provide better
visibility.
Significantly reduce
risk of defects in
production.
Decrease Cost
.
Reduce waste and
increase developer
and operational
efficiency.
44
Provide the business with a strategic advantage in its ability to be more
responsive in delivering new solutions faster, cheaper and more often.
Speed Up Time
to Market
Increase agility of
development and test
teams.
Shorten the
development lifecycle.
AMIS 25: DevOps Best Practice for Oracle SOA and BPM

More Related Content

AMIS 25: DevOps Best Practice for Oracle SOA and BPM

  • 1. DevOps Best Practice for Oracle SOA and BPM
  • 2. Rubicon Red The Facts Founded in 2009, Rubicon Red’s mission has been to lead customers to success on their Oracle middleware journey. This is the origin of our name; helping customers cross the “Rubicon” in their successful adoption of the Oracle Middleware “Red” stack.  Largest dedicated Fusion Middleware consulting and managed support services business in Australia.  Offices in Brisbane, Sydney, Melbourne, Adelaide and Redwood Shores California  Offshore development and support centre in Hyderabad India.  One of the founding members of the Red Expert Alliance https://www.redexpertalliance.com Recognised global leader in Oracle Fusion Middleware Thought Leadership. Innovation. Unrivalled Expertise. Oracle Customer Advisory Boards • Oracle SOA • Oracle BPM • Oracle WebLogic
  • 3. Rubicon Red Recognised global leader in Oracle Fusion Middleware Thought Leadership. Innovation. Unrivalled Expertise. Oracle A/NZ Specialised Partner of the Year 2014 Middleware 2nd year I N N O V A T I O N A W A R D 2 0 1 4 I N N O V A T I O N A W A R D 2 0 1 1 I N N O V A T I O N A W A R D 2 0 1 0 I N N O V A T I O N A W A R D F I N A L I S T 2 0 1 5 x3 x3
  • 4. The value organizations deliver through products & services is increasingly defined by the software that underpins them Software is a Competitive Advantage Organizations are in a Digital Race
  • 5. Solution not delivered by a single system Rather a patch work of applications, each one performing a particular business function 5 Oracle Middleware provides the platform to combine these business apps, into an integrated solution
  • 6. Majority of IT projects fail to deliver on-time and on-budget. Software project waste 40%+ of resources
  • 7. Gene Kim - Why Everyone Needs DevOps Now: 15 Year Study Of High Performing Technology Orgs The Human Cost…
  • 8. The Impact of Technology Failures High Profile Technology Failures Increasingly Common NYSE Says Wednesday Outage Caused by Software Update July 10th 2015 United Airlines blames grounding of hundreds of flights on computer glitch July 8th 2015 U.S. visa system will be offline until at least next week June 17th 2015 • On average - a single major technology failure can cost a business as much as $US 10.8 million. • 45% of organisations experience a loss of brand equity or market share following a major technology failure Techradar – Dec 2014
  • 10. 200x *over 3 years Faster lead times than their peers 60xFewer failures 50%Higher market cap growth* 30xDeploy code more frequently
  • 11. • Featured on 800 CEO Reads Top 25: What Corporate America Is Reading June, 2013 • Novel on how DevOps can be used to • Address many of the process issues that plague IT Delivery / Operations • Align Development & Operations • Align IT with the Business • Help the Business Win
  • 12. “3 Ways” of DevOps • The First Way: Systems Thinking emphasizes the performance of the entire system as opposed to the performance of a specific silo of work or department • The Second Way is about creating and amplifying the right to left feedback loops • The Third Way is about creating a culture that fosters both continual experimentation, taking risks and learning from failure; and understanding the repetition and practice is the prerequisite to mastery.
  • 13. Work in Small Batches Getting Feedback Fast – FAIL FAST • Faster Feedback • Validate assumptions • Solve Problems Quickly • Easier to find & fix defects • Reduce Overhead • Organizations get better at things they do frequently • Reduce Risk 13 Release small chunks of functionality frequently Get regular validation on the production readiness of your application Incorporate feedback rapidly. Fail fast and learn fast
  • 14. Breaking the Bottlenecks In The Flow 1. Environment Creation 2. Code Deployment 3. Test setup and run 4. Overly tight architecture 5. Development 6. Product Management Leading A DevOps Transformation: Lessons Learned – Gene Kim
  • 15. Takes weeks/months to provision and configure Oracle Middleware Environments
  • 16. Manual build & deployment of code Painful, Resource Intensive and Stressful stage of Oracle Middleware Implementations • Manual deployments • SLOW & ERROR PRONE • Inconsistent across environments • Neither repeatable nor reliable • Require extensive documentation (often outdated) • Which leads to • Long delivery times • Ongoing Project delays • Significant risk of Major Production Issues with associated financial and brand damage “What do you mean, ‘it’s not working in production?’ I TESTED IT BEFORE WE RELEASED!”
  • 17. Delaying integration means… Invalid assumptions discovered late in the process! • Integration designs are full of “un- identified” assumptions • Need to integrate with actual systems to validate • Correcting issues with core design patterns can result in significant time delays • Frequent and early releases into SIT critical for integration projects. 17 Systems implemented in isolation make assumptions about other systems with which they will integrate.
  • 18. Minimise differences between environments Version Control all Middleware Configuration 18 Issues caused by Configuration Drift are often the most difficult to diagnose and result in many wasted weeks/months of man effort to resolve. Configuration Drift !
  • 19. Test Teams standby Idle …. Waiting for deployment errors to be fixed  Test Team Idle whilst  Deployment is being performed  Performing smoke tests and resolving deployment issues  Turning around blocking defects  etc. • Lack of Testing 19 “How long would it take your organization to deploy a change that involved just one single line of code?” Mary and Tom Poppendieck, Implementing Lean Software Development “The test team has approx. 18% down-time, waiting for deployment issues to be resolved, every 8 days of delay is costing me 1 FTE” Programme Manager - Major Bank
  • 20. Defects discovered late in delivery Cost of defect removal increases exponentially as the development lifecycle progresses. The later defects are found and fixed, the greater the risk to the business they pose.
  • 21. Outage In Production…. Waiting for deployment errors to be fixed  60% of Production failures caused by  human error or  lack of automation  80% of all IT services outages caused by unauthorized configuration changes  99% of DR failures caused by Config Drift • Lack of Testing 21 “Configuration drift and unauthorized configuration changes account for nearly 80% of all IT service outages” source: Gartner Research
  • 22. Technical Debt Every time we take a “short cut” we create technical debt: • Manually configure an environment • Create code without automated tests • Manually do deployment Technical debt is what you feel the next time you want to make a change Gene Kim – Author The Phoenix Project
  • 23. DevOps; The First Way… Accelerate Flow to Production  Work in Small Batches  Create Safety / Flow Through Automation  Automated Environments, means identical DEV, TST, PRD  Continuous Integration / Testing  Automated Regression Testing  Continuous Delivery / Deployment  Blue / Green Deployment  Define a Reference Architecture  Should “Target” Flow, i.e. reduce Technical Debt • Lack of Testing 23 “The process for releasing/deploying software MUST be repeatable and reliable”
  • 24. Continuous Delivery is a Key Practice of DevOps 24 Agile Development Continuous Integration Continuous Delivery Continuous Deployment DevOps
  • 26. Lessons Learned on our Journey of Discovery A declarative based solution for the install, configuration and continuous deployment of Oracle Fusion Middleware and Applications. • Still need to manually build first environment to create “Gold” Image. • Significant amount of manual work to update clone with environment specific details. • Any changes to “gold” environment requires new gold image to be created. Cloning / Gold Images 100% Automated Rollout of Oracle FusionNo way to propagate changes to previously created environments. • Significant Investment to implement and maintain • Scripts get “big” very quickly, complex to maintain. • Brittle, tied to a particular topology/configuration. • Need re-write /re-factor each time Oracle make a new release. WLST Scripting Software Defined Environments
  • 27. Automating Oracle Middleware Platform Lifecycle Software Defined Environments Fully automated provisioning of Oracle Middleware Environments in minutes, at the push of a button Platform Provisioning Fully automated ongoing patching and configuration management of your Oracle Middleware environments. Lifecycle Management Establish a standard process for delivering Oracle Middleware environments on-premise and on-cloud. Enables Hybrid Cloud
  • 28. Delivering Platform as a Service Drives Strong Governance & Consistency • Activate push button automation of  Environment provisioning / tear down  Configuration updates  Continuous Integration • Implement governance and version control for Platform Configuration • Define Integration Reference Architecture • Standardise on single integration technology stack for on-premise that can in future move to the cloud • Define & implement consistent FMW blueprint for all environments.
  • 29. Software Defined Environments Drive Strong Governance & Consistency 29 Use a consistent Platform Blueprint across ALL environments. PRODCI PRE-PRODSIT Environments become more production-like Version Control and Promote Configuration Changes DEV Issues caused by Configuration Drift are often the most difficult to diagnose and result in many wasted weeks/months of man effort to resolve. Platform Blueprints • Define standard topology • Ensure consistency across all environments • EDG Templates provided out of the box Platform Models • Map Blueprint to Specific Environment • Defines environment specific details Blueprints & Models version controlled • Control promotion to new environments • Easy to rollback to previous environment Fully automated provision • Provision new environments in minutes
  • 30. Demo: Install & Configure
  • 31. Automating the Path to Production
  • 32. SOA & BPM Environments Path to Production Develop & Test Code Automated Build CI Deploy & Test SIT Deploy & Test UAT Deploy & Test CAPACITY Deploy & Test PRE-PROD Deploy & Test PROD Deploy & Test • Dev Environment • Developers build, fix & unit test code prior to committing • CI Environment • Automated Build & Deployment of Code • Automated Tests • Non-Production Environments • Automated Deployment • Automated Tests • Long running / manual tests come last • PROD
  • 33. Automating the Software Delivery Pipeline 33 “How long would it take your organization to deploy a change that involved just one single line of code?” Mary and Tom Poppendieck, Implementing Lean Software Development The set of processes, procedures and tools used to promote code from development into production.
  • 34. Orchestrating the Delivery Pipeline Leverage CI Tools such as Jenkins, Hudson, Bamboo Orchestrates Delivery Pipeline • Pipeline consists of various jobs • Build, Deploy, Test, etc • Split out by phase / environment • Dev, CI, SIT, UAT, etc For Example • DEV Pipeline • Triggered whenever code change committed • CI Pipeline • Scheduled Nightly • Non-Prod Pipelines • Triggered Manually – when business decides. 34
  • 35. Build Automation Build Binaries Once… Deploy to Multiple Environments Keep environment specific configurations OUT of the build This includes environment specific SCA Configuration Plans, OSB Customization Files
  • 36. Environment Delivery Pipeline For Non-Production Environments Re-Provision Middleware Platform Configure Release Configure Middleware Platform Deploy Release Smoke Test Environment Specific Tests • Re-Provision Middleware Platform • Prevents Configuration Drift • Configure Release • Update environment specific config, e.g. Web Service Endpoint • Configure Middleware Platform • Resources, e.g. Data Sources, JMS • Create & Configure Adapters • Perform Environment Specific Tests • Longer running tests • Manual Test Performed as late in the processes as reasonable 36
  • 37. Application Promotion Minimise differences between environments 37 Use a consistent Platform Blueprint across ALL environments. Re-Provision Non-Prod Platforms to eliminate configuration drift. PRODCI PRE-PROD CAPACITY UAT SIT Environments become more production-like Increasing Confidence in build’s production readiness DEV Issues caused by Configuration Drift are often the most difficult to diagnose and result in many wasted weeks/months of man effort to resolve.
  • 38. Automated Deployment Drives Strong Governance & Consistency Automated Builds • Compilation and packaging of code centrally in an automated fashion Application Blueprints • Defines which artefacts, resources make up a release package • Build once, deploy to multiple environments. Application Models • Captures environment specific details. Fully Automated Build and Deployment Quickly Deploy and Manage Releases across Environments
  • 39. Build Quality In “Cease dependence on mass inspection to achieve quality. Improve the process and build quality into the product in the first place” 39 W. Edwards Deming
  • 40. Different Kinds of Testing • Treat test code as production code • Includes Test Data • Not all tests call external systems • Make use of Mock Services • Run smoke tests first • Perform short running tests before long running tests • Perform Manual Testing after Automated Tests • Continually maintain your tests 40 Functional Acceptance Tests Journey Tests Showcases Usability Testing Unit tests Integration tests System tests Non-Functional Acceptance Tests Performance, scaling, … Automated Automated Manual / Automated Technology Facing Business Facing Supportprogramming CritiqueProject Diagram invented by Brian Marick Manual
  • 41. Design Code to Simplify Testing … Use a layered reference architecture • BPM Projects • Mock Service Layers • Use Automated Testing • SOA Project • Same Approach • Mock IVS Layer Service layering, use of Mock Services & Automated Testing Increase productivity and improves code quality. 41
  • 42. Blue / Green Deployments • Allows time to validate new release is behaving as expected before go-live • Zero down-time for go-live. • Makes rollback very simple Blue Environment Release N Green Environment Release N+1 Router
  • 43. Continuous Deliver Tool Chain For… Oracle SOA Suite and Oracle BPM Suite 43 Pipeline Orchestration Source Code Management OSB, SCA Build Automation Software Repository Oracle Middleware Platform Provisioning Configure Oracle Middleware Platform Configure & Deploy OSB, SOA, BPM Artefacts Automated Testing Nexus
  • 44. Benefits of DevOps Reduce Risk, Decrease Costs, Speed Up Time to Market Reduce Risk . Reduce risk of projects delays, provide better visibility. Significantly reduce risk of defects in production. Decrease Cost . Reduce waste and increase developer and operational efficiency. 44 Provide the business with a strategic advantage in its ability to be more responsive in delivering new solutions faster, cheaper and more often. Speed Up Time to Market Increase agility of development and test teams. Shorten the development lifecycle.

Editor's Notes

  1. Let me give you a little bit of information about Rubicon Red. Since its original founding in 2009, Rubicon Red’s mission has been to lead customers to success on their Oracle middleware journey. This is the origin of our name; helping customers cross the “Rubicon” in their successful adoption of the Oracle Middleware “Red” stack. Rubicon Red is a recognized global thought leader in Oracle Middleware, delivering innovation and unrivalled expertise. We have authored several books on Oracle Middleware, including what is regarded as the premier book on implementing Oracle Middleware solutions. We have been featured on the front cover of the US publication CIO Review, in an edition identifying the top 100 Oracle Solution providers globally. We are consistently recognized by Oracle as the Oracle Middleware Top Technical Champion for Asia Pacific. In 2014 Rubicon Red received 3 global innovation awards from Oracle. This was the first time a partner received that many awards – something even the largest Oracle partners haven’t achieved. We sit on multiple Customer Advisory Boards,  at Oracle’s invitation, providing guidance to them on the direction of their Middleware Product strategy.
  2. In today’s companies the end service delivered to the customer is not performed by a single system; but rather a patchwork of applications, each one performing a particular business function. Middleware provides the modern application infrastructure to combine these business apps, like puzzle pieces, into an integrated solution in order to deliver a seamless and unified experience to the customer. Oracle Fusion Middleware, by Market Share is the leading Modern Middleware Platform. 30 seconds
  3. Oracle/Antony
  4. High profile technology failures are increasingly common. On average - a single major technology failure can cost a business as much as $US 10.8 million. With 45% of organisations experience a loss of brand equity or market share following a major technology failure 20 seconds
  5. /Antony
  6. The manual process of provisioning Oracle Fusion Middleware environments, and the testing and deployment of code into these environments is often one of the most painful, resource intensive and stressful parts of any Fusion Middleware implementation. Small errors – such as misconfiguration of a middleware component, or deploying the wrong version of a software object – can wreak havoc on the newly deployed solution. Many weeks of man effort can be lost wrestling with builds and environmental issues; constant project delays, missed milestones and uncertainty are all too common. The business is frustrated when “development complete” code can’t be released, or unreliable code not fit for purpose is pushed into production – leading to the inevitable fallout and fire-fighting.
  7. Critical PROD issues need to be re-produced in SUPPORT env Oracle will request this to resolve P1/P2 Service Requests If Environments out of Sync – this is often not possible! PRE-PROD is last chance to capture issues before PROD If PRE-PROD configuration different to PROD, higher probability a release which works in PRE-PROD will fail in PROD Each release into DEV, TEST, SIT, etc. contains latest release, plus remains of previous failed releases FALSE POSITIVES, with the release failing when promoted to next environment. FALSE NEGATIVES, with time wasted troubleshooting a non existent error.
  8. Firstly, scripts are frequently written to a "good enough" standard to solve the current requirement sets, this results in brittle code that is difficult to change as requirements change. As a result scripts tend to evolve over time, leading to spaghetti script that is very hard to maintain, and can quickly become a full time job.   Of course the other issue here, is what happens when the person who wrote the script, either changes role or leaves the company? What is left is rarely documented and due to the spaghetti nature incredibly hard for someone else to pick-up and maintain, especially without breaking a few things along the way.   Secondly, because the scripts are written to be just "good enough", rarely is sufficient testing performed, so its easy to end up with buggy scripts, requiring manual work around's to fix. In fact its quite normal for scripts to get out of sync with the actual required environment, causing significant issues from a governance perspective, which can also quickly render the scripts obsolete.   Thirdly, scripts are tied to particular releases of a product, so as new versions of the product are released (especially major releases, such as 10g to 11g, or 11g to 12c), then the scripts often need to either be re-written or need major re-factoring. For example, I know of one Oracle SOA user has invested in excess of 5+ man years writing scripts for automated deployment, who is now having to throw most of it away as they won't port to the latest release.
  9. Rubicon Red Key Points How to build and provision similar environments in the cloud and in the data center. Need to ensure that code that runs in the cloud works equally well when moved to Production (on-premise).
  10. Rubicon Red
  11. Rubicon Red