Automatic Debug If not now, when?

Size: px
Start display at page:

Download "Automatic Debug If not now, when?"

Transcription

1 Automatic Debug If not now, when? This presentation includes: Introduction to PinDown - an automatic debugger of regression tests News about PinDown 4, the next generation automatic debug, which was announced during the Design Automation Conference, June Product Overview PinDown - Automatic Debugger of Regression Tests 1

2 Verification-Debug is getting worse Year Engrs/Project % Time in Verification % % Verification Tasks Debug (37%) % More Complex Source: Wilson Research Group and Harry Foster at Mentor Graphics, 2014 Functional Verification Study Inputs e.g. random Ever Larger Designs and Design Teams Multiple Remote Design Teams Multiple IP Block Sources Incorrect Bug Reports SoC designs keep growing as we speak, so now we have more engineers contributing to the final SoC. When you find a bug in the system, it becomes a whodunnit show, and it takes a collaborative debug effort to go through piles of code and figure out what was going on. This is not just about the size it s about integrating multiple IP blocks representing multiple knowledge domains from multiple, remote teams. Shlomi Uziel VP of Engineering, Advanced Verification, CDN 2

3 The Principle is Simple......but the reality is difficult 41% Random instability occurs when a seed number does not produce the same test scenario because the DV testbench has had substantial changes. 41% incorrect bug reports with simple approach PinDown supports all scenarios The first commit that made a test fail is not necessarily the reason the test still fails. This only works in the simple case when one bug is inserted and fixed at a time, but in larger projects multiple bugs are introduced and fixed in parallel. 3

4 Automatic Debug with PinDown PinDown Customer PinDown s approach to automatically debug and send relevant bug reports directly to the engineers who made the mistakes is what you really need, rather than an endless list of failure reports to review. Using PinDown has allowed us to save valuable project time..senior Director of Hardware Design: Bugs Fixed 400% Faster 5X Less Thrashing (Discussion) Saved 4.9 Man-Years on 40 Engr Project 4

5 PinDown - Design Flow Interactions Bug Reports to Responsible Engineer Simulation Test Results PinDown Test Hub Version Control System PinDown Results Database Test Executor (LSF Farm) 5 10

6 How PinDown Works - Patented Debug Algorithm Smart Grouping 1-4X Debug Next Bug Bug Group 1: Error: RX value wrong 12 test failures Unroll Changes (10 selections in parallel) Test Fails Test Results * Tests Fastest Bug Group 2: Address is XXXXXXX 14 test failures Smart Selection Identify possible bad commits, files*, chunks*, lines* * New in PinDown 4 Test Passes Send Rerun Other Tests Check that unrolling the change makes all tests pass in the same bug group Tests Fastest Revision Control System (Perforce, GIT, Subversion, Clearcase) Bug No: 1 (new bug) Test: test34_vm_seed_0x Build: dtlb_thdr Error: Error: RX value wrong Committer: johndoe Commit Message: : RX performance improvement Committed Files: //depot/bigproject/dv/dtlb/dtlb_rqe/common/interface/dtlb_rqe_tb_if.sv Log: /projects/pindown/bigproject/dv/dtlb/tb/ftlb_thdr/sv_sep_dut_comp.log PinDown makes the failing tests pass again, by only removing the changes made in one or several bad commits. This process, called validation, proves which commits are causing the respective test failures. As soon as a bad commit has been validated a bug report is sent to the committer. 6

7 Customer Benchmark Bug Fix Time: 400% Faster with PinDown s Regarding Bugs: 5X Less Discussion Manual Debug Manual Debug Automatic Debug Automatic Debug Hours Number of s Saved 4.9 Man-Years on 40 Engineer Project 7

8 Customer Quotes: Bug are fixed much faster with PinDown. PinDown pushes back issues to the engineers that caused the breakdown 24/7 so the quality is never allowed to slip..snr Principal Engineer You need to constantly supervise the quality to avoid slipping. If engineers don t get fast feedback and they start to discuss who should fix what then you lose a lot of time. Snr. Manager Using Pindown has allowed us to save valuable project time. It was a real game changer when we started to use PinDown..Snr. Director Automatic Debug...If not now, when? 8

9 Continuous Integration: - Gate keeper - Short directed tests - e.g. Jenkins Competitive Landscape Automatic Debug: Post-Integration Testing: - Large Test Suites - Random/Directed Tests PinDown Inhouse Solution

10 NEW! At DAC, June 2015, we announced information about the upcoming PinDown 4 release PinDown 4 The Next Generation Automatic Debug Finer Debug Granularity Debug granularity of files, chunks, lines Management Reports Track the cost of the computer farm related to the project activity in order to get the farm costs under control Track the bug fix time and quality uptime of the project Verification Optimizer Cut the farm cost, detect and find bugs faster 10

