Psychology of Testing (or why our intuition of testing is wrong) -- Miško Hevery

Size: px
Start display at page:

Download "Psychology of Testing (or why our intuition of testing is wrong) -- Miško Hevery"

Transcription

1 Psychology of Testing (or why our intuition of testing is wrong) -- Miško Hevery

2 Testing is not like frosting

3 Development Model Software Engineers Develop Design Testing magic QA Manual Tests Exploratory Tests Test Engineers Automated Tests Tools Testing magic

4 Micro Development Model Develop Check-In Test automate

5 Excuses Valid Excuse Don t know Legacy code-base how I write UI Dirties Design No Tests Testing is for QA It doesn t catch bugs It s slower It s boring Hard to change Too many interfaces Common Misconception

6 How do you write HARD TO TEST code?

7 Stimulus Test Driver Class Under Test Asserts

8 Test Driver Class Under Test

9 File System Other Class CPU Intensive Test Driver Class Under Test Other Class Other Class Other Class Destructive operation Other Class Other Class Other Servers Object Lifetime and Calling Object Instantiated Object Passed In Global Object

10 File System Other Class CPU Intensive Test Driver Class Under Test Seam Other Friendly Class Other Friendly Class Other Class Destructive operation Other Friendly Class Other Class Other Servers Object Lifetime and Calling Object Instantiated Object Passed In Global Object

11 Object Graph Construction & Lookup Business Logic

12 Friendly Test Driver Class Under Test Seam Friendly Friendly

13 Global State aka Singletons API that lies about what it needs Spooky action at a distance

14 Deceptive API testcharge() { CreditCard cc; cc = new CreditCard( ); cc.charge(100); } At the end of the month I got my Statement! I was out $100! Spooky action at a distance! It never passed in isolation

15 Deceptive API testcharge() { CreditCard cc; cc = new CreditCard( ); cc.charge(100); } java.lang.nullpointerexception at talk3.creditcard.charge( CreditCard.java:48)

16 Deceptive API testcharge() { CreditCardProcessor.init(...); CreditCard cc; cc = new CreditCard( ); cc.charge(100); } java.lang.nullpointerexception at talk3.creditcartprocessor.init( CreditCardProcessor.java:146)

17 Deceptive API testcharge() { OfflineQueue.start(); CreditCardProcessor.init(...); CreditCard cc; cc = new CreditCard( ); cc.charge(100); } java.lang.nullpointerexception at talk3.offlinequeue.start( OfflineQueue.java:16)

18 Deceptive API testcharge() { Database.connect(...); OfflineQueue.start(); CreditCardProcessor.init(...); CreditCard cc; cc = new CreditCard( ); cc.charge(100); } CreditCard API lies It pretends to not need the CreditCardProcessor even thought in reality it does.

19 Better API testcharge() { } db = new Database(...); queue = new OfflineQueue(db); ccproc = new CCProcessor(queue); CreditCard cc; cc = new CreditCard( , ccproc); cc.charge(100); Dependency injection enforces the order of initialization at compile time.

20 Bugs

21

22

23

24 Bugs

25 Cost of Fixing the Bug Probability of Finding a Bug Difficulty of Finding the Bug Difficulty of Fixing the Bug Logical Bugs HIGH HARD HARD Wiring Bugs MEDIUM MEDIUM MEDIUM Rendering Bugs MEDIUM EASY EASY

26 But my code is different!

27 I have a Super-Bug!

28 Testing is like industrial revolution

29 Different Kinds of Testing Execution Time Flakiness/Debugging/Maintenance Cost Software Engineers Test Engineers Endto-End Functional Unit (Configuration) Test the whole system pretending to be user (>10 secs) (Wiring) Test interaction/contracts between classes (<1 sec) (if)test individual classes/methods in isolation (~1ms) # of Tests

30 Dev Model Revisited Education Testing on the Toilet Tech Talks / Blogs 1 on 1 Training Enforcement RoboCop Testability Coverage Mercenaries Immersion Develop CI-build Check-In Tools Analysis Reports Test Review Games Dashboards Scoreboards Trend Graphs Tools Visibility

31 Education: Test Mercenaries Internal consulting group specializing in testability refactorings and influencing developers 2-3 mercenaries join the group for 3-6 months

32 Education: Tech Talks Weekly series Focus on common mistakes which make code hard to test new, global-state, singletons, LoD Many available on You Tube

33 Education: We try to stick it on everyones monitor Set of red-flags to look for URL pointing to an explanation of the red-flag The reviewer can point the author to the explanation page

34 Education: Mission Impossible Mercenaries in reverse Total Immersion work with team for a month which gets it Very good feedback

35 Education: TotT Weekly publications Testing Tips (not concepts) Captive audience Very successful

36 Education: Blog Venue for larger concepts which do not fit to TotT. Shared with outside world

37 Education: TDD University Build small project from scratch Learn how the code should be like Rewrite existing piece of code To see how it is different Refactor existing code To learn how to get from here to there

38 Tools: Coverage Simple but effective Just having it installed makes people thing about improving coverage Squeaky wheel gets the grease

