Continuous Integration / Continuous Testing

Size: px
Start display at page:

Download "Continuous Integration / Continuous Testing"

Transcription

1 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

2 What s SW Integration? Integration approaches What s SW Integration? Integration strategy? 2

3 Integration strategy Bottom Up integration approach Top down integration approach Big bang integration approach Stubs (top-down) and drivers (bottom-up) are used to replace the missing software and simulate the interface between the software components in a simple manner. 3

4 Bottom Up integration approach Components or systems are substituted by drivers. To understand what a driver is, suppose you have finished Function B and is waiting for Function A to be developed. In this case you create a dummy to call the Function B. This dummy is called the driver. Dummy codes are basically fake codes that help in simulating the behavior of existing codes. That means developer can use dummy codes in place of that code which is not written yet in order to replicate the outputs of the original code. 4

5 Top Down integration approach Components or systems are substituted by stubs Suppose you have a function (Function A) that calculates the total marks obtained by a student in a particular academic year. Suppose this function derives its values from another function (Function B) which calculates the marks obtained in a particular subject. You have finished working on Function A and wants to test it. But the problem you face here is that you can't seem to run the Function A without input from Function B; Function B is still under development. In this case, you create a dummy function to act in place of Function B to test your function. This dummy function gets called by another function. Such a dummy is called a Stub. 5

6 Big Bang integration approach 6

7 What s Continuous Integration, CI? Continuous integration is simply a practice that requires developers to integrate code into a shared repository several times a day. Commit Build Report Test Continuous Integration doesn t get rid of bugs, but it does make them dramatically easier to find and remove. Martin Fowler, Chief Scientist, ThoughtWorks Monitor 7

8 What s Continuous Integration, CI? Each check-in is verified by an automated build, allowing teams to detect problems early. By integrating regularly, you can detect errors quickly, and locate them more easily. Development Branches Mainline Classic Integration Mainline Continuous Integration 8

9 Continuous Integration Principles Maintain a single source repository Automate the build Make your build self-testing Every commit should build on an integration machine Keep the build fast Test in a clone of the production environment (staging) Make it easy for anyone to get the latest executable version Everyone can see what s happening Automate deployment 9

10 Different tools contributing to CI 10

11 Source Code Management (SCM) SCM, also known as revision control or the management of source code. version control, is 11

12 SCM - Terminology repository: the repository is where files' current and historical data are stored, often on a server baseline: an approved revision of a document or source file from which subsequent changes can be made branch / fork: a set of files under version control may be branched or forked at a point in time so that, from that time forward, two copies of those files may develop at different speeds or in different ways independently of each other checkout: to check out is to create a local working copy from the repository, a user may specify a specific revision or obtain the latest commit: to commit (check in) is to write or merge the changes made in the working copy back to the repository, the term can also be used as noun to describe the new revision that is created as a result of committing merge: a merge or integration is an operation in which two sets of changes are applied to a file or set of files 12

13 SCM Workflow example 13

14 Code Collaboration Code collaboration / Code review is systematic examination (sometimes referred to as peer review) of computer source code. It is intended to find mistakes overlooked in software development, improving the overall quality of software. Reviews are done in various forms such as pair programming, informal walkthroughs, and formal inspections. 14

15 Continuous Integration Services 15

16 JENKINS Jenkins is an open-source continuous integration software tool written in the Java programming language for testing and reporting on isolated changes in a larger code base in real time. Jenkins offers the following major features out of the box, and many more can be added through plugins: 1. Easy installation: Jenkins is a self-contained Java-based program, ready to run out-ofthe-box, with packages for Windows, Mac OS X and other Unix-like operating systems. 2. Easy configuration: Jenkins can be configured entirely from its friendly web GUI with extensive on-the-fly error checks and inline help. 3. Rich plugin ecosystem: Jenkins integrates with virtually every SCM or build tool that exists. View plugins. 4. Extensibility: Most parts of Jenkins can be extended and modified, and it's easy to create new Jenkins plugins. This allows you to customize Jenkins to your needs. 5. Distributed builds: Jenkins can distribute build/test loads to multiple computers with different operating systems. Building software for OS X, Linux, and Windows? No problem. 16

17 17

18 18

19 19

