Perforce Branching Moving Fast from Theory to Practical Application

Size: px
Start display at page:

Download "Perforce Branching Moving Fast from Theory to Practical Application"

Transcription

1 Perforce Branching Moving Fast from Theory to Practical Application Document Version 2.0 Overview 1. Introduction 2. Branch Strategy Basics The Mainline Model Planned and Organic Release Processes More than one MAIN? 3. Directory Structure Considerations How Many Depots? Products, Product Families, and Projects Branch Container Directories 2

2 Overview 4. Interview: Release Process Classification Planned vs. Organic? Simple Patches or Complex Maintenance? Hosted, Licensed, or Burn & Ship? Generic Product or Custom? Scale? Large-scale, globally distributed? Sophistication? 5. Sample Case Studies 6. Q&A 3 Mainline Model Basics Recognize the need for temporary isolation of codelines Provide a clear path for integration of isolated codelines. Recognize the need for temporary divergence. Reduce excessive permutations of the code base. 4

3 The Mainline Model Sample Branch Diagram Rel (Release) 3.0-R 3.1-R MAIN 3.2-R Int (Integration) Dev (Development) Legend Branch (Codeline Creation) Promotion Refresh Refresh/Ignore 5 Integration Types - Refresh A Refresh: is intended to integrate changes in one codeline with changes made in other codelines. is an integration from a more formal to a less formal codeline. requires potentially complex merge work. can introduce instability in the target codeline. is best performed by an SME familiar with the software, coding language, requirements, etc. is often done as a retail operation, e.g. by subsystem or areas of subject matter expertise. 6

4 Integration Types - Promotion A Promotion: is intended to promote exact copies of tested, trusted software closer to Production. is an integration from a less formal to a more formal codeline. does not require complex resolve because the files are promoted as they are ( copy merged ). can be performed as a wholesale operation by a centralized Configuration Management or Release Engineering team who may be unfamiliar with the software. promotes the entire codeline from a known state as it meets ever-increasing quality bars for each level of promotion. 7 Integration Types - Selective A Selective Integration: is intended to cherry pick selected changes from a codeline, such as extracting a generic bug fix from a codeline normally used for custom development. 8

5 Directory Structure Notes More than one MAIN? Sure! Product Families Product vs. Project Branch Container Directories //Eng/MAIN/ProductX or //Eng/ProductX/MAIN 9 Version Control Areas (1 of 3) Source Area Contains originally contributed artifacts, such as source code, *.jpg images, etc. Branching Strategies apply mostly within the Source Area. Build Area A "no humans allowed" area, populated strictly by fully automated build processes. Contains compiled executables, libraries, APIs, packages, installers, etc. 10

6 Version Control Areas (2 of 3) Release Area Tracks exact "As Delivered files. Contains files branched from Build Area, plus files specific to particular release configuration, e.g. files that vary on a per-runtime environment basis or percustomer basis (even if they use the same build). Admin Area Contains spec depot, remote depots, Perforce management scripts, etc. 11 Version Control Areas (3 of 3) Import Area Contains files and histories exactly as they were imported from other version control systems (CVS, VSS, Subversion, ClearCase, etc.). Files are read-only. Doc Area Often published by web server, contains various documents (other than those that live in the source area). 12

7 Typical Depots (1 of 2) //Giz Source Code for Giz Product Family //Giz-Build Build area, populated only by fully automated build processes (no humans allowed). Contains various build configurations, e.g. 32/64 bit, debug/optimized, or Windows/Mac/Linux/Solaris. //Giz-Release Contains as-released software, suitable for distribution to runtime environments, burning to CDs or firmware, or otherwise delivered. 13 Typical Depots (2 of 2) //3rdParty Contains Commercial 3 rd Party Software, with an optional branching structure to support local modifications. //OpenSource Segregate all open source code used in your software, to promote reuse and simplify black duck analysis (analysis of potential legal liabilities introduced by inappropriate use of open source). 14

8 Interview Questions (1 of 6) 1. What best describes the primary development/release cycle? Planned Hyper Short Nominal Long Organic 15 Interview Questions (2 of 6) 2. Classify your Maintenance Requirements None (e.g. Hosted) Simple: Minimal maintenance of released products; the product structure isn't expected to change appreciably in maintenance Complex: Extensive, large scale development effort is focused on support of released products, which could take years. 16

