Test-driven development

Size: px
Start display at page:

Download "Test-driven development"

Transcription

1 Test-driven development And how we do it at WIX Mantas Indrašius Software Engineer WIX.COM

2 Agenda Tests overview Test-driven development (TDD) The Bowling Game demo Kickstarting a project using TDD How we do it in WIX

3 Tests overview

4 Why writing tests Reliability Freedom of change Instant/fast feedback Tests as specification Design hints for free Saves cost

5 Reliability Code is changing all the time Most projects are developed in teams Humans do mistakes How do we know if changing A does not break B? Are we stable enough to deploy? Do we trust the developers?

6 Developer feedback

7 Freedom of change Well written code is reusable Change in single line of code might break unintended parts of the system Changing code of someone else is a risk to introduce bugs Can we refactor and be sure no bugs were introduced?

8 Feedback from process

9 Feedback cycles Unit tests - a second or two Acceptance test minutes Manual testing / using debugger minutes Continuous integration minutes Peer review - few hours QA - from few hours to days Production - days, weeks or months And we do it in multiple iterations

10 The Word of Wisdom Fail as fast as you can!

11 Tests as specification Specifications are hard to create and maintain Specifications contain errors and inconsistencies Most of inconsistencies are discovered in the coding phase Amendments are late and costly Most of requirements could be described as acceptance tests in a readable manner

12 Design hints for free It s a rule: good design = testable code Hard to write tests hint the code under test has design flaws Tests can guide how the bad design could be improved Does it make sense to write the test after the code?

13 Saves cost We spend a lot of time on debugger Better design requires less maintenance Frequent deployments = smaller impact Less bugs = lower fixing cost, happy users And...

14 Saves cost We spend a lot of time on debugger Better design requires less maintenance Frequent deployments = smaller impact Less bugs = lower fixing cost, happy users We can fire the analysts, testers and release manager :)

15 Saves cost We spend a lot of time on debugger Better design requires less maintenance Frequent deployments = smaller impact Less bugs = lower fixing cost, happy users We can fire the analysts, testers and release manager :) They can help improving the product even more

16 Unit tests We test object behavior We set preconditions and expectations Test behavior with different input arguments We use object mocks to isolate the class under test

17 Unit tests

18 Unit tests

19 TDD (Test-driven development)

20 What is TDD? It s a development process of very short development cycles based on a rapid feedback It s a design activity It s a design support tool It s a safety net of regression coverage

21 The basics of TDD process Write a test Run all tests and see the new one fails Write minimal amount of code for the test to pass Run all the tests and see them pass Refactor code to acceptable standards

22 The Golden Rule of TDD Never write a new functionality without a failing test

23 Red - Green - Refactor

24 Levels of testing Acceptance - does the whole system work? Integration - does our code work with 3rd party? Unit - do our objects do the right thing?

25 Pyramid of developer tests

26 The Bigger Picture Write a failing acceptance test and keep it so Go to the class level and do TDD with unit and/or integration tests Once finished, check the acceptance test If it s still not passing, continue with changes in the class level

27 The Bigger Picture

28 Acceptance testing

29 Why acceptance tests are not enough Acceptance tests are slow They are not suitable to test edge cases They don t help maintaining a good design They are not allowed to have access to the internal components of the system

30 Testing a system component In big systems working with acceptance tests requires great effort So we split the system into components and test them End-to-End (E2E) We keep the minimum of acceptance tests to prove the system is working We burden E2E with more thorough use cases

31 End-to-End testing (E2E) We isolate the component in a black-box We are not allowed to interact with the internals of the component If it s a server, we test it from the protocol client perspective If it s UI, we mimic the user mouse and keyboard inputs

32 End-to-End testing (E2E)

33 End-to-End testing (E2E)

34 End-to-End testing (E2E)

35 How TDD helps us? We learn to grow software incrementally We write just enough code for a feature We are guided to maintain a sustainable design At any given time we have a ready to deploy system At any given time we have the most up-to-date specification of how system works

36 Agile loves TDD Incremental development Short feedback loop Working software over documentation There is no component someone owns Quality first

37 Let s see it in action Demo

38 Kickstarting a project Using TDD

