DevOps Introduction
4/07/2017 DevOps Introduction 1
Agenda
• What is DevOps
• DevOps Use Cases
• Evolution of Software Development
• Agile and DevOps
• DevOps toolchain
• New skills, new roles
• DevOps Challengers
4/07/2017 DevOps Introduction 2
What is DevOps ?
4/07/2017 DevOps Introduction 3
collaborate and communicate the
Development, Quality assurance, and
IT operations to reduce the
time to market
intention of DevOps is to create
superior-quality software
more quickly and with more reliability
while causing
greater communication and collaboration
between teams.
Software Development Approach
What is DevOps ?
• Continuous Development
• Continuous Testing
• Continuous Integration
• Continuous Deployment
• Continuous Monitoring
4/07/2017 DevOps Introduction 4
DevOps Use Case
4/07/2017 DevOps Introduction 5
Facebook Development Process
DevOps Use Case
4/07/2017 DevOps Introduction 6
Evolution of Software Development
4/07/2017 DevOps Introduction 7
volatility, uncertainty, complexity, and ambiguity
Agile and DevOps
4/07/2017 DevOps Introduction 8
Agile
• http://agilemanifesto.org/
4/07/2017 DevOps Introduction 9
PM ?
DevOps toolchain
• Code — Code development and review, version control tools, code
merging
• Build — Continuous integration tools, build status
• Test — Continuous testing tools that provide feedback on business
risks
• Package — Artefact repository, application pre-deployment staging
• Release — Change management, release approvals, release
automation
• Configure — Infrastructure configuration and management,
Infrastructure as Code tools
• Monitor — Applications performance monitoring, end–user
experience
4/07/2017 DevOps Introduction 10
DevOps Tools
4/07/2017 DevOps Introduction 11
Micro Services Architecture
4/07/2017 DevOps Introduction 12
4/07/2017 DevOps Introduction 13
DevOpsTools
GIT VCS
4/07/2017 DevOps Introduction 14
DevOpsTools
Configuration Management
4/07/2017 DevOps Introduction 15
DevOpsTools Docker
is a software containerization platform,
meaning you can build your application, package them
along with their dependencies into a container and
then these containers can be easily shipped to run on
other machines.
DevOps trends
4/07/2017 DevOps Introduction 16
DevOps Tools
4/07/2017 DevOps Introduction 17
New skills, new roles
There's no such
thing as a DevOps
team
4/07/2017 DevOps Introduction 18
The DevOps evangelist
release managers,
automation architects,
Developers/testers,
experience assurance experts,
security engineer
and utility technology players
DevOps represents both a technology and a culture change.
Figuring out the right DevOps roles is a journey, not a destination
DevOps Challengers
• Cultural change
• Overcoming the Dev vs. Ops mentality
• Moving from legacy infrastructure to Microservices
• Too much focus on tools
• Dev and Ops toolset clashes
4/07/2017 DevOps Introduction 19
Thank You
4/07/2017 DevOps Introduction 20

