version control 101 – the simcorp way

15
Version Control 101 – The SimCorp Way Dyalog User Conference 2007 Lars Stampe Villadsen, SimCorp A/S (Denmark)

Upload: mariel

Post on 06-Jan-2016

67 views

Category:

Documents


3 download

DESCRIPTION

Version Control 101 – The SimCorp Way. Dyalog User Conference 2007 Lars Stampe Villadsen, SimCorp A/S (Denmark). Agenda. Company presentation (short ) Low level parts Implementation Show some code. Business Idea. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Version Control 101 – The SimCorp Way

Version Control 101 – The SimCorp Way

Dyalog User Conference 2007

Lars Stampe Villadsen, SimCorp A/S (Denmark)

Page 2: Version Control 101 – The SimCorp Way

2

Agenda

• Company presentation (short )• Low level parts• Implementation• Show some code

Page 3: Version Control 101 – The SimCorp Way

3

Business Idea

SimCorp offers integrated software solutions to financial service providers supporting their activities worldwide on the financial markets. Our solutions are firmly based on our high quality standards and our insight into financial theory, methods and practices.

Page 4: Version Control 101 – The SimCorp Way

4

10 Years Revenue Development

0

20

40

60

80

100

120

140

160

1996 1998 2000 2002 2004 2006

EURm

2007 SimCorp sells IT2

2003 SimCorp Dimension

2000 TMS2000 full STP product

1999 IT2 acquired to substitute TRACTS

1998 TMS2000 most important product

1997 Sale of Actuarial department

Official launch of TMS2000

1996 First TMS2000 implementations

1995 TMS2000 development intensified

Getting Focused

1991 Risk management modules

1990 Financial analytics and library

1985 Building society systems

Money market systems

Pricing models for derivatives

Treasury systems

Sim

Co

rp D

imen

sio

n e

raC

ust

om

ised

so

ftw

are

SimCorp History

Page 5: Version Control 101 – The SimCorp Way

5

The low level parts

SimCorp Dimension consists of (Version 4.2):

37.000+ APL functions

150.000+ APL structures Defining tables, forms, menus ect.

2.200+ files (exe’s / dll’s / reports / manuals / 2 WS…)

Is developed by (Version 4.2):

170+ Developers

Page 6: Version Control 101 – The SimCorp Way

6

The low level parts cont.

Contents:

– We need to know what an application version consists off – i.e. identify the functions (easiest), the database tables, the forms, the menu’s the WS, the exe’s, the dll’s and alike.

Page 7: Version Control 101 – The SimCorp Way

7

The low level parts cont.

We need version control:

Page 8: Version Control 101 – The SimCorp Way

8

The low level parts cont.

Each of the 180.000+ elements (or objects as we call them) is version controlled separately i.e. they are assigned a version number.

The SimCorp Dimension repository holds more than 1.800.000 deltas.

Total deltas y = 18864x - 2E+07

1000000

1100000

1200000

1300000

1400000

1500000

1600000

1700000

1800000

1900000

jan-

05

mar

-05

maj

-05

jul-0

5

sep-

05

nov-

05

jan-

06

mar

-06

maj

-06

jul-0

6

sep-

06

nov-

06

jan-

07

mar

-07

maj

-07

jul-0

7

sep-

07

Page 9: Version Control 101 – The SimCorp Way

9

The low level parts cont.

Each version of an element (delta) must be assigned to an application version.

A version of an element can be assigned to more than one application version.

(Each version must be assigned to a change request registered in our Change Management System)

Page 10: Version Control 101 – The SimCorp Way

10

The low level parts cont.

0 convChk_Appl 70.1.2 PH 20041214.439132 227654 0 3.6 SP1 4886 2 Check before

Object type

Object ID/Name

Object version

Consultant

timestamp

Incident no.

Delete mark

Deduced program version

Patch no

statusIncident header

Object name

Page 11: Version Control 101 – The SimCorp Way

11

Shipped version

How it is implemented (infrastructure)

4.0

4.1

4.2

Release Test

Page 12: Version Control 101 – The SimCorp Way

12

How it is implemented (infrastructure) cont.

Release test and Shipped version periods

progFilesDir

v237 v238 v238.1.1

Page 13: Version Control 101 – The SimCorp Way

13

How it is implemented (infrastructure) cont.

Approved (1)

Released (2)

Registered (-9)All develop and CR tasks completed (and no dependencies)

Ready for test (-1)All test tasks completed (and no dependencies)

All quality control jobs have run without findings (both test and technical)

Every 10 min

Once a Day

Mornings when succesfull

Page 14: Version Control 101 – The SimCorp Way

14

How it is implemented (infrastructure) cont.

Start of changes

Repository/Patch Version

Test and Public Versions

Approved Versions

Released to customers

Registered Ready for test Approved Released

Page 15: Version Control 101 – The SimCorp Way

15

Show some code…

Enough Said…

Lets look at some CODE.