39 The first step: The Walking Skeleton The Goal: Build the infrastructure Choose the minimal system feature to focus on infrastructure Infrastructure should include all the essential anticipated components We should learn how to build and deploy Pass the first acceptance test

40 The Walking Skeleton on legacy The Goal: Build the infrastructure Choose the simplest existing system feature and focus on building the infrastructure Infrastructure should include all the essential anticipated components Pass the first acceptance test Cover the other cases one-by-one

41 The context of the first step

42 Uncertainty in test-first and testlater

43 Working with 3rd party It s the code we don t control and we cannot change In unit tests don t mock types from 3rd party Write a thin adapter layer and use it in your mocks Run an integration test on this layer

44 Testing the 3rd party adapter layer

45 How we do it in WIX

46 What do we do in WIX Website editing and publishing platform User account / business management system App Market Hundreds of small applications in the market Business verticals: hotels, reservations, music, photography etc

47 Scale of WIX More than 57,000,000 users 1.2PB of data (1.5TB per day) 900 servers in 3 data centers 3 clouds (Google, Amazon, Azure) dynamic requests per minute More than 900 employees

48 Engineering in WIX WIX is a company with developer-centric approach Excellence of Engineering is our priority to adding new features Every developer in WIX is also a DevOp Service oriented architecture We do continuous delivery

49 TDD at WIX We believe in TDD, we start learning it from the first day at work Client-side and server-side do it separately in their isolated ecosystems We approach TDD from E2E rather than acceptance testing TDD empowers us to practice the Continuous delivery approach

50 Continuous delivery

51 Our Concerns Continuous integration Backwards and forwards compatibility Feature oriented design Experiments Data inconsistency

52 Tools TeamCity - continuous integration and release LifeCycle - a custom built tool to manage the project lifecycles (version management, delivery) Artifactory - storage for artifacts Chef - deployments / server provisioning

53 Client-side infrastructure AngularJS for building the rich UI Grunt for running the build (incl. tests) Jasmine for describing test behavior PhantomJS for testing units Selenium with Protractor for E2E or acceptance tests SauceLabs for cross-platform testing

54 Client-side build Start PhantomJS and run the unit tests Start a fake API server on NodeJS Start the controlled browsers Run the E2E test suite against them Clean up & deliver the artifact

55 Server-side infrastructure Scala/Java for server applications Maven as a build tool specs2/junit for describing the test behavior JMock/Mockito for testing units Custom HTTP test-kit for HTML/JSON matching

56 Server-side build Run unit tests Setup the embedded environment (MySQL, MongoDB, Cassandra) Start the fake 3rd party services Start the server under test Run the E2E test suite against it Clean up & deliver the artifact

57 Release process in WIX

58 Ačiū! Any Questions?

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

Shift Left Testing: are you ready? Live Webinar, Sept 19

Shift Left Testing: are you ready? Live Webinar, Sept 19 Shift Left Testing: are you ready? Live Webinar, Sept 19 Guy Arieli CTO, Experitest 01 What exactly is Shift Left? Agenda 02 03 How Shift Left affects application development & testing organizational structures

More information

Software Quality in a Modern Development Team. Presented by Timothy Bauguess and Marty Lewis

Software Quality in a Modern Development Team. Presented by Timothy Bauguess and Marty Lewis Software Quality in a Modern Development Team Presented by Timothy Bauguess and Marty Lewis High-Quality Software Who benefits? End users Development Stakeholders Components of Software Quality Structural

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

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

Azure DevOps. Randy Pagels Intelligent Cloud Technical Specialist Great Lakes Region

Azure DevOps. Randy Pagels Intelligent Cloud Technical Specialist Great Lakes Region Azure DevOps Randy Pagels Intelligent Cloud Technical Specialist Great Lakes Region What is DevOps? People. Process. Products. Build & Test Deploy DevOps is the union of people, process, and products to

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

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

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

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

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

DevOps Made Easy. Shireesh Thanneru, Platform Architect. Intel. Linoy Alexander, Director, DevOps

DevOps Made Easy. Shireesh Thanneru, Platform Architect. Intel. Linoy Alexander, Director, DevOps DevOps Made Easy Shireesh Thanneru, Platform Architect Intel Linoy Alexander, Director, DevOps Justyna Kucharczak, Sr. Product Marketing Manager, Platform Pegasystems Agenda Why DevOps? A look at benefits