9 Interview Questions (3 of 6) 3. What best describes the deployment model of your product: Hosted: No need to support old releases your clients run whatever software versions are running in the data center. Licensed Software Product: You need to support customers on multiple releases of your software. Burn & Ship: Major releases are shipped (e.g. burned into firmware or CDs). Patches may be required to shipped software. 17 Interview Questions (4 of 6) 4. Are all changes generic, or is there any need to support customizations? 5. If customization is required, can it be assumed that any given customer will be on exactly one version? Simple: Yes, any given customer will have exactly one version. No: We need to account for the possibility that a specific customer might use different versions of our product simultaneously (e.g. one version in their Production environment, another in their Training environment, yet another in an Evaluation environment, etc.). 18

10 Interview Questions (5 of 6) 6. How many developers/contributors are involved? How many geographic sites are involved? Is there (or are you trying to form) a formal QA organization? 19 Interview Questions (6 of 6) 7. Do users want Personal Development Branches (aka Sandboxes)? 8. Do you want Per-Bug branches? 20

11 Case Study #1: Overview Licensed software, large globally distributed development team, with formal QA Release Process Characteristics Planned Releases Large, Multi-Site Teams Simple Maintenance No Customization Support Generic Product Only Personal Development branches used sparingly 21 Case Study #1: Dir Structure //Eng Rel/<PROJECT>-R/[<ProductFamily>]/<Product>/... MAIN/[<ProductFamily>]/<Product>/... Int/<PROJECT>-Int/[<ProductFamily>]/<Product>/... Dev/<PROJECT>/[<ProductFamily>]/<Product>/... PD/<User>/<PROJECT>/[<ProductFamily>]/<Product>/... 22

12 Case Study #1: Branch Diagram Release 4.0-R (Release) 4.1-B (Beta) MAIN 4.1-R (Rel) Integration Legend Branch Refresh Promotion Dev 4.1 Performance 4.1 New Features & Fixes 23 Case Study #1: Dir Diagram //Eng Dev Int MAIN Rel GIZ-2.x-Int GIZ-2.0 GIZ-2.1 Giz Giz GIZ-1.0-R Giz Giz Giz 24

13 Case Study #1: Branch Specs Branch Type Branch Spec Source Target Personal PD.juser.GIZ-2.0.B //Eng/Dev/GIZ-2.0/Giz/ //Eng/PD/juser/GIZ-2.0/Giz/ Dev GIZ-2.0.B //Eng/Int/GIZ-2.x-INT/Giz/ //Eng/Dev/GIZ-2.0/Giz/ Dev GIZ-2.1.B //Eng/Int/GIZ-2.x-INT/Giz/ //Eng/Dev/GIZ-2.1/Giz/ Int GIZ-2.x-Int.B //Eng/MAIN/Giz/ //Eng/Int/GIZ-2.0-INT/Giz/ Rel GIZ-1.0-R.B //Eng/Rel/GIZ-1.0-R/Giz/ //Eng/MAIN/Giz/... Note that the default direction is always for a Refresh. 25 Case Study #2: Overview Embedded software, small development team Release Process Characteristics Planned Releases Simple Maintenance Customization Support 26

14 Case Study #2: Dir Structure //Eng Custom/<CUSTOMER>-C/[<ProductFamily>]/<Product>/... Rel/<PROJECT>-R/[<ProductFamily>]/<Product>/... MAIN/[<ProductFamily>]/<Product>/... Dev/<PROJECT>/[<ProductFamily>]/<Product>/ Case Study #2: Branch Diagram Navy-C Simple Promotion does not apply for Customization (Custom) Selective Integration Cherry Picking or Release MAIN 5.0-R (Release) 5.5-B (Beta)? 5.5-R (Rel) Development 5.5 New Features & Fixes 5.5 Performance Legend Branch Refresh (Selective) Promotion 28

15 Case Study #2: Dir Diagram //Eng Dev MAIN Rel Custom BALI-1.0-R NAVY-C BALI-2.0 Bali BALI-2.1 Bali Bali Bali Bali 29 Case Study #3: Overview Hosted Model Release Process Characteristics Organic and Planned Release Processes Small Development Team No Customization No Maintenance of old releases 30

16 Case Study #3: Dir Structure //Eng/ PROD/<HostedApp>/... MAIN/<HostedApp>/... ODEV/<HostedApp>/... Dev/<PROJEC>/<HostedApp>/ Case Study #3: Branch Diagram PROD MAIN ODEV (CONTENT) Content Freeze Dev (FUNCTIONALITY) Legend Branch Refresh Promotion 32

17 Case Study #3: Dir Diagram //Eng Dev MAIN PROD Acme3 Acme3 ODEV ACME3-2.0 Acme3 Acme3 33 Case Study #4: Overview Consulting Model Release Process Characteristics Organic Release Process No Production environment for generic product Extensive Custom Development No formal QA Small Development Team 34