20 TeamCity TeamCity is a user-friendly continuous integration (CI) server for developers and build engineers free of charge with the Professional Server License and easy to set up. 1. Continuous Integration & Testing - The delayed commit feature allows you to always keep builds working and the project code base clean. Developers' code modifications are submitted into version control only if all the tests pass. Failures are immediately reported and are visible online for the entire team 2. Efficient, Effective Build Management - Define and run different build types with different build configurations for any project, customize build triggers, for flexible management of the build process. 3. Code Quality Maintenance - Highest code quality is maintained with server-side code analysis features (600+ Java code inspections, inherited from IntelliJ IDEA) and by searching for code duplicates and performing code coverage analysis. This also frees up developers' local computing resources 4. IDE-friendly Solution - Eclipse, IntelliJ IDEA, and MS Visual Studio Integration. TeamCity comes with many plugins for Eclipse, Microsoft Visual Studio, and IntelliJ IDEA, which provide all the productivity features right in the IDE 5. Web-based Interface & Project Dashboard - A late-model web browser is also enough to work with TeamCity, making you independent of IDEs or programming languages. The project dashboard helps all team members stay up-to-date on the status of current builds and provides effective and painless navigation through large amounts of test/build-related information 20

21 21

22 22

23 23

24 Continuous Integration with Jenkins CM Database Developer 1. Check-in task (commit) 2. Trigger 3. Starts testing 4. Collects results 24

25 Continuous Integration, Delivery and Deployment Continuous Integration: Highly automated process from development to integration and redistribution of good tasks (commits) to the development team. Continuous Delivery: Highly automated process through all stages from development to Ready to deliver to production or customer, but a manual decision is taken before final delivery. Continuous Deployment: One step more: Deploy to production / customer without manual decision, if every test was passed. 25

26 What is the difference between Continuous Integration, Continuous Deployment & Continuous Delivery? 26

27 CI Levels CI Level 0 (Central repository): Central repository is maintained, but no automation is used. CI Level 1 (Daily, nightly, weekly build): Automated build started manually or time based. CI Level 2 (Triggered builds): Triggered by commit independent of success. CI Level 3 (Continuous builds): Always based on the latest successfully integrated branch. CI Level 4 (Gated commits): Quality measures taken by the submitter. Only if these quality tests are passed the commit is really applied to the central repository. CI Level 5 6 As for CI Level 4 the levels 5 and 6 introduce quality gates but on higher level e.g. on component level for level 5 and on release level for level 6. 27

28 No Continuous Integration at all + Developers work in stable, isolated environment and are not disturbed by other s work - Branches diverge - Refactoring very difficult - Challenging and risky integration Development Branches Mainline 28

29 L-0: Common mainline (local checks by developer) + Developers are aware of each other s changes + Merge conflicts are detected and resolved early, before they grow bigger and bigger - There is no quick feedback if the mainline is in working order after the commit But it works on my machine Mainline 29

30 L-1: Nightly builds (time triggered checks) + There is a clear indication if the mainline degrades and doesn t work any more - It is not possible to attribute build failures to individual commits Mainline 30

31 L-2: Change Management triggered checks + Very quick feedback when a commit breaks the build + Status of mainline visible at any time - Requires some discipline on developers - Modifications in a Change Package potentially very big Mainline 31

32 L-3: Continuous Integration + Very quick feedback when a commit breaks the build + Status of mainline visible at any time - Requires some discipline on developers Application of delta (integration) Build and test Discard change Application of fix delta (integration) Build and test Mainline Local Change User branch 32

33 L-4: Gated commits also known as pre-tested commits + Mainline is always in working order + Checks can be more thorough, as they are not that time critical + Can involve manual reviews as well - Requires robust change propagation in Configuration Management system - Requires review infrastructure (optional and recommended) Application of delta (integration) Build and test Build and test Mainline Stash Local Change Discard change Application of fix delta (integration) User branch 33

34 L-5: Continuous Delivery into Test + Features are quickly provided to customer - Requires high degree of test automation to keep effort reasonable Staging Mainline 34

35 L-6: Continuous Delivery into Production + Features are quickly provided to customer, not waiting for scheduled releases - Requires high degree of test and deployment automation to keep effort reasonable Staging Mainline 35

36 Integration evolution to Continuous Delivery Manual Big Bang Integration Manual Continuous Integration Automated CI via Jenkins Continuous Delivery Continuous Delivery: After each successful integration a delivery towards the next Integration site is made Currently four customer projects gets something like Continuous Delivery : For two packages in case code has changed a delivery is done 1 4 times a day (This is enough since currently the customer projects can t take it more often). For two packages a delivery after each change/release is done. 36