More information

.NET C# C++ JavaScript PHP Python Node.js R Cordova Unity Java Perl

.NET C# C++ JavaScript PHP Python Node.js R Cordova Unity Java Perl Windows Linux ios Android.NET C# C++ JavaScript PHP Python Node.js R Cordova Unity Java Perl UI Automation Testing Business challenges UI regression test needs grow over time Manual UI testing impacts

More information

Building a Customized Test Automation Framework Using Open Source Tools

Building a Customized Test Automation Framework Using Open Source Tools Building a Customized Test Automation Framework Using Open Source Tools August, 2016 Contents Executive Summary...03 Need for Test Automation...04 Overcoming Limitations of Open Source Tools...04 Test

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

FROM VSTS TO AZURE DEVOPS

FROM VSTS TO AZURE DEVOPS #DOH18 FROM VSTS TO AZURE DEVOPS People. Process. Products. Gaetano Paternò @tanopaterno info@gaetanopaterno.it 2 VSTS #DOH18 3 Azure DevOps Azure Boards (ex Work) Deliver value to your users faster using

More information

How to Build an Appium Continuous Testing Pipeline

How to Build an Appium Continuous Testing Pipeline How to Build an Appium Continuous Testing Pipeline Step-by-Step Tutorial November, 2017 Today s speakers Guy Arieli, CTO, Experitest Ruth Zamir Marketing Director Experitest 01 Why do we need continuous

More information

How Verizon boosted product delivery with Dynatrace Software Intelligence

How Verizon boosted product delivery with Dynatrace Software Intelligence How Verizon boosted product delivery with Dynatrace Software Intelligence 3x faster build and test cycles 2x faster deployments 33 percent faster revenue realization 50 percent reduction in issues 2019

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

DevOps Anti-Patterns. Have the Ops team deal with it. Time to fire the Ops team! Let s hire a DevOps unit! COPYRIGHT 2019 MANICODE SECURITY

DevOps Anti-Patterns. Have the Ops team deal with it. Time to fire the Ops team! Let s hire a DevOps unit! COPYRIGHT 2019 MANICODE SECURITY DevOps Anti-Patterns Have the Ops team deal with it. Time to fire the Ops team! Let s hire a DevOps unit! 31 Anti-Pattern: Throw it Over the Wall Development Operations 32 Anti-Pattern: DevOps Team Silo

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

Turbo boost your digital app test automation with Jenkins

Turbo boost your digital app test automation with Jenkins Turbo boost your digital app test automation with Jenkins Step-by-Step Tutorial May, 2018 Speakers Sheli Ashkenazi Sr. Product Manager Experitest Jonathan Aharon Sr. Sales Engineer Experitest 2 01 The

More information

Agile Manifesto & XP. Topics. Rapid software development. Agile methods. Chapter ) What is Agile trying to do?

Agile Manifesto & XP. Topics. Rapid software development. Agile methods. Chapter ) What is Agile trying to do? Topics 1) What is trying to do? Manifesto & XP Chapter 3.1-3.3 2) How to choose plan-driven vs? 3) What practices go into (XP) development? 4) How to write tests while writing new code? CMPT 276 Dr. B.

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

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

Disruptive Technology

Disruptive Technology Continuous Delivery & The Changing Role of the Tester Dr Kelvin Ross ANZTB 2015, Auckland 22 May 2015 Disruptive Technology 2 1 Disruptive Technology 3 Disruptive Technology 4 2 Disruptive Technology 5

More information

Continuous Delivery for Cloud Native Applications

Continuous Delivery for Cloud Native Applications Continuous Delivery for Cloud Native Applications Cyrille Le Clerc, Director, Product Management at CloudBees Bjorn Boe, Senior Field Engineer at Pivotal Software Speakers /Cyrille Le Clerc Product Manager

More information

Actifio Test Data Management

Actifio Test Data Management Actifio Test Data Management Oracle MS SQL Faster Time To Market Start Release Time To Market (TTM) Finish Faster App Releases Faster Application Releases Faster TTM Increases Revenue Market Share Competitive