39 Tools: Test Farms Farms Ability to run massive test suites in parallel Selenium unit-test browser matrix

40 Tools: Testability Report Code coverage for testability Get high level view about how testable the code is

41 Tools: Testability Advice Personal testability advisor Plans to integrate into IDE Virtual pairing buddy

42 Visibility: Games Make it into a game

43 Visibility: Bubbles See quality of check-ins over time Time, Tests, User, Size

44 Visibility: Test Pareto Test ratios per developer Impact per developer

45 Visibility: Test Trend Test focus over time

46 Visibility: Certification Well defined standards To be at N level you need to do X, Y, and Z. TC level prestige

47 Enforcement: Tough Love Remove manual testing resources Provide knowledge and support

48 Enforcement: RoboCop Coverage can not get worse with any one CL Testability can not get worse with any one CL Plans for arbitrary rule enforcement

49 Progress Too many tests too run CI standard Everyone agrees tests are good idea TC Level Dependency Injection - GUICE Ratio System vs Unit is improving

50 Q&A

Tutorial: How to Write Hard to Test Code

Tutorial: How to Write Hard to Test Code Tutorial: How to Write Hard to Test Code -- Miško Hevery & Cory Smith Copyright is held by the author/owner(s). OOPSLA'09, October 25 29, 2009, Orlando, FL, USA. ACM 09/10. Agenda Psychology of Testing

More information