37 Continuous Testing Advantages of Continuous Integration Testing Continuous integration has many advantages. When tests fail or bugs emerge, developers can revert the codebase to a bug-free state without wasting time debugging. Developers can detect and fix integration problems continuously and thus avoid last-minute chaos at release dates. In addition, CI testing provides: Early warning of broken/incompatible code Early warning of conflicting changes Immediate testing of all changes Constant availability of a current build for testing, demo, or release purposes Immediate feedback to developers on the quality, functionality, or system-wide impact of their written code Frequent code check-ins push developers to create modular, less complex code 37

38 DevOps DevOps (a clipped compound of "development" and "operations") is a software engineering culture and practice that aims at unifying software development (Dev) and software operation (Ops). The main characteristic of the DevOps movement is to strongly advocate automation and monitoring at all steps of software construction, from integration, testing, releasing to deployment and infrastructure management. DevOps aims at shorter development cycles, increased deployment frequency, and more dependable releases, in close alignment with business objectives. 38

39 Traceability An important principle of change management is to have two-way traceability between issue management (i.e. JIRA) and the code repository (via Gerrit). In this way, individual commits can be traced to JIRA issues and we also know which commits were used to resolve a JIRA issue. 39

40 Bibliography Advantages of Continuous Integration Testing

41 41

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)

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) 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 Seminary IIC Requirements Java SE Runtime

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

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

PHP Development Best Practices: The Untold Story of Geekville

PHP Development Best Practices: The Untold Story of Geekville PHP Development Best Practices: The Untold Story of Geekville An Atlassian & Zend Webinar January 19 th, 2010 Housekeeping All phone lines are muted Submit the questions via WebEx Q&A window any time Q&A

More information

Jenkins: A complete solution. From Continuous Integration to Continuous Delivery For HSBC

Jenkins: A complete solution. From Continuous Integration to Continuous Delivery For HSBC Jenkins: A complete solution From Integration to Delivery For HSBC Rajesh Kumar DevOps Architect @RajeshKumarIN www.rajeshkumar.xyz Agenda Why Jenkins? Introduction and some facts about Jenkins Supported

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

Continuous integration for databases using Red Gate tools

Continuous integration for databases using Red Gate tools Whitepaper Continuous integration for databases using Red Gate tools A technical overview source control develop Dev Continuous Integration build test Deployment package TESTING QA V1.0 V2.0 STAGING /

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

Technology Background Development environment, Skeleton and Libraries

Technology Background Development environment, Skeleton and Libraries Technology Background Development environment, Skeleton and Libraries Christian Kroiß (based on slides by Dr. Andreas Schroeder) 18.04.2013 Christian Kroiß Outline Lecture 1 I. Eclipse II. Redmine, Jenkins,

More information

JenkinsPipelineUnit. Test your Continuous Delivery Pipeline. Ozan Gunalp - Emmanuel Quincerot

JenkinsPipelineUnit. Test your Continuous Delivery Pipeline. Ozan Gunalp - Emmanuel Quincerot JenkinsPipelineUnit Test your Continuous Delivery Pipeline Ozan Gunalp - Emmanuel Quincerot Who we are Ozan Günalp Emmanuel Quincerot Developer at LesFurets Developer at LesFurets PhD in Computer Science

More information

Software Development I

Software Development I 6.148 Software Development I Two things How to write code for web apps. How to collaborate and keep track of your work. A text editor A text editor A text editor Anything that you re used to using Even

More information

Brief overview of the topic and myself the 7 VCS used so far (different one each time), still many unused Acts as a time-machine, and almost as

Brief overview of the topic and myself the 7 VCS used so far (different one each time), still many unused Acts as a time-machine, and almost as Brief overview of the topic and myself the 7 VCS used so far (different one each time), still many unused Acts as a time-machine, and almost as contentious as the text editor This talk tries to address

More information

WHITEPAPER. Database DevOps with the Redgate Deployment Suite for Oracle

WHITEPAPER. Database DevOps with the Redgate Deployment Suite for Oracle WHITEPAPER Database DevOps with the Redgate Deployment Suite for Oracle 1 Abstract Building great software is never just about the code. It s also about managing multiple teams, timelines, and frequently

More information

HP APPs v.12 Solutions for Dev-Ops

HP APPs v.12 Solutions for Dev-Ops HP APPs v.12 Solutions for Dev-Ops Kimberly Fort HP Software July 2014 Kimberly Fort Software Solutions Architect *5 Months with HP *17 Years experience using HP Tools & products *20 Years experience in

More information