Devops

  • 1.
  • 2.
    Agenda • What isDevOps • DevOps Use Cases • Evolution of Software Development • Agile and DevOps • DevOps toolchain • New skills, new roles • DevOps Challengers 4/07/2017 DevOps Introduction 2
  • 3.
    What is DevOps? 4/07/2017 DevOps Introduction 3 collaborate and communicate the Development, Quality assurance, and IT operations to reduce the time to market intention of DevOps is to create superior-quality software more quickly and with more reliability while causing greater communication and collaboration between teams. Software Development Approach
  • 4.
    What is DevOps? • Continuous Development • Continuous Testing • Continuous Integration • Continuous Deployment • Continuous Monitoring 4/07/2017 DevOps Introduction 4
  • 5.
    DevOps Use Case 4/07/2017DevOps Introduction 5 Facebook Development Process
  • 6.
    DevOps Use Case 4/07/2017DevOps Introduction 6
  • 7.
    Evolution of SoftwareDevelopment 4/07/2017 DevOps Introduction 7 volatility, uncertainty, complexity, and ambiguity
  • 8.
    Agile and DevOps 4/07/2017DevOps Introduction 8
  • 9.
  • 10.
    DevOps toolchain • Code— Code development and review, version control tools, code merging • Build — Continuous integration tools, build status • Test — Continuous testing tools that provide feedback on business risks • Package — Artefact repository, application pre-deployment staging • Release — Change management, release approvals, release automation • Configure — Infrastructure configuration and management, Infrastructure as Code tools • Monitor — Applications performance monitoring, end–user experience 4/07/2017 DevOps Introduction 10
  • 11.
  • 12.
  • 13.
    4/07/2017 DevOps Introduction13 DevOpsTools GIT VCS
  • 14.
    4/07/2017 DevOps Introduction14 DevOpsTools Configuration Management
  • 15.
    4/07/2017 DevOps Introduction15 DevOpsTools Docker is a software containerization platform, meaning you can build your application, package them along with their dependencies into a container and then these containers can be easily shipped to run on other machines.
  • 16.
  • 17.
  • 18.
    New skills, newroles There's no such thing as a DevOps team 4/07/2017 DevOps Introduction 18 The DevOps evangelist release managers, automation architects, Developers/testers, experience assurance experts, security engineer and utility technology players DevOps represents both a technology and a culture change. Figuring out the right DevOps roles is a journey, not a destination
  • 19.
    DevOps Challengers • Culturalchange • Overcoming the Dev vs. Ops mentality • Moving from legacy infrastructure to Microservices • Too much focus on tools • Dev and Ops toolset clashes 4/07/2017 DevOps Introduction 19
  • 20.