18 Case Study #4: Dir Structure //Eng Custom/<CUSTOMER>-C/<Product>/... MAIN/<Product>/... DEV/<Product>/ Case Study #4: Branch Diagram PostOffice-C Acme-C Navy-C (Custom) MAIN Development Legend Branch Refresh (Selective) Promotion 36

19 Case Study #4: Dir Diagram //Eng DEV MAIN Custom Toolkit Toolkit NHState-C Toolkit 37 Questions? 38

20 Thank You! Perforce Branching Moving Fast from Theory to Practical Application 39

SOFTWARE CONFIGURATION MANAGEMENT

SOFTWARE CONFIGURATION MANAGEMENT SOFTWARE CONFIGURATION MANAGEMENT Cape Town SPIN - Albert Visagie - 19 March 2008 Goals Where were we? And get back there reliably. Where are we? How did we get here? Which bugs were fixed in this version?

More information

Perforce Best Practices for Codeline Management

Perforce Best Practices for Codeline Management Perforce Best Practices for Codeline Management Introduction Introductions Class Schedule About the Exercises Course audience Experienced Perforce users Individuals whose work includes: branching and integrating

More information

Perforce Best Practices for Codeline Management. Organizing Codelines, Part 1

Perforce Best Practices for Codeline Management. Organizing Codelines, Part 1 Perforce Best Practices for Codeline Management Organizing Codelines, Part 1 Your objectives for this exercise: Review the terminology used in defining codelines. Evaluate how codelines differ in their

More information

AEM Code Promotion and Content Synchronization Best Practices

AEM Code Promotion and Content Synchronization Best Practices AEM Code Promotion and Content Synchronization Best Practices Ian Reasor, Technical Architect, Adobe Partner Experience Introduction When considering the movement of content through environments in an

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

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

Shipping Call of Duty at Infinity Ward Paul Haile Production 2018 Activision Publishing, Inc.

Shipping Call of Duty at Infinity Ward Paul Haile Production 2018 Activision Publishing, Inc. Shipping Call of Duty at Infinity Ward Paul Haile Production Manager paulh@infinityward.com @Tyrael 2018 Activision Publishing, Inc. Call of Duty - 2016 Agenda Shipping Call of Duty: Infinite Warfare What

More information

1 Version management tools as a basis for integrating Product Derivation and Software Product Families

1 Version management tools as a basis for integrating Product Derivation and Software Product Families 1 Version management tools as a basis for integrating Product Derivation and Software Product Families Jilles van Gurp, Christian Prehofer Nokia Research Center, Software and Application Technology Lab

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

2/8/18. Overview. Project Management. The First Law. What is Project Management? What Are These Changes? Software Configuration Management (SCM)

2/8/18. Overview. Project Management. The First Law. What is Project Management? What Are These Changes? Software Configuration Management (SCM) Overview Project Management How to manage a project? What is software configuration management? Version control systems Issue tracking systems N. Meng, L. Zhang 2 What is Project Management? Effective

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

Project Management. Overview

Project Management. Overview Project Management Overview How to manage a project? What is software configuration management? Version control systems Issue tracking systems N. Meng, L. Zhang 2 1 What is Project Management? Effective

More information

Source Code Management

Source Code Management SCM Source Code Management Fabien Spindler http://www.irisa.fr/lagadic June 26, 2008 Overview 1. Application and interest 2. Centralized source code control Bases CVS Subversion (SVN) 3. Getting started

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

platform Development Process Optimization For Drupal centric projects

platform Development Process Optimization For Drupal centric projects platform Development Process Optimization For Drupal centric projects Introduction This document explains how Platform impacts your Drupal centric project development process. Performance data from digital

More information

This document covers the most frequently used procedures in ClearCase. It contains the following sections:

This document covers the most frequently used procedures in ClearCase. It contains the following sections: ClearCase is a software configuration management system. It is also the tool Concur uses for documentation management and version control. All historical versions are located in a Versioned Object database

More information

TEAM FOUNDATION SERVER (CONCEPT WILL APPLY TO TFS 2005, TFS 2008 & TFS 2010)

TEAM FOUNDATION SERVER (CONCEPT WILL APPLY TO TFS 2005, TFS 2008 & TFS 2010) TEAM FOUNDATION SERVER (CONCEPT WILL APPLY TO TFS 2005, TFS 2008 & TFS 2010) Prepared by : Muhammad Ali Khan (.NET Consultant) FBTC Contact : ali.qau@hotmail.com DIFFERENCE BETWEEN TFS & VSS? Team Foundation