TM DevOps Use Case TechMinfy All Rights Reserved

TM DevOps Use Case TechMinfy All Rights Reserved Document Details Use Case Name TMDevOps Use Case01 First Draft 5 th March 2018 Author Reviewed By Prabhakar D Pradeep Narayanaswamy Contents Scope... 4 About Customer... 4 Use Case Description... 4 Primary

More information

ThinkPalm s BreakThrough DevOps Capabilities ThinkPalm

ThinkPalm s BreakThrough DevOps Capabilities ThinkPalm ThinkPalm s BreakThrough DevOps Capabilities ThinkPalm Dev Ops Business Planning Collaborative Development Customer Feedback & Optimization Testing Monitoring Release and Deployment STANDARDS OPERATE DEPLOY

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

Understanding the Open Source Development Model. » The Linux Foundation. November 2011

Understanding the Open Source Development Model. » The Linux Foundation. November 2011 » The Linux Foundation Understanding the Open Source Development Model November 2011 By Ibrahim Haddad (PhD) and Brian Warner, The Linux Foundation A White Paper By The Linux Foundation This paper presents

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 Case03 First Draft 01 st Dec 2017 Author Reviewed By Prabhakar D Pradeep Narayanaswamy Contents Scope... 4 About Customer... 4 Use Case Description... 4 Primary

More information

I keep hearing about DevOps What is it?

I keep hearing about DevOps What is it? DevOps & OpenShift I keep hearing about DevOps What is it? FOR MANY ORGANIZATIONS, WHAT IS I.T. LIKE TODAY? WATERFALL AND SILOS Application Version X DEVELOPMENT OPERATIONS IT OPS IS UNDER PRESSURE ENVIRONMENT

More information

At a high level, the current OPNFV CI pipeline can be summarized as follows:

At a high level, the current OPNFV CI pipeline can be summarized as follows: Cross Community Continuous Integration (XCI) Empowers Innovation by Increasing Collaboration Between and Upstream Communities With XCI, regularly integrates the latest from each supported branch of select

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

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

JIRA Studio Use Cases and Tutorial basis

JIRA Studio Use Cases and Tutorial basis JIRA Studio Use Cases and Tutorial basis Analysis of usefulness of JIRA Studio Eclipse tool-chain Tolga Tuncbilek, Elisa Kallio, Shiyuan Wang, Viktor Porvaznik Table of Contents 1 Introduction... 3 2 Data

More information

How to Take the CI/CD Plunge

How to Take the CI/CD Plunge How to Take the CI/CD Plunge or How I Learned to Stop Worrying and Love OpenStack www.mirantis.com Introductions Christopher Aedo Product Architect Christopher is an IT veteran for consulting, design and

More information

Deep Dive on AWS CodeStar

Deep Dive on AWS CodeStar Deep Dive on AWS CodeStar with AWS CI/CD workflow Tara E. Walker Technical Evangelist @taraw June 28, 2017 2015, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Agenda What is DevOps

More information

Continuous Integration & Code Quality MINDS-ON NUNO 11 APRIL 2017

Continuous Integration & Code Quality MINDS-ON NUNO 11 APRIL 2017 Continuous Integration & Code Quality MINDS-ON NUNO BETTENCOURT (NMB@ISEP.IPP.PT) @DEI, 11 APRIL 2017 Continuous Integration - THE THEORY - NMB@DEI - 11 April, 2017 CONTINUOUS INTEGRATION & SOFTWARE QUALITY

More information

Software Revision Control for MASS. Git Basics, Best Practices

Software Revision Control for MASS. Git Basics, Best Practices Software Revision Control for MASS Git Basics, Best Practices Matthew Sell, CSSE Student MASS Research Participant, February 2014 What is revision control? The obligatory Wikipedia definition: revision

More information

CSC 2700: Scientific Computing

CSC 2700: Scientific Computing CSC 2700: Scientific Computing Record and share your work: revision control systems Dr Frank Löffler Center for Computation and Technology Louisiana State University, Baton Rouge, LA Feb 13 2014 Overview

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

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

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

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

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

Programming in the large. Lecture 22: Configuration Management. Agenda for today. Bertrand Meyer. Bernd Schoeller

Programming in the large. Lecture 22: Configuration Management. Agenda for today. Bertrand Meyer. Bernd Schoeller 1 Last update: 17 June 2004 Programming in the large Bertrand Meyer 2 Lecture 22: Configuration Management Bernd Schoeller bernd.schoeller@inf.ethz.ch Agenda for today 3 Motivation What is configuration

