Tomas Riha discusses the challenges of scaling continuous delivery. Initially, their process worked well with a small team but failed as they grew. Key lessons include: making environments portable across infrastructure to allow scaling; building quality through an architecture and test strategy that optimize lead time; and empowering cross-functional teams through consensus on practices and autonomous environments.
Mainframe DevOps: A Zowe CLI-enabled RoadmapDevOps.com
The Zowe open source framework, hosted by the Linux Foundation's Open Mainframe Project, is often referred to as a Swiss Army knife for mainframe modernization, but where to begin? This session, which is based on findings from numerous Design Thinking workshops, will help DevOps champions and mainframe leaders jumpstart their modernization journeys.
We’ll explore a few high-value use cases like plugging into enterprise CI/CD pipelines and incorporating off-platform tools like code quality. And by addressing practical considerations like Zowe installation, set-up and support, this session will equip attendees with the information they need to become mainframe DevOps mobilizers.
Understand the concept of DevOps by employing DevOps Strategy Roadmap Lifecycle PowerPoint Presentation Slides Complete Deck. Describe how DevOps is different from traditional IT with these content-ready PPT themes. The slides also help to discuss DevOps use cases in the business, roadmap, and its lifecycle. Explain the roles, responsibilities, and skills of DevOps engineers by utilizing this visually appealing slide deck. Demonstrate DevOp roadmap for implementation in the organization with the help of a thoroughly researched PPT slideshow. Describe the characteristics of cloud computing, its benefits, and risks with the aid of this PPT layout. Utilize this easy-to-use DevOps transformation strategy PowerPoint slide deck to showcase the difference between cloud and traditional data centers. This ready-to-use PowerPoint layout also discusses the roadmap to integrate cloud computing in business. Highlight the usages of cloud computing and deployment models with the help of visual attention-grabbing DevOps implementation roadmap PowerPoint slides. https://bit.ly/3eFxYYr
Redefining cloud computing again linthicum with bonusDavid Linthicum
In this session we’ll look at what cloud computing is, and what it should be. The way it’s defined today, and how should be defined tomorrow. We’ll focus on the emerging patterns of cloud computing, including changing business value and new patterns of cloud computing technology that are emerging.
EduXFactor presents to you a comprehensive up-to-date DevOps certification program. This course will empower you with job-relevant skills and power you ahead in your career.
With this course, master various aspects of software development, operations, continuous integration, continuous delivery, automated configuration management, test, and deployment using DevOps tools like Git, Docker, Jenkins, Ansible, Kubernetes, Puppet & Nagios..
Packed with hands-on exercise for every module, this course is suitable for software developers, technical project managers, architects, operations support, deployment engineers, IT managers, and development managers.
Mainframe DevOps: A Zowe CLI-enabled RoadmapDevOps.com
The Zowe open source framework, hosted by the Linux Foundation's Open Mainframe Project, is often referred to as a Swiss Army knife for mainframe modernization, but where to begin? This session, which is based on findings from numerous Design Thinking workshops, will help DevOps champions and mainframe leaders jumpstart their modernization journeys.
We’ll explore a few high-value use cases like plugging into enterprise CI/CD pipelines and incorporating off-platform tools like code quality. And by addressing practical considerations like Zowe installation, set-up and support, this session will equip attendees with the information they need to become mainframe DevOps mobilizers.
Understand the concept of DevOps by employing DevOps Strategy Roadmap Lifecycle PowerPoint Presentation Slides Complete Deck. Describe how DevOps is different from traditional IT with these content-ready PPT themes. The slides also help to discuss DevOps use cases in the business, roadmap, and its lifecycle. Explain the roles, responsibilities, and skills of DevOps engineers by utilizing this visually appealing slide deck. Demonstrate DevOp roadmap for implementation in the organization with the help of a thoroughly researched PPT slideshow. Describe the characteristics of cloud computing, its benefits, and risks with the aid of this PPT layout. Utilize this easy-to-use DevOps transformation strategy PowerPoint slide deck to showcase the difference between cloud and traditional data centers. This ready-to-use PowerPoint layout also discusses the roadmap to integrate cloud computing in business. Highlight the usages of cloud computing and deployment models with the help of visual attention-grabbing DevOps implementation roadmap PowerPoint slides. https://bit.ly/3eFxYYr
Redefining cloud computing again linthicum with bonusDavid Linthicum
In this session we’ll look at what cloud computing is, and what it should be. The way it’s defined today, and how should be defined tomorrow. We’ll focus on the emerging patterns of cloud computing, including changing business value and new patterns of cloud computing technology that are emerging.
EduXFactor presents to you a comprehensive up-to-date DevOps certification program. This course will empower you with job-relevant skills and power you ahead in your career.
With this course, master various aspects of software development, operations, continuous integration, continuous delivery, automated configuration management, test, and deployment using DevOps tools like Git, Docker, Jenkins, Ansible, Kubernetes, Puppet & Nagios..
Packed with hands-on exercise for every module, this course is suitable for software developers, technical project managers, architects, operations support, deployment engineers, IT managers, and development managers.
From the the teams struggling with DevOps to experienced professionals trying to make a shift to DevOps, this presentation helps in how understanding how DevOps makes Deliveries faster and accurate
A high level introduction to DevOps. Explains what it is, how popular DevOps has become, why DevOps is popular, how DevOps differs from traditional approaches and some next steps to implementation.
Showcase development processes and methods with our content ready Devops PowerPoint Presentation Slide. Focus on rapid application delivery using our visually appealing development and operations PPT visuals. The operating system PowerPoint complete deck comprises self-explanatory and editable PowerPoint templates such as need for DevOps, best practices, criteria for choosing a pilot project, DevOps goals, timeline for DevOps transformation, current state future state, 30-60-90 day plan, roadmap for DevOps, transformation post successful DevOps Implementation, RACI matrix, dashboard to name a few. Users can easily customize all the templates as per their specific project needs. Furthermore, you can also use this IT operations management presentation deck to encourage your team to adopt DevOps culture practices and tools. Demonstrate DevOps goals like Increase automation and standardize the process, reduce cost effort & time to market and so on. Download our system development lifecycle PowerPoint templates to present ways to make improved products faster for greater client satisfaction. Handle deficiencies with our DevOps Powerpoint Presentation Slides. Initiate action to acquire desired assets. https://bit.ly/3y8q8NC
Showcase the strategies used in software upgrades by employing our professionally designed Deployment Strategies PowerPoint Presentation Slides. Discuss the approaches of deployment along with assumptions and risks with the help of the application deployment PPT slideshow. The slides also cover the pattern of rolling deployment. Take the assistance of software update strategy PPT theme and describe the architecture of the rolling deployment. Explain the blue-green deployment strategies with examples. Showcase how to create blue-green deployment strategies with the help of a ready-to-use PPT slide deck. Take the assistance of strategic deployment PPT templates and explain the working of the canary deployment environment. Captivate and inform your audience at the same time by using our readily available PPT slideshow. Guide your audience through a canary deployment pattern by using ready-to-use PPT layouts. It also represents the technique for testing the new version of the application. The slides also represent the comparison of deployment strategies on different bases. https://bit.ly/3vWRPsv
The pursuit for the perfect synchrony between software development and IT operations is still ongoing, and striking the balance won’t happen any time soon. Understand and address these 5 common DevOps challenges to achieve a higher- functioning and collaborative organization.
Structuring the right team for DevOps without Re-Organization. I presented this at DevOps Fusion 2015. Tips include rapid feedback loop, value stream analysis, etc.
Engineering DevOps to meet Business GoalsMarc Hornbeek
This talk explains an approach to engineer DevOps to meet specific business transformation goals for enterprises on their journey towards digitization.
Driving on from Agile, organisations are looking to
dramatically increase the rate at which they deliver
new software updates to their customers / business
users by embracing DevOps. This presentation will
explain the Micro Focus approach to DevOps and
how we can help organisations like yours as they
move to Continuous Delivery.
Introduces DevOps; the cultural and professional phenomenon that is rocking the IT world. By encouraging better collaboration, communication and integration between development and operational teams, DevOps is enabling organizations to build, deploy and operate quality software faster.
DevOps - an Agile Perspective (at Scale)Brad Appleton
by Brad Appleton, Agile Day Chicago 2018, October 26 2018;
This presentation gives a comprehensive introduction to DevOps, for Agile development practitioners. In 2018, there are many misunderstandings about Agile & DevOps and how they relate to one another. Too many think of Agile (development) as primarily "Scrum", and that DevOps is Continuous Integration & Delivery (both of which are wrong). This presentation describes the meaning, origin & history of DevOps from an Agile development perspective.
Based on recent research findings from the EMA Worldwide DevOps 2020 survey, leading IT analyst firm Enterprise Management Associates (EMA) provides insights into where DevOps is headed.
Principles and Practices in Continuous Deployment at EtsyMike Brittain
Presented at ALM Forum 2014.
Like what you've read? We're frequently hiring for a variety of engineering roles at Etsy. If you're interested, drop me a line or send me your resume: mike@etsy.com.
http://www.etsy.com/careers
From the the teams struggling with DevOps to experienced professionals trying to make a shift to DevOps, this presentation helps in how understanding how DevOps makes Deliveries faster and accurate
A high level introduction to DevOps. Explains what it is, how popular DevOps has become, why DevOps is popular, how DevOps differs from traditional approaches and some next steps to implementation.
Showcase development processes and methods with our content ready Devops PowerPoint Presentation Slide. Focus on rapid application delivery using our visually appealing development and operations PPT visuals. The operating system PowerPoint complete deck comprises self-explanatory and editable PowerPoint templates such as need for DevOps, best practices, criteria for choosing a pilot project, DevOps goals, timeline for DevOps transformation, current state future state, 30-60-90 day plan, roadmap for DevOps, transformation post successful DevOps Implementation, RACI matrix, dashboard to name a few. Users can easily customize all the templates as per their specific project needs. Furthermore, you can also use this IT operations management presentation deck to encourage your team to adopt DevOps culture practices and tools. Demonstrate DevOps goals like Increase automation and standardize the process, reduce cost effort & time to market and so on. Download our system development lifecycle PowerPoint templates to present ways to make improved products faster for greater client satisfaction. Handle deficiencies with our DevOps Powerpoint Presentation Slides. Initiate action to acquire desired assets. https://bit.ly/3y8q8NC
Showcase the strategies used in software upgrades by employing our professionally designed Deployment Strategies PowerPoint Presentation Slides. Discuss the approaches of deployment along with assumptions and risks with the help of the application deployment PPT slideshow. The slides also cover the pattern of rolling deployment. Take the assistance of software update strategy PPT theme and describe the architecture of the rolling deployment. Explain the blue-green deployment strategies with examples. Showcase how to create blue-green deployment strategies with the help of a ready-to-use PPT slide deck. Take the assistance of strategic deployment PPT templates and explain the working of the canary deployment environment. Captivate and inform your audience at the same time by using our readily available PPT slideshow. Guide your audience through a canary deployment pattern by using ready-to-use PPT layouts. It also represents the technique for testing the new version of the application. The slides also represent the comparison of deployment strategies on different bases. https://bit.ly/3vWRPsv
The pursuit for the perfect synchrony between software development and IT operations is still ongoing, and striking the balance won’t happen any time soon. Understand and address these 5 common DevOps challenges to achieve a higher- functioning and collaborative organization.
Structuring the right team for DevOps without Re-Organization. I presented this at DevOps Fusion 2015. Tips include rapid feedback loop, value stream analysis, etc.
Engineering DevOps to meet Business GoalsMarc Hornbeek
This talk explains an approach to engineer DevOps to meet specific business transformation goals for enterprises on their journey towards digitization.
Driving on from Agile, organisations are looking to
dramatically increase the rate at which they deliver
new software updates to their customers / business
users by embracing DevOps. This presentation will
explain the Micro Focus approach to DevOps and
how we can help organisations like yours as they
move to Continuous Delivery.
Introduces DevOps; the cultural and professional phenomenon that is rocking the IT world. By encouraging better collaboration, communication and integration between development and operational teams, DevOps is enabling organizations to build, deploy and operate quality software faster.
DevOps - an Agile Perspective (at Scale)Brad Appleton
by Brad Appleton, Agile Day Chicago 2018, October 26 2018;
This presentation gives a comprehensive introduction to DevOps, for Agile development practitioners. In 2018, there are many misunderstandings about Agile & DevOps and how they relate to one another. Too many think of Agile (development) as primarily "Scrum", and that DevOps is Continuous Integration & Delivery (both of which are wrong). This presentation describes the meaning, origin & history of DevOps from an Agile development perspective.
Based on recent research findings from the EMA Worldwide DevOps 2020 survey, leading IT analyst firm Enterprise Management Associates (EMA) provides insights into where DevOps is headed.
Principles and Practices in Continuous Deployment at EtsyMike Brittain
Presented at ALM Forum 2014.
Like what you've read? We're frequently hiring for a variety of engineering roles at Etsy. If you're interested, drop me a line or send me your resume: mike@etsy.com.
http://www.etsy.com/careers
Functional Continuous Integration with Selenium and HudsonDavid Jellison
This slide deck illustrates Constant Contact's approach to running sets of regression test suites on a regular schedule using SeleniumRC and Hudson. Hudson is a continuous integration server designed for building applications and running unit test unattended, and storing run report and metric artifacts. Hudson can also process a variety of different types of jobs, including running SeleniumRC Java test cases using JUnit as the test runner. SeleniumRC can be run unattended on multiple slave computers in parallel, each running SeleniumRC, to quickly run through many test cases.
At Findly we know test automation is key for continuous delivery. However, in the context of a microservices architecture, our monolithic end-to-end test suites have still been limiting our ability to achieve a truly "continuous" pace of delivery. This talk will explain the principles, processes and techniques we are now using to build test suites for microservices and enable continuous delivery at Findly.
Presented at Auckland Continuous Delivery meetup, May 2016 (http://www.meetup.com/Auckland-Continuous-Delivery/events/230864194/).
Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S...Skytap Cloud
To gain a competitive advantage in today's hyper competitive markets, businesses must constantly strive to develop, test, and release better software faster. This is made possible by means of continuously integrating, testing, and delivering new applications.
In this webinar, Skytap and Orasi will share tips to improve software quality and velocity with the automated creation and management of on-demand, scalable test environments. It will focus on best practices for continuous integration through the joint use of HP Application Lifecycle Management (ALM), Jenkins and Skytap.
Specifically you learn how to:
-Integrate Jenkins with HP ALM
-Extend Dev/Test workloads to the cloud
-Integrate build automation with automated test management
Slides from STV Tech Talks (Glasgow, UK) - 27 August 2013
--
Based on the experience of leading the current initiative to move towards Continuous Delivery at Skyscanner, I presented a view on 5 key focus areas that must be considered to make Continuous Delivery an achievable objective within a very complex Service Oriented Architecture.
Cloud continuous integration- A distributed approach using distinct servicesAndré Agostinho
In cloud computing services the ability to share and deliver services, scale computing resources and distribute data storage and files requires a deployment process aligned with agility and scalability. The continuous integration can automate process reducing operational effort, improving code quality and reducing time to market. This presentation shows a proposal for distributed continuous integration to use differents cloud computing services, from planning to execution of scenarios.
Still after over 10 years its hard to do good test automation. This presentation highlights what and how we need to approach test automation in order to create reliable, resilient and repeatable tests.
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
In his public lecture, Christian Timmerer provides insights into the fascinating history of video streaming, starting from its humble beginnings before YouTube to the groundbreaking technologies that now dominate platforms like Netflix and ORF ON. Timmerer also presents provocative contributions of his own that have significantly influenced the industry. He concludes by looking at future challenges and invites the audience to join in a discussion.
UiPath Test Automation using UiPath Test Suite series, part 6DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 6. In this session, we will cover Test Automation with generative AI and Open AI.
UiPath Test Automation with generative AI and Open AI webinar offers an in-depth exploration of leveraging cutting-edge technologies for test automation within the UiPath platform. Attendees will delve into the integration of generative AI, a test automation solution, with Open AI advanced natural language processing capabilities.
Throughout the session, participants will discover how this synergy empowers testers to automate repetitive tasks, enhance testing accuracy, and expedite the software testing life cycle. Topics covered include the seamless integration process, practical use cases, and the benefits of harnessing AI-driven automation for UiPath testing initiatives. By attending this webinar, testers, and automation professionals can gain valuable insights into harnessing the power of AI to optimize their test automation workflows within the UiPath ecosystem, ultimately driving efficiency and quality in software development processes.
What will you get from this session?
1. Insights into integrating generative AI.
2. Understanding how this integration enhances test automation within the UiPath platform
3. Practical demonstrations
4. Exploration of real-world use cases illustrating the benefits of AI-driven test automation for UiPath
Topics covered:
What is generative AI
Test Automation with generative AI and Open AI.
UiPath integration with generative AI
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
GridMate - End to end testing is a critical piece to ensure quality and avoid...ThomasParaiso2
End to end testing is a critical piece to ensure quality and avoid regressions. In this session, we share our journey building an E2E testing pipeline for GridMate components (LWC and Aura) using Cypress, JSForce, FakerJS…
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!SOFTTECHHUB
As the digital landscape continually evolves, operating systems play a critical role in shaping user experiences and productivity. The launch of Nitrux Linux 3.5.0 marks a significant milestone, offering a robust alternative to traditional systems such as Windows 11. This article delves into the essence of Nitrux Linux 3.5.0, exploring its unique features, advantages, and how it stands as a compelling choice for both casual users and tech enthusiasts.
Climate Impact of Software Testing at Nordic Testing DaysKari Kakkonen
My slides at Nordic Testing Days 6.6.2024
Climate impact / sustainability of software testing discussed on the talk. ICT and testing must carry their part of global responsibility to help with the climat warming. We can minimize the carbon footprint but we can also have a carbon handprint, a positive impact on the climate. Quality characteristics can be added with sustainability, and then measured continuously. Test environments can be used less, and in smaller scale and on demand. Test techniques can be used in optimizing or minimizing number of tests. Test automation can be used to speed up testing.
Essentials of Automations: The Art of Triggers and Actions in FMESafe Software
In this second installment of our Essentials of Automations webinar series, we’ll explore the landscape of triggers and actions, guiding you through the nuances of authoring and adapting workspaces for seamless automations. Gain an understanding of the full spectrum of triggers and actions available in FME, empowering you to enhance your workspaces for efficient automation.
We’ll kick things off by showcasing the most commonly used event-based triggers, introducing you to various automation workflows like manual triggers, schedules, directory watchers, and more. Plus, see how these elements play out in real scenarios.
Whether you’re tweaking your current setup or building from the ground up, this session will arm you with the tools and insights needed to transform your FME usage into a powerhouse of productivity. Join us to discover effective strategies that simplify complex processes, enhancing your productivity and transforming your data management practices with FME. Let’s turn complexity into clarity and make your workspaces work wonders!
Threats to mobile devices are more prevalent and increasing in scope and complexity. Users of mobile devices desire to take full advantage of the features
available on those devices, but many of the features provide convenience and capability but sacrifice security. This best practices guide outlines steps the users can take to better protect personal devices and information.
How to Get CNIC Information System with Paksim Ga.pptxdanishmna97
Pakdata Cf is a groundbreaking system designed to streamline and facilitate access to CNIC information. This innovative platform leverages advanced technology to provide users with efficient and secure access to their CNIC details.
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionAggregage
Join Maher Hanafi, VP of Engineering at Betterworks, in this new session where he'll share a practical framework to transform Gen AI prototypes into impactful products! He'll delve into the complexities of data collection and management, model selection and optimization, and ensuring security, scalability, and responsible use.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Pushing the limits of ePRTC: 100ns holdover for 100 daysAdtran
At WSTS 2024, Alon Stern explored the topic of parametric holdover and explained how recent research findings can be implemented in real-world PNT networks to achieve 100 nanoseconds of accuracy for up to 100 days.
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
2. Tomas Riha
Architect @ VGT/WirelessCar
Passionate about creativity, change and improvement
Horrible at following instructions and performing repetitive tasks
MAJOR Project Liability
mail: triha74@gmail.com
twitter: @TomasRihaSE
blog: continuous-delivery-and-more.blogspot.com
slides: www.slideshare.net/TomasRiha
3. Three Years ago
New Telematics Delivery Platform
Multiple Stakeholders
Continuous Regression Testing
How hard can it be?
5. At first it was super easy!
Small team of just product owner architect and scrum master.
Huge productivity, natural test driven development.
Fast return on investment
All by the book.... we were doing
Continuous Delivery!
6. Then we tried to scale it...
... and we failed in every possible way.
We lost our test driven development
We lost the individual responsibility
We more or less became a automated waterfall unable to delivery daily
We lost our ability to Continuously Improve the process
7. Three components of
Continuous Delivery
Process & Implementation
Definition of the Software Delivery process and its lead time optimization
Product Integrity
The Architecture & Test Strategy to optimize product integrity and lead time.
People & Organization
Behavioural change to the individuals and the organization needed to optimize
lead time and increase product integrity.
8. Process & Implementation
“Dedicated test servers”
First Continuous Delivery implementation relied on standard corporate test
environment with one system test server, one integration test server and one
pre prod server per production delivery
Only one commit tested at the time.
Build Release Deploy Test
DB
Test
Server
9. Process & Implementation
“Single threaded process”
Stacking jobs became a problem at 5 code committers, almost killed us at 20
Feedback time == Stack Depth * Pipe Exec Time
Variable feedback time results in less responsible developers
We were somewhat helped by component based architecture
10. Process & Implementation
“First effort to scale”
Forced to use our internal Operations as infrastructure provider, no cloud and
very rudimentary virtualization
Built a Server Pool based on Jenkins slaves and “sticky pipes”
Primitive but multi threaded pipes
Orchestration Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker Worker Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker Worker Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker Worker Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker Worker Worker
11. Process & Implementation
“Crowded Environment”
Visibility was bad due to hundreds of jobs on same build system.
Teams blocking each other due to still insufficient server resources.
Traceability hard due to all server clutter.
Changes to one teams Test Environment affected the other teams.
Overall performance was horrible at peak with Jenkins totally dieing
12. Process & Implementation
“Continuous Delivery of Continuous Delivery”
Live what you teach!
Our ability to Continuously Improve was seriously slowed by lack of
Continuous Delivery
Deployment Scripts didn't have test automation.
No test environment for Continuous Delivery Process
Build pipes where manually maintained.
Jenkins servers where manually maintained.
13. Process & Implementation
“Autonomous Environments for Autonomous Teams”
Started to do Continuous Delivery of Continuous Delivery
Automated provisioning of Continuous Delivery Environment
Created template based pipeline generator
Built Autonomous Continuous Delivery environments for each team
Orchestration Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Orchestration Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Orchestration Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Orchestration Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
15. Process & Implementation
“Portability is Scalability”
If the Continuous Delivery process can run without a Build Server then it
can scale to X number of build servers
By ensuring that anything above the portability line can run local or remote to
the orchestration we ensure portability
Orchestration
ProvisionBuild Deploy Test Release
Test EnvironmentSCM
Artifact
Repo
Portability Line
16. Process & Implementation
“Portability is Scalability”
All environments provisioned and deployed in the same way
Orchestration
ProvisionBuild Deploy Test Commit
Orchestration
ProvisionBuild Deploy Test Release
Orchestration
Provision Deploy Test Accept
Orchestration
Provision Deploy Test
Local Dev Continuous Delivery Pipe
UAT Prod
17. Process & Implementation
“Portability is Scalability”
Dev Test
Load
Test
UAT
INT
Test
Provisioning Interface
Vagrant Impl Cloud Provider Impl PDF Document Impl
Topology
Spec Env Spec
Legacy
PROD
With the help of Cloud Technology and Vagrant we manage to create test
and dev environments with the same complexity as our production
environments.
18. Process & Implementation
“Portability is Scalability”
To make the Continuous Delivery Process portable we also need to move all
reporting and monitoring out of the test servers and the build servers
Orchestration
ProvisionBuild Deploy Test Release
Test EnvironmentSCM
Artifact
Repo
Logging & Metrics Services
Build Data Repository
19. Process & Implementation
“Portability is Scalability”
Orchestration Worker
Log, Metrics, Build
Data Repositories
WorkerWorker
Build Env
Orchestration Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Worker
Team Environment Pre Cloud
One Server Per Pipe
Shared Database for all pipes
Team Environment in Cloud
One Environment Per Pipe
Including Load Balance, App Servers & DB
Separating Data from Process Implementation improves the traceability increases dramatically.
Portability in Test Environments increases Quality and Scalability by removing bottlenecks in
shared infrastructure.
Worker
WorkerWorker
Test Env
Worker
Worker
Worker
WorkerWorker
Test Env
Worker
Test EnvTest Env
20. Process & Implementation
“Provisioning, Install and Dependency Management”
If one or more environments is provisioned manually it becomes a
bottleneck
Application artifacts need dependency management to infrastructure.
Infrastructure has to be provisioned and installed with the application.
Databases have to be upgraded and migrated as part of the automated
process.
An automated process doesn't pause for DBAs or SysAdmins to do manual
work.
21. People & Organization
“The Tools Team”
Initially we did development of the Continuous Delivery process as
skunkworkz.
Quickly realized this was a bottleneck.
Added a CM to our team with disastrous result.
Finally created a Tools Team.
22. People & Organization
“The Tools Team is a Bottleneck”
Tools Team a huge bottleneck, simplest issues took ages to fix.
Managed the Continuous Delivery process manually.
Only ones that understood the process.
Became responsible for every teams ability to interface with the process.
Only had time to do reactive maintenance.
Short on resources.
Became yet another IT department.
23. People & Organization
“Build Police, please dont!”
Only Tools Team and few others understood the process.
Tried to help the few others by adding a rotational “Build Police” Role, as bad
idea as it sounds.
24. People & Organization
“The Tools Team matures”
Continuous Delivery as a Service
Tools Team responsible for the process implementation, its interfaces and
the infrastructure it runs on.
The Development Teams responsible for integrating with these interfaces,
configuring the pipe generator and maintaining green state of pipes.
Tools Team supports and helps if there are bugs in the mechanisms.
Tools Team consists of a core team of Developers, Testers and Operations
specialists but is extended with part time resources from Development
Teams.
25. People & Organization
“Lack of Consensus”
Disagreements on shared responsibility for the release.
Disagreements on what test automation is and how it should be used.
Disagreement on who implements tests and how.
A Continuous Delivery Engine without the consensus of the people that use
it is just an overpriced CI System.
28. Product Integrity
“Build Quality In”
Internal
Service
Internal
Service
Internal
Service
Each Service Tested as Black Box in isolation
and with high detail level
29. Product Integrity
“Build Quality In”
GUI
Service API Mock Impl
GUI Test are much faster and robust if they test the GUI in isolation.
High detail level.
30. Product Integrity
“Build Quality In”
Internal
Service
GUI
Internal
Service
Internal
Service
Service API
Verifying Use Case
acceptance criterias.
Low level of detail
31. Product Integrity
“Build Quality In” Optimizes Lead Time
Build Release Deploy Test
Build Release Deploy Test
Build Release Deploy Test
Build Release Deploy Test
Build Release Deploy Test
Assemble Release Deploy Test
Component Pipe
1000s of tests run in parallel testing
System Pipe
10s Use Case Requirements Verified
32. Product Integrity
“Build Quality In”
An Architecture & Test Strategy that goes hand in hand increases product
integrity and optimizes the lead time and allows the Continuous Delivery
process to scale
33. People & Organization
“Empower the Team!”
Increase Team responsibility.
Team is responsible for everything within the Continuous Delivery process
Analyzing Requirements
Defining Requirement Verification
Automating Requirement Verification
Implementing the System
Shipping the System
Supporting the System
Create Team consensus on what its responsibility and delivery is.
34. People & Organization
“Empower the Team!”
To help empower teams we have
Autonomous Team Environments where teams are responsible for their own
Continuous Delivery increased the teams understanding of the process.
Teams that needed extra help sent one or more individuals to work part time
on Tools Team.
Architecture & Test Strategy that works well with Continuous Delivery
Cross functional communities created to help increase consensus on Test
Driven Development, Continuous Delivery and Architecture.
35. People & Organization
“Test Driven Development Community”
Developers need to take more responsibility.
Code has to work all the time.
Test Driven Development requires developers to participate in specification
of requirement verifications.
Test Automation is Code, Developers need to code much more tests.
Continuous Regression Testing means Developers get instant feedback and
have to act on it.
36. People & Organization
“Test Driven Development Community”
Test Profession changes.
Two main type of Test activities Test Automation and Exploratory Testing.
Test Automation is Code.
Let developers test.
Test Driven Development is Proactive.
Exploratory testing is NOT manual regression testing.
37. People & Organization
“Continuous Delivery Community”
Agreement on Practices of Continuous Delivery
Agreement on Practices of Provisioning & Deployment
Competence Development
Infrastructure as Code
Testing Infrastructure as Code
Operations Specialists need to work with Developer tools and languages
38. People & Organization
“Organizational Support”
Continuous Delivery is organizational change.
Scaling Continuous Delivery is as much creating a scalable agile
organization as it is creating a scalable implementation.
Organization has to fully support Continuous Delivery through re-organization.
Organization has to fully support and invest in infrastructure, architecture,
automation, process and test.
Organization needs to start measuring key values, such as cycle time, early.
39. Summary
Process & Implementation
Portability is Scalability.
Product Integrity
The Architecture & Test Strategy go hand in hand.
People & Organization
Empowered Teams and Consensus.
40. Thats it!
Feedback & Any questions you forgot to ask?
http://continuous-delivery-and-more.blogspot.se
@TomasRihaSE
or by
the Coffee stand!
And the slides are at
http://www.slideshare.net/TomasRiha