11 PinDown 4 : Fine Granularity Debug Smart Grouping Bug Group 1: Error: RX value wrong 12 test failures In PinDown 4 the debug granularity can be set to find which lines or files within a commit that caused a test to fail. This is useful on larger commits, e.g. mergers of two branches when a lot of changes have been done in one commit. 1-4X Unroll Changes (10 selections in parallel) Test Fails Debug Next Bug Test Results * Tests Fastest Bug Group 2: Address is XXXXXXX 14 test failures Smart Selection Identify possible bad commits, files*, chunks*, lines* * New in PinDown 4 Test Passes Send Rerun Other Tests Check that unrolling the change makes all tests pass in the same bug group Tests Fastest Revision Control System (Perforce, GIT, Subversion, Clearcase) Bug No: 1 (new bug) Test: test34_vm_seed_0x Build: dtlb_thdr Error: Error: RX value wrong Committer: johndoe Commit Message: : RX performance improvement Committed Files: //depot/bigproject/dv/dtlb/dtlb_rqe/common/interface/dtlb_rqe_tb_if.sv Log: /projects/pindown/bigproject/dv/dtlb/tb/ftlb_thdr/sv_sep_dut_comp.log There is a trade-off between performance and granularity the finer granularity the longer the debug process takes. The granularity is controlled by the user, who can decide the optimal setting from project to project. 11

12 PinDown 4: Management Reports Debugger On Optimizer On Track farm cost per project, as well as bug fix time and quality uptime. You want to control and improve on these key performance indicators. Quality (test pass time ratio) Track Farm Cost Per Project Cost (tests run/bug) Bug Fix Time (from bug commit until verified fixed) Farm Waiting Times Time 12

13 PinDown 4: Verification Optimizer Finding Bugs Wasting Farm Resources and Debug Time Stop regression runs when all bugs have been found and save both time and computer resources. The stop time is calculated by analyzing historical runs to determine the optimal stop time. WITHOUT This cuts the farm costs, improves bug fix time as well as quality uptime. Bug 2 Bug 4 Bug 1 Bug 3 Debug Fix Bug 1 Comitted Bug 2 Comitted All Bugs Found Bug 3 Comitted Bug 4 Comitted WITH Reduced Farm Load Bug 2 Bug 1 Kill Jobs Bugs Fixed Faster Bug 3 Kill Jobs Bugs Found Faster Bug 3 Bug 4 Do a full run every X run to keep the coverage the same Debug Fix Debug Fix 13

14 Verifyter Roadmap PinDown 4.2 PinDown 4.1 Fine Granularity Lines Management Reports Across All Projects Verification Optimizer - Automated Fine Granularity Chunks Management Reports Per Project PinDown 4.0 Fine Granularity File Verification Optimizer - Tools Early Q Q Q

FPGA Verification How to improve verification without throwing everything away

FPGA Verification How to improve verification without throwing everything away Test and Verification Solutions Experts in Verification FPGA Verification How to improve verification without throwing everything away Mike Bartley, TVS 1 Agenda Have you concerns with your current verification

More information

Software Continuous Integration & Delivery INCREASING SOFTWARE DEVELOPMENT AGILITY TO SPEED TIME TO MARKET

Software Continuous Integration & Delivery INCREASING SOFTWARE DEVELOPMENT AGILITY TO SPEED TIME TO MARKET DAITAN WHITE PAPER Software Continuous Integration & Delivery INCREASING SOFTWARE DEVELOPMENT AGILITY TO SPEED TIME TO MARKET White Paper Contents Making software development more Agile Moving to a more

More information

GIT TUTORIAL. Creative Software Architectures for Collaborative Projects CS 130 Donald J. Patterson

GIT TUTORIAL. Creative Software Architectures for Collaborative Projects CS 130 Donald J. Patterson GIT TUTORIAL Creative Software Architectures for Collaborative Projects CS 130 Donald J. Patterson SCM SOFTWARE CONFIGURATION MANAGEMENT SOURCE CODE MANAGEMENT Generic term for the ability to manage multiple

More information

Cypress Adopts Questa Formal Apps to Create Pristine IP

Cypress Adopts Questa Formal Apps to Create Pristine IP Cypress Adopts Questa Formal Apps to Create Pristine IP DAVID CRUTCHFIELD, SENIOR PRINCIPLE CAD ENGINEER, CYPRESS SEMICONDUCTOR Because it is time consuming and difficult to exhaustively verify our IP

More information

Keeping up with LTS Linux Kernel Functional Testing on Devices

Keeping up with LTS Linux Kernel Functional Testing on Devices Keeping up with LTS Linux Kernel Functional Testing on Devices Tom Gall Director, Linaro Mobile Group Who is Linaro? Linaro is leading software collaboration in the ARM ecosystem Instead of duplicating

More information

Mapping Multi-Million Gate SoCs on FPGAs: Industrial Methodology and Experience

Mapping Multi-Million Gate SoCs on FPGAs: Industrial Methodology and Experience Mapping Multi-Million Gate SoCs on FPGAs: Industrial Methodology and Experience H. Krupnova CMG/FMVG, ST Microelectronics Grenoble, France Helena.Krupnova@st.com Abstract Today, having a fast hardware