More information

Docker and Security. September 28, 2017 VASCAN Michael Irwin

Docker and Security. September 28, 2017 VASCAN Michael Irwin Docker and Security September 28, 2017 VASCAN Michael Irwin Quick Intro - Michael Irwin 2011 - Graduated (CS@VT); started full-time at VT Sept 2015 - Started using Docker for QA June 2016 - Attended first

More information

Configuration Management and Branching/Merging Models in iuml. Ref: CTN 101 v1.2

Configuration Management and Branching/Merging Models in iuml.  Ref: CTN 101 v1.2 Configuration Management and Branching/Merging Models in iuml Ref: CTN 101 v1.2 The information in this document is the property of and copyright Kennedy Carter Limited. It may not be distributed to any

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

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

Version Control for PL/SQL

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

More information

Software Testing. An Overview

Software Testing. An Overview Software Testing An Overview Software Testing Defined Software testing is the process of verifying & validating that a program or application: Meets technical specifications Meets business requirements

More information

Module 4: Advanced Development

Module 4: Advanced Development Module 4: Advanced Development Objective Create and build a Standard Make Project from source files in CVS Contents Version control Standard Make Projects Fortran Refactoring Searching LACSI 2006 Version

More information

Version Control for PL/SQL

Version Control for PL/SQL Version Control for PL/SQL What is the problem? How did we solve it? Implementation Strategies Demo!! Customer Spotlight Success Story: (In other words, this really works. :-) ) Rhenus Logistics, leading

More information

[RFC] Obtaining Management Buy-in for Mainline Development

[RFC] Obtaining Management Buy-in for Mainline Development [RFC] Obtaining Management Buy-in for Mainline Development Kevin Chalmers Director, Linux Core Product Development Texas Instruments Chase Maupin Manager, Linux Systems Integration Texas Instruments Agenda

More information

CLOSE ENCOUNTERS OF THE UPSTREAM RESOURCE

CLOSE ENCOUNTERS OF THE UPSTREAM RESOURCE CLOSE ENCOUNTERS OF THE UPSTREAM RESOURCE HISAO MUNAKATA RENESAS SOLUTIONS CORP hisao.munakata.vt(at)renesas.com who am I Work for Renesas (semiconductor provider) Over 15 years real embedded Linux business

More information

Project Build Process. Abhijit Bhosale M.Tech (IT) School of Information Technology, IIT Kharagpur

Project Build Process. Abhijit Bhosale M.Tech (IT) School of Information Technology, IIT Kharagpur Project Build Process Abhijit Bhosale M.Tech (IT) School of Information Technology, IIT Kharagpur Objective Make utility Version Control systems Bug Tracking Systems Project build process Configuration

More information

AppSec in a DevOps World

AppSec in a DevOps World AppSec in a DevOps World Peter Chestna Director of Developer Engagement 1 2017 VERACODE INC. ACQUIRED BY CA TECHNOLOGIES Who am I? 27 Years Software Development Experience 12 Years Application Security

More information

Effective Team Collaboration with Simulink

Effective Team Collaboration with Simulink Effective Team Collaboration with Simulink A MathWorks Master Class: 15:45 16:45 Gavin Walker, Development Manager, Simulink Model Management 2012 The MathWorks, Inc. 1 Overview Focus: New features of

More information

Revision Control. An Introduction Using Git 1/15

Revision Control. An Introduction Using Git 1/15 Revision Control An Introduction Using Git 1/15 Overview 1. What is revision control? 2. 30,000 foot view 3. Software - git and gitk 4. Setting up your own repository on onyx 2/15 What is version control?

More information

Enterprise Architect. User Guide Series. Change Management. Author: Sparx Systems. Date: 19/03/2018. Version: 1.0 CREATED WITH

Enterprise Architect. User Guide Series. Change Management. Author: Sparx Systems. Date: 19/03/2018. Version: 1.0 CREATED WITH Enterprise Architect User Guide Series Change Management Author: Sparx Systems Date: 19/03/2018 Version: 1.0 CREATED WITH Table of Contents Change Management 4 Version Control 5 Introduction 6 Version

More information

Integration and Testing. Uses slides from Lethbridge & Laganiere, 2001

Integration and Testing. Uses slides from Lethbridge & Laganiere, 2001 Integration and Testing Uses slides from Lethbridge & Laganiere, 2001 Testing phases: V model Requirements Acceptance Testing Specifications System Testing Design Integration Testing Detailed Design Unit

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

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

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

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

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