More information

Push up your code next generation version control with (E)Git

Push up your code next generation version control with (E)Git Push up your code next generation version control with (E)Git Dominik Schadow Senior Consultant Application Development dominik.schadow@trivadis.com Java Forum Stuttgart, 07.07.2011 Basel Bern Lausanne

More information

Continuous integration & continuous delivery. COSC345 Software Engineering

Continuous integration & continuous delivery. COSC345 Software Engineering Continuous integration & continuous delivery COSC345 Software Engineering Outline Integrating different teams work, e.g., using git Defining continuous integration / continuous delivery We use continuous

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

... 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

What is version control? (discuss) Who has used version control? Favorite VCS? Uses of version control (read)

What is version control? (discuss) Who has used version control? Favorite VCS? Uses of version control (read) 1 For the remainder of the class today, I want to introduce you to a topic we will spend one or two more classes discussing and that is source code control or version control. What is version control?

More information

White Paper(Draft) Continuous Integration/Delivery/Deployment in Next Generation Data Integration

White Paper(Draft) Continuous Integration/Delivery/Deployment in Next Generation Data Integration Continuous Integration/Delivery/Deployment in Next Generation Data Integration 1 Contents Introduction...3 Challenges...3 Continuous Methodology Steps...3 Continuous Integration... 4 Code Build... 4 Code

More information

Continuous Delivery of your infrastructure. Christophe

Continuous Delivery of your infrastructure. Christophe Continuous Delivery of your infrastructure Christophe Vanlancker @Carroarmato0 Christophe Vanlancker Internal operations and consulting Mentor Kris couldn t make it so I s/kris/christophe/g Todays Goals

More information

Continuous Integration (CI) with Jenkins

Continuous Integration (CI) with Jenkins TDDC88 Lab 5 Continuous Integration (CI) with Jenkins This lab will give you some handson experience in using continuous integration tools to automate the integration periodically and/or when members of

More information

Code Review for DevOps

Code Review for DevOps Code Review for DevOps FOSSASIA 2016 Saturday, 19 March 2016 Elizabeth K. Joseph Hewlett Packard Enterprise lyz@princessleia.com @pleia2 Elizabeth K. Joseph OpenStack Infrastructure Team DevOps Engineer,

More information

Con. Continuous Integration

Con. Continuous Integration Con Continuous Integration Table of Contents Slide 1 Slide 2 Slide 3 Slide 4 Slide 5 What is Continuous Integration (CI)? The benefits of CI The CI landscape Why should I care about CI? Mock Scenario +

More information

M E R C U R I A L (The Source Control Management)

M E R C U R I A L (The Source Control Management) M E R C U R I A L (The Source Control Management) Jamshaid Iqbal Janjua, Shahid Awan jamshaid.janjua@kics.edu.pk shahidawan@kics.edu.pk Al-Khawarizmi Institute of Computer Science University of Engineering

More information

Lab Objective. Lab Assignment. Downloads and Installation

Lab Objective. Lab Assignment. Downloads and Installation How I Start Working with Git: Git Lab 01 Adapted from: (1) https://github.com/quantstack/xeus-cling (2) https://code.visualstudio.com/docs/languages/cpp Lab Objective 1. Installing and using VS Code 2.

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

Subversion Repository Layout

Subversion Repository Layout Subversion Subversion Control manages documents over time keeps a history of all changes - multiple versions of every file coordinates work of multiple authors avoids conflicts...and helps to resolve them

More information

Technology Background Development environment, Skeleton and Libraries

Technology Background Development environment, Skeleton and Libraries Technology Background Development environment, Skeleton and Libraries Slides by Prof. Dr. Matthias Hölzl (based on material from Dr. Andreas Schröder) Outline Lecture 1 I. Eclipse II. Git Lecture 2 IV.

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

Kernel maintainership: an oral tradition

Kernel maintainership: an oral tradition Embedded Linux Conference Europe 2015 Kernel maintainership: an oral tradition Gregory CLEMENT Bootlin gregory.clement@bootlin.com (Image credit: Andrew Cheal under license CC BY-ND 2.0) - Kernel, drivers

More information

Sunil Shah SECURE, FLEXIBLE CONTINUOUS DELIVERY PIPELINES WITH GITLAB AND DC/OS Mesosphere, Inc. All Rights Reserved.

