Directions EMEA Community for Dynamics NAV partners.

Slides:



Advertisements
Similar presentations
Sy config. SY Non-Student machines –SYTS Team system –SY01 Sql Server Student machines –SY02 –SY03 –SY04 –SY05 –SY06 –SY07 –SY08.
Advertisements

CS 501 : An Introduction to SCM & GForge An Introduction to SCM & GForge Lin Guo
Low level CASE: Source Code Management. Source Code Management  Also known as Configuration Management  Source Code Managers are tools that: –Archive.
1 Copyright © 2014 Tata Consultancy Services Limited Source Code Management using Rational Team Concert IBM Rational, Alliance & Technology Unit 2 July.
BizTalk Deployment using Visual Studio Release Management
Directions EMEA Community for Dynamics NAV partners
Source Control Repositories for Enabling Team Working Svetlin Nakov Telerik Corporation
Team Foundation Server Lothar Wieske Lifecycle Management Technology Specialist Microsoft Deutschland GmbH.
Patterns & practices Symposium 2013 Introducing Git version control into your team Mark
Source Control with Team Foundation Server Martin Woodward Teamprise.
Visual Studio 2005 Team System: Enterprise Class Source Control & Work Item Tracking Ajay Sudan Microsoft Corporation
CONTINUOUS INTEGRATION, DELIVERY & DEPLOYMENT ONE CLICK DELIVERY.
Version control Using Git 1Version control, using Git.
Programming in Teams And how to manage your code.
tinyurl.com/ProTFS2012.
tinyurl.com/ProTFS2012.
Sumedha Rubasinghe October,2009 Introduction to Programming Tools.
Source Control Repositories for Team Collaboration: SVN, TFS, Git.
GIT An introduction to GIT Source Control. What is GIT (1 of 2) ▪ “Git is a free and open source distributed version control system designed to handle.
Source Code Control CSE 3902 Matt Boggus. Source code control options for CSE 3902 Must use source code control that is integrated with Visual Studio.
Version control Using Git Version control, using Git1.
Source Control Primer Patrick Cozzi University of Pennsylvania CIS Spring 2012.
Top Ten Tips for Team Foundation Server Martin Woodward Teamprise.
Wordpress with Mina Automated Deployment Solution Jonathan Gravato DIG 4104c.
Anubha Gupta | Software Engineer Visual Studio Online Microsoft Corp. Visual Studio Enterprise Leveraging modern tools to streamline Build and Release.
Isolated Database Environments Kevin Howell February 2014.
Sofia Event Center May 2014 Martin Kulov Git For TFS Developers.
1 MSTE Visual SourceSafe For more information, see:
BODY From Source Code Management to Daily Build Soren Klemmensen, Kamil Sacek & Luc van Vugt
@mariorod1 source control models.
Infrastructure as code. “Enable the reconstruction of the business from nothing but a source code repository, an application data backup, and bare metal.
Team Foundation Server 2010 Introductory presentation.
Real World SQL Server Data Tools Benjamin
Build and Deployment Process Understand NCI’s DevOps and continuous integration requirements Understand NCI’s build and distribution requirements.
Step-by-Step Migration and Adoption Mark Michaelis Architect, Author, and Trainer Eric Lee Microsoft Product Manager Visual Studio 2005 Team Foundation.
To Git or Not to Git for Enterprise Development Benjamin Edward Thomson
TEAM FOUNDATION VERSION CONTROL AN OVERVIEW AND WALKTHROUGH By: Michael Mallar.
YOUR LOGO Phase 2 International Providing critical business software solutions at affordable prices.
Introduction to Git - Chirag Dani. Objectives Basics of Git Understanding different “Mindset of Git” Demo - Git with Visual Studio.
Managing Database objects in Visual Studio and Team Foundation Server Presented by Sean P SQL Saturday - Phoenix 2016.
Benjamin Day Get Good at DevOps: Feature Flag Deployments with ASP.NET, WebAPI, & JavaScript.
Reports ForNAV NAVUG, May 9-10, 2016 Stuttgart, Germany.
Source Control Repositories for Enabling Team Working Doncho Minkov Telerik Corporation
Rome 31 January -1 February Team Development in CRM Shan McArthur CEO / CTO Adxstudio, CRM MVP.
1 Ivan Marsic Rutgers University LECTURE 2: Software Configuration Management.
Cumulative Updates and Future Versions How New Releases Will Work in the Future Microsoft Dynamics NAV.
Directions EMEA Community for Dynamics NAV partners.
Tools and technology usage in PFMS application lifecycle management process LEPL Financial-Analytical Service, Ministry of Finance October, 2015 Dimitri.
Version Control Systems
Version Control for PL/SQL
Source Code Control For CSE 3902 By: Matt Boggus.
How to be a SharePoint Developer
I don’t git it! Source control management deep dive with tfvc and git
Version control, using Git
Version Control Systems
Introduction to Team Foundation Server 2010
Version Control System
Source Code Management
Visual Studio 2005 “Personalized productivity”
Get Good at DevOps: Feature Flag Deployments with ASP
DAT381 Team Development with SQL Server 2005
Paul S Waters Getting Git.
Tips & Tricks Knowing the Web Client.
Patrick Cozzi University of Pennsylvania CIS Fall 2012
Hop Aboard the Git Train – Transitioning from TFVC
Keeping your SQL Code safe
Office 365 Development July 2014.
Mark Quirk Head of Technology Developer & Platform Group
05 | Testers’ Role in the DevOps World
Git in Visual Studio.
Presentation transcript:

Directions EMEA Community for Dynamics NAV partners

Source Code Management for Dynamics NAV in 4 Examples Soren Klemmensen, Kamil Sacek, Luc van Vugt & Eric Wauters

Connected InNAVation! Mannheim, Germany, October 5-7, Introduction

4 Shades of Gray Soren Klemmensen (CA) Kamil Sacek (CZ) Luc van Vugt (NL) Eric Wauters (BE)

Agenda Why Source Code Management (SCM)? How SCM? 4 Shades of Gray (4 examples)

Connected InNAVation! Mannheim, Germany, October 5-7, Why SCM?

Requirement Code change Author Change Flow History Why was change done? What does change contain? Who did change? Where did change 'go'? What changes have been applied?

Why SCM? - Benefits Secured code History at hand Code Review code improvement TFS/GIT used by many lots of built-in and plug-in tooling API

How SCM? 4 Shades of Gray

Connected InNAVation! Mannheim, Germany, October 5-7, Shades of Gray Luc van Vugt

Keep It Simple Team Foundation Server holds all source, the truth including requirements Manual ex-/import of.txt objects from/to databases

Environment & Tools End User #1 School Book Reseller in The Netherlands DTAP setup Development, Test, Acceptance, Production Branch & Merge Strategy to propagate approved code changes Team Foundation Server 2012 Visual Studio 2012/2013/2015 NAV 2009 R2

Environment - Developer Developer Database Team Foundation Server Workspace Managed by Visual Studio Update Workspace Update/Sync Database with Workspace Update Workspace Check in Code Local or Virtual Machine Developer Isolation

Test Database Environment - Test Team Foundation Server Workspace Managed by Visual Studio Update Workspace Update/Sync Database with Workspace Update Workspace Check in Code Local or Virtual Machine

Acceptance Database Environment - Acceptance Team Foundation Server Workspace Managed by Visual Studio Update/Sync Database with Workspace Update Workspace Local or Virtual Machine

Production Database Environment - Production Team Foundation Server Workspace Managed by Visual Studio Update Workspace Local or Virtual Machine Build Database.fob