More information

Assuring Certainty through Effective Regression Testing. Vishvesh Arumugam

Assuring Certainty through Effective Regression Testing. Vishvesh Arumugam Assuring Certainty through Effective Regression Testing Vishvesh Arumugam Agenda Introduction The Problem Magnitude Management Regression Test Efficiency Solution and Approach Test Suite Maintenance Determining

More information

Kanban One-Day Workshop

Kanban One-Day Workshop Kanban One-Day Workshop Copyright Net Objectives, Inc. All Rights Reserved 2 Copyright Net Objectives, Inc. All Rights Reserved 3 Lean for Executives Product Portfolio Management Business Product Owner

More information

DevOps and Maven. Eamonn de Leastar Dr. Siobhán Drohan Produced by:

DevOps and Maven. Eamonn de Leastar Dr. Siobhán Drohan Produced by: DevOps and Maven Produced by: Eamonn de Leastar (edeleastar@wit.ie) Dr. Siobhán Drohan (sdrohan@wit.ie) Department of Computing and Mathematics http://www.wit.ie/ Dev team created a solution for production.

More information

Modelos de Negócio na Era das Clouds. André Rodrigues, Cloud Systems Engineer

Modelos de Negócio na Era das Clouds. André Rodrigues, Cloud Systems Engineer Modelos de Negócio na Era das Clouds André Rodrigues, Cloud Systems Engineer Agenda Software and Cloud Changed the World Cisco s Cloud Vision&Strategy 5 Phase Cloud Plan Before Now From idea to production:

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

A few more things about Agile and SE. Could help in interviews, but don t try to bluff your way through

A few more things about Agile and SE. Could help in interviews, but don t try to bluff your way through A few more things about Agile and SE Could help in interviews, but don t try to bluff your way through 1 Refactoring How to do it, where it fits in http://www.cse.ohio-state.edu/~crawfis/cse3902/index.htm

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

Final Paper. Automation in Agile Testing. Vijay Kumar - Senior Software Engineer - Testing CenturyLink Technologies

Final Paper. Automation in Agile Testing. Vijay Kumar - Senior Software Engineer - Testing CenturyLink Technologies Final Paper Automation in Agile Testing Vijay Kumar - Senior Software Engineer - Testing CenturyLink Technologies Vijay.Kumar@CenturyLink.Com Abstract In any Agile Development methodology, automated testing

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

WHITEPAPER. Embracing Containers & Microservices for future-proof application modernization

WHITEPAPER. Embracing Containers & Microservices for future-proof application modernization WHITEPAPER Embracing Containers & Microservices for future-proof application modernization The need for application modernization: Legacy applications are typically based on a monolithic design, which

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

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

DXC Technology and VMware: Innovation that Transforms

DXC Technology and VMware: Innovation that Transforms DXC Technology and VMware: Innovation that Transforms DXC and VMware for Digital Transformation Digital transformation is the talk of IT today, and although driven by technology, the focus is on real,

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

Sterling Talent Solutions Automates DevOps and Orchestrates Data Center Operations. SaltStack Enterprise case study

Sterling Talent Solutions Automates DevOps and Orchestrates Data Center Operations. SaltStack Enterprise case study Sterling Talent Solutions Automates DevOps and Orchestrates Data Center Operations SaltStack Enterprise case study SaltStack Enterprise case study Sterling Talent Solutions automates DevOps and orchestrates

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

F5 Reference Architecture for Cisco ACI

F5 Reference Architecture for Cisco ACI F5 Reference Architecture for Cisco ACI Today s businesses face complex challenges to stay efficient and competitive. Together, F5 and Cisco enable organizations to dramatically reduce time to value on

More information

Cloudreach Data Center Migration Services

Cloudreach Data Center Migration Services Cloudreach Data Center Migration Services High Velocity Migration to Leverage Full Benefits of the Cloud The Cloud is Inevitable Cloudreach believe it is not about if, but when enterprises move their IT

More information

Agile Tester Foundation E-learning Course Outline

Agile Tester Foundation E-learning Course Outline Foundation E-learning Course Outline General Description This course provides testers and test managers with an understanding of the fundamentals of testing on agile projects. Attendees will learn how