Sunil Shah SECURE, FLEXIBLE CONTINUOUS DELIVERY PIPELINES WITH GITLAB AND DC/OS Mesosphere, Inc. All Rights Reserved. Sunil Shah SECURE, FLEXIBLE CONTINUOUS DELIVERY PIPELINES WITH GITLAB AND DC/OS 1 Introduction MOBILE, SOCIAL & CLOUD ARE RAISING CUSTOMER EXPECTATIONS We need a way to deliver software so fast that our

More information

Belle II - Git migration

Belle II - Git migration Belle II - Git migration Why git? Stash GIT service managed by DESY Powerful branching and merging capabilities Resolution of (JIRA) issues directly be map to branches and commits Feature freeze in pre-release

More information

Pipeline as Code for your IAC. Kris

Pipeline as Code for your IAC. Kris Pipeline as Code for your IAC Kris Buytaert @krisbuytaert Kris Buytaert I used to be a Dev, Then Became an Op Chief Trolling Officer and Open Source Consultant @inuits.eu Everything is an effing DNS Problem

More information

Revision Control. How can 4. Slides #4 CMPT 276 Dr. B. Fraser. Local Topology Simplified. Git Basics. Revision Control:

Revision Control. How can 4. Slides #4 CMPT 276 Dr. B. Fraser. Local Topology Simplified. Git Basics. Revision Control: How can 4 (or 4000) developers work on a product at once? Revision Control Revision Control Revision Control: Also called version control, source control, software configuration management. Motivation:

More information

Chapter 11, Testing, Part 2: Integration and System Testing

Chapter 11, Testing, Part 2: Integration and System Testing Object-Oriented Software Engineering Using UML, Patterns, and Java Chapter 11, Testing, Part 2: Integration and System Testing Overview Integration testing Big bang Bottom up Top down Sandwich System testing

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

Development Practice and Quality Assurance. Version Control. The first thing you should be told when you start a new job - Steve Freeman

Development Practice and Quality Assurance. Version Control. The first thing you should be told when you start a new job - Steve Freeman 302 Development Practice and Quality Assurance In this section we will talk about and demonstrate technical practices that modern development teams commonly undertake in order to deliver software smoothly

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

Curriculum Guide. Integrity 11

Curriculum Guide. Integrity 11 Curriculum Guide Integrity 11 Live Classroom Curriculum Guide Requirements Engineering with Integrity 11 Test Management with Integrity 11 Workflows and Documents with Integrity 11 Requirements Engineering

More information

#jenkinsconf. Managing jenkins with multiple components project. Jenkins User Conference Israel. Presenter Name Ohad Basan

#jenkinsconf. Managing jenkins with multiple components project. Jenkins User Conference Israel. Presenter Name Ohad Basan Jenkins User Conference Israel #jenkinsconf Managing jenkins with multiple components project Presenter Name Ohad Basan Presenter Company Www.redhat.com July 16, 2014 #jenkinsconf Who am I Ohad Basan CI

More information

Tools for Distributed, Open Source Systems Administration

Tools for Distributed, Open Source Systems Administration Tools for Distributed, Open Source Systems Administration LISA15 Friday, November 13, 2015 Elizabeth K. Joseph lyz@princessleia.com @pleia2 Elizabeth K. Joseph OpenStack Infrastructure Team systems administrator,

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

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

CSE 332: Data Structures and Parallelism Autumn 2017 Setting Up Your CSE 332 Environment In this document, we will provide information for setting up Eclipse for CSE 332. The first s ection covers using

More information

Git Branching for Agile Teams

Git Branching for Agile Teams Git Branching for Agile Teams Why use Git + agile? Git helps agile teams unleash their potential How? Developer First, let s review two pillars of agile 1 Build in narrow vertical slices Waterfall: can

More information

HP ALM Overview. Accelerating Innovation, Industrialising Quality. Oren Ziv, Product Manager, QC/ALM

HP ALM Overview. Accelerating Innovation, Industrialising Quality. Oren Ziv, Product Manager, QC/ALM www.hp.com/go/alm HP ALM Overview Accelerating Innovation, Industrialising Quality Oren Ziv, Product Manager, QC/ALM Satisfied customers Largest community 6,000+ worldwide Enterprise scalability to Size

More information

Software Development. Using GIT. Pr. Olivier Gruber. Laboratoire d'informatique de Grenoble Université de Grenoble-Alpes

Software Development. Using GIT. Pr. Olivier Gruber. Laboratoire d'informatique de Grenoble Université de Grenoble-Alpes Software Development 1 Using GIT Pr. Olivier Gruber olivier.gruber@imag.fr Laboratoire d'informatique de Grenoble Université de Grenoble-Alpes Overview 2 What is GIT Keeping histories of the evolution