CAKEDC GIT WORKFLOW. CakeDC Git Workflow is a project development and release work flow which provides a

CAKEDC GIT WORKFLOW. CakeDC Git Workflow is a project development and release work flow which provides a CAKEDC GIT WORKFLOW CakeDC Git Workflow is a project development and release work flow which provides a development and release cycle based on key phases: Development: All active development is driven

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

Bazaar VCS. Concepts and Workflows

Bazaar VCS. Concepts and Workflows Bazaar VCS Concepts and Workflows Paint rollers and brushes If you want to paint, you have a choice of tools, including paint rollers and brushes. If you re painting a portrait, you would use a small brush.

More information

Using Oracle Designer 6i to Configuration Management Internet Platform Applications. An Oracle Technical White Paper October 2000

Using Oracle Designer 6i to Configuration Management Internet Platform Applications. An Oracle Technical White Paper October 2000 Using Oracle Designer 6i to Configuration Management Internet Platform Applications An Oracle Technical White Paper INTRODUCTION Configuration Management does not normally become an issue within a software

More information

Getting Started with Indexing. Version 2.2

Getting Started with Indexing. Version 2.2 Getting Started with Indexing Version 2.2 This edition refers to Version 2.2 of Black Duck Code Sight. This document created or updated August 21, 2012. Please send your comments and suggestions to: Black

More information

Deploy Early, Deploy Often, Deploy Safely Andy Lowe

Deploy Early, Deploy Often, Deploy Safely Andy Lowe Deploy Early, Deploy Often, Deploy Safely Andy Lowe From User Story to Production Feature Basic Process Write Some Code Commit Automated UAT Deploy Acceptance Prod Tests Deploy Then There s All The Other

More information

Verifying the darcs patch code

Verifying the darcs patch code Verifying the darcs patch code David Roundy Oregon State University November 20 2006 The subject of this talk Darcs a revision control system based on a formalism for manipulating changes, which allows

More information

Microsoft Visual Source Safe (MVSS)

Microsoft Visual Source Safe (MVSS) Microsoft Visual Source Safe (MVSS) Presented By: Rachel Espinoza Microsoft Visual Source Safe 6.0 1 WHAT IS MS VISUAL SOURCESAFE 6.0? The version control system that enables you to manage your individual

More information

Compuware Test Drive Source Code Management, Deployment, and Release Automation Manage Compile Errors 4/5/2019

Compuware Test Drive Source Code Management, Deployment, and Release Automation Manage Compile Errors 4/5/2019 Compuware Test Drive Source Code Management, Deployment, and Release Automation Manage Compile Errors 4/5/2019 Contents Getting Started with SCM - ISPW... 3 Code Changes... 7 Generate (AKA Compile)...

More information

Snapshot Best Practices: Continuous Integration

Snapshot Best Practices: Continuous Integration Snapshot Best Practices: Continuous Integration Snapshot provides sophisticated and flexible tools for continuously keeping Salesforce accounts, developer projects, and content repositories synchronized.

More information

12/7/09. How is a programming language processed? Picasso Design. Collaborating with Subversion Discussion of Preparation Analyses.

12/7/09. How is a programming language processed? Picasso Design. Collaborating with Subversion Discussion of Preparation Analyses. Picasso Design Finish parsing commands Collaborating with Subversion Discussion of Preparation Analyses How is a programming language processed? What are the different phases? Start up Eclipse User s Input

More information

Task-Oriented Solutions to Over 175 Common Problems. Covers. Eclipse 3.0. Eclipse CookbookTM. Steve Holzner

Task-Oriented Solutions to Over 175 Common Problems. Covers. Eclipse 3.0. Eclipse CookbookTM. Steve Holzner Task-Oriented Solutions to Over 175 Common Problems Covers Eclipse 3.0 Eclipse CookbookTM Steve Holzner Chapter CHAPTER 6 6 Using Eclipse in Teams 6.0 Introduction Professional developers frequently work

More information

The Salesforce Migration Playbook

The Salesforce Migration Playbook The Salesforce Migration Playbook By Capstorm Table of Contents Salesforce Migration Overview...1 Step 1: Extract Data Into A Staging Environment...3 Step 2: Transform Data Into the Target Salesforce Schema...5

More information

Overhauling Dev Arch with Ansible Tower and Docker

Overhauling Dev Arch with Ansible Tower and Docker Overhauling Dev Arch with Ansible Tower and Docker Scott Van Velsor, Bryan Shake, Khaled Awwad June 29 1130a #redhat #rhsummit origins the landscape that came before branch & path limits no automation

