devops agile ebook

Upload: ksnraju15

Post on 02-Jun-2018

232 views

Category:

Documents


3 download

TRANSCRIPT

  • 8/10/2019 DevOps Agile eBook

    1/22

    DevOps PushesAgile to ITs LimitImplementing DevOps Where Agile Rul

    @scriptrock | www.sc

    https://twitter.com/scriptrockhttp://www.scriptrock.com/http://www.scriptrock.com/https://twitter.com/scriptrockhttp://www.scriptrock.com/
  • 8/10/2019 DevOps Agile eBook

    2/22

    2 DevOps Pushes Agile to ITs Limits : Implementing DevOps Where Agile Rules @scriptrock | www.sc

    DevOps PushesAgile to ITs LimitsSoftware engineering is changing andDevOps is at the heart of it.The demands of todays always-on business depends on the abilityof IT to be more nimble & responsive to the needs of the customer.

    An organizations ability to be responsive requires better collaboration,communication and integration across all key stakeholders insideand outside of IT.

    The principals of the both the Agile and DevOps approaches fostersholistic thinking, heightened engagement, and communication andproblem solving skills.

    This style of work results in a greater understanding of practiceareas among the larger team and encourages individuals to considervarying points of view, even when they work in isolation.

    ITILS E R V I C

    E S T R A

    T E G Y

    DEVOPS

    S E R V ICE D E S I G N

    S E R V I C

    E T R A

    N S I T

    I O

    N

    S E R V I

    C E O P E R A T I O N

    Agile and DevOps are related ideas who share a common Lean ancestry, but workon di erent planes. While Agile deep dives into improving one major IT function(delivering software), DevOps works on improving the interaction and ow across

    IT functions stretching the length of the entire development to operations lifecycle.

    https://twitter.com/scriptrockhttp://www.scriptrock.com/http://www.scriptrock.com/https://twitter.com/scriptrock
  • 8/10/2019 DevOps Agile eBook

    3/22

    3 DevOps Pushes Agile to ITs Limits : Implementing DevOps Where Agile Rules @scriptrock | www.sc

    DevOps Pushes Agile to ITs Limits

    Many enterprises over the last decade have undergone a radical change as amethodology known as Agile was introduced, gained rapid acceptance and

    proliferated throughout the enterprise.One key tenet of the Agile development process is to deliver working softwarein smaller and more frequent increments, as opposed to the the big bangapproach of the waterfall method.

    When the shift to Agile development wasmade, it required development to change the

    way the entire organization operated.Agile has been instrumental for development to produce higher-quality sof twarethat is more in tune with user needs and o ers swifter release cycles.

    https://twitter.com/scriptrockhttp://www.scriptrock.com/http://www.scriptrock.com/https://twitter.com/scriptrock
  • 8/10/2019 DevOps Agile eBook

    4/22

    4 DevOps Pushes Agile to ITs Limits : Implementing DevOps Where Agile Rules @scriptrock | www.sc

    DevOps Pushes Agile to ITs Limits

    Today, weve reached anotherinfection point.In response to market pressures and new technology like cloud computing, the DevOpsmovement has been born to improve IT service delivery agility and quality.

    As Agile gained momentum over the years, it unintentionally left IT operations behind due tothe piled up deployments waiting for operations to deploy, manage and control.

    When code is not promoted into production as it is developed, deployments will pile up,customers dont get value and the deployments often result in chaos and disruption.

    This is where DevOps principles come innot as a new approach as much as an enhancedone that builds o the Agile principles founded in the Agile Manifesto.

    https://twitter.com/scriptrockhttp://www.scriptrock.com/http://www.scriptrock.com/https://twitter.com/scriptrock
  • 8/10/2019 DevOps Agile eBook

    5/225 DevOps Pushes Agile to ITs Limits : Implementing DevOps Where Agile Rules @scriptrock | www.sc

    DevOps Pushes Agile to ITs Limits

    Some say DevOps isthe new-age version ofAgile development.DevOps, which is a relatively new movement ( rst mentions can be trackedback to 2009) occurring within IT, promotes collaboration & automation amongdevelopment and operations to increase the velocity of code into productionwhile improving its resiliency, availability and stability.

    Sounds pretty familiar to Agile in fact.

    Both share many common traits, however implementing DevOps to increasespeed and innovation requires adopting Agile development methodologies, andAgile development requires quicker and more frequent release cycles.

    Agile and DevOps share mcommon traits, howe

    DevOps enables a far mcontinuous ow of work i

    IT Operations, which is crto increasing velocity w

    improving quality of softw

    https://twitter.com/scriptrockhttp://www.scriptrock.com/http://www.scriptrock.com/https://twitter.com/scriptrock
  • 8/10/2019 DevOps Agile eBook

    6/226 DevOps Pushes Agile to ITs Limits : Implementing DevOps Where Agile Rules @scriptrock | www.sc

    Agile vs. DevOpsPractical Di erences in MethodologyThe goals of DevOps sounds similar to the goals of Agile,but the two approaches are di erent.

    The goals of Agile are to:

    develop software faster

    be responsive to changes

    and get higher quality results

    The goals of DevOps are similar in that it strives to:

    accelerate time to market

    improve ITs value by more closely aligningdevelopment, IT operations and the business

    increase IT productivity

    https://twitter.com/scriptrockhttp://www.scriptrock.com/http://www.scriptrock.com/https://twitter.com/scriptrock
  • 8/10/2019 DevOps Agile eBook

    7/22

    7 DevOps Pushes Agile to ITs Limits : Implementing DevOps Where Agile Rules @scriptrock | www.sc

    Agile vs. DevOps Practical Di erences in Methodology

    Just because their goals are similar,each methodology has its uniqueness.

    Agile stresses frequent releases of software with an emphasis oncollaboration between development and the business.

    However, Agile development tends to produce releases faster than theycan be deployed leaving IT Operations with a backlog of production-ready code that has to be tested, deployed and managed.

    These short release cycles followed by delays in deployment canprevent IT and the business from achieving their goals.

    DevOps, on the other hand, stresses collaboration, communicationand culture between development and IT operations which helpin building timely, reliable and high quality software.

    The fear of change, evolving roles & responsibilities, and organizationalbehavior & incentive structures make DevOps transformation

    di cult to say the least.

    The fear of change, evolvingroles & responsibilities, andorganizational behavior &incentive structures make

    DevOps transformationdi cult to say the least.

    https://twitter.com/scriptrockhttp://www.scriptrock.com/http://www.scriptrock.com/https://twitter.com/scriptrock
  • 8/10/2019 DevOps Agile eBook

    8/22

    8 DevOps Pushes Agile to ITs Limits : Implementing DevOps Where Agile Rules @scriptrock | www.sc

    Agile vs. DevOps Practical Di erences in Methodology

    DevOps is as much a technical problemas it is a business and people problem.

    DevOps creates visibility between development and operationsteam.

    It is concerned more about the product rather than theproject.

    It is about automation rather than documentation.

    DevOps ensures that good software does not end with its release.

    It is about ensuring a continual feedback loop betweendevelopment and operations team.

    DevOps principles aim to extend development into production,create production feedback loops into development, plus embeddingdevelopment into IT operations and vice versa.

    What Are Agiles Limitations? You may not identify a software defect until

    late in the lifecycle or in the production.

    Gains of Agile methodology evaporateonce the application goes into production.

    Delays when developers and testerswait for resources they want to access.

    Hard to pinpoint problems in develop-ment, testing or production phases.

    Development views their job as doneonce the code is in production.

    When problem arises, everyone startspointing ngers laying blame at each other.

    https://twitter.com/scriptrockhttp://www.scriptrock.com/http://www.scriptrock.com/https://twitter.com/scriptrock
  • 8/10/2019 DevOps Agile eBook

    9/22

    9 DevOps Pushes Agile to ITs Limits : Implementing DevOps Where Agile Rules @scriptrock | www.sc

    Agile vs. DevOps Practical Di erences in Methodology

    DevOps works a lot better if operationsteams adopt Agile methods.

    DevOps enables realization of the bene ts of continuous and fasterdelivery of functionality achieved through Agile.

    DevOps has two approaches that change how Agile methodologyis implemented.

    The rst approach is the removal of team silosbetween Dev and Ops.

    The other approach is the use of continuousintegration/continuous delivery and automation toolsin order to achieve a very lean value stream andreduced batch sizes.

    https://twitter.com/scriptrockhttp://www.scriptrock.com/http://www.scriptrock.com/https://twitter.com/scriptrock
  • 8/10/2019 DevOps Agile eBook

    10/22

    10 DevOps Pushes Agile to ITs Limits : Implementing DevOps Where Agile Rules @scriptrock | www.sc

    Agile vs. DevOps Practical Di erences in Methodology

    You dont have to choose betweenAgile or DevOps, they are compatible.

    But you do need to design an implementation thataligns them appropriately as you undergo this businesstransformation.

    There will certainly be some challenges along the wayand youll likely hear things like:

    DevOps is just another buzzword.

    Its not new. Were already doing DevOps.

    Our managers dont allow us to do DevOps.

    Our employees dont take responsibility.

    A recent survey of 110 CIOs conducted by IDResearch Services found the following as th greatest obstacles to implementing DevOps

    Source: ca technogies Report Market Pulse Research: The State of DevOps (l

    Need to understand what technologies can help

    IT organization and environment are too complex

    Lack of right skills within development and operations

    Lack of an executive mandate

    Benets/ROI are difficult to quantify

    Organization is resistant to change

    Not sure where to start

    Other

    None

    3

    31%

    29%

    28%26%

    22%

    5%

    5%

    https://twitter.com/scriptrockhttp://www.scriptrock.com/http://www.cio.com/white-paper/750447/Market_Pulse_Research_The_State_of_DevOpshttp://www.cio.com/white-paper/750447/Market_Pulse_Research_The_State_of_DevOpshttp://www.cio.com/white-paper/750447/Market_Pulse_Research_The_State_of_DevOpshttp://www.cio.com/white-paper/750447/Market_Pulse_Research_The_State_of_DevOpshttp://www.cio.com/white-paper/750447/Market_Pulse_Research_The_State_of_DevOpshttp://www.cio.com/white-paper/750447/Market_Pulse_Research_The_State_of_DevOpshttp://www.cio.com/white-paper/750447/Market_Pulse_Research_The_State_of_DevOpshttp://www.cio.com/white-paper/750447/Market_Pulse_Research_The_State_of_DevOpshttp://www.cio.com/white-paper/750447/Market_Pulse_Research_The_State_of_DevOpshttp://www.cio.com/white-paper/750447/Market_Pulse_Research_The_State_of_DevOpshttp://www.cio.com/white-paper/750447/Market_Pulse_Research_The_State_of_DevOpshttp://www.cio.com/white-paper/750447/Market_Pulse_Research_The_State_of_DevOpshttp://www.cio.com/white-paper/750447/Market_Pulse_Research_The_State_of_DevOpshttp://www.cio.com/white-paper/750447/Market_Pulse_Research_The_State_of_DevOpshttp://www.cio.com/white-paper/750447/Market_Pulse_Research_The_State_of_DevOpshttp://www.cio.com/white-paper/750447/Market_Pulse_Research_The_State_of_DevOpshttp://www.cio.com/white-paper/750447/Market_Pulse_Research_The_State_of_DevOpshttp://www.cio.com/white-paper/750447/Market_Pulse_Research_The_State_of_DevOpshttp://www.cio.com/white-paper/750447/Market_Pulse_Research_The_State_of_DevOpshttp://www.cio.com/white-paper/750447/Market_Pulse_Research_The_State_of_DevOpshttp://www.cio.com/white-paper/750447/Market_Pulse_Research_The_State_of_DevOpshttp://www.cio.com/white-paper/750447/Market_Pulse_Research_The_State_of_DevOpshttp://www.cio.com/white-paper/750447/Market_Pulse_Research_The_State_of_DevOpshttp://www.cio.com/white-paper/750447/Market_Pulse_Research_The_State_of_DevOpshttp://www.cio.com/white-paper/750447/Market_Pulse_Research_The_State_of_DevOpshttp://www.cio.com/white-paper/750447/Market_Pulse_Research_The_State_of_DevOpshttp://www.cio.com/white-paper/750447/Market_Pulse_Research_The_State_of_DevOpshttp://www.cio.com/white-paper/750447/Market_Pulse_Research_The_State_of_DevOpshttp://www.scriptrock.com/https://twitter.com/scriptrock
  • 8/10/2019 DevOps Agile eBook

    11/22

    11 DevOps Pushes Agile to ITs Limits : Implementing DevOps Where Agile Rules @scriptrock | www.sc

    DevOps is a response to the fact that there exists adisconnect between development and operations team.

    Across most enterprises, there exists:

    need for greater collaboration between development and operations team

    need for simultaneous deployment across multiple platforms

    pressure from the business to release applications more quickly to meetcustomer demands

    need to improve end customer experience

    need to develop and deploy cloud-based apps for scale and to reduce costs

    Agile + DevOpsHow DevOps Compliments Agile Development

    https://twitter.com/scriptrockhttp://www.scriptrock.com/http://www.scriptrock.com/https://twitter.com/scriptrock
  • 8/10/2019 DevOps Agile eBook

    12/22

    12 DevOps Pushes Agile to ITs Limits : Implementing DevOps Where Agile Rules @scriptrock | www.sc

    Agile + DevOps How DevOps Compliments Agile Development

    DevOps is stretching Agile principlesbeyond the limits of the code

    to the entire value chain.DevOps builds on Agile to deliver quick, high qualityreleases by streamlining development and operations.

    DevOps inherits principles of Agile development, butextends service delivery and team interactions to increasethe value of the product delivered to customers.

    DevOps involves embracing automation that speedsup and smooths out the ows across and within thevarious silos.

    Plus, DevOps is tackling the cultural & behavioral aspectsof IT that when solved improve quality of code, qualityof releases and better job satisfaction.

    Time spent per week on key activities:Source: zeroturnaround.com DevOps/ITOps Productivity Report 2013 (link)

    https://twitter.com/scriptrockhttp://www.scriptrock.com/http://zeroturnaround.com/rebellabs/rebel-labs-release-it-ops-devops-productivity-report-2013/http://zeroturnaround.com/rebellabs/rebel-labs-release-it-ops-devops-productivity-report-2013/http://zeroturnaround.com/rebellabs/rebel-labs-release-it-ops-devops-productivity-report-2013/http://www.scriptrock.com/https://twitter.com/scriptrock
  • 8/10/2019 DevOps Agile eBook

    13/22

    13 DevOps Pushes Agile to ITs Limits : Implementing DevOps Where Agile Rules @scriptrock | www.sc

    Agile + DevOps How DevOps Compliments Agile Development

    DevOps is simply Agile best practice that software development teamsshould aim forwhether youre doing Agile, DevOps, ITIL, CoBIT, ISO,

    Lean, cloud or whatever.Call it what you will, DevOps promotes continuous ow of work intoIT Operations and in turn continuous deployment and integration.

    In Agile methods, if the development team delivers code every twoweeks, but its deployed only every two months, customers dontget value and the deployments often result in chaos and disruption.

    DevOps, on the other hand, empowers developers to test andautomate their code before releasing it to the operations stakeholdersand in some cases just bypass this step altogether.

    Developers discover defects early in the SDLC and also test whetherthe code will work properly in production early in the SDLC whichenables quick and timely releases.

    https://twitter.com/scriptrockhttp://www.scriptrock.com/http://www.scriptrock.com/https://twitter.com/scriptrock
  • 8/10/2019 DevOps Agile eBook

    14/22

    14 DevOps Pushes Agile to ITs Limits : Implementing DevOps Where Agile Rules @scriptrock | www.sc

    Agile + DevOps How DevOps Compliments Agile Development

    The key indicators of a successfulAgile to DevOps implementation are:

    + an increase in the number of releases

    + less time taken in production

    + increase in release date adherence

    + low/no defects in the application

    + increased collaboration between departments

    + improved quality of deployed applications

    + exploration of new software

    + reduced time to market software

    + an increase in revenue

    + software made available acrossmultiple platforms

    + increased frequency of deploymentsof software

    https://twitter.com/scriptrockhttp://www.scriptrock.com/http://www.scriptrock.com/https://twitter.com/scriptrock
  • 8/10/2019 DevOps Agile eBook

    15/22

  • 8/10/2019 DevOps Agile eBook

    16/22

    16 DevOps Pushes Agile to ITs Limits : Implementing DevOps Where Agile Rules @scriptrock | www.sc

    Moving from Agile to DevOps Key Challenges and Considerations

    Organization ComplexityDevOps is a people problem and enterprises by nature are complex.If the organization has too many people, too many departments,pockets of automation, poor communication between teams andincentive structures that drive a particular behavior, then imple-menting DevOps can be a challenge.

    Roles Unaligned and MisunderstoodIn many organizations, there exists invisible barriers betweensilod independent teams. Whether it is a turf war, a lack of under-

    standing or just the way it has always been, this poses a problemwhen adopting DevOps since it requires interdepartmental coor-dination, collaboration and communication. It is hard to break oldhabits and there could be competing goals at work all at once.Many existing IT enterprise processes, tasks and work owsare not representative of the needs of DevOps. In addition, byadopting DevOps, development & operations teams are assignedroles previously done by others which can create a lack of claritysurrounding who is responsible for what.

    Key Challenges

    If youre considering transforming from Agile to DevOps, here aresome of the key challenges to be mindful of:

    Fear of ChangeWho moved my cheese!? Many organizations, teams and individualstend to be rigid and resistant to change. Adoption of DevOps maytake time before organizations fully understand and embrace it.

    SecurityWhen adopting DevOps, an organization may have securityconcerns especially when data is moved to the cloud. The organi-zation may be reluctant adopting DevOps and cloud computing.However, DevOps should be considered an opportunity to address

    security requirements early and often.Tone at the TopDevOps is partially about transforming and changing your businessand without the proper buy-in and tone from senior leadership,having long-term success will be very di cult. Also, having clearexpectations to drive accountability and results should be required.

    https://twitter.com/scriptrockhttp://www.scriptrock.com/http://www.scriptrock.com/https://twitter.com/scriptrock
  • 8/10/2019 DevOps Agile eBook

    17/22

    17 DevOps Pushes Agile to ITs Limits : Implementing DevOps Where Agile Rules @scriptrock | www.sc

    Moving from Agile to DevOps Key Challenges and Considerations

    Key Considerations

    Below are some key considerations when transitioning from Agile to DevOps in the enterprise:

    Development Culture vs Operations Culture

    The culture of an organization is crucial before jumping into automation. Automationis a noble goal, but is secondary to solving the cultural aspects of your business. Thedevelopment team and the operations team must change their way of operations forDevOps to be implemented.

    Continuous Involvement of the Operations TeamThe IT Operations team should be continually involved in the development ofthe application. Participating in discussions, decisions and execution of thingsinvolving the technical and schedule feasibility of the solution should becomecommonplace. IT operations (as well as Quality Assurance, InfoSec, Service

    Management and Enterprise Architecture) related requirements should be takeninto account as early in the SDLC as possible to create trust, break down silos andimprove speed & quality.

    Stability vs ChangePushing speed versus stability is a delicate balance in the SDLC, but enterprises muststrike a balance to achieve its goals. Careful coordination between developmentand operations is a start, but getting end-to-end visibility and creating account-ability & collaboration across previously separate teams is crucial to making prog-ress with the DevOps implementation. But sometimes not changing and keeping

    things much the same is the right decisiononly you know the answer to what isbest for your organization.

    https://twitter.com/scriptrockhttp://www.scriptrock.com/http://www.scriptrock.com/https://twitter.com/scriptrock
  • 8/10/2019 DevOps Agile eBook

    18/22

    18 DevOps Pushes Agile to ITs Limits : Implementing DevOps Where Agile Rules @scriptrock | www.sc

    Moving from Agile to DevOps Key Challenges and Considerations

    Demand for Increased Number of ReleasesIf business owners are demanding an increase in the number of releases comparedto your current velocity, then at least proof-of-concepting a DevOps initiative for a

    speci c project or program should be considered. Experimenting with org struc -tures, incentive structures, and working on building a winning culture across dispa-rate teams can help prove whether more widely deploying DevOps in your enterprisemakes good sense or not.

    Cost of ChangeThe organization must consider if there are enough resources to invest in DevOps.To implement DevOps, an organization must investment in tools, training, and thehiring of new skills.

    Going Mainstream with the CloudThe business is demanding the agility that both cloud computing and DevOpsprovides. Whether public, private or hybridcloud is foundational to helping scaleat mach speed. Cloud and DevOps are not mutually exclusive, however the avail-ability and power of the cloud enhances your ability to practice DevOps by o ering adynamic platform to develop and run applications.

    Key Considerations (continued)

    https://twitter.com/scriptrockhttp://www.scriptrock.com/http://www.scriptrock.com/https://twitter.com/scriptrock
  • 8/10/2019 DevOps Agile eBook

    19/22

    19 DevOps Pushes Agile to ITs Limits : Implementing DevOps Where Agile Rules @scriptrock | www.sc

    ImplementingDevOps Where Agile RulesThe motivation driving the DevOps movement is the frustration involved inreleasing and maintaining software systems across teams with opposing goals.

    In the end, what DevOps hopes to bring to Agile is the understandingand practice that software isnt done until its successfully deliveredto the user and meets their expectations around performance,availability, reliability, and faster delivery.

    On the following pages are some recommendations for considerationif implementing DevOps in an organization where Agile is the norm:

    https://twitter.com/scriptrockhttp://www.scriptrock.com/http://www.scriptrock.com/https://twitter.com/scriptrock
  • 8/10/2019 DevOps Agile eBook

    20/22

    20 DevOps Pushes Agile to ITs Limits : Implementing DevOps Where Agile Rules @scriptrock | www.sc

    Implementing DevOps Where Agile Rules

    Step 1 Tone at the top is key.Get buy in early from senior leadership and be sure to collaborate with middle managementto ensure alignment. The organization must commit wholly for DevOps to be a success. It is

    not a one-o investment; it is a process that involves people, communication and integration.Step 2 Employ services thinking and systems thinking...to help in the breakdown of complex systems into simple components and modularservices allowing rapid and incremental changes.

    Step 3 Identify the waste, bottlenecks and delays in the SDLC.This process involves mapping all the stages and hando s and measuring how long worktakes to move through the cycle. Once you have identi ed the main points of failure andwaste, begin automating individual components appropriately. Use automation tools totest the software, practice con guration automation, consider leveraging continuousintegration and deployment tools to integrate work done in a given period of time, andscan for integration errors early and often.

    https://twitter.com/scriptrockhttp://www.scriptrock.com/http://www.scriptrock.com/https://twitter.com/scriptrock
  • 8/10/2019 DevOps Agile eBook

    21/22

    21 DevOps Pushes Agile to ITs Limits : Implementing DevOps Where Agile Rules @scriptrock | www.sc

    Implementing DevOps Where Agile Rules Key Challenges and Considerations

    Step 4: You must invest in your people.Sta in DevOps needs to augment their skills for better collaboration among each other,with project managers and business programs. The Dev and Ops sta need to build newskills to add to their core skills in a DevOps environment. And as this cross-pollinationbegins to occur, new skills will emerge that you will need to identify and plan for.

    Step 5: Focus beyond the lower costs and high speed that is brought by DevOps.Recognize that there are more substantial bene ts possible with successful implementationof DevOps. Here are some interesting stats:

    Devops produces Devops results in Devops reduces

    63% 33% 60%more frequentsoftware releases

    more time devoted toimproving infrastructure

    of time spenthandling support cases

    Statistics sources:http://www.theserverside.com/discussions/thread.tss?thread_id=78446 (link )

    https://puppetlabs.com/wp-content/uploads/2013/03/2013-state-of-devops-report.pdf (link )

    https://twitter.com/scriptrockhttp://www.scriptrock.com/http://www.theserverside.com/discussions/thread.tss?thread_id=78446http://www.theserverside.com/discussions/thread.tss?thread_id=78446https://puppetlabs.com/wp-content/uploads/2013/03/2013-state-of-devops-report.pdfhttps://puppetlabs.com/wp-content/uploads/2013/03/2013-state-of-devops-report.pdfhttps://puppetlabs.com/wp-content/uploads/2013/03/2013-state-of-devops-report.pdfhttps://puppetlabs.com/wp-content/uploads/2013/03/2013-state-of-devops-report.pdfhttp://www.theserverside.com/discussions/thread.tss?thread_id=78446http://www.theserverside.com/discussions/thread.tss?thread_id=78446http://www.scriptrock.com/https://twitter.com/scriptrock
  • 8/10/2019 DevOps Agile eBook

    22/22