Better Software West 2017 - DevOps
Monday, June 5
Building Continuous Delivery Pipelines: A Workshop
Although continuous delivery (CD) and DevOps are growing in popularity, not much practical information is available about how to get started. This hands-on technical tutorial is the place to get your feet wet and your questions answered. For this workshop, bring a laptop with the appropriate software installed (see note below), and Ken Mugrage will provide everything else you need. You will configure a complete continuous delivery pipeline from source code commit through deployment. Learn when to run each common type of automated test for the fastest possible feedback and how to run tests...
Tuesday, June 6
The Architecture of Microservices
PreviewMicroservices—one of the latest software architecture styles—promises to deliver benefits such as fast and easy deployment, ease of testing, fine-grained scalability, architectural modularity, and high overall agility. Unfortunately, a lot of complexity comes coupled with these benefits. In this product-agnostic architecture tutorial, Mark Richards provides you with an understanding of the microservices architecture style and what hybrids and alternatives exist. This helps guide you in making the right architecture and design decisions for your organization. Mark discusses the core...
Stop Saying DevOps and Start Applying Continuous Delivery Principles
DevOps. You think you need it because the market is telling you, but the market is confused (and self-perpetuating). How is your organization implementing efforts in agile, Continuous Delivery, and now DevOps when they appear to be selling the same dream? Max starts with disambiguating DevOps and understanding our need as software engineers and practitioners. We still demand the same output: improved time to market through the incremental delivery of quality software. Next he shows how to conduct your own Value Stream Mapping exercise—a crucial tool ThoughtWorks uses to identify waste and...
What DevOps Means for Testers
DevOps is more than a buzzword or a passing fad. It's a radically new approach to rapidly delivering high-quality software applications. However, many organizations don’t fully grasp the magnitude of this change or what it means for everyone involved in the software development lifecycle. Jeffery Payne says that DevOps—when done right—drives higher quality and efficiency into software development, software testing, and application management activities. It empowers teams to remove impediments to quality and productivity throughout the entire software lifecycle. However, when DevOps is done...
Docker Fundamentals Jumpstart
PreviewDocker, a mechanism for low-overhead virtualization, is emerging as a key aspect of DevOps architectures. Interest in Docker—with its lightweight, portable, “build once, configure once, and run anywhere” containers—is growing. If you want to jumpstart your Docker skills, join Ali Hussain to gain first-hand knowledge to help your organization streamline workflows, speed up product releases, and reduce hardware investments. He discusses the basics of Docker: concepts, terminology, commands, must-know features, and real-world examples of Docker projects. Ali presents and demonstrates...
Wednesday, June 7
Stamp Out Agile and DevOps Bottlenecks
PreviewThe most critical step in the agile transformation and DevOps adoption process is identifying the bottlenecks in the product delivery cycle. So, how do you go about finding and eliminating those dreaded bottlenecks? Tanya Kravtsov shares her experiences along with tools and methods that facilitate the discovery process while encouraging innovative thinking among team members. Join Tanya to explore ways you can use Mind Maps, Innovation Games (Speed Boat, Buy a Feature, and more), Stick Figure Process Flows, and Team Collaboration to identify, prioritize, and resolve bottlenecks....
Demystifying DevOps Adoption
Many organizations are either talking about DevOps or already working toward its adoption. Books and conferences around DevOps abound, and it seems that DevOps engineers are in high demand. What impact does adopting DevOps have on a company and its people? What does DevOps look like from the inside out? What does a DevOps engineer do? What must you learn and do to ensure you’re not left behind? Adam Auerbach answers these questions, explains the overall DevOps movement, and discusses how DevOps is driving changes to organizational culture and structure. He covers the core principles of the...
Architectural Patterns for an Efficient Delivery Pipeline
Continuous integration has made development faster and more reliable. However, as codebases expand, organizations are finding that their build pipelines slow down dramatically. One of the most common reasons is that we often rebuild parts of the system that don't need to be rebuilt. This can happen when the code structure isn’t a faithful representation of the logical dependencies between the different parts. This prevents the pipeline from detecting which parts of the system are impacted by a change and which ones aren’t. Abraham Marin-Perez describes common scenarios in which the...
Implement DevOps Like a Unicorn—Even If You’re Not One
PreviewEtsy, Netflix, and the unicorns have done great things with DevOps. Although most people don't work at a unicorn, they still want to combine agility and stability. To close the gap between developers and operations, Mason Leung says his company runs operation workshops, blogs about infrastructure, and experiments with different tools—and are solving the same problems as the unicorns only on a smaller scale. Mason explains that you don't get to millions of requests without going through the first several hundred. Ideas you can take from unicorns include how to use containers to...
Integrate Security into DevOps
Software security often evokes negative feelings among software developers because it is associated with additional programming effort, uncertainty, and road-blocking activity on a fast release cycle. Secure software developers must follow a number of guidelines that, while intended to satisfy regulations, can be very restrictive and difficult to understand. Hasan Yasar believes that the Secure DevOps movement combats this negative view by shifting the paradigm. Rather than blindly following required security practices and identified security controls, Secure DevOps developers learn how to...
You Can’t Buy DevOps … You Have to Sell It
In an industry where fads come and go, people you work with probably think that DevOps is just another flash in the pan, another techno-management fad. You, however, know adopting a DevOps culture will help your organization, and you need to be able to convince the rest of the organization. Since DevOps is mostly about culture, it’s critical that you have organizational support to implement it. Ken Mugrage shares peer-reviewed research, stories from real companies, and other solid evidence that you can use to make the case for adopting a DevOps culture. Unfortunately, pure logic and...
Microservices and Docker: Foundation for a New Generation of Applications
Docker has matured and expanded from its primary use in the build/test stages into production deployments. Similarly, microservices are expanding from use mostly for greenfield web services to use in the enterprise as organizations explore ways to decompose their monolith to support faster release cycles. Anders Wallgren says that running microservices-based applications in a containerized environment makes a lot of sense—for both build and test, and from a runtime perspective in production. Docker and microservices are natural companions, forming the foundation for a new generation of...
Thursday, June 8
Continuous Delivery of Innovation and Quality
High performing DevOps organizations deploy 200 times more frequently than lower performers. So, it is no surprise that these organizations are known for their innovation and quality. Low performing DevOps teams miss the opportunity to continuously test their ideas and integrate feedback. Many organizations fail to achieve continuous delivery due to limitations in their testing process and strategy. Stacy Kirk details how to start or optimize quality in your DevOps lifecycle for continuous delivery of innovative applications. She explains how to foster a culture of innovation that will...
Continuous Testing in DevOps
PreviewAchieving continuous testing is a daunting task for many test teams still struggling with combining agile, test automation, and increased speed. We know that change is rarely easy. Fixing or getting rid of some practices is tough. However, one-step-at-a-time change can take you far and fast. To jumpstart your team, Michael Hackett shares learnings from four LogiGear clients in various stages of continuous integration, continuous testing, and continuous delivery. Failures in one organization ranged from naively thinking that automating every manual script was a good thing to...
Pipeline as Code: A Model for Scaling CI/CD
PreviewMany companies begin their journey into DevOps by using open-source tools to stand up simple but effective continuous integration (CI) and continuous delivery (CD) pipelines for one or two small, leading-edge teams—as a proof-of-concept. These early successes are often followed by an overwhelming demand for more—more teams, more functionality, more traceability, and faster turnaround. DevOps teams may soon find that their initial effort, as effective as it was, does not scale consistently or quickly. After all it was only a proof of concept. This inability to scale slows the...
Agile at the Intersection of Mobile, Cloud, and the Internet of Things
The Internet of Things (IoT) will be a $1.7 trillion market by 2020. Don MacIntyre explains how agile is being used in Internet of Things systems—often combined with mobile and cloud technologies. Don reviews how agile is successfully being used today in a wide range of development environments, including software as a service applications, large and complex mission critical systems, and for both mobile software and hardware. Don looks closely at IoT, examines how it is disrupting many traditional markets, and explores how traditional device manufacturers are applying agile. Learn which...
DevOps: The Key to Quality-Driven Development
Rapidly evolving business demands and competitive environments pose challenges to increase the speed of delivery and do better with less. This often results in sacrificing quality and failing to understand that a minimum viable product must be “viable” to the customer. When organizations realize this, they often turn to DevOps practices that are rapidly becoming the new norm. Gajan Pathmanathan discusses how to ensure quality-driven development through DevOps while maintaining delivery speed. He focuses on the transition an organization needs to make to ship “quality” software frequently,...
Metrics to Assess Risk in DevOps
Preview
As software development becomes more value-focused, the need for a fluid production process emerges. That process is DevOps. However, when the number of release cycles rises, so does the risk of disruptive code entering the system and eroding the value that development creates. Traditional risk assessment techniques create a false sense of security. Risk is not a simple “go or no-go” decision; it is an input to an informed decision that requires extensive risk analysis. As the velocity increases and the focus on user acceptance and functional validation increases, the...
DevOps and Regulatory Compliance—Like Oil and Water or Peanut Butter and Jelly?
DevOps and regulatory compliance are two critically important ingredients in today’s connected organizations. DevOps enables you to move quickly and respond to change in an era where change is increasing at an exponential rate with no sign of slowing down. Regulatory compliance ensures that your organization takes the appropriate steps to follow relevant laws that appear to require adding burdensome processes and controls to your software development lifecycle. Brandon Carlson acknowledges that at first glance these two ideas seem incompatible, but they actually go together like peanut...
DevOps in an Embedded and Regulated Environment
Working in embedded environments greatly restricts the tools available for a DevOps pipeline. A regulated environment changes the processes a development team can use to deliver software. This combination results in a highly restricted environment that forces the team back to first principles, searching for a process that actually works, and tools to help foster iteration and rapid feedback. Arjun Comar describes the options, identifies a set of useful tools, and discusses the challenges facing any team working on DevOps in necessarily unfavorable environments. Together, examine Arjun’s...