More information

Admin Plus Pack Option. ExecView Web Console. Backup Exec Admin Console

Admin Plus Pack Option. ExecView Web Console. Backup Exec Admin Console WHITE PAPER Managing Distributed Backup Servers VERITAS Backup Exec TM 9.0 for Windows Servers Admin Plus Pack Option ExecView Web Console Backup Exec Admin Console VERSION INCLUDES TABLE OF CONTENTS STYLES

More information

Solutions Business Manager. Path to Production for Enterprises

Solutions Business Manager. Path to Production for Enterprises White Paper Solutions Business Manager Solutions Business Manager Path to Production for Enterprises Table of Contents Introduction to the Solutions Business Manager Development Process... 1 The Path to

More information

Laboratorio di Programmazione. Prof. Marco Bertini

Laboratorio di Programmazione. Prof. Marco Bertini Laboratorio di Programmazione Prof. Marco Bertini marco.bertini@unifi.it http://www.micc.unifi.it/bertini/ Code versioning: techniques and tools Software versions All software has multiple versions: Each

More information

Continuous Integration using Cruise Control

Continuous Integration using Cruise Control Continuous Integration using Cruise Control Presented By Tom Grant PlatinumSolutions, Inc. Thursday, April 14 th, 2005 What is Integration? Definition: the act of combining into an integral whole In software

More information

devops with

devops with devops with docker @beshippable avi cavale co-founder & ceo @avinci avi@shippable.com continuous app delivery pipelines the most frequently asked question during an outage the most frequently asked question

More information

Managing Source Code With Subversion

Managing Source Code With Subversion Managing Source Code With Subversion February 3rd, 2005: phpmelb Source Code Management Source Code Management systems (SCMs) rock. Definitely the single most useful tool for a development team, ranking

More information

Perforce for Subversion Users

Perforce for Subversion Users Perforce for Subversion Users Perforce Guide This guide is designed to help Subversion users more quickly adopt Perforce version management. Use this guide to: Understand the main differences between Subversion

More information

Enterprise Architect. User Guide Series. Change Management

Enterprise Architect. User Guide Series. Change Management Enterprise Architect User Guide Series Change Management Managing change in a model? Sparx Systems Enterprise Architect has many tools to maintain data, such as Version Control, milestone Baselines, change

More information

Source Control: Perforce

Source Control: Perforce USER GUIDE MADCAP FLARE 2018 Source Control: Perforce Copyright 2018 MadCap Software. All rights reserved. Information in this document is subject to change without notice. The software described in this

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

Subversion Branching and Merging. Jan Skalický

Subversion Branching and Merging. Jan Skalický Subversion Branching and Merging Jan Skalický Changeset A collection of changes with a unique name The changes might include textual edits to file contents, modifications to tree structure, or tweaks to

More information

CS108, Stanford Handout #37. Source Control CVS

CS108, Stanford Handout #37. Source Control CVS CS108, Stanford Handout #37 Fall, 2008-09 Osvaldo Jiménez Source Control CVS Thanks to Nick Parlante for much of this handout Source Control Any modern software project of any size uses "source control"

More information

Moving Software Change Forwards, Backwards, and Sideways

Moving Software Change Forwards, Backwards, and Sideways Moving Software Change Forwards, Backwards, and Sideways Moving Change Forwards, Backwards, and Sideways Development groups and release engineers have begun to ask themselves why tools continue to rely

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

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

Dictionary Driven Exchange Content Assembly Blueprints

Dictionary Driven Exchange Content Assembly Blueprints Dictionary Driven Exchange Content Assembly Blueprints Concepts, Procedures and Techniques (CAM Content Assembly Mechanism Specification) Author: David RR Webber Chair OASIS CAM TC January, 2010 http://www.oasis-open.org/committees/cam

More information

Securing Design Source Inside a Design Repository

Securing Design Source Inside a Design Repository Securing Design Source Inside a Design Repository Old Content - see latest equivalent Modified by Jason Howie on 31-May-2017 Parent article: Board Design Release The best way of working from a known set

More information

JBoss Enterprise Middleware

JBoss Enterprise Middleware JBoss Enterprise Middleware Making software from the open source community ready for the enterprise DLT Solutions 2411 Dulles Corner Park, Suite 800 Herndon, VA 20171 Web: www.dlt.com Phone: 703-709-7172

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

Using Subversion with LeMANS and MONACO