More information

Nicman Group Test Data Management 2.0 Leveraging Copy Data Virtualization Technology in QA for SQuAD. November 2016

Nicman Group Test Data Management 2.0 Leveraging Copy Data Virtualization Technology in QA for SQuAD. November 2016 Nicman Group Test Data Management 2.0 Leveraging Copy Data Virtualization Technology in QA for SQuAD November 2016 Agenda Test Data Management 2.0 Leveraging Copy Data Virtualization Technology in QA Copy

More information

CA Test Data Manager Key Scenarios

CA Test Data Manager Key Scenarios WHITE PAPER APRIL 2016 CA Test Data Manager Key Scenarios Generate and secure all the data needed for rigorous testing, and provision it to highly distributed teams on demand. Muhammad Arif Application

More information

Javaentwicklung in der Oracle Cloud

Javaentwicklung in der Oracle Cloud Javaentwicklung in der Oracle Cloud Sören Halter Principal Sales Consultant 2016-11-17 Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information

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

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

The Visual Studio 2015 Checklist

The Visual Studio 2015 Checklist The Visual Studio 2015 Checklist ANTI-INFLAMMATORY 5 ways to take the pain out of coding Do you want to? 1 Slash the amount of boilerplate code you have to write? 2 Test faster? Hi Developers, My name

More information

2018 Database DevOps Survey DBmaestro 1

2018 Database DevOps Survey DBmaestro 1 2018 Database DevOps Survey 2017 DBmaestro 1 Table of Contents Executive Summary... 3 What Percentage of IT Projects in Your Company Use a DevOps Approach?... 4 Integration of DBAs with DevOps Teams...

More information

Agile Test Automation ICAgile

Agile Test Automation ICAgile Home > Agile Test Automation ICAgile Agile Test Automation ICAgile Discover how to implement test automation as stories are implemented Confidently deliver shippable product increments each sprint using

More information

Enabling Innovation in the Digital Economy

Enabling Innovation in the Digital Economy White Paper Business Agility Enabling Innovation in the Digital Economy Business Agility White Paper Enabling Innovation in the Digital Economy Five Steps to Implementing a Software-defined Infrastructure

More information

ArcGIS in the Cloud. Andrew Sakowicz & Alec Walker

ArcGIS in the Cloud. Andrew Sakowicz & Alec Walker ArcGIS in the Cloud Andrew Sakowicz & Alec Walker Key Takeaways How to Identify Organizational Strategy & Priorities Esri s Cloud Offerings A Broad Spectrum Successfully Executing Your Strategy The Cloud

More information

Seven Key Factors for Agile Testing Success

Seven Key Factors for Agile Testing Success Seven Key Factors for Agile Testing Success Agile Development Practices 2009 Lisa Crispin With Material from Janet Gregory 1 Introduction Tester on agile teams since 2000 My teams: Delight customers Deliver

More information

Copyright 2013, Oracle and/or its affiliates. All rights reserved.

Copyright 2013, Oracle and/or its affiliates. All rights reserved. 1 Safe Harbour THE FOLLOWING IS INTENDED TO OUTLINE OUR GENERAL PRODUCT DIRECTION. IT IS INTENDED FOR INFORMATION PURPOSES ONLY, AND MAY NOT BE INCORPORATED INTO ANY CONTRACT. IT IS NOT A COMMITMENT TO

More information

Extreme programming XP 6

Extreme programming XP 6 Extreme programming XP 6 Planning Game 3 Planning Game Independent: Stories should be as independent as possible. When thinking of independence it is often easier to think of order independent. In other

More information

Orchestrating the Continuous Delivery Process

Orchestrating the Continuous Delivery Process Orchestrating the Continuous Delivery Process steven.g.harris@cloudbees.com @stevengharris SVP Products, CloudBees 1 Continuous Delivery Overview Feedback Loop App Lifecycle BUILD TEST STAGE Deploy Run

More information

Power Up/Level Up: Supercharging Your Security Program for Cloud and DevOps. Rich

Power Up/Level Up: Supercharging Your Security Program for Cloud and DevOps. Rich Power Up/Level Up: Supercharging Your Security Program for Cloud and DevOps Rich Mogull @rmogull CISO Ragnarok The board is breathing down your neck, the CEO wants reports, and the CFO writes Try Open