More information

CPSC 491. Lecture 19 & 20: Source Code Version Control. VCS = Version Control Software SCM = Source Code Management

CPSC 491. Lecture 19 & 20: Source Code Version Control. VCS = Version Control Software SCM = Source Code Management CPSC 491 Lecture 19 & 20: Source Code Version Control VCS = Version Control Software SCM = Source Code Management Exercise: Source Code (Version) Control 1. Pretend like you don t have a version control

More information

ECE 587 Hardware/Software Co-Design Lecture 11 Verification I

ECE 587 Hardware/Software Co-Design Lecture 11 Verification I ECE 587 Hardware/Software Co-Design Spring 2018 1/23 ECE 587 Hardware/Software Co-Design Lecture 11 Verification I Professor Jia Wang Department of Electrical and Computer Engineering Illinois Institute

More information

The Need for Speed: Understanding design factors that make multicore parallel simulations efficient

The Need for Speed: Understanding design factors that make multicore parallel simulations efficient The Need for Speed: Understanding design factors that make multicore parallel simulations efficient Shobana Sudhakar Design & Verification Technology Mentor Graphics Wilsonville, OR shobana_sudhakar@mentor.com

More information

Release for Lithium. George Zhao, Ed Warnicke, Colin Dixon, Mathieu Lemey, Robert Varga, An Ho.

Release for Lithium. George Zhao, Ed Warnicke, Colin Dixon, Mathieu Lemey, Robert Varga, An Ho. Release for Lithium George Zhao, Ed Warnicke, Colin Dixon, Mathieu Lemey, Robert Varga, An Ho Content Opendaylight release (Ed, George) Lessons learned ( Colin, Robert) Proposal for Lithium release Release

More information

Steps for project success. git status. Milestones. Deliverables. Homework 1 submitted Homework 2 will be posted October 26.

Steps for project success. git status. Milestones. Deliverables. Homework 1 submitted Homework 2 will be posted October 26. git status Steps for project success Homework 1 submitted Homework 2 will be posted October 26 due November 16, 9AM Projects underway project status check-in meetings November 9 System-building project

More information

Testing. ECE/CS 5780/6780: Embedded System Design. Why is testing so hard? Why do testing?

