version control 101 – the simcorp way
Post on 06-Jan-2016
68 Views
Preview:
DESCRIPTION
TRANSCRIPT
Version Control 101 – The SimCorp Way
Dyalog User Conference 2007
Lars Stampe Villadsen, SimCorp A/S (Denmark)
2
Agenda
• Company presentation (short )• Low level parts• Implementation• Show some code
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.
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
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
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.
7
The low level parts cont.
We need version control:
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
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)
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
11
Shipped version
How it is implemented (infrastructure)
4.0
4.1
4.2
Release Test
12
How it is implemented (infrastructure) cont.
Release test and Shipped version periods
progFilesDir
v237 v238 v238.1.1
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
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
15
Show some code…
Enough Said…
Lets look at some CODE.
top related