DTAP with Multiple Developers/Projects RELEASE 2.2 (PRODUCTION RELEASE 2.1 (PRODUCTION) MAIN (ACCEPTANCE) Branch DEV 1 RI Branch TEST (BETA) Branch DEV 2 RI FI RI Hotfix FI

DTAP with Multiple Developers/Projects RELEASE 2.2 (PRODUCTION RELEASE 2.1 (PRODUCTION) MAIN (ACCEPTANCE) Branch DEV 1 RI Branch TEST (BETA) Branch DEV 2 RI FI RI Hotfix FI + - Releases Release2.1 (Production) + Release2.2 (Production) Dev Test (Beta) Source Dev-1 Main (Acceptance) Source Dev-2 $$

DTAP with Multiple Developers/Projects + - Releases Release2.1 (Production) + Release2.2 (Production) Dev Test (Beta) Source Dev-1 Main (Acceptance) Source Dev-2 $$

My Benefits Release per changeset possible 1 changeset per requirement Rollback per changeset Developer isolation DTAP at hand

Connected InNAVation! Mannheim, Germany, October 5-7, Shades of Gray Eric Wauters

Keep It Simple Team Foundation Server holds all: Source Source versions (object versions) ReVision is going to manage text import and export (in background) Minimum change in DEV Experience, with the power of Source Code Management.

Environment & Tools Microsoft Dynamics NAV iFacto ReVision Team Foundation Server Mantis

Team Foundation Server DEV Database Terminal ServerDEV ServerTFS Server DEV Database iFacto ReVision Dynamics NAV Classic Client DEV Database DEV Database DEV Database Check Out/In Objects Rollback DB Build Mgt Compare / Edit / Compile Object History … Environment - DEV Mantis Link Changesets to Issues in Mantis

Check Out Press Ctrl+Alt+O

Check In Press Ctrl+Alt+I

Object History Press Ctrl+Alt+H

Object History / Compare Select 2 changesets and right mouse click / Compare

Object History / Compare

Mantis Changesets become automagically visible in Mantis Example:

Team Foundation Server DEV Database Terminal ServerDEV ServerTFS Server DEV Database iFacto ReVision Dynamics NAV Classic Client DEV Database DEV Database DEV Database Check Out/In Objects Rollback DB Build Mgt Compare / Edit / Compile Object History … Environment - DEV Mantis Link Changesets to Issues in Mantis

Team Foundation Server DEV Database Terminal ServerDEV ServerTFS Server iFacto ReVision Dynamics NAV Classic Client Environment - Build Mantis Build Server Compile all objects Fetch changes Report to developer

Team Foundation Server DEV Database Terminal ServerDEV ServerTFS Server iFacto ReVision Dynamics NAV Classic Client Environment - Test Mantis Build Server Test Server Run all tests Fetch changes Report to developer

My Benefits History REALLY at hand (in the DEV Client) Not necessary to maintain multiple isolated environments No need to merge on every check-in Possible to enforce the methodology Central Development DB Object Table Triggers – you need to check out before development Managed by ReVision

Handicaps No Branches In our environment, our Branches are different databases with its own repository. ReVision makes it easy for us to compare these different databases. Though, there is no defined relationship between any of the “branches” Not possible to work with more then one developer on 1 object at the same time Which has got a big advantage as well: not necessary to merge on every check in Mantis We should move to workitems

Connected InNAVation! Mannheim, Germany, October 5-7, Shades of Gray Kamil Sacek

Keep It Simple GIT holds all source, the truth Most things ‘on click’ Automatization through TFS Build

Environment & Tools GIT + GITExtension Home-brewed Version Control in NAV NAVERTICA Helpdesk PowerShell TFS 2013/2015 NAV 2013/2015/2016

How it works? Central development Isolated development Local GIT repository Developer Database Update repo & Commit Update/Sync Database with repo Pull Push Developer Isolation GIT server repository (TFS, GITHub …) Build Check-in (Update repo) Central Development Database Build Database (tests) Test/Build results Build (Update DB)

Demo GITExtensions + PowerShell

My Benefits Easy to use system Flexible system Both development isolation and centralized development Release per commit possible Easy rollback

Connected InNAVation! Mannheim, Germany, October 5-7, Shades of Gray Soren Klemmensen

Keep It Simple All developers use their own workspace PowerShell Scripts to export and put individual objects into their own workspace Check-in is manual Scripts to build new application Import and compiling a new version can be automated with the VS Build Engine

Environment & Tools Custom and Vertical development Visual Studio Online Visual Studio 2013/2015 NAV 2009 R2, 2013, 2013 R2, 2015 & 2016 PowerShell (and vb script for old versions)

Environment - Developer Developer Database Visual Studio Online Workspace Managed by Visual Studio Update Workspace Update/Sync Database with Workspace Update Workspace Check in Code Local or Virtual Machine Developer Isolation Code Review

Environment - Build Developer Database Visual Studio Online Workspace Managed by Visual Studio Update/Sync Database with Workspace Update Workspace Local or Virtual Machine Developer Isolation Clean Standard DB Build FOB

My Benefits ChangeSet with multiple objects Strong tools to improve the Dev team Developer isolation No dependencies on NAV databases The Source Code is the ONLY TRUTH Branching and merging Works for all development (not just NAV)

My Benefits Nothing in NAV. Generic.

Connected InNAVation! Mannheim, Germany, October 5-7, Shades of Gray Benefits and Handicaps

Benefits and Handicaps

Join Us !