Keynote ECSE 2011: Development and Operations - Two Worlds Collide
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Keynote ECSE 2011: Development and Operations - Two Worlds Collide

on

  • 1,403 views

This presentation talks about the separation between Operations Development that is ubiquitous is Enterprise IT. It then shows alternatives and introduces to the DevOps movement. It was delivered as a ...

This presentation talks about the separation between Operations Development that is ubiquitous is Enterprise IT. It then shows alternatives and introduces to the DevOps movement. It was delivered as a keynote in the Indutrial Track at ESEC 2011 in Szeged, Hungary.

Statistics

Views

Total Views
1,403
Views on SlideShare
1,400
Embed Views
3

Actions

Likes
0
Downloads
11
Comments
0

1 Embed 3

http://twitter.com 3

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Keynote ECSE 2011: Development and Operations - Two Worlds Collide Presentation Transcript

  • 1. Development and Operations Two Worlds Collide Eberhard Wolff Architecture and Technology Manager adesso AG07.09.11
  • 2. About me►  Eberhard Wolff►  Architecture & Technology Manager at adesso►  adesso is a leading IT consultancy in the German speaking region►  Speaker►  Author►  Blog: http://ewolff.com►  Twitter: @ewolff►  http://www.slideshare.net/ewolff►  eberhard.wolff@adesso.de Eberhard Wolff: Development and Operations - Two Worlds Collide
  • 3. Development and Operations Ubiquitous concept - separated in almost any organization Sometimes separated up to the CIO level Development Operations ►  Projects ►  Keeps system functional in production ►  Software development ►  Install / upgrade hardware / software ►  Requirements ►  Service Level Agreements ►  … ►  … Software07.09.11 Eberhard Wolff: Development and Operations - Two Worlds Collide
  • 4. Why Separated? ►  Adam Smith ►  Division of labor ►  Standardization ►  Specialization ►  Industrialization ►  Productivity gains ►  Really? Considering the typical IT zoo…07.09.11 4 Eberhard Wolff: Development and Operations - Two Worlds Collide
  • 5. Development and Operations Development Operations ►  Concerned with implementing features ►  Concerned with availability & and fixing bugs performance ►  Care about the evolution of systems ►  Care about stability (called at 3 am) ►  Prefer technologies with ►  Prefer stable & established technologies high productivity ►  Care the most about ►  Care the most about operating system programming languages database servers frameworks etc. applications servers etc. ►  Area of expertise: Code, Languages etc ►  Area of expertise: OS, monitoring etc07.09.11 Eberhard Wolff: Development and Operations - Two Worlds Collide
  • 6. Story►  Large Java project, not too long ago►  Decision: Use JDK 1.4 >  Experience - foundation for another project Separation leads to >  Was already outdated by that time >  But: No support any more wrong decision►  Called in to solve a problem►  Result: A performance issue in the JDK►  JDK 1.5 >  Many improvements for developers >  Specific problem is fixed >  So: Better for operations, too!07.09.11 6 Eberhard Wolff: Development and Operations - Two Worlds Collide
  • 7. Another Story►  Development decided against using Enterprise Java Beans (EJBs)►  Operations: “We will buy an application server with EJB support.”►  …just in case Separation not►  More complex, more costly►  Not their turf: Frameworks decided in development►  enforced Same organization: Operations created several frameworks >  To make applications easier to operate >  Because the framework is concerned with specific infrastructure07.09.11 7 Eberhard Wolff: Development and Operations - Two Worlds Collide
  • 8. Performance: Different Perspectives Classes Development Garbage Collection JVM options Database Know How? Code JVM No holistic view onJavaDatabaseDriver performance and File I/O Memory OS locks Operating System Hardware architecture CPU load Java Know How? Database Operations07.09.11 8 Eberhard Wolff: Development and Operations - Two Worlds Collide
  • 9. Separation?►  Operations usually automates >  Develops shell scripts etc >  Automated software deployment►  Operations = developers for infrastructure code >  Deployment scripts >  Monitoring >  …►  Will become more due to Virtualization and Cloud >  Less hardware >  More need for automation >  Throw-away systems►  Database administrators >  Care about availability of databases >  And support development07.09.11 9 Eberhard Wolff: Development and Operations - Two Worlds Collide
  • 10. Lean Production►  Eliminate waste!►  E.g. transport aka hand over►  Hand over from development to operations is waste►  Documentations needs to be created►  Issues might not surface until operations takes over►  Lean Production is influential to Agile Software Development07.09.11 10 Eberhard Wolff: Development and Operations - Two Worlds Collide
  • 11. Completely Different Approach►  Amazon ca. 2006 according to Werner Vogels (CTO)►  Each teams builds a services►  A service has a business purpose►  Each service has its own database and technology stack►  Virtual machines are the only common ground►  Teams provide operations and development►  No boundaries between ops and dev►  Freedom technology-wise07.09.11 11 Eberhard Wolff: Development and Operations - Two Worlds Collide
  • 12. Benefits Of Approach►  Can use the best technology for the job►  Trade off between operations and development inside the team►  Same ideas as Service Oriented Architecture►  i.e. decompose IT by services►  More flexibility►  Compose services to new services►  IT aligned to business►  Easier for business to understand IT structure►  Easier to create domain knowledge in development►  No finger pointing between operations / development if service is not available07.09.11 12 Eberhard Wolff: Development and Operations - Two Worlds Collide
  • 13. Other Example: Flick Photo Sharing07.09.11 13 Eberhard Wolff: Development and Operations - Two Worlds Collide
  • 14. Other Example: Etsy07.09.11 14 Eberhard Wolff: Development and Operations - Two Worlds Collide
  • 15. DevOps►  John Allspaw at Flickr and Etsy pioneered DevOps►  DevOps = Development + Operations►  It has a name!►  Non trivial examples►  Common ownership of features and performance►  Cultural shift►  Less finger pointing07.09.11 15 Eberhard Wolff: Development and Operations - Two Worlds Collide
  • 16. DevOps Collaborations►  Ops can find problems in network, OS, I/O►  Development can create to show exceptions and parameters in the application►  Development knows application level metrics (registrations, revenue etc)►  Ops can monitor, plot and create triggers on the data►  A web site with disabled functions is better than no web site at all►  Development can create configurations to disable parts of the application for Ops►  A holistic view on applications07.09.11 16 Eberhard Wolff: Development and Operations - Two Worlds Collide
  • 17. DevOps And Business Agility►  Fully automated build and deployment►  Deployment can be triggered by several people, not just higher level management►  Etsy and Flickr do several deployments per day!►  Non-trivial system►  While often a deployment is a project by itself►  Enabler: Virtualization >  Easy to create a new environment >  Easy to fall back to older environment►  Enabler: Modern software distribution >  Fully automated►  Cloud has similar approaches►  Much easier to get new versions out►  More business agility07.09.11 17 Eberhard Wolff: Development and Operations - Two Worlds Collide
  • 18. From Continuous Integration to Continuous Deployment►  Integrating the work of multiple teams can be painful►  If it hurts do it more often►  Continuous Integration >  A server constantly takes code from the version control >  …for all projects >  Compile >  Do the automated tests►  Result: Integration not a problem►  Deploying software can be painful►  Continuous Delivery: Deploy as often as you can►  Automated07.09.11 18 Eberhard Wolff: Development and Operations - Two Worlds Collide
  • 19. From Agility To DevOps►  Agility >  Create runnable software during each iteration►  “Works on my machine”►  “Could be put into production – but isn’t.”►  DevOps >  Software is deployed automatically >  Software is actually put into production Requirements Implementation Test Deployment Engineering Agility DevOps07.09.11 19 Eberhard Wolff: Development and Operations - Two Worlds Collide
  • 20. Conclusion: Create Running Software ►  Separation between Operations and Development is ubiquitous ►  Idea: Industrialization, standardization … ►  Can lead to suboptimal compromises ►  Creates Hand Over / Waste ►  Different approach: Join Operations and Development “DevOps” ►  Amazon, Flickr and Etsy pioneered the approach ►  Better collaboration ►  More business agility ►  Logical next step after Agile Processes ►  Enterprise ITs start to adopt ►  Open: Impact on cost and processes07.09.11 20 Eberhard Wolff: Development and Operations - Two Worlds Collide