The Rationale for Continuous Delivery
Independent SW Developer & Consultant, and Founder & Director of Continuous Delivery Ltd
Many people working in software development spend their careers without seeing what good looks like. Our history is littered with inefficient processes creating poor quality output, too late to capitalize on the expected business value. How have we got to this state? How do we get past it? What does good really look like?
Continuous Delivery changes the economics of software development, find out how and why.
Continuous Behavior - BDD in Continuous Delivery
Coach, Trainer and BDD addict, Creator of SpecFlow
This session is about my experience with Behavior Driven Development (BDD) in a Continuous Delivery model. Many teams use BDD for automated UI testing. Although UI testing might be an important element of your verification pipeline, it is slow, brittle and costly. But in the era of modern software development we would like to have fast feedback and quick reactions. A continuous delivery/deployment (CD) model can support this well. But what does it look like with BDD then? Can BDD help implementing CD?
This session is an attempt to define the role of BDD in CD. What works, what does not? Continuous delivery should mean continuous quality for the delivery team. What kind of quality criteria do we want to target with CD and how is it supported by BDD?
Continuous Testing in a Microservices Architecture
Technical Agile Coach at Praqma
Microservices is a way to organize your system that provides both opportunities and difficulties for testing. It’s becoming really popular as an approach to dividing work between teams and exploiting Conway’s Law.
In this talk I’d like to share some concrete automated testing techniques that I’ve found useful in this context, including selective deployment, internal APIs and event monitoring. I’ll also relate some challenges when enabling teams to test and deploy their services independently of one another in a Continuous Delivery pipeline.
Monitoring in Production
Test Architect and Department Manager at Levi Nine
It’s not only the developers’ job to monitor system performance, testers can learn and help also… Performance and functional testing are things, we, as testers, talk about often. We write some tests, execute them, get metrics, tune or fix system… and so on. But what happens when the product goes “live”? Are we observing what is happening with it? Users have funny and unpredictable ways of using a product. Are we aware how is our system behaving on production?
My daily job consists of monitoring our system in production and learning for it. In this talk I’ll explain what added value a tester brings up in monitoring system, and what they can learn by doing this. Some benefits include:
- oracles for our performance tests
- learning about system behavior
- observing (potential) errors in the systems
- preventing bugs getting to users before we fix them.
I’ll show you which tools we use at our projects, how we use them and what can we see by observing them all together, because one tool is never enough.
Continuous Integration in the IoT world - "Mission Impossible" or "A last hope"?
QA Lead at Petcube
It is predicted that till 2025 there will be over 75 billion devices spewing 180 zettabytes of data and generating up to 6 trillion dollars. That enormous increase forces companies to introduce continuous approach to deliver product as fast as possible and be able to compete on the market.
The main question is how to test application for end user among so much hardware equipment and ecosystems combining HW, FW, mobile devices and complex backend architecture? Considering all factors and possible obstacles is it for companies a real “A New Hope” for companies or just simply “Mission Impossible”?
I will take the participants on a journey to the IoT world. It will be a talk about the challenges that any tester will face at some point. I will present the dangers, risks and snares but also good practices and practical approach to E2E test automation for the IoT solutions in CI approach.
Everything in a context of bulbs, switches and exploding devices. Technical examples will be presented using Python languages.
Linkedin: Dawid Pacia
Tue, 15 May 2018, 13:00—17:30, Gothenburg View Address
CoDers Who Test - Afternoon Conference
At CoDers Who Test we will focus on tackling one of the most important aspects of successful Continuous Delivery pipelines : Just how should we go about automating our testing procedures to align with our DevOps and Continuous Delivery frameworks?
The conference will feature a series of talks for a whole afternoon. Come and discover how adopting best practices and better tooling can get your Continuous Delivery pipelines flowing like never before!
To get ready for the conference and make the most out of it, you can also choose to attend additional workshops. More details about the different ticket options is available below.
Pre-conference morning workshops
BDD Vitals – Writing better BDD scenarios by Gáspár Nagy
Behavior Driven Development is an agile development technique that improves collaboration between technical and non-technical members of the team, by exploring the problem using examples. These examples then get turned into executable specifications, often called ‘scenarios’. The scenarios should be easy to read by all team members, but writing them expressively is harder than it looks!
In this half-day workshop you will learn how to write expressive BDD scenarios. We’ll start by giving you a very brief introduction to BDD/ATDD. Then we discover where the BDD scenarios come from: how to structure the requirements and illustrate them with examples, so that the team has a shared understanding about what the expected behavior is.
The examples will be turned into scenarios then. But how? You’ll then be introduced to different writing styles by reviewing prepared scenarios. And obviously, you’ll get a chance to write your own scenarios based on examples that we’ll bring along.
We’ll be using Gherkin, the syntax used by Cucumber and SpecFlow but you won’t need a computer. And, you’ll leave with a checklist of tips that you can use the next time you sit down to write a scenario.
Testing in Continuous Delivery and DevOps by Emily Bache & Samuel Ytterbrink
DevOps is about creating a culture where everyone is aligned towards the goal of helping the business to win. Continuous Delivery is a big part of achieving this. You need a great deal of automation in the development process: build, deployment, monitoring, and of course test automation. Having said that, manual testing is not an optional extra, and testing skills are really valuable in the development team. In fact, testing is a central activity for making the whole process work.
In this workshop we’ll mix theory with hands-on exercises, examining the place of testing in Continuous Delivery. It’s a chance for you to explore where you could put testing activities in a deployment pipeline. We’ll talk about how to optimize the pipeline design and discuss what metrics you could use to monitor it.
One-day training course by Dave Farley on May 14th
Introduction to Continuous Delivery
This course is designed to introduce participants to the fundamentals of Continuous Delivery. The content ranges from introductory to expert-level and from senior management level, to in-depth technical detail.
The course includes 3 modules, and each module is a mix of presentations, workshops and interactive sessions.
Fundamentals 1: CD is widely seen as “state-of-the-art” in software development. CD changes the economics of software development. This module provides a strong rationale for why CD works. It describes the CD approach and why it works, comparing CD with other approaches. This is the value proposition for the approach.
Fundamentals 2: At its most fundamental CD is about enabling businesses to become more experimental, to learn and adapt to change. Why is this important? What does it take? How does that impact your business? How does this affect the way in which teams work?
Acceptance Testing: Acceptance testing in CD helps the team focus on the value that stories deliver to users. This module describes the qualities of effective Acceptance tests, provides an approach to designing tests as “Executable Specifications” for the behavior of a system that are robust in the face of changes to the system-under-test. This is a technical module at the level of software design with a few simple code examples.
Introduction to Continuous Delivery Course Dave Farley
Workshop registration & breakfast
Continuous Behavior - BDD in Continuous Delivery Gáspár Nagy
Continuous Testing in a Microservices Architecture Emily Bache & Samuel Ytterbrink
Welcome by Samuel Ytterbrink
The Rationale for Continuous Delivery Dave Farley
Monitoring in Production Mirjana Kolarov
Break - Cake and coffee
Continuous Integration in the IoT World - "Mission Impossible" or "A last hope"? Dawid Pacia
Continuous Testing in a Microservices Architecture Emily Bache
Continuous Behavior - BDD in Continuous Delivery Gáspár Nagy
Networking - drinks & snacks
Want to sponsor this event as well? Contact us