Using Subversion with LeMANS and MONACO Using with LeMANS and MONACO Timothy R. Deschenes and Alexandre Martin Department of Aerospace Engineering, University of Michigan September 15, 2008 Outline 1 Why Use Version Control Provides one method

More information

Are you Really Helped by Upstream Kernel Code?

Are you Really Helped by Upstream Kernel Code? Are you Really Helped by Upstream Kernel Code? 1 HISAO MUNAKATA RENESAS SOLUTIONS CORP hisao.munakata.vt(at)renesas.com who am I Working for Renesas (semiconductor) 2 Over 15 years real embedded Linux

More information

Deploy Enhancements from Sandboxes

Deploy Enhancements from Sandboxes Deploy Enhancements from Sandboxes Salesforce, Spring 18 @salesforcedocs Last updated: April 13, 2018 Copyright 2000 2018 salesforce.com, inc. All rights reserved. Salesforce is a registered trademark

More information

Perforce in FreeBSD Development

Perforce in FreeBSD Development Perforce in FreeBSD Development Scott Long Revision: 48711 FreeBSD is a registered trademark of the FreeBSD Foundation. Many of the designations used by manufacturers and sellers to

More information

Revision Control. Software Engineering SS 2007

Revision Control. Software Engineering SS 2007 Revision Control Software Engineering SS 2007 Agenda Revision Control 1. Motivation 2. Overview 3. Tools 4. First Steps 5. Links Objectives - Use revision control system for collaboration Software Engineering,

More information

Building Microservices with the 12 Factor App Pattern

Building Microservices with the 12 Factor App Pattern Building Microservices with the 12 Factor App Pattern Context This documentation will help introduce Developers to implementing MICROSERVICES by applying the TWELVE- FACTOR PRINCIPLES, a set of best practices

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

Collaboration in Teams: Simulink Projects Demonstration

Collaboration in Teams: Simulink Projects Demonstration Collaboration in Teams: Simulink Projects Demonstration 김종헌차장 Senior Application Engineer MathWorks Korea 2011 The MathWorks, Inc. 1 Agenda Motivation 7 common technical challenges Next steps Q & A allen.kim@mathworks.com

More information

WinCvs Version 1.1. Users Guide. Don Harper

WinCvs Version 1.1. Users Guide. Don Harper WinCvs Version 1.1 Users Guide Don Harper June 1, 1999 Copyright 1999 Don Harper Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission

More information

Compartmentalized Continuous Integration. David Neto Devin Sundaram Senior MTS Senior MTS Altera Corp.

Compartmentalized Continuous Integration. David Neto Devin Sundaram Senior MTS Senior MTS Altera Corp. Compartmentalized Continuous Integration David Neto Devin Sundaram Senior MTS Senior MTS Altera Corp. THAT SPECIAL THING 2000 That special thing 2007 p4 vs. svn 2009 Collaboration++ THREE TAKEAWAYS Continuous

More information

SDN Community Contribution

SDN Community Contribution SDN Community Contribution (This is not an official SAP document.) Disclaimer & Liability Notice This document may discuss sample coding or other information that does not include SAP official interfaces

More information

USER GUIDE MADCAP FLARE SharePoint

USER GUIDE MADCAP FLARE SharePoint USER GUIDE MADCAP FLARE 2018 SharePoint Copyright 2018 MadCap Software. All rights reserved. Information in this document is subject to change without notice. The software described in this document is

More information

Continuous Integration using Docker & Jenkins

Continuous Integration using Docker & Jenkins Jenkins LinuxCon Europe 2014 October 13-15, 2014 Mattias Giese Solutions Architect giese@b1-systems.de - Linux/Open Source Consulting, Training, Support & Development Introducing B1 Systems founded in

More information

Treaps. 1 Binary Search Trees (BSTs) CSE341T/CSE549T 11/05/2014. Lecture 19

Treaps. 1 Binary Search Trees (BSTs) CSE341T/CSE549T 11/05/2014. Lecture 19 CSE34T/CSE549T /05/04 Lecture 9 Treaps Binary Search Trees (BSTs) Search trees are tree-based data structures that can be used to store and search for items that satisfy a total order. There are many types

More information

Introduction to Revision Control

Introduction to Revision Control Introduction to Revision Control Henrik Thostrup Jensen September 19 th 2007 Last updated: September 19, 2007 1 Todays Agenda Revision Control Why is it good for? What is it? Exercises I will show the

More information

SCM and Release Engineering: A consultant s hard-earned methodology revealed