More information

About Us. Services CONSULTING OUTSOURCING TRAINING MENTORING STAFF AUGMENTATION 9/9/2016

About Us. Services CONSULTING OUTSOURCING TRAINING MENTORING STAFF AUGMENTATION 9/9/2016 About Us Incorporated in January, 2003 QA and QC in expertise focused on functional, performance and application security validation HPE Software Gold Partner, HPE Authorized Software Support Partner &

More information

Reengineering II. Transforming the System

Reengineering II. Transforming the System Reengineering II Transforming the System Recap: Reverse Engineering We have a detailed impression of the current state We identified the important parts We identified reengineering opportunities We have

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

Project Automation. If it hurts, automate it! Jan Pool NioCAD University of Stellenbosch 19 March 2008

Project Automation. If it hurts, automate it! Jan Pool NioCAD University of Stellenbosch 19 March 2008 Project Automation If it hurts, automate it! Jan Pool NioCAD University of Stellenbosch 19 March 2008 Introduction Purpose: Introduce various aspects of project automation. Why, when, what, and how to

More information

Team-Based Collaboration in Simulink

Team-Based Collaboration in Simulink Team-Based Collaboration in Simulink Sonia Bridge 2015 The MathWorks, Inc. 1 Create tools that make it easy for teams to manage the full lifecycle of their Model-Based Design projects Collaborate Integrate

More information

RSARTE Git Integration

RSARTE Git Integration RSARTE Git Integration Anders Ek IBM INTRODUCTION...3 EGIT BRIEF OVERVIEW...3 GETTING STARTED...6 ECLIPSE PROJECTS AND GIT REPOSITORIES...6 ACCESSING A REMOTE GIT REPOSITORY...7 IMPORTING AN EXISTING REPOSITORY...8

More information

VSO. Configuration Management

VSO. Configuration Management VSO Configuration Management Timo Wolf Copyright 2005 Bernd Brügge & Timo Wolf VSO General Meeting, 3.Nov 2005 1 Outline Mapping the IEEE Standard to Subversion (SVN) Introduction to Subversion Subversion

More information

Best practices for OO 10 content structuring

Best practices for OO 10 content structuring Best practices for OO 10 content structuring With HP Operations Orchestration 10 two new concepts were introduced: Projects and Content Packs. Both contain flows, operations, and configuration items. Organizations

More information

Getting Started with Contributing to OpenStack An Introductory Crash Course on OpenStack Development

Getting Started with Contributing to OpenStack An Introductory Crash Course on OpenStack Development Getting Started with Contributing to OpenStack An Introductory Crash Course on OpenStack Development Mike Turek mjturek@us.ibm.com mjturek on freenode Who Am I? Mike Turek Software Engineer at IBM in the

More information

Revolutionize the Way You Work With IMS Applications Using IBM UrbanCode Deploy Evgeni Liakhovich, IMS Developer

Revolutionize the Way You Work With IMS Applications Using IBM UrbanCode Deploy Evgeni Liakhovich, IMS Developer Revolutionize the Way You Work With IMS Applications Using IBM UrbanCode Deploy Evgeni Liakhovich, IMS Developer evgueni@us.ibm.com * 2016 IBM Corporation Trademarks, copyrights, disclaimers IBM, the IBM

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

About SJTUG. SJTU *nix User Group SJTU Joyful Techie User Group

About SJTUG. SJTU *nix User Group SJTU Joyful Techie User Group About SJTUG SJTU *nix User Group SJTU Joyful Techie User Group Homepage - https://sjtug.org/ SJTUG Mirrors - https://mirrors.sjtug.sjtu.edu.cn/ GitHub - https://github.com/sjtug Git Basic Tutorial Zhou

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

Seven Habits of Highly Effective Jenkins Users

Seven Habits of Highly Effective Jenkins Users Seven Habits of Highly Effective Jenkins Users What is this talk about? Lessons learned: Maintaining multiple large Jenkins instances. Working on Jenkins itself, and many of its plugins. Seeing customer

More information

CSE 332: Data Structures and Parallelism Winter 2019 Setting Up Your CSE 332 Environment

CSE 332: Data Structures and Parallelism Winter 2019 Setting Up Your CSE 332 Environment CSE 332: Data Structures and Parallelism Winter 2019 Setting Up Your CSE 332 Environment This document guides you through setting up Eclipse for CSE 332. The first section covers using gitlab to access

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