Surrogate Dependencies (in

Surrogate Dependencies (in Surrogate Dependencies (in NodeJS) @DinisCruz London, 29th Sep 2016 Me Developer for 25 years AppSec for 13 years Day jobs: Leader OWASP O2 Platform project Application Security Training JBI Training,

More information

3 Continuous Integration 3. Automated system finding bugs is better than people

3 Continuous Integration 3. Automated system finding bugs is better than people This presentation is based upon a 3 day course I took from Jared Richardson. The examples and most of the tools presented are Java-centric, but there are equivalent tools for other languages or you can

More information

The Power of Unit Testing and it s impact on your business. Ashish Kumar Vice President, Engineering

The Power of Unit Testing and it s impact on your business. Ashish Kumar Vice President, Engineering The Power of Unit Testing and it s impact on your business Ashish Kumar Vice President, Engineering Agitar Software, 2006 1 The Power of Unit Testing Why Unit Test? The Practical Reality Where do we go

More information

A Tale of Continuous Testing

A Tale of Continuous Testing T22 DevOps/Continuous Delivery Thursday, October 4th, 2018 3:00 PM A Tale of Continuous Testing Presented by: David Lumpkin Craftsy Brought to you by: 350 Corporate Way, Suite 400, Orange Park, FL 32073

More information

Why test automation projects are failing? Igor Khrol

Why test automation projects are failing? Igor Khrol Why test automation projects are failing? Igor Khrol http://www.khroliz.com About myself Igor Khrol More than 7 years in automated testing Consultant, trainer, manager, engineer, architect Selenium, HP

More information

Test-driven development

Test-driven development Test-driven development And how we do it at WIX Mantas Indrašius Software Engineer WIX.COM Agenda Tests overview Test-driven development (TDD) The Bowling Game demo Kickstarting a project using TDD How

More information

Test Your XAML-based Windows Store Apps with Visual Studio 2013 Benjamin Day

Test Your XAML-based Windows Store Apps with Visual Studio 2013 Benjamin Day Test Your XAML-based Windows Store Apps with Visual Studio 2013 Benjamin Day Level: Intermediate Benjamin Day Brookline, MA Consultant, Coach, & Trainer Microsoft MVP for Visual Studio ALM Team Foundation

More information

Think like an Elm developer

Think like an Elm developer Think like an Elm developer Piper Niehaus Denver, CO, USA Backpacker / skier Nonprofit board chair Software Engineer at Pivotal Pivotal Tracker team Elm in Production since 2016 Internal Products and Services

More information

Test Driven Development TDD

Test Driven Development TDD Test Driven Development TDD Testing Testing can never demonstrate the absence of errors in software, only their presence Edsger W. Dijkstra (but it is very good at the latter). Testing If it's worth building,

More information

How technical excellence helps in LeSS adoption. Anton Bevzuk Dodo Pizza Chief Agile Officer

How technical excellence helps in LeSS adoption. Anton Bevzuk Dodo Pizza Chief Agile Officer How technical excellence helps in LeSS adoption Anton Bevzuk Dodo Pizza Chief Agile Officer The plan Why engineering practices? Deep dive into Pair Programming Test Automation Continuous Integration Q&A

More information

Utilizing Fast Testing to Transform Java Development into an Agile, Quick Release, Low Risk Process

Utilizing Fast Testing to Transform Java Development into an Agile, Quick Release, Low Risk Process Utilizing Fast Testing to Transform Java Development into an Agile, Quick Release, Low Risk Process Introduction System tests, often called slow tests, play a crucial role in nearly every Java development

More information

Microservices Smaller is Better? Eberhard Wolff Freelance consultant & trainer

Microservices Smaller is Better? Eberhard Wolff Freelance consultant & trainer Microservices Smaller is Better? Eberhard Wolff Freelance consultant & trainer http://ewolff.com Why Microservices? Why Microservices? Strong modularization Replaceability Small units Sustainable Development

More information

Part 1: Data-Binding Frameworks (e.g. AngularJS)

Part 1: Data-Binding Frameworks (e.g. AngularJS) Miško Hevery: AngularJS & Testability Part 1: Data-Binding Frameworks (e.g. AngularJS) 0.00.24 0.03.00 0.03.00 0.05.30 0.05.30 0.07.30 Misko Hevery introduces building an app with AngularJS. To follow

More information

Building In Quality. Ten Years Later

Building In Quality. Ten Years Later Building In Quality Ten Years Later 2017 Iberle Consulting Group, Inc. 2 2017 Iberle Consulting Group, Inc. 3 Some software just has to work By Lothar Neumann, Gernsbach [1] - Karlsruhe:Bild:Philippsburg2.jpg,

More information

THE ART OF SECURING 100 PRODUCTS. Nir

THE ART OF SECURING 100 PRODUCTS. Nir THE ART OF SECURING 100 PRODUCTS Nir Valtman @ValtmaNir I work for as the Application Security 1st time speaking publicly, except at Mmmm OH, AND Neither of my previous startups succeeded!

More information

Test Automation Strategies in Continuous Delivery. Nandan Shinde Test Automation Architect (Tech CoE) Cognizant Technology Solutions

Test Automation Strategies in Continuous Delivery. Nandan Shinde Test Automation Architect (Tech CoE) Cognizant Technology Solutions Test Automation Strategies in Continuous Delivery Nandan Shinde Test Automation Architect (Tech CoE) Cognizant Technology Solutions The world of application is going through a monumental shift.. Evolving

More information

Planning & Managing Migrations

Planning & Managing Migrations Planning & Managing Migrations It s for the birds. Har har. Aimee Degnan / aimee@hook42.com Expectation Setting This is the first run of this presentation. It is being shaped for DrupalCon. Is text heavy

More information

D#007 - Development Process Handbook

D#007 - Development Process Handbook Last Updated: 04/30/2018 Status: Live D#007 - Development Process Handbook Purpose: Clarify how we handle an incoming or internal request for a feature or enhancement all the way through shipping the feature

More information

With great power comes great responsibility

With great power comes great responsibility Developer Guide / dev_guide / unit-testing JavaScript is a dynamically typed language which comes with great power of expression, but it also come with almost no-help from the compiler. For this reason

More information

ABL Unit Testing Part 1: Test Strategy. Mike Fechner Director

ABL Unit Testing Part 1: Test Strategy. Mike Fechner Director ABL Unit Testing Part 1: Test Strategy Mike Fechner Director 2 3 Consultingwerk Software Services Ltd. Independent IT consulting organization Focusing on OpenEdge and related technology Located in Cologne,

More information

Audience Profile: Course Outline. Introduction & Architecture. SharePoint 2013 Administration Basics. Creating Web Applications and Site Collections

Audience Profile: Course Outline. Introduction & Architecture. SharePoint 2013 Administration Basics. Creating Web Applications and Site Collections Audience Profile: This course is for Consultants and IT Professionals, who need to understand how to plan, implement and configure SharePoint. This course is mainly targeted for administrators and support

More information

Master Project. Refactoring the Legacy Code. Software Construction. EVU Master Thesis Aarhuus University

Master Project. Refactoring the Legacy Code. Software Construction. EVU Master Thesis Aarhuus University Software Construction Master Project EVU Master Thesis Aarhuus University 2013 06 09 Student: Carsten Sørensen (201200089) Teacher: Henrik B. Christensen Abstraction Over time, all code turns into legacy

More information

Maja Schreiner. 9th Lean, Agile & Scrum Conference 2017

Maja Schreiner. 9th Lean, Agile & Scrum Conference 2017 Maja Schreiner 9th Lean, Agile & Scrum Conference 2017 Senior Test Master @ Swisscom, Switzerland maja.schreiner@gmail.com testmotion.wordpress.com Twitter: majaschreiner process of executing many different

More information

Turning a Marathon Runner into a Sprinter: Adopting Agile Testing Strategies and Practices at Microsoft

Turning a Marathon Runner into a Sprinter: Adopting Agile Testing Strategies and Practices at Microsoft Turning a Marathon Runner into a Sprinter: Adopting Agile Testing Strategies and Practices at Microsoft Jean Hartmann Test Architect jeanhar@microsoft.com Overview Embracing Change Quality-related themes

More information

People tell me that testing is

People tell me that testing is Software Testing Mark Micallef mark.micallef@um.edu.mt People tell me that testing is Boring Not for developers A second class activity Not necessary because they are very good coders 1 What is quality?

More information

Web WRITING

Web WRITING Web WRITING BASICS 800-556-3009 www.careertrack.com DISCLAIMER: The principles and suggestions in this handout and the WEB WRITING BASICS webinar are presented to apply to diverse personal and company

More information

How Can Testing Teams Play a Key Role in DevOps Adoption?

How Can Testing Teams Play a Key Role in DevOps Adoption? June 3, 2016 How Can Testing Teams Play a Key Role in DevOps Adoption? Sujay Honnamane QA Director @sujayh Rameshkumar Bar Sr. Automation Architect @rameshbar 2016 Cognizant Session take away DevOps Overview

More information

Unit testing in CakePHP. Making bullet resistant code.

Unit testing in CakePHP. Making bullet resistant code. Unit testing in CakePHP Making bullet resistant code. Goals for next hour If you are not familiar with Unit Testing, introduce you to the concepts and practices of Unit testing. If you are familiar with

More information

Test Driven Development (TDD), and Working with Legacy Code Using C# Workshop ( 4 days)

Test Driven Development (TDD), and Working with Legacy Code Using C# Workshop ( 4 days) Test Driven Development (TDD), and Working with Legacy Code Using C# Workshop ( 4 days) HOTEL DUBAI GRAND April 16 to 19-2018 Monday to Thursday ) (4 days) 9 am to 4 pm ISIDUS TECH TEAM FZE PO Box 9798

More information

GEOweb PROPERTY VIEWER

GEOweb PROPERTY VIEWER www.geoweb.dnv.org/properties AGENDA CONSIDERATIONS WHAT WE DID AND WHY WHAT S NEXT MOBILE USABILITY RESPONSIVE & ADAPTIVE DESIGN SIMPLIFICATION MOBILE FIRST CHALLENGES GOALS DESIGN & BUILD DIFFICULTIES

More information

Siegfried Goeschl. Gatling Tales From A Journey

Siegfried Goeschl. Gatling Tales From A Journey Siegfried Goeschl Gatling Tales From A Journey George International Turning George Online Banking into a multi-tenant and group-wide platform Single code base Currently targeting four tenants Server-side

More information

HOW TO WRITE USER STORIES (AND WHAT YOU SHOULD NOT DO) Stuart Ashman, QA Director at Mio Global Bob Cook, Senior Product Development Manager, Sophos

HOW TO WRITE USER STORIES (AND WHAT YOU SHOULD NOT DO) Stuart Ashman, QA Director at Mio Global Bob Cook, Senior Product Development Manager, Sophos HOW TO WRITE USER STORIES (AND WHAT YOU SHOULD NOT DO) Stuart Ashman, QA Director at Mio Global Bob Cook, Senior Product Development Manager, Sophos Welcome This presentation will discuss Writing user

More information

How to actively build inbound enquiry. ebook

How to actively build inbound enquiry. ebook How to actively build inbound enquiry ebook You know it s important HOW TO ACTIVELY BUILD INBOUND ENQUIRY... Businesses spend thousands of dollars every month on PR, advertising and at times, elaborate

More information

Ingredients Nokia 2

Ingredients Nokia 2 Experiences from GUI Test Automation in Agile Development Ville Ilvonen Principal Engineer, Tools Development, MeeGo Computers, Nokia September 23rd 2010 Seminar on Model-Based Testing of Smartphone Applications

More information

Volume. User Manual and Resource Guide

Volume. User Manual and Resource Guide Volume 1 User Manual and Resource Guide User Manual and Resource Guide Game Gurus United States Telephone: (415) 800-3599 Brazil Telephone: 55 84-8723-2557 Email: info@gamegurus.com Table of Contents What

More information

THE SECRET FOR MAKING MONEY ONLINE

THE SECRET FOR MAKING MONEY ONLINE SALESFIST.COM THE SECRET FOR MAKING MONEY ONLINE What The Internet Marketers Aren t Telling You! SalesFist.Com Introduction My name is Jeremiah and I have been in sales for the past 15 years. I am not

More information

Test Automation. Fundamentals. Mikó Szilárd

Test Automation. Fundamentals. Mikó Szilárd Test Automation Fundamentals Mikó Szilárd 2016 EPAM 2 Blue-chip clients rely on EPAM 3 SCHEDULE 9.12 Intro 9.19 Unit testing 1 9.26 Unit testing 2 10.03 Continuous integration 1 10.10 Continuous integration

More information

Apache Hadoop 3. Balazs Gaspar Sales Engineer CEE & CIS Cloudera, Inc. All rights reserved.

Apache Hadoop 3. Balazs Gaspar Sales Engineer CEE & CIS Cloudera, Inc. All rights reserved. Apache Hadoop 3 Balazs Gaspar Sales Engineer CEE & CIS balazs@cloudera.com 1 We believe data can make what is impossible today, possible tomorrow 2 We empower people to transform complex data into clear

More information

LogiGear Overview. Bruce Ekins LogiGear Colorado Phone Mobile LogiGear Corporation 1

LogiGear Overview. Bruce Ekins LogiGear Colorado Phone Mobile LogiGear Corporation 1 LogiGear Overview Bruce Ekins LogiGear Colorado bruce.ekins@logigear.com Phone 303.395.2921 Mobile 303.809.5787 2013 LogiGear Corporation 1 Company Highlights Our Mission LogiGear provides leading-edge

More information

Responsive Redesign dispatch.com 10tv.com thisweeknews.com

Responsive Redesign dispatch.com 10tv.com thisweeknews.com Responsive Redesign 2014 dispatch.com 10tv.com thisweeknews.com Project Goals Establish a one web content strategy Share templates and interaction design patterns across brands Provide enough flexibility

More information

Lightning Migration. The time is now. eightcloud 1

Lightning Migration. The time is now. eightcloud 1 Lightning Migration The time is now eightcloud 1 1 Marketplace 2 Planning / Research 3 Execution 4 Monitoring Adoption 5 Examples / Resources 6 Questions eightcloud Agenda 2 Timeline & Trends Timeline

More information

CATCH ERRORS BEFORE THEY HAPPEN. Lessons for a mature data governance practice

CATCH ERRORS BEFORE THEY HAPPEN. Lessons for a mature data governance practice CATCH ERRORS BEFORE THEY HAPPEN Lessons for a mature data governance practice A guide to working with cross-departmental teams to establish proactive data governance for your website or mobile app. 2 Robust

More information

Advanced e-marketing

Advanced e-marketing Advanced e-marketing Introduction Mobile technology Best practise mobile sites Website, Mobile Website or Mobile Applications Google tools Group buying sites Blogging for tourism Definitions CMS Content

More information

EPISODE 23: HOW TO GET STARTED WITH MAILCHIMP

EPISODE 23: HOW TO GET STARTED WITH MAILCHIMP EPISODE 23: HOW TO GET STARTED WITH MAILCHIMP! 1 of! 26 HOW TO GET STARTED WITH MAILCHIMP Want to play a fun game? Every time you hear the phrase email list take a drink. You ll be passed out in no time.

More information

ICAgile Learning Roadmap Agile Testing Track

ICAgile Learning Roadmap Agile Testing Track ICAgile Learning Roadmap Agile Testing Track The work in this document was facilitated by the International Consortium for Agile (ICAgile) and done by the contribution of various Agile Experts and Practitioners.

More information

mobile friendly? Google s survey shows there are three key points to a mobile-friendly site:

mobile friendly? Google s survey shows there are three key points to a mobile-friendly site: 1. Is your site mobile friendly? Now more than ever before it is important for your website to be mobile-friendly. According to a July 2012 Google survey of the more than 1,000 smartphone users people

More information

The Joy of Software Development

The Joy of Software Development The Joy of Software Development ABOUT ME Nemo @captn3m0 captnemo.in Work @Razorpay WHY? - Data Structures - Computer Architecture - Algorithms - Operating Systems - Software Eng - Computer Networks - Compiler

More information

Automated Testing of Tableau Dashboards

Automated Testing of Tableau Dashboards Kinesis Technical Whitepapers April 2018 Kinesis CI Automated Testing of Tableau Dashboards Abstract Companies make business critical decisions every day, based on data from their business intelligence

More information

An SDLC for the DevSecOps Era Or SecDevOps, or DevOpsSec,

An SDLC for the DevSecOps Era Or SecDevOps, or DevOpsSec, An SDLC for the DevSecOps Era Or SecDevOps, or DevOpsSec, or zane@signalsciences.com @zanelackey Who you ll be heckling today Started out in offense Pentester / researcher at isec Partners / NCC Group

More information

Mobile Test Automation is not Rocket Science! Baris

Mobile Test Automation is not Rocket Science! Baris Mobile Test Automation is not Rocket Science! Baris Baris Sarialioglu... Managing Partner, Consultant, Trainer ex-sw Developer, ex-cmmi Consultant, ex-employee, Infineon, Boeing, Siemens, Huawei, UniCredit

More information

Simulink Verification and Validation

Simulink Verification and Validation Simulink Verification and Validation Mark Walker MathWorks 7 th October 2014 2014 The MathWorks, Inc. 1 V Diagrams 3 When to Stop? A perfectly tested design would never be released Time spent on V&V is

More information

Super Charge Your Continuous Integration Deployments. Nikola Gotsev April 26, 2016

Super Charge Your Continuous Integration Deployments. Nikola Gotsev April 26, 2016 Super Charge Your Continuous Integration Deployments Nikola Gotsev April 26, 2016 What is Continuous Integration? Wasn`t that the same as Continuous Deployment? Or was it related to the source control

More information

Mock Objects and Distributed Testing

Mock Objects and Distributed Testing Mock Objects and Distributed Testing Making a Mockery of your Software Brian Gilstrap Once, said the Mock Turtle at last, with a deep sigh, I was a real Turtle. (Alice In Wonderland, Lewis Carroll) The

More information

Dental Buyers Guide 101

Dental Buyers Guide 101 Website Design and Marketing Dental Buyers Guide 101 Top Questions to Ask When Hiring a Dental Website Provider Your website is arguably the most important piece of the marketing puzzle. It s the cornerstone

More information

Getting the Most out of Access Manager

Getting the Most out of Access Manager White Paper Security Getting the Most out of Access Manager With Access Manager, administrators can control the user experience to a level that few other technologies can match. This white paper reviews

More information

Test-driven development

Test-driven development Test-driven development And how we do it at WIX Mantas Indrašius Software Engineer WIX.COM Agenda Tests overview Test-driven development (TDD) Let s see it in action (demo) Kickstarting a project using

More information

David Bernstein Five Development Practices Essential for Scrum Teams

David Bernstein Five Development Practices Essential for Scrum Teams David Bernstein Five Development Practices Essential for Scrum Teams 1 Welcome! I m David Scott Bernstein Software developer since 1980 Trained 8,000 developers since 1990 Published author since 2015 Website:

More information

Lessons Learned. Johnny Bigert, Ph.D., Skype/Microsoft October 26, 2011

Lessons Learned. Johnny Bigert, Ph.D., Skype/Microsoft October 26, 2011 Lessons Learned Johnny Bigert, Ph.D., Skype/Microsoft johnny.bigert@skype.net October 26, 2011 Why do we do the things we do? Software Development Object-orientation, design principles, timeboxing, teams,

More information

TRUST YOUR WEBSITE TO THE EXPERTS PROFESSIONALLY DESIGNED AND FOUND EVERYWHERE THAT MATTERS

TRUST YOUR WEBSITE TO THE EXPERTS PROFESSIONALLY DESIGNED AND FOUND EVERYWHERE THAT MATTERS TRUST YOUR WEBSITE TO THE EXPERTS PROFESSIONALLY DESIGNED AND FOUND EVERYWHERE THAT MATTERS CONTENTS Trust HQBytes with your website 04 The HQBytes difference 10 Designed by professionals 05 Our websites

More information

Agile vs Fragile. Susmit Bhattacharya, Solution Architect, Asia Pacific. - The need for Automation in Agile Tricentis GmbH. All Rights Reserved.

Agile vs Fragile. Susmit Bhattacharya, Solution Architect, Asia Pacific. - The need for Automation in Agile Tricentis GmbH. All Rights Reserved. Agile vs Fragile - The need for Automation in Agile Susmit Bhattacharya, Solution Architect, Asia Pacific 2017 Tricentis GmbH. All Rights Reserved. Years Months Months Weeks Delivery Cycle Time Weeks Days

More information

The Future of Testing: Continuous Enterprise Testing

The Future of Testing: Continuous Enterprise Testing The Future of Testing: Continuous Enterprise Testing ANZTB Test Conference, Canberra, 1 June 2018 Thomas Hadorn. Dev Ops Years Months Months Weeks Delivery Cycle Time Weeks Days Perceived Disruption Software

More information

Continuous Integration / Continuous Testing

Continuous Integration / Continuous Testing Bitte decken Sie die schraffierte Fläche mit einem Bild ab. Please cover the shaded area with a picture. (24,4 x 7,6 cm) Continuous Integration / Continuous Testing IIC What s SW Integration? Integration

More information

Test all the things! Get productive with automated testing in Drupal 8. Sam Becker

Test all the things! Get productive with automated testing in Drupal 8. Sam Becker Test all the things! Get productive with automated testing in Drupal 8 Sam Becker WHO AM I? Sam152 on drupal.org Back-end Drupal dev for PreviousNext Core contributor Author of 50+ contributed projects

More information

Fast, Sexy, and Svelte: Our Kind of Rails Testing. Dan Manges (ThoughtWorks) zak (unemployed)

Fast, Sexy, and Svelte: Our Kind of Rails Testing. Dan Manges (ThoughtWorks) zak (unemployed) Fast, Sexy, and Svelte: Our Kind of Rails Testing Dan Manges (ThoughtWorks) zak (unemployed) a translation without buzzwords notes short build times maintainable comprehensive coverage this talk: how to

More information

Automating Security Practices for the DevOps Revolution

Automating Security Practices for the DevOps Revolution Automating Security Practices for the DevOps Revolution Hari Srinivasan Director Product Management, Cloud and Virtualization Security Qualys Inc. 1 Qualys, Inc. 2018 Agenda Transformation of today s IT

More information

Introduction to Testing and Maintainable code

Introduction to Testing and Maintainable code Introduction to Testing and Maintainable code Reasons not to write unit tests 1. I don't know how to write tests. 2. Writing tests is too hard. 3. I don't have enough time to write tests. 4. Testing is

More information

Test-Driven Development (TDD)

Test-Driven Development (TDD) Test-Driven Development (TDD) CS 4501 / 6501 Software Testing [Lasse Koskela, Test Driven, Chapters 2-3] 1 Agile Airplane Testing Test harness: Appearance matches Color coding in place Fly 6ft (or 2m)

More information

Audience: Info Workers, Dev

Audience: Info Workers, Dev Wes Preston PWR202 Audience: Info Workers, Dev Solution and application sites built in SharePoint or O365 often rely on a baseline understanding of how SharePoint works. This entry point can stifle user

More information

Inverting the Pyramid

Inverting the Pyramid Inverting the Pyramid Naresh Jain naresh@agilefaqs.com @nashjain http://nareshjain.com Time/Money/Opportunity Cost Plan Back in the Stone-age Happiness/Excitement Design Distribute Work in Isolation Integrate

More information

The Art of Unit Testing

The Art of Unit Testing The Art of Unit Testing with Examplee in.net Roy Oeberove 11 MANNING Greenwich (74 w. long.) Contents foreword t xv preface xvii acknowledgments xix about this book xx about the cover illustration XXIII

More information

Challenges, Benefits and Best Practices of Performance Focused DevOps. 1 #Dynatrace

Challenges, Benefits and Best Practices of Performance Focused DevOps. 1 #Dynatrace Challenges, Benefits and Best Practices of Performance Focused DevOps Wolfgang Gottesheim @gottesheim 1 #Dynatrace When do we find performance problems? Developers Unit/Integration Tests Acceptance Tests

More information

Advanced Java Testing. What s next?

Advanced Java Testing. What s next? Advanced Java Testing What s next? Vincent Massol, February 2018 Agenda Context & Current status quo Coverage testing Testing for backward compatibility Mutation testing Environment testing Context: XWiki

More information

Three things you should know about Automated Refactoring. When planning an application modernization strategy

Three things you should know about Automated Refactoring. When planning an application modernization strategy Three things you should know about Automated Refactoring When planning an application modernization strategy Three things you should know about Automated Refactoring when planning an application modernization

More information

1/9

1/9 Our Android Media Packages are explained below. If you would like a detailed explanation of every service listed in the packs then please ask for our Android Services PDF. The following pdfs are also available:

More information

How We Learned To Love Test Automation for Localization AUTOMATED TESTS

How We Learned To Love Test Automation for Localization AUTOMATED TESTS How We Learned To Love Test Automation for Localization AUTOMATED TESTS Executive Summary In general, localization testing is manual as text needs to be read, layout needs to be checked, and localization

More information

Version Control for PL/SQL

Version Control for PL/SQL Version Control for PL/SQL Customer Spotlight Success Story: Rhenus Logistics, leading logistics service company from Germany, uses this solution. Manages over 20,000 packages Packages are spread over

More information

The SD-WAN security guide

The SD-WAN security guide The SD-WAN security guide How a flexible, software-defined WAN can help protect your network, people and data SD-WAN security: Separating fact from fiction For many companies, the benefits of SD-WAN are

More information

Want Better Software? TEST it! (and thenwrite it) Tame defects before they appear You Rise/Bugs Fall

Want Better Software? TEST it! (and thenwrite it) Tame defects before they appear You Rise/Bugs Fall Want Better Software? TEST it! (and thenwrite it) Tame defects before they appear You Rise/Bugs Fall Introduction TDD had its origins as an integral part of Extreme Programming TDD, BDD, DDD and the coming

More information

Software Test Plan Version 1.0

Software Test Plan Version 1.0 Software Test Plan Version 1.0 3/23/2017 Team Name: Skyward Team Members: Gage Cottrell Justin Kincaid Chris French Alexander Sears Sponsors: Dr. Michael Mommert and Dr. David Trilling Mentor: Dr. Otte

More information

Computer Architecture. What is it?

Computer Architecture. What is it? Computer Architecture Venkatesh Akella EEC 270 Winter 2005 What is it? EEC270 Computer Architecture Basically a story of unprecedented improvement $1K buys you a machine that was 1-5 million dollars a

More information

Retrofitting Legacy Code for Authorization Policy Enforcement

Retrofitting Legacy Code for Authorization Policy Enforcement Retrofitting Legacy Code for Authorization Policy Enforcement Vinod Ganapathy, Trent Jaeger, and Somesh Jha Presented by Kevin Butler CSE 544-13 February 2007 Systems and Internet Infrastructure Security

More information

Mobile Apps Why & How

Mobile Apps Why & How Mobile Apps Why & How MOBIKATS Phillip Hunt CEO philliphunt@mobikats.com 07590 277045 Putting your Content in Everyone s Pocket. Copyright Mobikats 2012 What do we do? Consultancy on developing or reviewing

More information

The one bit everyone forgets: with JUnit. John Stegeman Xchanging

The one bit everyone forgets: with JUnit. John Stegeman Xchanging The one bit everyone forgets: Testing your ADF application with JUnit http://groups.google.com/group/adf-methodology ADF EMG A place to discuss best practices and methodologies for JDeveloper ADF enterprise

More information

Bob Galen. Bob began as a developer, then moved to Project Management and Leadership, then Testing.

Bob Galen. Bob began as a developer, then moved to Project Management and Leadership, then Testing. Bob Galen Mr. Galen has 30 years of experience with various lifecycles including waterfall variants, RUP, Agile, and Chaos! He has worked in industry domains including SaaS, Medical, Financial Services,

More information

Design Micro Service Architectures the Right Way

Design Micro Service Architectures the Right Way Design Micro Service Architectures the Right Way Michael Bryzek mike@flow.io / @mbryzek Cofounder / CTO Flow Cofounder / ex-cto Gilt A personal story Could you change this URL from https://foo.com/latest/bar.js

More information

Achieving Continuous Delivery - Micro Services. - Vikram Gadang

Achieving Continuous Delivery - Micro Services. - Vikram Gadang Achieving Continuous Delivery - Micro Services - Vikram Gadang Agenda Starting point Observations and lessons learned Architecting for CD Build pipeline strategy Testing strategy Deployment strategy State

More information

UXD. using the elements: structure

UXD. using the elements: structure using the elements: structure defining structure you are here structure essentially defines how users get to a given screen and where they can go when they re done. structure also defines categories of

More information

Applying information architecture to university web sites

Applying information architecture to university web sites Applying information architecture to university web sites CASE V Conference December 13, 2005 Keith Instone keith@instone.org 2005 Keith Instone Blog item for this presentation: http://instone.org/casev

More information

Technical Debt in Eclipse Development. Eclipse Con France 2018

Technical Debt in Eclipse Development. Eclipse Con France 2018 Technical Debt in Eclipse Development Eclipse Con France 2018 13 June 2018 Table of content I - Technical debt in your RCP application 5, June 2018 3 Technical debt in your RCP application I- I Who?

More information

Test Driven Development: Pair programming to the max. Klaas van Gend, 040coders.nl, March 15, 2018

Test Driven Development: Pair programming to the max. Klaas van Gend, 040coders.nl, March 15, 2018 Test Driven Development: Pair programming to the max Klaas van Gend, 040coders.nl, March 15, 2018 1 Klaas van Gend Hobby: Hobby: {040coders.nl} Hobby: 2 3 1949 1953 4 source optics 4 meter stage more optics

More information

Connect with Remedy: SmartIT: Social Event Manager Webinar Q&A

Connect with Remedy: SmartIT: Social Event Manager Webinar Q&A Connect with Remedy: SmartIT: Social Event Manager Webinar Q&A Q: Will Desktop/browser alerts be added to notification capabilities on SmartIT? A: In general we don't provide guidance on future capabilities.

More information

TURN DATA INTO ACTIONABLE INSIGHTS. Google Analytics Workshop

TURN DATA INTO ACTIONABLE INSIGHTS. Google Analytics Workshop TURN DATA INTO ACTIONABLE INSIGHTS Google Analytics Workshop The Value of Analytics Google Analytics is more than just numbers and stats. It tells the story of how people are interacting with your brand

More information

Data Integrity in Stateful Services. Percona Live, Santa Clara, 2017

Data Integrity in Stateful Services. Percona Live, Santa Clara, 2017 Data Integrity in Stateful Services Percona Live, Santa Clara, 2017 Data Integrity Bringing Sexy Back Protect the Data. -Every DBA who doesn t want to be fired Breaking Integrity Down Physical Integrity

More information

Owner/Manager Webinar. Client Guide

Owner/Manager Webinar. Client Guide Owner/Manager Webinar Client Guide 1 Table of Contents Login...3 Staff Management....3 Updating Username/password...3 Adding Staff members....4 Removing Staff members 6 Permissions...7 Staff Dashboard

More information

Performance Testing in a Containerized World. Paola Rossaro

Performance Testing in a Containerized World. Paola Rossaro Performance Testing in a Containerized World Paola Rossaro STARWEST 2017 Something about me PhD Computer Science (performance) 20+ years high-tech CTO and Co-founder Nouvola And a unicorn mom! Agenda Continuous

More information

dbdeployer the future of MySQL sandboxes Giuseppe Maxia Software explorer

dbdeployer the future of MySQL sandboxes Giuseppe Maxia Software explorer dbdeployer the future of MySQL sandboxes Giuseppe Maxia Software explorer About me Who's this guy? Giuseppe Maxia, a.k.a. "The Data Charmer" Software Explorer at VMware Several decades development and

More information

Continuous Testing at Scale

Continuous Testing at Scale Continuous Testing at Scale TAPOST Conference October 12th 2016, Riga dmitry@buzdin.lv @buzdin Dmitry Buzdin Introduction to Continuous Testing Continuous Delivery Get changes to production in fast and

More information

QMS ISO 9001:2015 CERTIFIED COMPANY Software Testing TRAINING.

QMS ISO 9001:2015 CERTIFIED COMPANY Software Testing TRAINING. QMS ISO 9001:2015 CERTIFIED COMPANY Software Testing TRAINING www.webliquidinfotech.com What you Learn: What is Software Testing? Why Testing is Important? Scope of Software Testing Objectives of Software

More information

Automation Best Practices for CI/CD. Leo Laskin, Sr. Solutions Architect

Automation Best Practices for CI/CD. Leo Laskin, Sr. Solutions Architect Automation Best Practices for CI/CD Leo Laskin, Sr. Solutions Architect Agenda Topic 1 CI/CD Topic 4 Other tips Topic 2 Best Practice Testing Topic 3 Selenium Testing THE PATH TO CI/CD Waterfall Fast Waterfall

More information