More information

Architecture and Design Evolution

Architecture and Design Evolution Architecture and Design Evolution Pradyumn Sharma pradyumn.sharma@pragatisoftware.com www.twitter.com/pradyumnsharma 1 What is Software Architecture? Structure of a system, comprising software elements,

More information

We re redefining Software Quality

We re redefining Software Quality We re redefining Software Quality Continuous Testing Web Services Agile Testing Mobile Device Farm Test Lifecycle Management Performance Test Quality Assurance Mobile Device Management Test Life Cycle

More information

ENTERPRISE MOBILE APPLICATION DEVELOPMENT WITH WAVEMAKER

ENTERPRISE MOBILE APPLICATION DEVELOPMENT WITH WAVEMAKER ENTERPRISE MOBILE APPLICATION DEVELOPMENT WITH WAVEMAKER Abstract This whitepaper talks about the requirements of modern day Enterprise Mobile Applications and how WaveMaker can simplify and speed up the

More information

Administrivia. Added 20 more so far. Software Process. Only one TA so far. CS169 Lecture 2. Start thinking about project proposal

Administrivia. Added 20 more so far. Software Process. Only one TA so far. CS169 Lecture 2. Start thinking about project proposal Administrivia Software Process CS169 Lecture 2 Added 20 more so far Will limit enrollment to ~65 students Only one TA so far Start thinking about project proposal Bonus points for proposals that will be

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

Jenkins User Conference Israel. #jenkinsconf. CI / Liveperson. Gidi Samuels. July 16, #jenkinsconf

Jenkins User Conference Israel. #jenkinsconf. CI / Liveperson. Gidi Samuels.  July 16, #jenkinsconf Jenkins User Conference Israel #jenkinsconf CI / CD @ Liveperson Gidi Samuels www.liveperson.com July 16, 2014 #jenkinsconf About Myself Lead the CI Team at Liveperson 3 years in Liveperson About Myself

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

An Architect s Point of View. TSP Symposium Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213

An Architect s Point of View. TSP Symposium Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 An Architect s Point of View on TSP TSP Symposium 2011 Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 Felix Bachmann 09/2011 An Architect s Point of View on TSP 2 The Good

More information

Application Development at

Application Development at Application Development at Abstract: This paper uncovers the diversity of Congruent s Application Services and its Delivery excellence. It also analyzes its processes, practices & tools that sets Congruent

More information

Shift Happens. The Role of Continuous Testing in DevOps. Alex Martins. CTO Continuous Testing. May 15 th, 2018 CA Technologies.

Shift Happens. The Role of Continuous Testing in DevOps. Alex Martins. CTO Continuous Testing. May 15 th, 2018 CA Technologies. Shift Happens The Role of Continuous Testing in DevOps Alex Martins CTO Continuous Testing May 15 th, 2018 CA Technologies February 2018 1 Chris Petterson (chris.petterson@ca.com) Account Executive SLED

More information

A CONFUSED TESTER IN AGILE WORLD

A CONFUSED TESTER IN AGILE WORLD A CONFUSED TESTER IN AGILE WORLD QA A LIABILITY OR AN ASSET THIS IS A WORK OF FACTS & FINDINGS BASED ON TRUE STORIES OF ONE & MANY TESTERS!! J Presented By Ashish Kumar, A STORY OF TESTING. WHAT S AHEAD

More information

In This Webinar. ConEnuous Load TesEng & ConEnuous Delivery with Jenkins

In This Webinar. ConEnuous Load TesEng & ConEnuous Delivery with Jenkins In This Webinar TODAY S PRESENTERS Tom Chavez: SOASTA, Sr. Product MarkeEng Manager Andy Pemberton: CloudBees, Senior Director, SoluEons Architecture & ConsulEng TWO COMPANIES, A SINGLE SOLUTION SOASTA:

More information

Delivering on Cloud Transformation Infinite Solutions update. Presenter: Adam Davies, January 20 th, 2016