Put Security Into Your DevOps NOW. Or Prepare for the Flood Matthew Fisher Solution Architect, Fortify Federal 08MAR2018

Put Security Into Your DevOps NOW. Or Prepare for the Flood Matthew Fisher Solution Architect, Fortify Federal 08MAR2018 Put Security Into Your DevOps NOW Or Prepare for the Flood Matthew Fisher Solution Architect, Fortify Federal 08MAR2018 Defining Devops State of Devops Report (Puppet, Dora):..set of practices and cultural

More information

SECTION 2: HW3 Setup.

SECTION 2: HW3 Setup. SECTION 2: HW3 Setup cse331-staff@cs.washington.edu slides borrowed and adapted from Alex Mariakis,CSE 390a,Justin Bare, Deric Pang, Erin Peach, Vinod Rathnam LINKS TO DETAILED SETUP AND USAGE INSTRUCTIONS

More information

Who Moved My Module? 1

Who Moved My Module? 1 Who Moved My Module? 1 About Me Yoav Landman - JFrog s CTO and Co-Founder - Creator of the Artifactory Project - 13 years experience in commercial enterprise build and development environments 2 Agenda

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

a brief introduction to creating quality software continuously Copyright 2011 Davisbase, LLC

a brief introduction to creating quality software continuously Copyright 2011 Davisbase, LLC a brief introduction to creating quality software continuously Andy Painter Agile Coach/Trainer/Consultant CSM, CSP, CSD Instructor andy@davisbase.org (704) 835-0194 Interests: Cloud Computing, Agile Development

More information

Chapter 11, Testing, Part 2: Integration and System Testing

Chapter 11, Testing, Part 2: Integration and System Testing Object-Oriented Software Engineering Using UML, Patterns, and Java Chapter 11, Testing, Part 2: Integration and System Testing Overview Integration testing Big bang Bottom up Top down Sandwich System testing

More information

Integrate Collaboration into your Workflow

Integrate Collaboration into your Workflow Integrate Collaboration into your Workflow George Bina george@oxygenxml.com @georgebina Existing workflow... Checkout Modify Content Commit... Integrating collaboration workflow... Checkout Modify Content

More information

AgileSCM Release 4.1. AgileSCM Release 4.0. AgileSCM Release 3.2. New Features. Bug Fixes. New Features. Bug Fixes

AgileSCM Release 4.1. AgileSCM Release 4.0. AgileSCM Release 3.2. New Features. Bug Fixes. New Features. Bug Fixes AgileSCM Release 4.1 Project Dashboard - get a complete overview of the status of your project. View the SSH public key through the AgileSCM interface. This allows you to post the key to Git and Mercurial

More information

USING GIT FOR AUTOMATION AND COLLABORATION JUSTIN ELLIOTT - MATT HANSEN PENN STATE UNIVERSITY

USING GIT FOR AUTOMATION AND COLLABORATION JUSTIN ELLIOTT - MATT HANSEN PENN STATE UNIVERSITY USING GIT FOR AUTOMATION AND COLLABORATION JUSTIN ELLIOTT - MATT HANSEN PENN STATE UNIVERSITY AGENDA Version control overview Introduction and basics of Git Advanced Git features Collaboration Automation

More information

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme DEV2704BE Delivering Infrastructure as Code: Practical Tips and Advice Peg Eaton #vmworld #DEV2704BE Disclaimer This presentation may contain product features that are currently under development. This

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

How to Git Better Using Git Workflows (with some help from Atlasssian)

How to Git Better Using Git Workflows (with some help from Atlasssian) NERDS 28 May 2015 How to Git Better Using Git Workflows (with some help from Atlasssian) Why should we Git Better? Software Craftsmanship You are as proficient as you are familiar with your tools You are

More information

Enterprise Architect Visual Studio (VSTS) Integration

Enterprise Architect Visual Studio (VSTS) Integration Enterprise Architect Visual Studio (VSTS) Integration Model and gather requirements in Enterprise Architect Integrate EA with Visual Studio / TFS Theresa Ruhnke Team Leader Microsoft Technology Centre

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

Importing Files and Directories $ svnadmin create \

Importing Files and Directories $ svnadmin create  \ svn help Importing Files and Directories svnadmin create http://svn.example.com/svn/repo/some/project \ Importing Files and Directories svn import /path/to/mytree \ http://svn.example.com/svn/repo/some/project

More information