Keynote presentation at DevOps Summit 2016 in Taipei.
http://devopssummit.ithome.com.tw/
I explained the importance of Test Automation and Continuous Integration for cultural change in DevOps context.
DevOpsのコンテキストでの「文化の変化」に対する、テスト自動化とCIの重要性を説明した資料です。
Agile2014 Report: As a Speaker and a Reporter of the latest Agile in the worldHiroyuki Ito
This is a flash report of Agile2014 by Hiroyuki Ito.
「Agile2014」の参加レポート(速報版)です。
Agile2014
http://agile2014.agilealliance.org/
Please feel and enjoy atmosphere of the latest Agile :)
Technology-Driven Development: Using Automation and Development Techniques to...Hiroyuki Ito
This is the report presented at Agile2014 on "Experience Report" track.
「Agile2014」の「Experience Report」トラックで発表したスライドです。
Agile2014
http://agile2014.agilealliance.org/
Track information
http://agile2014.sched.org/event/356d50c44035cafe4c27c33da03c2b80#
Automation and development techniques such as Continuous Integration/Continuous Delivery, TDD (Test-Driven Development) and BDD (Behavior-Driven Development) are useful for not only efficiency but also learning and collaboration.
I explained these practices as "Technology-Driven Development".
CI/CD・TDD・BDD といった自動化技術・技術プラクティスは、業務効率化だけではなく、メンバーの成長およびコラボレーションの促進にも効果があります。
これらのプラクティスを "Technology-Driven Development" と命名・整理した資料になります。
Conquer CI Server! - Re-establishment of Order and Nurture of the Solid Organ...Rakuten Group, Inc.
This is an English version of presentation material for "Agile Japan 2015" (http://www.agilejapan.org/) which was held on Apr 16th 2015.
In this document, I recapitulated the concrete example of improvement by using Project Metrics.
Additionally, I wrote one example to construct a cooperative relationship with Managers.
I hope this document helps you improve your team and organization.
Bosnia Agile slides from Bosnia Agile Tuzla meetup where attendees had a chance to learn about basics of Scrum, by certified Professional Scrum Product Owner Enis Zeherović, and then to participate in a great "Team Work" training that explains all the soft skills Scrum team or any other team needs to have to work smoothly.
Agile2014 Report: As a Speaker and a Reporter of the latest Agile in the worldHiroyuki Ito
This is a flash report of Agile2014 by Hiroyuki Ito.
「Agile2014」の参加レポート(速報版)です。
Agile2014
http://agile2014.agilealliance.org/
Please feel and enjoy atmosphere of the latest Agile :)
Technology-Driven Development: Using Automation and Development Techniques to...Hiroyuki Ito
This is the report presented at Agile2014 on "Experience Report" track.
「Agile2014」の「Experience Report」トラックで発表したスライドです。
Agile2014
http://agile2014.agilealliance.org/
Track information
http://agile2014.sched.org/event/356d50c44035cafe4c27c33da03c2b80#
Automation and development techniques such as Continuous Integration/Continuous Delivery, TDD (Test-Driven Development) and BDD (Behavior-Driven Development) are useful for not only efficiency but also learning and collaboration.
I explained these practices as "Technology-Driven Development".
CI/CD・TDD・BDD といった自動化技術・技術プラクティスは、業務効率化だけではなく、メンバーの成長およびコラボレーションの促進にも効果があります。
これらのプラクティスを "Technology-Driven Development" と命名・整理した資料になります。
Conquer CI Server! - Re-establishment of Order and Nurture of the Solid Organ...Rakuten Group, Inc.
This is an English version of presentation material for "Agile Japan 2015" (http://www.agilejapan.org/) which was held on Apr 16th 2015.
In this document, I recapitulated the concrete example of improvement by using Project Metrics.
Additionally, I wrote one example to construct a cooperative relationship with Managers.
I hope this document helps you improve your team and organization.
Bosnia Agile slides from Bosnia Agile Tuzla meetup where attendees had a chance to learn about basics of Scrum, by certified Professional Scrum Product Owner Enis Zeherović, and then to participate in a great "Team Work" training that explains all the soft skills Scrum team or any other team needs to have to work smoothly.
Discussion about Input and Output of every Scrum Events. Inside about what to inspect and adapt within these events. Entirely based on Scrum Guide and pretty much similar to PSM workshop.
Transforming Managers for an Agile Deployment - Agile Tour Montreal 2017Maurizio Mancini
Presentation at Agile Tour Montreal 2017 by Maurizio Mancini of Exempio. This presentation is an overview of what role software managers could play in an Agile world.
You’ve “gone agile” and have been relatively successful. So, how do you know how well your team is really doing? And how do you continuously improve your practices? When things get rocky, how do you handle the challenges without reverting to old habits? You realize that the path to high-performance agile testing isn’t easy or quick. It also helps to have a guide. So consider this workshop your guide to ongoing, improved, and sustained high-performance. Join Bob Galen and Mary Thorn as they share lessons from their most successful agile testing transitions. Explore actual team case studies for building team skills, embracing agile requirements, fostering customer interaction, building agile automation, driving business value, and testing at-scale—all building agile testing excellence. Examine the mistakes, adjustments, and the successes, and learn how to react to real-world contexts. Leave with a better view of your team’s strengths, weaknesses, and where you need to focus to improve.
A Journey from DevOps to DevTestOps: Infusing Continuous QualityTechWell
As companies realize the need for rapid application development, they are embracing DevOps methodologies. But implementing DevOps practices without establishing a culture of quality often results in lower quality software or a poor customer experience, which impacts the business bottom line. Join Gajan Pathmanathan as he shares proven approaches for ensuring quality and testing throughout the software development and delivery pipeline, while still maintaining agility and speed. Gajan presents a roadmap for building quality into the fabric of DevOps and fostering a quality-driven mindset, discusses the importance of efficient testing feedback mechanisms, and then suggests a spectrum of off-the-shelf tools such as Docker, Selenium,and AppDynamics that can be used to infuse continuous quality throughout the software delivery pipeline. Leave this session with ideas, approaches, and tools to help shift an organization’s culture, process, and technology toward quality.
Introduction to Agile software testing - The 5th seminar in public seminar series from KMS Technology which have been delivering from 2011 in every two months
Recently I was asked to to a presentation presentation at University of Cape Town entitled QA and SCRUM. This made very little sense to me but it did substantiate my belief that the understanding of agile development is generally very superficial ...
From Incremental & Iterative to Agile – What's the Right Process For Your Tea...Atlassian
Every software team has heard the phrase “going agile" and many consider themselves agile, but what does it mean to be truly agile? Implementing agile in a team takes commitment and is anything but “nimble and quick”. In fact, sometimes you need to become good at Incremental and Iterative Development (IID) before you can be Agile. In this talk, you will learn whether IID or Agile is right for your team, how to deploy and maintain a selected process, and how to make JIRA work for your development process.
Maximize the value of your work by practicing DevOps with Scrum Framework. Building and deploy continuously within sprint with help of DevOps culture, tools and practices.
Agile implementation in CSR Haifa SW - Michael Levin - Agile Israel 2013AgileSparks
CSR Haifa SW group is a part of global SW organization developing SW for CSR COACH (Camera on a Chip) SoC.
The main problem we faced is a degraded SW releases quality and as a result, low customer satisfaction, big amount of bugs, etc..
From other side, SW QA team is not part of our group and we cannot utilize this resource for our purposes.
You will hear about our approach to SW quality improvement through Agile implementation.
JDD2014: Agile transformation - how to change minds, deliver amazing results ...PROIDEA
Transitioning an organization from Waterfall to Agile can be difficult much like any change management tends to be. For most people involved, it ends up being an ordeal. But, there is a better way. With the right strategy and tools, this can be a rather rewarding and unifying experience instead. In this talk, we will discuss one such transition and the elements that contributed to its success.
Continuous Testing - What QA means for DevOpsSeaLights
First came agile, then came DevOps and Continuous Delivery, now comes Continuous Testing.
In this new reality of rapid releases, incremental changes, and short QA cycles, testing is becoming a bottleneck. Continuous Testing is a major opportunity for QA leaders to redefine the strategic role in the organization, specifically as drivers of quality within Continuous Delivery.
Join us for an overview of the upcoming challenges that you will face as QA leaders and how Continuous Testing will bring you through these changes on top.
Interactive Demo -> http://www.sealights.io/interactive-demo/
Live Demo -> http://www.sealights.io/request-a-demo/
Slides from this webcast: bit.ly/mTUTq4
Discussion of what DevOps is, why we need it, what sorts of shared tooling helps it, and how it fits in to an enterprise rollout.
Discussion about Input and Output of every Scrum Events. Inside about what to inspect and adapt within these events. Entirely based on Scrum Guide and pretty much similar to PSM workshop.
Transforming Managers for an Agile Deployment - Agile Tour Montreal 2017Maurizio Mancini
Presentation at Agile Tour Montreal 2017 by Maurizio Mancini of Exempio. This presentation is an overview of what role software managers could play in an Agile world.
You’ve “gone agile” and have been relatively successful. So, how do you know how well your team is really doing? And how do you continuously improve your practices? When things get rocky, how do you handle the challenges without reverting to old habits? You realize that the path to high-performance agile testing isn’t easy or quick. It also helps to have a guide. So consider this workshop your guide to ongoing, improved, and sustained high-performance. Join Bob Galen and Mary Thorn as they share lessons from their most successful agile testing transitions. Explore actual team case studies for building team skills, embracing agile requirements, fostering customer interaction, building agile automation, driving business value, and testing at-scale—all building agile testing excellence. Examine the mistakes, adjustments, and the successes, and learn how to react to real-world contexts. Leave with a better view of your team’s strengths, weaknesses, and where you need to focus to improve.
A Journey from DevOps to DevTestOps: Infusing Continuous QualityTechWell
As companies realize the need for rapid application development, they are embracing DevOps methodologies. But implementing DevOps practices without establishing a culture of quality often results in lower quality software or a poor customer experience, which impacts the business bottom line. Join Gajan Pathmanathan as he shares proven approaches for ensuring quality and testing throughout the software development and delivery pipeline, while still maintaining agility and speed. Gajan presents a roadmap for building quality into the fabric of DevOps and fostering a quality-driven mindset, discusses the importance of efficient testing feedback mechanisms, and then suggests a spectrum of off-the-shelf tools such as Docker, Selenium,and AppDynamics that can be used to infuse continuous quality throughout the software delivery pipeline. Leave this session with ideas, approaches, and tools to help shift an organization’s culture, process, and technology toward quality.
Introduction to Agile software testing - The 5th seminar in public seminar series from KMS Technology which have been delivering from 2011 in every two months
Recently I was asked to to a presentation presentation at University of Cape Town entitled QA and SCRUM. This made very little sense to me but it did substantiate my belief that the understanding of agile development is generally very superficial ...
From Incremental & Iterative to Agile – What's the Right Process For Your Tea...Atlassian
Every software team has heard the phrase “going agile" and many consider themselves agile, but what does it mean to be truly agile? Implementing agile in a team takes commitment and is anything but “nimble and quick”. In fact, sometimes you need to become good at Incremental and Iterative Development (IID) before you can be Agile. In this talk, you will learn whether IID or Agile is right for your team, how to deploy and maintain a selected process, and how to make JIRA work for your development process.
Maximize the value of your work by practicing DevOps with Scrum Framework. Building and deploy continuously within sprint with help of DevOps culture, tools and practices.
Agile implementation in CSR Haifa SW - Michael Levin - Agile Israel 2013AgileSparks
CSR Haifa SW group is a part of global SW organization developing SW for CSR COACH (Camera on a Chip) SoC.
The main problem we faced is a degraded SW releases quality and as a result, low customer satisfaction, big amount of bugs, etc..
From other side, SW QA team is not part of our group and we cannot utilize this resource for our purposes.
You will hear about our approach to SW quality improvement through Agile implementation.
JDD2014: Agile transformation - how to change minds, deliver amazing results ...PROIDEA
Transitioning an organization from Waterfall to Agile can be difficult much like any change management tends to be. For most people involved, it ends up being an ordeal. But, there is a better way. With the right strategy and tools, this can be a rather rewarding and unifying experience instead. In this talk, we will discuss one such transition and the elements that contributed to its success.
Continuous Testing - What QA means for DevOpsSeaLights
First came agile, then came DevOps and Continuous Delivery, now comes Continuous Testing.
In this new reality of rapid releases, incremental changes, and short QA cycles, testing is becoming a bottleneck. Continuous Testing is a major opportunity for QA leaders to redefine the strategic role in the organization, specifically as drivers of quality within Continuous Delivery.
Join us for an overview of the upcoming challenges that you will face as QA leaders and how Continuous Testing will bring you through these changes on top.
Interactive Demo -> http://www.sealights.io/interactive-demo/
Live Demo -> http://www.sealights.io/request-a-demo/
Slides from this webcast: bit.ly/mTUTq4
Discussion of what DevOps is, why we need it, what sorts of shared tooling helps it, and how it fits in to an enterprise rollout.
This webinar was hosted live on 28th January 2023. Watch the on demand recording here: https://www.curiositysoftware.ie/modelling-continuous-testing-webinar
Teams striving to “do” DevOps and test continuously often reach for nearby tools, without first fixing their mindset and techniques. This often backfires long-term, as sticking-plaster solutions introduce anti-patterns, uncertainty, and repetition to tight sprints. Monolithic automation frameworks break and need fixing as developers make changes to systems coded using more modern techniques. Further maintenance emerges as tests, data and environments become misaligned. And has anyone stopped to consider how well you understand the system being developed, given its complexity exceeds human comprehension and has been reflected in the bewildering pipelines designed to test it?
This webinar will consider how you can apply a DevOps mindset to Continuous Testing, before exploring tools and techniques to support it. It will discuss how you can componentise vastly complex systems into understandable chunks, while mapping each component to the automation, data and environments needed to test it. You will see how cross-functional teams can combine reusable models to map complex systems, while generating tests, data and environments for in-sprint testing. As complex systems change, updating individual models and automation libraries regenerates rigorous tests, maintaining both the living documentation and aligned artifacts needed for Continuous Testing.
Watch the webinar on demand - https://www.curiositysoftware.ie/modelling-continuous-testing-webinar
4 Testing Methods to Scale and Automate Your DevOps PipelinePerfecto by Perforce
As organizations struggle to adopt continuous deployment and mature DevOps, teams can face a number of roadblocks. DevOps maturity relies on culture, processes, and technology. Getting all of them right requires continuous alignment and communication.
But even that is not enough.
Join us in this live webinar led by Chief Evangelist, Eran Kinsbruner. During this webinar, Eran will cover the following topics:
- How to reduce noise and waste within the DevOps pipeline (planning, handoffs, task switching, waiting time, over productivity, etc.).
- How to decide what to automate.
- How to automate as much of the CI/CD activities as possible.
- How defects and rework can be avoided with a smart continuous testing process.
A very big thank you to Michael Palotas from Grid Fusion & eBay International for taking the time and effort to travel across the globe to present at the Australian Test Managers Forum 2014. If you would like any information on TMF please email tmf@kjross.com.au
How to Fit Performance Testing into a DevOps EnvironmentNeotys
DevOps environments demand shorter development cycles and a healthy amount of automation, while performance testing is time-consuming and requires manual human action. So, how can you execute thorough performance tests in a fast-paced environment and integrate performance testing tools with a DevOps toolchain?
If you’re testing in a DevOps or any other time-constrained environment, you need to accelerate your performance testing cycles.
DevOps, sibling of Agile is born of the need to improve IT service delivery agility to the more stable environment.
DevOps movement emphasizes tearing the boundaries between makers (Development) & caretakers (Operations) of IT services/products.
Tester’s considerations when moving towards successful CI/CDDerk-Jan de Grood
These are the slides of the tutorial I gave at QA&Testing in Bilbao on 17 October 2018
Continuous integration and deployment (CI/CD) empowers organizations to bring their solution in production fast and frequent. This interactive session will share the benefits of this concept and introduce eight conditions that need to be met in order to make CI/CD a success. After this brief introduction, we will make small groups and explore these conditions, exchange experiences and you will get an understanding what needs to be improved in your organization. Talk to your peers and learn where they stand. Of course each of the groups will share their learnings, so we all go home with an understanding of how you can benefit from CI/CD and what needs to be done to make it work.
Finally we will see what test strategy we would advise if our company would decide to move towards CI/CD and this cover we consider much more than just automate our tests…
The presentation on Testing in DevOps Culture was done during #ATAGTR2017, one of the largest global testing conference. All copyright belongs to the author.
Author and presenter : Arshi Nazneen
Building an Automated Database Deployment PipelineGrant Fritchey
The pace of business accelerates fairly continuously and application development moves right with it. But we’re still trying to deploy databases the same way we did 10 years ago. This session addresses the need for changes in organizational structure, process and technology necessary to arrive at a nimble, fast, automatable and continuous database deployment process. We’ll use actual customer case studies to illustrate both the common methods and the unique context that led to a continuous delivery process that is best described as a pipeline. You will learn how to customize common practices and tool sets to build a database deployment pipeline unique to your environment in order to speed your own database delivery while still protecting your organization’s most valuable asset, it’s data.
Leveraging Open Source Automation: A Selenium WebDriver ExampleTechWell
As online activities create more revenue than ever, organizations are turning to Selenium both to test their web applications and to reduce costs. Since Selenium is open source, there is no licensing fee. However, as with purchased tools, the same automation challenges remain, and users do not have formal support and maintenance. Proper strategic planning and the use of advanced automation concepts are a must to ensure successful Selenium automation efforts. Sharing his experience designing and implementing advanced automation frameworks using Selenium WebDriver, David Dang describes the factors necessary to ensure open source automation is right for your project. David helps you understand the real effort required to implement WebDriver in a way that will scale and minimize script development. Additionally, he dives into must-haves in your Selenium framework design, the resource and timeline considerations necessary to implement WebDriver, and the long-term, continual improvement enhancements all automation engineers should consider in their Selenium automation implementations.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
Generating a custom Ruby SDK for your web service or Rails API using Smithyg2nightmarescribd
Have you ever wanted a Ruby client API to communicate with your web service? Smithy is a protocol-agnostic language for defining services and SDKs. Smithy Ruby is an implementation of Smithy that generates a Ruby SDK using a Smithy model. In this talk, we will explore Smithy and Smithy Ruby to learn how to generate custom feature-rich SDKs that can communicate with any web service, such as a Rails JSON API.
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
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.
Connector Corner: Automate dynamic content and events by pushing a buttonDianaGray10
Here is something new! In our next Connector Corner webinar, we will demonstrate how you can use a single workflow to:
Create a campaign using Mailchimp with merge tags/fields
Send an interactive Slack channel message (using buttons)
Have the message received by managers and peers along with a test email for review
But there’s more:
In a second workflow supporting the same use case, you’ll see:
Your campaign sent to target colleagues for approval
If the “Approve” button is clicked, a Jira/Zendesk ticket is created for the marketing design team
But—if the “Reject” button is pushed, colleagues will be alerted via Slack message
Join us to learn more about this new, human-in-the-loop capability, brought to you by Integration Service connectors.
And...
Speakers:
Akshay Agnihotri, Product Manager
Charlie Greenberg, Host
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.
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as “predictable inference”.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
17. 17
Legacy Code: No test scripts!
Brownfield: Our Common Challenges
Test Automation
as a Technical Foundation
Improve design & program
Refactoring
Prevent regressions
18. 18
Lots of Immature Engineers
Engineers
Test Scripts
How to Write
Test Scripts
The Importance of
Test Automation
How to Test
Programs & Products
What should I do?
21. 21
Scope of Test Automation
Unit Testing
Acceptance Testing
Performance Testing
Security Testing
Other ility Testing
22. 22
Stages of Adapting to Unit Testing
1. Write simple test scripts
2. Adapt to TDD
3. Use Test Double (Mock)
4. Write characterization test if necessary
5. Refactor production code & architecture
23. 23
Schedule & Actions
Jan Feb Mar
Preparation
• Investigate products
• Create sample scripts
Execution
• Lectures
• Workshops
• Pair Programming
Execution
Remove architectural
impediments
24. 24
A powerful tool
to learn
Unit Testing & TDD!
Cyber Dojo: Our Weapon
http://cyber-dojo.org/
26. 26
Make product teams set up CI
processes
Our Goal
Nurture product teams
Avoid integration/deployment troubles
Achieve the target from CTO
Improve product teams
28. 28
e.g.) During integration & deployment process
Tons of Failures were There
Needed to avoid these troubles fundamentally
Staging
ENV
Production
ENV
CONFIG File
for Staging
Troubles!
31. 31
Accustomed to CI
Working
Samples
Team Members Coach
Worked with Samples
Configuration
of CI Server
CONFIG File
Did Pair Setting
(like Pair Programming)
Team Members Coach
32. 32
Always added Automated Tests
Test! Test! Test!
Pull the real power of CI
Adapt to Test Automation more
Nurture product teams
36. 36
Updated on Mar/31/2016
(during about 2 months)
Metrics
Item Quantity
Unit Tests Added/Updated 27
Software Bugs Detected 10
Infrastructure Bugs Detected 24
Prevented Troubles 3
It may be insufficient, but it’s REAL.
37. 37
Self-running Actions by Product Team Members
PO added “writing unit tests” as DoD
Started to write unit tests voluntarily
Established their own CI/CD strategy
Established their own testing rules
39. 39
Coaches should NOT do everything
Role of Coaches
For retaining learning opportunity
For nurturing voluntary actions
Giving hints is sometimes appropriate
Total
40. 40
Should Create Unavoidable Situation
CI:
Unavoidable from Test Automation
Top-down Approach:
Unavoidable to achieve objectives
Bottom-up Approach:
Unavoidable to scale improvements
Total
41. 41
Based on the production code
Sample Test Scripts Are Very Useful
Easy to adapt to Test Automation
Can use them as initial test scripts
Can learn their products & problems
Team
Members
Coaches
Test Automation
42. 42
Need to Solve Architectural Bottlenecks
Unable to apply mocks
Side effects
by static mocks
Hard to identify
web components
(Selenium WebDriver)
Modified interfaces
for injecting mocks
Introduced Phake
(Mock FW for PHP)
Defined locators
to each component
(like “id” or “name”)
Test Automation
43. 43
/**
* @test
*/
public function exampleOfTest() {
$sut = new Foo();
$result = $sut->bar('abc');
$this->assertEquals('huga', $result);
}
Pair Programming Clarifies Real SkillsTest Automation
48. 48
Made team members
learn a lot based on
automated working processes
Nurtured Product Teams
Fast Feedback
Learn from Failures
Lots of Confidence to Go ahead
CI
52. 52
Example of Additional Metrics
Test &
Test Automation
Code Coverage
Cyclomatic Complexity
# of Bugs Detected
# of Members Who Can Write Tests
Update Times of Test Scripts
(Lots of Updates = Valuable Test)
CI/CD Cycle Time
MTBF
MTTR
# of Releases per Week
# of Members
Who Can Operate CI/CD Servers
57. 57
Test Automation with CI
is sufficiently valuable
Adapting to Test Automation & CI in DevOps Context
Iterative & Incremental Improvement
Do Kaizen / 改善
58. 58
Adapting to Automation
is a long way
It’s Not Easy to Continue…
It takes 6 month
to do the same thing
for 1 team
in Facebook
Photo by Improve It - Kent Beck no Workshop Mapping XP.(2006) / CC BY-SA 2.0
Good morning, everyone! * 3
(Please respond loudly!)
OK, you are great, thank you
In this session, I will talk about DevOps from cultural aspect based on my experience.
Are you ready!?
OK, at first, please introduce myself.My name is Hiroyuki Ito.
So, please call me “The Hiro”. (The Greatest One in Japanese Software Engineering industry )
I belong to Yahoo Japan Corporation as an Automation & Agile Coach.
And, as you know, I have several certifications of Scrum.
Moreover, I made a presentation at Agile2014 in the U.S. (about 2 years ago)
Today, I will talk about the essence of this conference later.
Before starting the session, please give me 1 more minute to introduce my company.
In the session, please remember these 3 points at least
We are the technology-oriented company.
OK, it’s time to talk about DevOps.By the way, what is DevOps?(Questions to attendees * 3)
As you may know, there are lots of definitions of DevOps.
Here is one of famous definition, CALMS, or CLAMS.
But, here is my definition of DevOps.
My DevOps consists of these 3 parts.
2nd one (whole process improvement) means including management, design, development, test, operation and so on.
3rd one (technical foundation) means automation techniques like Continuous Integration and Continuous Delivery.
BTW, this is the famous chart from the book titled “Continuous Delivery”.
Quick show of hands. Who read this book?
My scope is those red ones.
We coaches are leading the cultural change especially based on Test Automation and Continuous Integration.
(Of course we use CD, cloud infrastructure and so on.)
We can efficiently shake up the organizational culture with Automated Test and CI.
And, I would like to explain this activity in the front at Yahoo Japan Corporation as the Experience Report.
And this is the prerequisite of our activities.
Please get some knowledge from my session (report).
Here is the agenda.
I will talk about Test Automation, CI, and evaluation of them.
Through these topics, I will explain the importance of cultural change in DevOps.
Let’s move on to Test Automation.
Here is our goal of Test Automation.
I think it’s a common sense.
To nurture self-running & cross-functional culture with higher quality & productivity.
Let’s check the background.
Here is the prerequisite of our products and teams.
We use PHP as main programming language.
Cloud-based infrastructure is our own OpenStack-based infrastructure like AWS.
It also means that OPS engineers provision with packages beforehand.
And, it caused lots of troubles later.
Do you know the meaning of “Brownfield”?
Brownfield means Legacy Code. And Legacy Code means no test scripts!
Brownfield problem is our common challenges in Yahoo Japan Corporation.
Yahoo Japan Corporation has a lot of long-lived services. For example, over 10 ages are common.
Therefore, we needed to implement Test Automation at first.
Additionally, we needed to solve the immaturity problem.
Half of engineers in product teams didn’t know these topics.
Can you imagine?
Moreover, we needed to overcome this passive culture with silos.
I know you love breaking silos
So we took the following challenges to get over these challenges.
There are a lot of Test Automation.We especially focused on Unit Testing because it’s easy to implement and effective to improve product development.
It’s the curriculum for immature engineers.
I think it is common sense for all of you.
Adapt to TDD : especially Test-First approach
We should include Refactoring with Test Automation!
And here is our schedule with actions.
At that time, we had only 3 months.
We executed these actions in Scrum manner.
We always improved our actions iteratively and incrementally.
Who knows Cyber Dojo?
OK, it’s a very powerful tool to learn Unit Testing and TDD.
I would like to demonstrate it
Did you enjoy Cyber Dojo?
OK, let’s move on to the next chapter: CI.
Are you READY!?
Here is our goal of CI.
We coaches supported them the same as Test Automation.
Let’s check the background.
To be honest, there were tons of failures like this.
Because of manual operations or complicated automated processes, they often happened.
At that time, we found a god
We can combine the top-down action by CTO with our bottom-up action.
Mike Cohn, a famous Agile Coach and one of the founders of the Scrum Alliance, also said the same thing is very important in his book titled “Succeeding with Agile”.
Here are our concrete actions for CI.
We made team members accustomed to CI with working samples and pair setting.
And, we always added automated tests.
We also simplified the complicated processes like this.
As you know, the right one is easier to understand than the left one.
Next, let’s evaluate our measures.
At first, let’s check the results.
Here is the metrics measured at the end of this March.
This is the result of our real actions during only 2 months.
Infrastructure bugs include the leakage of packages.
I think some people think it’s sufficient, but others are not.
But we detected some bugs as I wrote.
We went ahead a little. But it’s a real improvement.
These actions nurtured the self-running culture like this.
So I can say Test Automation & CI could shake up the culture.
Next, lessons learned throughout these activities.
First thing is about the role of coaches.
Coaches should not do everything.
Because extracting the power and ability from teams is very important.
Over support kills the power and ability from teams.
We would be better enforcing improvements by using these activities.
For example:
1) CI with Test Automation.
2) Top-down Approach for achieving objectives.
3) Bottom-up Approach for scaling improvements.
Unavoidable situation is a very powerful solutions for proceeding total improvements.
Next is the lessons learned from Test Automation.
We wrote and provided a lot of sample test scripts based on the production code.
Coaches should solve architectural barriers to Test Automation.
It's insufficient simply to make team members write tests.
Paying Technical Debts is also necessary.
I may show you very shocking scene.Don’t try this at your company
We knew that we need to reeducate them again and again…
But don’t get depressed!
We should say “That’s information, thank you!”
Because we can know the real problems in the teams and members.
Next is the lessons learned from CI.
We detected failures up-front with Test Automation like this.
Unexpected environmental changes means like EOL of DB servers.
Do you know this scientific truth?
Only PHP leads to Package Hell!
If you are using PHP, let’s introduce Test Automation and CI right now!
I strongly recommend it
We made them learn from failures based on trials and errors.
In our teams, CI is a driver for learning.
Test Automation, CI and CD can strengthen members, teams, organization, and products!
This is what I presented at Agile2014 as “Technology-Driven Development”.
It’s the additional possibilities of automation techniques!
Based on the above topics, we are planning to do these actions next.
Of course, we will proceed Continuous Delivery.
So I would like to share another themes.
Acceptance Test Automation : I especially love BDD
They are just information. You don’t need to remember all of them.
We can find a lot of metrics to distinguish the growth and health with them.
Let’s move back on to the starting point of this session.
What is DevOps?
In Yahoo Japan Corporation, we are challenging the cultural change as I talked above.
Test Automation with CI is sufficiently valuable in DevOps context.