Delivering on Cloud Transformation Infinite Solutions update. Presenter: Adam Davies, January 20 th, 2016 Delivering on Cloud Transformation Infinite Solutions update Presenter: Adam Davies, January 20 th, 2016 Agenda Market Landscape, Opportunities and Challenges Update on Cisco Infinite Solutions Related

More information

Follow

Follow Follow me: @lukaspman «Every company is a software company» Every company is a software company (7) years 43 years 73 years 8 years 20 years 89 years 71M 36M 13M 1500k 857k 697k $44Mrd $18Mrd $21Mrd $24Mrd

More information

9 th CA 2E/CA Plex Worldwide Developer Conference 1

9 th CA 2E/CA Plex Worldwide Developer Conference 1 1 Introduction/Welcome Message Organizations that are making major changes to or replatforming an application need to dedicate considerable resources ot the QA effort. In this session we will show best

More information

Take Risks But Don t Be Stupid! Patrick Eaton, PhD

Take Risks But Don t Be Stupid! Patrick Eaton, PhD Take Risks But Don t Be Stupid! Patrick Eaton, PhD preaton@google.com Take Risks But Don t Be Stupid! Patrick R. Eaton, PhD patrick@stackdriver.com Stackdriver A hosted service providing intelligent monitoring

More information

DevOps, Continuous Integration & Automated Testing: Rule Them All

DevOps, Continuous Integration & Automated Testing: Rule Them All DevOps, Continuous Integration & Automated Testing: Rule Them All SAMIR BEHARA Solution Architect EBSCO, Birmingham, AL DATABASE RELEASE? EMAIL THE SCRIPTS & I WILL EXECUTE IT Database Lifecycle Management

More information

18-642: Software Development Processes

18-642: Software Development Processes 18-642: Software Development Processes 9/6/2017 Coding Is Essentially 0% of Creating Software http://e.ubmelectronics.com/2013embeddedstudy/index.html 2 Old-School Waterfall Development Cycle Bugs SPECIFY

More information

Building High Performance Apps using NoSQL. Swami Sivasubramanian General Manager, AWS NoSQL

Building High Performance Apps using NoSQL. Swami Sivasubramanian General Manager, AWS NoSQL Building High Performance Apps using NoSQL Swami Sivasubramanian General Manager, AWS NoSQL Building high performance apps There is a lot to building high performance apps Scalability Performance at high

More information

Achieving Right Automation Balance in Agile Projects

Achieving Right Automation Balance in Agile Projects Achieving Right Automation Balance in Agile Projects Vijayagopal Narayanan Vijayagopal.n@cognizant.com Abstract When is testing complete and How much testing is sufficient is a fundamental questions that

More information

AUTOMATED TEST SYSTEM DEVELOPMENT FROM SCRATCH: THE MAIN PROBLEMS AND THEIR SOLUTIONS. Lilia Sapurina

AUTOMATED TEST SYSTEM DEVELOPMENT FROM SCRATCH: THE MAIN PROBLEMS AND THEIR SOLUTIONS. Lilia Sapurina AUTOMATED TEST SYSTEM DEVELOPMENT FROM SCRATCH: THE MAIN PROBLEMS AND THEIR SOLUTIONS Lilia Sapurina ABOUT ME 2 years in huge company with delivered QA processes: automated UI testing, CI 4 month in small

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

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

Scalable Test Automation using DCqaf framework for a leading US plus-size Fashion Retailer ATTENTION. ALWAYS.

Scalable Test Automation using DCqaf framework for a leading US plus-size Fashion Retailer ATTENTION. ALWAYS. Scalable Test Automation using DCqaf framework for a leading US plus-size Fashion Retailer ATTENTION. ALWAYS. OUR CLIENT Our client is a leading American plus-size apparel and home goods company based

More information

Agile Accessibility. Presenters: Ensuring accessibility throughout the Agile development process

Agile Accessibility. Presenters: Ensuring accessibility throughout the Agile development process Agile Accessibility Ensuring accessibility throughout the Agile development process Presenters: Andrew Nielson, CSM, PMP, MPA Ann Marie Davis, CSM, PMP, M. Ed. Cammie Truesdell, M. Ed. Overview What is

More information

STATE OF MODERN APPLICATIONS IN THE CLOUD