Editor's Notes

  • #4 Commnication, coloboration and integration is key Continuous customer satisfaction represents a customer-centric approach to software. Customers who receive the features they want quickly, on a stable, and secure platform are generally satisfied by the overall experience. These “happy” clients are much more likely to become repeat customers and some may go as far as recommending you to other potential customers. So if your goal is continuous customer satisfaction, then the DevOps philosophy will help you achieve that. Since DevOps is a philosophy of the efficient development, deployment, and operation, of the highest quality software possible, it has the intentional result of supporting continuous customer satisfaction. The same may apply to operations, their roles might shift from the classic, “this is our sandbox, and we choose who gets to play here,” to more of a collaborative and/or oversight role. With the cloud offering ever more in the way of SaaS and PaaS, the traditional boundaries between developers and operations is quickly fading. All this applies to security teams as well. In traditional, functionally-separated organizations, there is rarely a cross-departmental integration of these functions with IT operations. But DevOps promotes a set of processes and methods for thinking about communication and collaboration – between departments of development, QA (quality assurance), and IT operations.[12] In some organizations, this collaboration involves embedding IT operations specialists within software development teams, thus forming a cross-functional team – this may also be combined with matrix management. Faster time to market; Lower failure rate of new releases; Shortened lead time between fixes; Faster mean time to recovery (in the event of a new release crashing or otherwise disabling the current system). Benefits of DevOps[edit] Companies that practice DevOps have reported significant benefits, including: significantly shorter time to market, improved customer satisfaction, better product quality, more reliable releases, improved productivity and efficiency, and the increased ability to build the right product by fast experimentation.[24]
  • #5 DEV QA and is basically development and OPS is operations. All works to gether Increse the rate of production release. Dev and OPS focus is defferent, Dev code change and features first. Ops infastucture … time and disk etc… Dev ops bring everybory to gether have a holistic view on all. Because DevOps is philosophy and not a solution, there is no concrete path to follow. This flexibility allows organizations to adopt the philosophy in a way that best supports them.The community around DevOps has proposed a few tenets that further define the philosophy. Here are a few, in no particular order.
  • #7 New features are released to set of users and get the feed back. Then roll out to all Earlier, companies define business strategy then IT stategy align to that, IT strategy includes all portfolios programs and projects align to IT strategy.
  • #8 Agile and DevOps are similar, but, while agile software development represents a change in thinking and practice (that should lead to organizational change), DevOps places more emphasis on implementing organizational change to achieve its goals.[18] The need for DevOps was born from the increasing popularity of agile software development, as that tends to lead to an increased number of releases. One goal of DevOps is to establish an environment where releasing more reliable applications, faster and more frequently, can occur. Release managers are beginning to utilize tools (such as application release automation and continuous integration tools) to help advance this goal—doing so through the continuous delivery approach.[19]
  • #12 Promote wide availability cloud and virtual enviorunmnets or in simple terms software defined data centers. Datacenter automation and cloud infastucure. Deploy build frequently
  • #13 While there is no standard, formal definition of microservices, there are certain characteristics that help us identify the style.  Essentially, microservice architecture is a method of developing software applications as a suite of independently deployable, small, modular services in which each service runs a unique process and communicates through a well-defined, lightweight mechanism to serve a business goal.
  • #19 a thing everybody wants but nobody wants to do There's no such thing as a DevOps team, Antao and other experts say. Rather, it's an approach. What's more, there's even less clarity around DevOps roles. It's not surprising, then, to hear DevOps described as "a thing everybody wants but nobody wants to do," says Mark Warren, director of product marketing for source code management and collaboration platform maker Perforce. Release managers work to address the management and coordination of the product from development through production," says Nagisetty. "Typically they work on more of the technical details and hurdles in which a traditional project manager would not be involved." Release managers oversee the coordination, integration, and flow of development, testing, and deployment to support continuous delivery. They're focused not just on creating, but also maintaining the end-to-end application delivery tool chain, Automation architects have a comprehensive automation role across DevOps tools and cloud platforms  developer/tester dramatically increases the scope of responsibilities. The developers are responsible not only for turning new requirements into code, but unit testing, deployment, and ongoing monitoring as well. "They don't just build code to a spec and throw [it] over the wall to the QA team," says PwC's Antao. While the quality assurance (QA) function is often part of software development, a new type of control becomes necessary when organizations embrace DevOps. The need for QA testers is replaced by a need for XA experts charged with ensuring that all new features and functions are released with the end user experience in mind. "The current expectation for QA roles is to test functionality, but the role needs to evolve to include user experience testing," Mizrachi says. In traditional waterfall development, system security is largely an afterthought. It's a "nonfunctional requirement" that, like quality assurance, is often tacked on at the end of system development, says PwC's Antao. DevOps-minded shops have security engineers working side by side with developers, embedding their recommendations much earlier on in the process. "They build security into the product, not at the end," says Antao. Traditional IT operations or systems administration professionals focus on keeping the servers running. "In general, their machines work best when there is little change," says Perforce's Warren. "The most common cause of interrupted service is likely to be the applications being run on those servers, so the admins introduce very stringent controls on what is allowed to run on their precious servers. They require extensive QA in a staging environment, voluminous handover and operations documentation, and very infrequent releases." Traditional developers have been heads-down coders with no involvement in post-production systems. The fast-paced DevOps environment requires a new breed. "Those operations or admin experts are now getting involved throughout the development process," Warren says. "Today, it wouldn't be uncommon for these operations experts—sometimes called DevOps engineers—to be involved in sprint planning to ensure that improved quality of service, resource management or security are prioritized alongside those delivered from the [business]." Whether their traditional background is IT development or operations, "DevOps requires utility team members who can operate effectively across development platforms, tools, networks, servers and databases, and even across development and support," says Leitao. An effective transition to the DevOps environment is more about people and they way they work together to deliver products in new ways than it is about technology. By recruiting or retraining IT professionals to fill these seven DevOps roles, IT leaders can take an important first step toward achieving a successful DevOps delivery model.
  • #20 Releae management – risks , depandencies and compliance issues / coordination / automation A successful journey starts with the right people in the right DevOps roles with the right skills—and a willingness to collaborate.