Testing. ECE/CS 5780/6780: Embedded System Design. Why is testing so hard? Why do testing? Testing ECE/CS 5780/6780: Embedded System Design Scott R. Little Lecture 24: Introduction to Software Testing and Verification What is software testing? Running a program in order to find bugs (faults,

More information

JetBrains TeamCity Comparison

JetBrains TeamCity Comparison JetBrains TeamCity Comparison TeamCity is a continuous integration and continuous delivery server developed by JetBrains. It provides out-of-the-box continuous unit testing, code quality analysis, and

More information

You Can t Move Forward Unless You Can Roll Back. By: Michael Black

You Can t Move Forward Unless You Can Roll Back. By: Michael Black You Can t Move Forward Unless You Can Roll Back By: Michael Black The VP of Sales walks in and tells you that your largest and oldest client wants to pay for a custom modification. But here s the clincher,

More information

TM DevOps Use Case. 2017TechMinfy All Rights Reserved

TM DevOps Use Case. 2017TechMinfy All Rights Reserved Document Details Use Case Name TMDevOps Use Case04 First Draft 10 th Dec 2017 Author Reviewed By Amrendra Kumar Pradeep Narayanaswamy Contents Scope... 4 About Customer... 4 Pre-Conditions/Trigger... 4

More information

Categorizing Migrations

Categorizing Migrations What to Migrate? Categorizing Migrations A version control repository contains two distinct types of data. The first type of data is the actual content of the directories and files themselves which are

More information

Version Control. Second level Third level Fourth level Fifth level. - Software Development Project. January 11, 2017

Version Control. Second level Third level Fourth level Fifth level. - Software Development Project. January 11, 2017 Version Control Click to edit Master EECS text 2311 styles - Software Development Project Second level Third level Fourth level Fifth level January 11, 2017 1 Scenario 1 You finished the assignment at

More information

Introduction to Git and GitHub. Tools for collaboratively managing your source code.

Introduction to Git and GitHub. Tools for collaboratively managing your source code. Introduction to Git and GitHub Tools for collaboratively managing your source code. This Is Not a Tutorial About Git There are many tutorials online. What is Git? Git is a collaborative, distributed version

More information

CS 520 Theory and Practice of Software Engineering Fall 2018

CS 520 Theory and Practice of Software Engineering Fall 2018 CS 520 Theory and Practice of Software Engineering Fall 2018 Nediyana Daskalova Monday, 4PM CS 151 Debugging October 30, 2018 Personalized Behavior-Powered Systems for Guiding Self-Experiments Help me

More information

Regression testing. Whenever you find a bug. Why is this a good idea?

Regression testing. Whenever you find a bug. Why is this a good idea? Regression testing Whenever you find a bug Reproduce it (before you fix it!) Store input that elicited that bug Store correct output Put into test suite Then, fix it and verify the fix Why is this a good

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

Commits and Commit Messages

Commits and Commit Messages Commits and Commit Messages What is a commit? Small set of modifications to a code base Each commit should contain one (atomic) change Commits should be standalone (independent of other commits) Open Source

More information

Code Review Quality. Defining a good code review

Code Review Quality. Defining a good code review Code Review Quality Defining a good code review Overview Introduction: A modern code review process The importance of reviews for QA Strength and weaknesses Tools to make (better) reviews VCS: Git - Keeping

More information

Collaborative Programming: Pair Programming and Reviews CSE 403

Collaborative Programming: Pair Programming and Reviews CSE 403 Collaborative Programming: Pair Programming and Reviews CSE 403 Pair programming pair programming: 2 people, 1 computer take turns driving rotate pairs often pair people of different experience levels

More information

Lecture 15 Software Testing

Lecture 15 Software Testing Lecture 15 Software Testing Includes slides from the companion website for Sommerville, Software Engineering, 10/e. Pearson Higher Education, 2016. All rights reserved. Used with permission. Topics covered

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

Optimizing Emulator Utilization by Russ Klein, Program Director, Mentor Graphics

Optimizing Emulator Utilization by Russ Klein, Program Director, Mentor Graphics Optimizing Emulator Utilization by Russ Klein, Program Director, Mentor Graphics INTRODUCTION Emulators, like Mentor Graphics Veloce, are able to run designs in RTL orders of magnitude faster than logic

More information

In this Lecture you will Learn: Testing in Software Development Process. What is Software Testing. Static Testing vs.

In this Lecture you will Learn: Testing in Software Development Process. What is Software Testing. Static Testing vs. In this Lecture you will Learn: Testing in Software Development Process Examine the verification and validation activities in software development process stage by stage Introduce some basic concepts of

More information

Unleash Your DevOps Strategy By Synchronizing Application and Database. John Pocknell Senior Product Manager

Unleash Your DevOps Strategy By Synchronizing Application and Database. John Pocknell Senior Product Manager Unleash Your DevOps Strategy By Synchronizing Application and Database John Pocknell Senior Product Manager john.pocknell@quest.com Agenda Introduction The challenge of agile database development So how

More information

Reset and Initialization, the Good, the Bad and the Ugly

Reset and Initialization, the Good, the Bad and the Ugly Reset and Initialization, the, the and the Ugly Ping Yeung Design & Verification Technology Mentor Graphics, Fremont, U.S.A. Kaowen Liu Design Technology Division MediaTek Inc, San Jose, U.S.A. Abstract-

More information

Fault Injection & Formal Made for Each Other

Fault Injection & Formal Made for Each Other Fault Injection & Formal Made for Each Other Iain Singleton June 2018 2018 Synopsys, Inc. 1 Introduction Formal usage has been growing rapidly in recent years Formal Technology has evolved Lots of new

More information

Developing, Debugging, and Optimizing GPU Codes for High Performance Computing with Allinea Forge

Developing, Debugging, and Optimizing GPU Codes for High Performance Computing with Allinea Forge Developing, Debugging, and Optimizing GPU Codes for High Performance Computing with Allinea Forge Ryan Hulguin Applications Engineer ryan.hulguin@arm.com Agenda Introduction Overview of Allinea Products

More information

ARE YOU A/B TESTING YOUR S CORRECTLY?

ARE YOU A/B TESTING YOUR  S CORRECTLY? AB Taking a closer look at what A/B testing is and ARE YOU A/B TESTING YOUR EMAILS CORRECTLY? how you can get the best results ABOUT THE AUTHORS PART OF THE QUANTADS EMAIL MARKETING TEAM KATRINE ANDERSEN

More information

Git. A Distributed Version Control System. Carlos García Campos

Git. A Distributed Version Control System. Carlos García Campos Git A Distributed Version Control System Carlos García Campos carlosgc@gnome.org Carlos García Campos carlosgc@gnome.org - Git 1 A couple of Quotes For the first 10 years of kernel maintenance, we literally

More information

Mixed Signal Verification Transistor to SoC

Mixed Signal Verification Transistor to SoC Mixed Signal Verification Transistor to SoC Martin Vlach Chief Technologist AMS July 2014 Agenda AMS Verification Landscape Verification vs. Design Issues in AMS Verification Modeling Summary 2 AMS VERIFICATION

More information

Meeting the OMB FY2012 Objective: Experiences, Observations, Lessons-Learned, and Other Thoughts

Meeting the OMB FY2012 Objective: Experiences, Observations, Lessons-Learned, and Other Thoughts Meeting the OMB FY2012 Objective: Experiences, Observations, Lessons-Learned, and Other Thoughts 2013 Federal Interagency Workshop 9 December, 2013 Ron Broersma DREN Chief Engineer ron@dren.mil Introduction

More information

CONFERENCE PROCEEDINGS QUALITY CONFERENCE. Conference Paper Excerpt from the 28TH ANNUAL SOFTWARE. October 18th 19th, 2010

CONFERENCE PROCEEDINGS QUALITY CONFERENCE. Conference Paper Excerpt from the 28TH ANNUAL SOFTWARE. October 18th 19th, 2010 PACIFIC NW 28TH ANNUAL SOFTWARE QUALITY CONFERENCE October 18th 19th, 2010 Conference Paper Excerpt from the CONFERENCE PROCEEDINGS Permission to copy, without fee, all or part of this material, except

More information

By Matthew Noonan, Project Manager, Resource Group s Embedded Systems & Solutions

By Matthew Noonan, Project Manager, Resource Group s Embedded Systems & Solutions Building Testability into FPGA and ASIC Designs By Matthew Noonan, Project Manager, Resource Group s Embedded Systems & Solutions Introduction This paper discusses how the architecture for FPGAs and ASICs

More information

Leveraging Formal Verification Throughout the Entire Design Cycle

Leveraging Formal Verification Throughout the Entire Design Cycle Leveraging Formal Verification Throughout the Entire Design Cycle Verification Futures Page 1 2012, Jasper Design Automation Objectives for This Presentation Highlight several areas where formal verification

More information

Eclipse Collaborative Development

Eclipse Collaborative Development Eclipse Collaborative Development Mike Milinkovich Executive Director Eclipse Foundation @mmilinkov 15-Sept-2016 Eclipse IP Process Ensure that projects from Eclipse can be used in proprietary products

More information

CS 147: Computer Systems Performance Analysis

CS 147: Computer Systems Performance Analysis CS 147: Computer Systems Performance Analysis Test Loads CS 147: Computer Systems Performance Analysis Test Loads 1 / 33 Overview Overview Overview 2 / 33 Test Load Design Test Load Design Test Load Design

More information

Test E. R.: Our Goal to Triage a Million Tests A Day. Wilson Snyder Bryce Denney and Robert Woods-Corwin

Test E. R.: Our Goal to Triage a Million Tests A Day. Wilson Snyder Bryce Denney and Robert Woods-Corwin Test E. R.: Our Goal to Triage a Million Tests A Day Wilson Snyder Bryce Denney and Robert Woods-Corwin October 11, 2007 Agenda What have we grown? Test drivers: From Vtest to BugVise

More information

Review Version Control Concepts

Review Version Control Concepts Review Version Control Concepts SWEN-261 Introduction to Software Engineering Department of Software Engineering Rochester Institute of Technology Managing change is a constant aspect of software development.

More information

Version control CSE 403

Version control CSE 403 Version control CSE 403 Goals of a version control system Keep a history of your work Explain the purpose of each change Checkpoint specific versions (known good state) Recover specific state (fix bugs,

More information

ZeBu : A Unified Verification Approach for Hardware Designers and Embedded Software Developers

ZeBu : A Unified Verification Approach for Hardware Designers and Embedded Software Developers THE FASTEST VERIFICATION ZeBu : A Unified Verification Approach for Hardware Designers and Embedded Software Developers White Paper April, 2010 www.eve-team.com Introduction Moore s law continues to drive

More information

Software Engineering Testing and Debugging Testing

Software Engineering Testing and Debugging Testing Software Engineering Testing and Debugging Testing Prof. Dr. Peter Thiemann Universitt Freiburg 08.06.2011 Recap Testing detect the presence of bugs by observing failures Debugging find the bug causing

More information

Introduction to CTIP. Lee, Dong-Ah

Introduction to CTIP. Lee, Dong-Ah Introduction to CTIP Lee, Dong-Ah 2014-03-12 Contents CI? CTIP? COMPONENTS? ADVANTAGES! DISADVANTAGES? Team Projects 1 CI? Continuous Integration As soon as the work on a task is complete, it is integrated

More information

CSE Verification Plan

CSE Verification Plan CSE 45493-3 Verification Plan 1 Verification Plan This is the specification for the verification effort. It indicates what we are verifying and how we are going to do it! 2 Role of the Verification Plan

More information

Software Engineering

Software Engineering Software Engineering Lecture 13: Testing and Debugging Testing Peter Thiemann University of Freiburg, Germany SS 2014 Recap Recap Testing detect the presence of bugs by observing failures Recap Testing

More information

Using Virtual Platforms To Improve Software Verification and Validation Efficiency

Using Virtual Platforms To Improve Software Verification and Validation Efficiency Using Virtual Platforms To Improve Software Verification and Validation Efficiency Odin Shen Staff FAE Arm Arm Tech Symposia Taiwan 2017 Software complexity and best practices Software Costs Increasing

More information

Revision control systems (RCS) and. Subversion

Revision control systems (RCS) and. Subversion Revision control systems (RCS) and Subversion Problem area Software projects with multiple developers need to coordinate and synchronize the source code Approaches to version control Work on same computer

More information

Welcome! Virtual tutorial will start at 15:00 GMT. Please leave feedback afterwards at:

Welcome! Virtual tutorial will start at 15:00 GMT. Please leave feedback afterwards at: Welcome! Virtual tutorial will start at 15:00 GMT Please leave feedback afterwards at: www.archer.ac.uk/training/feedback/online-course-feedback.php Introduction to Version Control (Part 2) ARCHER Virtual

More information

CS 320 Introduction to Software Engineering Spring February 06, 2017

CS 320 Introduction to Software Engineering Spring February 06, 2017 CS 320 Introduction to Software Engineering Spring 2017 February 06, 2017 Recap: Software development process models Traditional models Waterfall model Iterative and incremental Prototyping Spiral model

More information

Sample Exam. Advanced Test Automation Engineer

Sample Exam. Advanced Test Automation Engineer Sample Exam Advanced Test Automation Engineer Answer Table ASTQB Created - 08 American Stware Testing Qualifications Board Copyright Notice This document may be copied in its entirety, or extracts made,

More information

Continuous Integration Ensemble / HealthShare Health Connect

Continuous Integration Ensemble / HealthShare Health Connect Continuous Integration Ensemble / HealthShare Health Connect The scope of IT within an organisation is largely related to automating Business processes. So why not automate IT processes for once? Version

More information

Continuous delivery for native apps. Niels Frydenholm, ebay Classifieds

Continuous delivery for native apps. Niels Frydenholm, ebay Classifieds Continuous delivery for native apps Niels Frydenholm, ebay Classifieds Continuous delivery 3 Continuous delivery Being able to build a release-ready binary at any given time. 3 ebay Classifieds, Denmark

More information

Software configuration management

Software configuration management Software Engineering Theory Software configuration management Lena Buffoni/ Kristian Sandahl Department of Computer and Information Science 2017-03-27 2 Maintenance Requirements System Design (Architecture,

More information

Version Control. Second level Third level Fourth level Fifth level. - Software Development Project. January 17, 2018

Version Control. Second level Third level Fourth level Fifth level. - Software Development Project. January 17, 2018 Version Control Click to edit Master EECS text 2311 styles - Software Development Project Second level Third level Fourth level Fifth level January 17, 2018 1 But first, Screen Readers The software you

More information

ZUUL AND OTHER OPENSTACK TOOLS USAGE AT LEBONCOIN: THE ODYSSEY

ZUUL AND OTHER OPENSTACK TOOLS USAGE AT LEBONCOIN: THE ODYSSEY ZUUL AND OTHER OPENSTACK TOOLS USAGE AT LEBONCOIN: THE ODYSSEY HELLO! Sonia Ouchtar Guillaume Chenuet Benoît Bayszczak Thierry Carrez @iizuna_k @gchenuet @bbayszczak @tcarrez 2 1. ONCE UPON A TIME A quick

More information

... Fisheye Crucible Bamboo

... Fisheye Crucible Bamboo Sander Soo MSc Computer Science Oracle Certified Professional (Java SE) Nortal (email: sander.soo@nortal.com) Mercurial Java Spring Framework AngularJS Atlassian stack... Fisheye Crucible Bamboo 2 Make

More information

P2P. 1 Introduction. 2 Napster. Alex S. 2.1 Client/Server. 2.2 Problems

P2P. 1 Introduction. 2 Napster. Alex S. 2.1 Client/Server. 2.2 Problems P2P Alex S. 1 Introduction The systems we will examine are known as Peer-To-Peer, or P2P systems, meaning that in the network, the primary mode of communication is between equally capable peers. Basically

More information

Accelerating RTL Simulation Techniques by Lior Grinzaig, Verification Engineer, Marvell Semiconductor Ltd.

Accelerating RTL Simulation Techniques by Lior Grinzaig, Verification Engineer, Marvell Semiconductor Ltd. Accelerating RTL Simulation Techniques by Lior Grinzaig, Verification Engineer, Marvell Semiconductor Ltd. Long simulation run times are a bottleneck in the verification process. A lengthy delay between

More information

Whitepaper. 3 reasons to invest in database source control

Whitepaper. 3 reasons to invest in database source control Whitepaper 3 reasons to invest in database source control 3 reasons to invest in database source control Introduction This whitepaper discusses the three reasons why your business should be investing in

More information

Containerised Development of a Scientific Data Management System Ben Leighton, Andrew Freebairn, Ashley Sommer, Jonathan Yu, Simon Cox LAND AND WATER

Containerised Development of a Scientific Data Management System Ben Leighton, Andrew Freebairn, Ashley Sommer, Jonathan Yu, Simon Cox LAND AND WATER Containerised elopment of a Scientific Data Management System Ben Leighton, Andrew Freebairn, Ashley Sommer, Jonathan Yu, Simon Cox LAND AND WATER Some context I m part of a team of developers in Land

More information

Week 5. CS 400 Programming III

Week 5. CS 400 Programming III Exam Conflicts are due this week: 1. Put all course meetings, quizzes, and exams in your calendar 2. Report any conflicts with cs400 exams by Friday of this week 3. Report complete information via the

More information

Git and Gerrit Workflows. Enforcing Manual & Automated Review

Git and Gerrit Workflows. Enforcing Manual & Automated Review Git and Gerrit Workflows Enforcing Manual & Automated Review Agenda Branching and Workflow Review A Look at Gerrit The Gerrit Workflow Other Workflows Customizing Gerrit Workflow Branching and Workflow

More information

ASIC world. Start Specification Design Verification Layout Validation Finish

ASIC world. Start Specification Design Verification Layout Validation Finish AMS Verification Agenda ASIC world ASIC Industrial Facts Why Verification? Verification Overview Functional Verification Formal Verification Analog Verification Mixed-Signal Verification DFT Verification

More information

CSE 331 Software Design & Implementation

CSE 331 Software Design & Implementation CSE 331 Software Design & Implementation Spring 2019 Section 2 Development Tools UW CSE 331 Spring 2019 1 Administrivia HW1 done! HW2 due next Tuesday. HW3 out today, deadline upcoming. Everyone should

More information

SharePoint Development Web Development Generate from Usage. Cloud Development Windows Development Office Development

SharePoint Development Web Development Generate from Usage. Cloud Development Windows Development Office Development Silverlight Tools SharePoint Development Web Development Generate from Usage New WPF Editor Multi-core Development Cloud Development Windows Development Office Development Customizable IDE UI Test Automation

More information

Strengthen and Scale security using DevSecOps

Strengthen and Scale security using DevSecOps OWASP Indonesia Meetup Strengthen and Scale security using DevSecOps $ www.teachera.io!"# @secfigo % secfigo@gmail.com # whoami Author, Speaker and Community Leader. Speaker/Trainer at Blackhat, AppSec EU,

More information

Applications of Automated Protective Relay Testing. Josh LaBlanc

Applications of Automated Protective Relay Testing. Josh LaBlanc Applications of Automated Protective Relay Testing Josh LaBlanc First, automated protective relay testing. What is it? 2 Where can it be applied? Preventative Maintenance Testing The applications are endless

More information

COSC345 Software Engineering. Version Control

COSC345 Software Engineering. Version Control COSC345 Software Engineering Version Control Some Problems Communications File system problems Version control Basic principles and use Outline When to use version control Examples SCCS RCS Subversion

More information

CSE 374 Programming Concepts & Tools. Hal Perkins Fall 2015 Lecture 15 Testing

CSE 374 Programming Concepts & Tools. Hal Perkins Fall 2015 Lecture 15 Testing CSE 374 Programming Concepts & Tools Hal Perkins Fall 2015 Lecture 15 Testing Where we are Some very basic software engineering topics in the midst of tools Today: testing (how, why, some terms) Later:

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

Full-Chip Pattern Integration

Full-Chip Pattern Integration Introduction Full-Chip Pattern Integration Failing tests; schedule slips; silicon re-spins; development tools that break with each new design. A growing number of test engineers are faced with these critical

More information

EclipseCon France 2017 Squaring the Capella circle: Open Source, Agile, Traditional

EclipseCon France 2017 Squaring the Capella circle: Open Source, Agile, Traditional EclipseCon France 2017 Squaring the Capella circle: Open Source, Agile, Traditional CAPELLA OSS JUNE 22 TH 2017 Joao BARATA / Philippe DUL Squaring the Capella circle jean.barata@thalesgroup.com philippe.dul@thalesgroup.com

More information

History of the development of Lua

History of the development of Lua Thursday, October 13, 2016 About this talk The start of Lua Conceived in 1993 as successor to SOL The start of Lua Conceived in 1993 as successor to SOL PhD project by Waldemar Celes, supervised by Roberto

More information

How to version control like a pro: a roadmap to your reproducible & collaborative research

How to version control like a pro: a roadmap to your reproducible & collaborative research How to version control like a pro: a roadmap to your reproducible & collaborative research The material in this tutorial is inspired by & adapted from the Software Carpentry lesson on version control &

More information

Sample Exam ISTQB Advanced Test Analyst Answer Rationale. Prepared By

Sample Exam ISTQB Advanced Test Analyst Answer Rationale. Prepared By Sample Exam ISTQB Advanced Test Analyst Answer Rationale Prepared By Released March 2016 TTA-1.3.1 (K2) Summarize the generic risk factors that the Technical Test Analyst typically needs to consider #1

More information

Verification and Validation

Verification and Validation Steven Zeil February 13, 2013 Contents 1 The Process 3 1 2 Non-Testing V&V 7 2.1 Code Review....... 8 2.2 Mathematically-based verification......................... 19 2.3 Static analysis tools... 23 2.4

More information

Verification and Validation

Verification and Validation Steven Zeil February 13, 2013 Contents 1 The Process 2 2 Non-Testing V&V 3 2.1 Code Review........... 4 2.2 Mathematically-based verification.................................. 8 2.3 Static analysis tools.......

More information

CS 390 Software Engineering Lecture 3 Configuration Management

CS 390 Software Engineering Lecture 3 Configuration Management CS 390 Software Engineering Lecture 3 Configuration Management Includes slides from the companion website for Sommerville, Software Engineering, 10/e. Pearson Higher Education, 2016. All rights reserved.

More information

A Survivor's Guide to Contributing to the Linux Kernel

A Survivor's Guide to Contributing to the Linux Kernel A Survivor's Guide to Contributing to the Linux Kernel Javier Martinez Canillas Samsung Open Source Group javier@osg.samsung.com Samsung Open Source Group 1 Agenda Motivation Linux development process

More information

Organising benchmarking LLVM-based compiler: Arm experience

Organising benchmarking LLVM-based compiler: Arm experience Organising benchmarking LLVM-based compiler: Arm experience Evgeny Astigeevich LLVM Dev Meeting April 2018 2018 Arm Limited Terminology Upstream: everything on llvm.org side. Downstream: everything on

More information

Source Control. Comp-206 : Introduction to Software Systems Lecture 21. Alexandre Denault Computer Science McGill University Fall 2006

Source Control. Comp-206 : Introduction to Software Systems Lecture 21. Alexandre Denault Computer Science McGill University Fall 2006 Source Control Comp-206 : Introduction to Software Systems Lecture 21 Alexandre Denault Computer Science McGill University Fall 2006 Source Revision / Control Source Control is about the management of

More information

Improved Database Development using SQL Compare

Improved Database Development using SQL Compare Improved Database Development using SQL Compare By David Atkinson and Brian Harris, Red Gate Software. October 2007 Introduction This white paper surveys several different methodologies of database development,

More information

Version Control. Version Control

Version Control. Version Control Version Control CS440 Introduction to Software Engineering John Bell Based on slides prepared by Jason Leigh for CS 340 University of Illinois at Chicago Version Control Incredibly important when working

More information

TestBase's Patented Slice Feature is an Answer to Db2 Testing Challenges

TestBase's Patented Slice Feature is an Answer to Db2 Testing Challenges Db2 for z/os Test Data Management Revolutionized TestBase's Patented Slice Feature is an Answer to Db2 Testing Challenges The challenge in creating realistic representative test data lies in extracting

More information

Choosing an Intellectual Property Core

Choosing an Intellectual Property Core Choosing an Intellectual Property Core MIPS Technologies, Inc. June 2002 One of the most important product development decisions facing SOC designers today is choosing an intellectual property (IP) core.

More information

Branching and Merging

Branching and Merging Branching and Merging SWEN-261 Introduction to Software Engineering Department of Software Engineering Rochester Institute of Technology Version control branching supports the ability to manage software

More information

MySQL Development Cycle

MySQL Development Cycle Abstract This document explains the MySQL Server development cycle. The purpose of the document is to facilitate community involvement, for example by providing feedback on pre-releases and making contributions

More information

Multi-threading technology and the challenges of meeting performance and power consumption demands for mobile applications

Multi-threading technology and the challenges of meeting performance and power consumption demands for mobile applications Multi-threading technology and the challenges of meeting performance and power consumption demands for mobile applications September 2013 Navigating between ever-higher performance targets and strict limits

More information

Software Design Models, Tools & Processes. Lecture 6: Transition Phase Cecilia Mascolo

Software Design Models, Tools & Processes. Lecture 6: Transition Phase Cecilia Mascolo Software Design Models, Tools & Processes Lecture 6: Transition Phase Cecilia Mascolo UML Component diagram Component documentation Your own classes should be documented the same way library classes are.

More information

Test Driven Development (TDD)

Test Driven Development (TDD) Test Driven Development (TDD) Test Driven Development Introduction Good programmers write code, great programmers write tests Never, in the field of programming, have so many owed so much to so few - Martin

More information

CMSC 132: OBJECT-ORIENTED PROGRAMMING II

CMSC 132: OBJECT-ORIENTED PROGRAMMING II CMSC 132: OBJECT-ORIENTED PROGRAMMING II Program Testing Department of Computer Science University of Maryland, College Park Debugging Is Harder Than Coding! Debugging is twice as hard as writing the code

More information

Version Control. Version Control

Version Control. Version Control Version Control Prepared for CS 342 - Software Design by John Bell Based on slides prepared by Jason Leigh for CS 340 University of Illinois at Chicago Version Control Incredibly important when working

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

Version Control Systems

Version Control Systems Nothing to see here. Everything is under control! September 16, 2015 Change tracking File moving Teamwork Undo! Undo! UNDO!!! What strategies do you use for tracking changes to files? Change tracking File

More information

Dynamic Search Ads. Playbook

Dynamic Search Ads. Playbook Dynamic Search s Playbook 1 WHAT Introduction to Dynamic Search s What are Dynamic Search s? Dynamic Search s offer a way to advertise on Google.com without keywords, allowing advertisers to harness their

More information

The More We Get Together... The Islandora Community

The More We Get Together... The Islandora Community The More We Get Together... The Islandora Community Islandora Community 100+ public sites, 1073 listserv members, 104 GitHub members, 19 Committers, 30+ Committer Call attendees, 21 Contributed Modules,

More information