STATE OF MODERN APPLICATIONS IN THE CLOUD STATE OF MODERN APPLICATIONS IN THE CLOUD 2017 Introduction The Rise of Modern Applications What is the Modern Application? Today s leading enterprises are striving to deliver high performance, highly

More information

Analysis of the Test Driven Development by Example

Analysis of the Test Driven Development by Example Computer Science and Applications 1 (2013) 5-13 Aleksandar Bulajic and Radoslav Stojic The Faculty of Information Technology, Metropolitan University, Belgrade, 11000, Serbia Received: June 18, 2013 /

More information

Automating the Software-Defined Data Center with vcloud Automation Center

Automating the Software-Defined Data Center with vcloud Automation Center Automating the Software-Defined Data Center with vcloud Automation Center 10 June 2014 Chris Alleaume Senior Systems Engineer 2014 VMware Inc. All rights reserved. The Impact of the Accelerating Pace of

More information

Evolutionary Architecture and Design

Evolutionary Architecture and Design Evolutionary Architecture and Design Pradyumn Sharma pradyumn.sharma@pragatisoftware.com www.twitter.com/pradyumnsharma 1 What is Software Architecture? Structure of a system, comprising software elements,

More information

CONTINUOUS DELIVERY IN THE ORACLE CLOUD

CONTINUOUS DELIVERY IN THE ORACLE CLOUD CONTINUOUS DELIVERY IN THE ORACLE CLOUD Lykle Thijssen Bruno Neves Alves June 7, 2018 NLOUG Tech Experience Amersfoort eproseed Confidential ABOUT US Lykle Thijssen Principal Architect and Scrum Master

More information

Multi-Cloud and Application Centric Modeling, Deployment and Management with Cisco CloudCenter (CliQr)

Multi-Cloud and Application Centric Modeling, Deployment and Management with Cisco CloudCenter (CliQr) Multi-Cloud and Application Centric Modeling, Deployment and Management with Cisco CloudCenter (CliQr) Jeremy Oakey - Sr. Director, Technical Marketing & Integrations BRKCLD-2008 Agenda Introduction Architecture

More information

1Copyright 2012, Oracle and/or its affiliates. All rights reserved.

1Copyright 2012, Oracle and/or its affiliates. All rights reserved. 1Copyright 2012, Oracle and/or its affiliates. All rights reserved. Patterns of SaaS: Database refactoring Leonid Igolnik, Marcin Burlinski Insert Picture Here The following is intended to outline our

More information

Introduction to Extreme Programming

Introduction to Extreme Programming Introduction to Extreme Programming References: William Wake, Capital One Steve Metsker, Capital One Kent Beck Robert Martin, Object Mentor Ron Jeffries,et.al. 12/3/2003 Slide Content by Wake/Metsker 1

More information

our container journey

our container journey our container journey @beshippable shippable.com our container journey containers sound interesting containers can save us money on hosting containers can make us way more efficient company founded in

More information

Agile Testing Course: 15 16/11

Agile Testing Course: 15 16/11 Agile Testing Dr. Ronen Bar-Nahor ronen@agilesparks.com 1 AgileSparks We help companies improve by Adopting agile principles and practices. We provide training and coaching to all organizational levels,

More information

Connecting your Microservices and Cloud Services with Oracle Integration CON7348

Connecting your Microservices and Cloud Services with Oracle Integration CON7348 Connecting your Microservices and Cloud Services with Oracle Integration CON7348 Robert Wunderlich Sr. Principal Product Manager September 19, 2016 Copyright 2016, Oracle and/or its affiliates. All rights

More information

Optimize tomorrow today.

Optimize tomorrow today. Applying Agile Practices to Improve Software Quality Name: Arlene Minkiewicz Chief Scientist 17000 Commerce Parkway Mt. Laurel, NJ 08054 arlene.minkiewicz@pricesystems.com Phone: 856 608-7222 Agenda Introduction

More information

Overview of BlackBerry Dynamics Platform

Overview of BlackBerry Dynamics Platform Hong Kong 2018 Overview of BlackBerry Dynamics Platform Richard Schaefer, Sr. Enterprise Solutions Manager Application Models Multiple Platforms Web-based Extend Desktop Browser based rendering and APIs

More information