SCM and Release Engineering: A consultant s hard-earned methodology revealed SCM and Release Engineering: A consultant s hard-earned methodology revealed Copyright 2001 D Sandy Currier All Rights Reserved Permission is granted for Perforce Software, Inc to copy and distribute 1

More information

BPM Installation & Configuration Guide

BPM Installation & Configuration Guide BPM Installation & Configuration Guide Product Documentation 19 October 2012 Issue 1.0 This edition applies to Version 8.0.5 of the Lagan ECM product suite. Make sure you are using the correct edition

More information

PhUSE Giuseppe Di Monaco, UCB BioSciences GmbH, Monheim, Germany

PhUSE Giuseppe Di Monaco, UCB BioSciences GmbH, Monheim, Germany PhUSE 2014 Paper PP01 Reengineering a Standard process from Single to Environment Macro Management Giuseppe Di Monaco, UCB BioSciences GmbH, Monheim, Germany ABSTRACT Statistical programming departments

More information

CSE 160: Introduction to Parallel Computation

CSE 160: Introduction to Parallel Computation CSE 160: Introduction to Parallel Computation Discussion Section SVN Tutorial Based primarily on material provided by Ingolf Krueger Contributions made by Jing Zheng, Yashodhan Karandikar, and Scott B.

More information

2/9/2013 LAB OUTLINE INTRODUCTION TO VCS WHY VERSION CONTROL SYSTEM(VCS)? II SENG 371 SOFTWARE EVOLUTION VERSION CONTROL SYSTEMS

2/9/2013 LAB OUTLINE INTRODUCTION TO VCS WHY VERSION CONTROL SYSTEM(VCS)? II SENG 371 SOFTWARE EVOLUTION VERSION CONTROL SYSTEMS SENG 371 SOFTWARE EVOLUTION LAB OUTLINE Introduction to Version Control Systems VERSION CONTROL SYSTEMS Subversion Git and Github 1 Prepared by Pratik Jain 2 INTRODUCTION TO VCS A version control system

More information

Team-Based Collaboration in Simulink Chris Fillyaw Application Engineer Detroit, MI

Team-Based Collaboration in Simulink Chris Fillyaw Application Engineer Detroit, MI Team-Based Collaboration in Simulink Chris Fillyaw Application Engineer Detroit, MI 2012 The MathWorks, Inc. Development of a complex system Agenda Team-based workflow considerations Reproducing the design

More information

Evolving Database Design and Architecture Patterns and Practices

Evolving Database Design and Architecture Patterns and Practices Evolving Database Design and Architecture Patterns and Practices Pramod Sadalage ThoughtWorks Inc. @pramodsadalage 1 Patterns of Database Changes 2 Patterns of Database Changes Architecture 2 Patterns

More information

EnterpriseLink and LDAP

EnterpriseLink and LDAP Case Requirement A client has an EnterpriseLink application and wishes to utilize their Linux LDAP server to validate Users against, then use the EnterpriseLink feature of pooled logons to the mainframe.

More information

Cognition Cockpit. Version 5.1 Release Notes. June 20, 2008

Cognition Cockpit. Version 5.1 Release Notes. June 20, 2008 Cognition Cockpit Version 5.1 Release Notes June 20, 2008 Copyright Cognition Corporation 2008 This document is an internal reference specification that is the sole property of Cognition Corporation and

More information

Handout 4: Version Control Reference

Handout 4: Version Control Reference CSCI 2600 Principles of Software Handout 4: Version Control Reference Introduction SVN (Subversion) provides the following functionality: It allows multiple users to edit the same files independently,

More information

LEVERAGING VISUAL STUDIO TEAM SYSTEM 2008 Course LTS08: Five days; Instructor-Led Course Syllabus

LEVERAGING VISUAL STUDIO TEAM SYSTEM 2008 Course LTS08: Five days; Instructor-Led Course Syllabus LEVERAGING VISUAL STUDIO TEAM SYSTEM 2008 Course LTS08: Five days; Instructor-Led Course Syllabus INTRODUCTION This five-day, instructor-led course provides students with the knowledge and skills to effectively

More information

OCTOBER 2017 ORACLE PRIMAVERA P6 USING THE P6 STATUS FIELD TO MANAGE PROJECTS

OCTOBER 2017 ORACLE PRIMAVERA P6 USING THE P6 STATUS FIELD TO MANAGE PROJECTS OCTOBER 2017 ORACLE PRIMAVERA P6 USING THE P6 STATUS FIELD TO MANAGE PROJECTS Overview There is a P6 data field called project status that can be used to manage, filter and set parameters for graphing

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