SlideShare a Scribd company logo
1 of 48
Using the Corporate Geographic Data
Model with Subversion
Debbie Wilson
Senior Geographic Information Architect
debbie.wilson@ordnancesurvey.co.uk
16th January 2014
Version Control – Configuration Management
• Version control is the management of changes to resources.
• OS Information Models are concurrently developed by a diverse
team
• Need for formal management of change that supports:
• Concurrent editing (on-site/off-site environments)
• Track changes
• Roll-back changes
• Create snapshots of individual model components (e.g.
releases or baselines)
• Subversion is an open-source software for version control
• Alternates are GitHub but only Subversion is supported by
Enterprise Architect
Version Controlling – Configuration Management
Further Reading:
• Several internal resources for version control developed by IS Software
Configuration Management (SCM):
• Subversion Quick Reference Guide
IS Subversion Training
Using the CGDM with Subversion
There are 4 steps required to set up the Corporate Geographic
Data Model for use with Subversion:
1. Install Subversion Clients (complete)
2. Checkout local version of UML repositories
3. Create a local EAP file and configure version control
settings
4. Get Data Model package(s)
5. Editing version controlled packages
6. Creating version controlled packages
Step 1: Install Subversion Clients
• Two clients are required for using and managing version
controlled resources within Subversion:
• Collabnet Subversion Command Line Client v1.7
• Tortoise Subversion client v1.7
NOTE: The latest version of both Subversion clients is v1.8. However,
this does not currently work with the public INSPIRE UML repository. As it
forces a requirement to have user credentials which is not required in
v1.7.
Accessing the repository without SVN client
• You can access as a read-only user without dedicated SVN
clients
• All you need is a web browser and user credentials
http://svn/corp_geo_data_model/
What is contained within the repository?
• The Corporate Geographic Data Model repository has the
standard subversion repository structure:
Subversion directories
• Trunk
• This is directory containing the resources that are used for
the main line of development
• Tags
• This directory contains folders that represent snapshots of
the resources that have been tagged as notable revisions
such as releases
• Branches
• Branches are used when you are asked to “tweak” the
resource to meet the requirements of a specific user
• But their requirements are not needed as part of the core
resource
Contents of the CGDM Trunk
Information Models:
• EA XMI files containing model
elements
• Separated into 3 directories:
• Products
• Systems: MRDP, GDMS etc.
• Services: (future)
• Contains set of pre-defined model
structures
Contents of the CGDM Trunk
Resources
• Contains supporting tools for modelling
and creating schemas
• UML Profiles
• Document Templates
• MDA Transformations
• ShapeChange
Contents of the CGDM Trunk
schemas
• This directory shall contain the various
implementation schemas for products,
systems, services:
• GML schemas
• Ontologies
• Dictionaries/vocabularies
• DDLs
Contents of the CGDM Trunk
The CGDM is not limited to these resources. Can been
extended. We all have full right privileges so anyone can
create new content.
Step 2: Checkout local version of repository
• The Corporate Geographic Data Model contains only the UML
models created and managed by Ordnance Survey
• But Information models are built upon international standards
developed by ISO TC211, OGC and INSPIRE Directive
• Therefore several UML repositories must be checked out to use
the Corporate Geographic Data Model:
1. Corporate Geographic Data Model:
http://svn/corp_geo_data_model/
2. ISO TC211: https://inspire-twg.jrc.ec.europa.eu/svn/iso or
https://www.seegrid.csiro.au/mirrors/iso-harmonized-model/
3. INSPIRE: https://inspire-twg.jrc.ec.europa.eu/svn/inspire-
model/branches/public
Step 2: Checkout Corporate Geographic Data
Model
1. Create a directory to contain the UML repositories (e.g.
C:UML)
2. Open a cmd dialog window and set directory to be your UML
repository
3. Use the subversion command line svn checkout to download a
local copy of the Corporate Geographic Data Model
• You will be required to log in using your windows credentials
NOTE: this should only be required once
Step 2: Checkout Corporate Geographic Data
Model
Step 2: Checkout INSPIRE and ISO TC211
repositories
INSPIRE repository
• You may get this message
• Accept the certificate permanently by typing the 'p' and press
return.
Step 2: Checkout ISO TC 211and INSPIRE
repositories
ISO TC 211 UML repository
• Can check out ISO repository using Tortoise SVN client rather
than the command line client as don’t need to edit it or accept
any certificates
• Within your UML repository directory in Windows Explorer right-
click and select SVN Checkout…
TortoiseSVN is not a
program you access
from Start Menu. It’s
added a set of SVN tools
to Windows Explorer
Step 2: Checkout ISO TC 211and INSPIRE
repositories
• In Checkout dialog type URL for ISO TC211 UML Repository
(can choose either INSPIRE or SEEGrid ISO mirror both same)
• Name the destination directory iso
Step 3: Create a local EAP file and configure
version control settings
• We will no longer be using a single corporate EAP file
• Instead each of us shall use a local enterprise architect file
which shall either contain:
• Full Corporate Geographic Data Model
• Subset view of the Corporate Geographic Data Model (e.g.
Products only or MRDP)
• User defined project made up of one or more packages from
model
What the benefits of moving to SVN?
1. Version controlled
• Can track changes – know who made which change
• Fully maintained history of all changes
• Roll back any changes that may been made in error
• Improve process for managing development/release – no
longer maintain archive packages in model
2. Can Work offline/off-site more effectively
• Check out packages to work on when offline
• On VPN - EA accesses local repository so responds as if in
office
3. Integrates with other tools
• JIRA/Fisheye – trace changes to back tasks/bugs
• GitHub – supports collaboration with Subversion so can
integrate with IS better in future
Step 3: Create a local EAP file and configure
version control settings
1. Open Enterprise Architect and create a new project and save
locally in preferred directory
2. Cancel Model Wizard dialog as importing existing models from
repository
3. Right-click on the Root Model in Project Browser, select
Package Control  Version Control Settings
Step 3: Configure version control settings
• In the Version Control Settings dialog need to configure
subversion settings for the three UML repositories:
• Corporate Geographic Data Model
• ISO TC211
• INSPIRE
Insert protective marking - see QSP 032
Step 3: Configure version control settings
1. Tick This model is private
2. In configuration details assign a unique id
for the Corporate Geographic Data Model:
CGDM
3. Select Subversion as type
4. Set working copy path to trunk directory of
checked out repository: e.g.
C:UMLcorp_geo_data_modeltrunk
5. Set Subversion Exe Path to location of the
Collabnet Subversion Client: e.g.
C:Program FilesCollabNetSubversion
Clientsvn.exe
6. Save
NOTE: this only needs to be set once it will
now be remembered.
Step 3: Configure version control settings
Repeat for ISO TC211 and INSPIRE
1. Select New
2. In configuration details assign the unique
id: isotc211
3. Set type as Subversion
4. Set working copy path to trunk directory of
checked out repository: e.g. C:UMLiso
5. Save
Step 3: Configure version control settings
1. Select New
2. In configuration details assign the unique
id: inspire-model
3. Set type as Subversion
4. Set working copy path to trunk directory of
checked out repository: e.g.
C:UMLpublicapprovedlatest
5. Save. You are now accessing models from
3 UML repositories
6. Close
Use this approach to add more
repositories as required if working on
systems (e.g. IS/1Spatial for MRDP)
Step 4: Get Package and import models
• Once the version control settings are configured you can import
either:
1. Pre-defined model (focus of this section)
2. Set up your own model and import individual version
controlled models from the Corporate Geographic Data
Model, Foundation Schema or other external schema as
required
Step 4: Import Pre-Defined Model
• Within the Corporate Geographic Data Model several pre-
defined models have been configured:
1. Corporate Geographic Data Model:
Provides a consolidated view of all models developed
within OS for products, systems and services
2. Products:
Contains the logical and implementation models for
products
3. Systems:
Contains |the various models (data models, business rules,
requirements, use cases, data flows) for data maintenance
and productions systems
Step 4: Import Pre-Defined Model
• Right click on the root Model package and select Package
Control  Get Package
Step 4: Get Package and import models
• In the Get Shared File dialog select CGDM from the Select a
Version Control Configuration drop down list:
Step 4: Get Package and import models
• Select one of the root model packages:
Step 4: Get Package and import models
• Chose whether to import model as Root Model or under
selected package
• As we are importing a pre-defined model structure select Yes
NOTE: If you are creating a user-defined model structure you would
select No - this will give you the option to move packages around as
you build the structure
Step 4: Get Package and import models
• Final Step is to import all models
• Right-click on a package, select Package Control  Get all
Latest  Import changed files only
NOTE: This will take a
long time the first time –
good time for a brew!
Corporate Geographic Data Model
• You have successfully set up
Enterprise Architect to work
with version controlled
models
Importing INSPIRE/ISO TC211 models
Issue 1: Inconsistent use of Foundation Models
• In past we have manually imported snapshots of the INSPIRE
and ISO models
• While these models are pretty stable they do change
• Required us to regularly manually check for changes and then
re-import models
• Only parts of the ISO TC211 data modelling packages imported
• Some aspects of the ISO TC211 models may have been
deleted – THIS IS A BIG NO NO!
• INSPIRE models are imported on a package by package basis
as required. GCM containing common models not included!
Importing INSPIRE/ISO TC211 models
Issue 2: Maintenance of EA identifiers
• Can run into issues when sharing models that use manual
imports of foundation models:
• Foundation Model elements may have different EA
identifiers so “disappear” from the model
• By using formal models within repository ensure that same EA
identifiers are used
• Ensure our models can be integrated with INSPIRE/OGC/ISO
models by users
Now – we shall all use the same Foundation
Schema to ensure modelling consistency
Editing version controlled packages
• Lots of packages now have lock icons
• Not allowed to make any changes to any element in the
package
• To make edits to a model you need to checkout the package
from the version control repository
Right-click on package to edit  Package Control  Check Out
Editing version controlled packages
• When you check out a package, EA checks against the central
repository whether the version is the model is the latest
• If it is the latest version select Accept current package
NOTE: EA only supports exclusive check out
• i.e. package is locked to one user only
• Can only edit package once its been checked back in
Editing version controlled packages
• Select a package to edit – make sure its not the same package
as someone else
• Test that you can move items on diagram and add/edit classes
Editing version controlled packages
• To check in edits, Right-click on the package  Package
Control  Check In
• Before the check-in is committed you will be prompted to add a
Check-in comment
• This should be short description
of edits made (+ JIRA task id)
Editing version controlled packages
• By adding comments it makes it easier to understand what
changes occurred by whom and when
• Allows traceability when viewing history
Insert protective marking - see QSP 032
Viewing history
• You can view history of changes to a package either within EA
or using TortoiseSVN
• To view history in EA, select package  Right click  Package
Control  File History
Viewing history
• You can view history of changes to a package either within EA
or using TortoiseSVN
• To view history in EA, select package  Right click  Package
Control  File History
Viewing history
• Using TortoiseSVN, select xmi representing package  Right-
click  TortoiseSVN  Show log
Editing version controlled packages
• There may be times when you check out a package but make
no edits or do not want the edits to be committed
• EA allows you to Undo Check Out
• Undo Check Out for the package you checked out earlier
Adding packages to Subversion
• We will need to continually add new model packages to
Subversion
• Restructure large models for easier management
• May need to move packages around
• Create new models
• Thankfully this is relatively easy and involves 3 steps:
1. Export package as XMI 1.1 and save to respective
directory in your local SVN directory
2. Add the file to the central repository and commit
3. Delete exported package from model and Get Package
from repository
Adding packages to Subversion
Step 1: Export Package as XMI 1.1 and save to SVN
• Right-click on package  Select Import/Export  Export to
Package to XML…
• Export as XMI 1.1
Adding packages to Subversion
Step 2: Add file to central repository and commit
• Navigate to output directory in Window Explorer
• Select exported XMI file  Right-click  TortoiseSVN Add
• Commit file to central SVN Repository
Adding packages to Subversion
Step 3: Replace original package with version controlled package
• Delete the exported package from the Project Browser
NOTE: If the package is contained within another package may
need to check-out parent package, if version controlled
• Right-click on parent package  Package Control  Get
Package
• Select the CGDM
• Select the exported XMI
file from list
• Check in parent package

More Related Content

What's hot

Oracle EPM - Life cycle management
Oracle EPM - Life cycle managementOracle EPM - Life cycle management
Oracle EPM - Life cycle managementnking821
 
Win ce 6.0 development (1)
Win ce 6.0 development (1)Win ce 6.0 development (1)
Win ce 6.0 development (1)Rajshree Daware
 
R12 d49656 gc10-apps dba 02
R12 d49656 gc10-apps dba 02R12 d49656 gc10-apps dba 02
R12 d49656 gc10-apps dba 02zeesniper
 
SFDC Other Platform Features
SFDC Other Platform FeaturesSFDC Other Platform Features
SFDC Other Platform FeaturesSujit Kumar
 
Rational Team Concert source control for dummies
Rational Team Concert source control for dummiesRational Team Concert source control for dummies
Rational Team Concert source control for dummiesWinton Winton
 
Hyperion LCM Utility
Hyperion LCM UtilityHyperion LCM Utility
Hyperion LCM UtilityAlithya
 
R12 d49656 gc10-apps dba 08
R12 d49656 gc10-apps dba 08R12 d49656 gc10-apps dba 08
R12 d49656 gc10-apps dba 08zeesniper
 
Dynamics of Leading Legacy Databases
Dynamics of Leading Legacy DatabasesDynamics of Leading Legacy Databases
Dynamics of Leading Legacy DatabasesCognizant
 
Ch25-Software Engineering 9
Ch25-Software Engineering 9Ch25-Software Engineering 9
Ch25-Software Engineering 9Ian Sommerville
 
R12 d49656 gc10-apps dba 03
R12 d49656 gc10-apps dba 03R12 d49656 gc10-apps dba 03
R12 d49656 gc10-apps dba 03zeesniper
 
TechMentor 2012: Deploying Windows Server 2012 Server Core
TechMentor 2012: Deploying Windows Server 2012 Server CoreTechMentor 2012: Deploying Windows Server 2012 Server Core
TechMentor 2012: Deploying Windows Server 2012 Server CoreHarold Wong
 
MCSA 70-410 1 -installing windows server 2012 R2
MCSA 70-410  1 -installing windows server 2012 R2MCSA 70-410  1 -installing windows server 2012 R2
MCSA 70-410 1 -installing windows server 2012 R2Tarek Amer
 
Microsoft Offical Course 20410C_00
Microsoft Offical Course 20410C_00Microsoft Offical Course 20410C_00
Microsoft Offical Course 20410C_00gameaxt
 

What's hot (17)

Module 4: Working with Builds
Module 4: Working with BuildsModule 4: Working with Builds
Module 4: Working with Builds
 
Oracle EPM - Life cycle management
Oracle EPM - Life cycle managementOracle EPM - Life cycle management
Oracle EPM - Life cycle management
 
Win ce 6.0 development (1)
Win ce 6.0 development (1)Win ce 6.0 development (1)
Win ce 6.0 development (1)
 
R12 d49656 gc10-apps dba 02
R12 d49656 gc10-apps dba 02R12 d49656 gc10-apps dba 02
R12 d49656 gc10-apps dba 02
 
SFDC Other Platform Features
SFDC Other Platform FeaturesSFDC Other Platform Features
SFDC Other Platform Features
 
Rational Team Concert source control for dummies
Rational Team Concert source control for dummiesRational Team Concert source control for dummies
Rational Team Concert source control for dummies
 
Hyperion LCM Utility
Hyperion LCM UtilityHyperion LCM Utility
Hyperion LCM Utility
 
R12 d49656 gc10-apps dba 08
R12 d49656 gc10-apps dba 08R12 d49656 gc10-apps dba 08
R12 d49656 gc10-apps dba 08
 
Hfm lcm
Hfm lcmHfm lcm
Hfm lcm
 
Dynamics of Leading Legacy Databases
Dynamics of Leading Legacy DatabasesDynamics of Leading Legacy Databases
Dynamics of Leading Legacy Databases
 
Ch25-Software Engineering 9
Ch25-Software Engineering 9Ch25-Software Engineering 9
Ch25-Software Engineering 9
 
R12 d49656 gc10-apps dba 03
R12 d49656 gc10-apps dba 03R12 d49656 gc10-apps dba 03
R12 d49656 gc10-apps dba 03
 
WIndows Server 2012
WIndows Server 2012WIndows Server 2012
WIndows Server 2012
 
TechMentor 2012: Deploying Windows Server 2012 Server Core
TechMentor 2012: Deploying Windows Server 2012 Server CoreTechMentor 2012: Deploying Windows Server 2012 Server Core
TechMentor 2012: Deploying Windows Server 2012 Server Core
 
MCSA 70-410 1 -installing windows server 2012 R2
MCSA 70-410  1 -installing windows server 2012 R2MCSA 70-410  1 -installing windows server 2012 R2
MCSA 70-410 1 -installing windows server 2012 R2
 
Microsoft Offical Course 20410C_00
Microsoft Offical Course 20410C_00Microsoft Offical Course 20410C_00
Microsoft Offical Course 20410C_00
 
ClearCase Basics
ClearCase BasicsClearCase Basics
ClearCase Basics
 

Viewers also liked (6)

Comunicato stampa ANPI 2016
Comunicato stampa ANPI 2016Comunicato stampa ANPI 2016
Comunicato stampa ANPI 2016
 
Apostila agentes públicos
Apostila   agentes públicosApostila   agentes públicos
Apostila agentes públicos
 
Свято мови
Свято мовиСвято мови
Свято мови
 
План
ПланПлан
План
 
Шевченківські дні
Шевченківські дніШевченківські дні
Шевченківські дні
 
Transistor Tester
Transistor TesterTransistor Tester
Transistor Tester
 

Similar to Using the Corporate Geographic Data Model with Subversion

SFDC Deployments
SFDC DeploymentsSFDC Deployments
SFDC DeploymentsSujit Kumar
 
Whats new in Enterprise 5.0 Product Suite
Whats new in Enterprise 5.0 Product SuiteWhats new in Enterprise 5.0 Product Suite
Whats new in Enterprise 5.0 Product SuiteMicro Focus
 
3- Siemens Open Library - Example Object Configuration.pdf
3- Siemens Open Library - Example Object Configuration.pdf3- Siemens Open Library - Example Object Configuration.pdf
3- Siemens Open Library - Example Object Configuration.pdfEMERSON EDUARDO RODRIGUES
 
The Art of Sitecore Upgrades
The Art of Sitecore UpgradesThe Art of Sitecore Upgrades
The Art of Sitecore UpgradesRuud van Falier
 
OroCRM Partner Technical Training: September 2015
OroCRM Partner Technical Training: September 2015OroCRM Partner Technical Training: September 2015
OroCRM Partner Technical Training: September 2015Oro Inc.
 
Planning & Completing An IBM Connections Upgrade
Planning & Completing An IBM Connections UpgradePlanning & Completing An IBM Connections Upgrade
Planning & Completing An IBM Connections UpgradeGabriella Davis
 
Expert guidance on migrating from magento 1 to magento 2
Expert guidance on migrating from magento 1 to magento 2Expert guidance on migrating from magento 1 to magento 2
Expert guidance on migrating from magento 1 to magento 2James Cowie
 
Application cloudification with liberty and urban code deploy - UCD
Application cloudification with liberty and urban code deploy - UCDApplication cloudification with liberty and urban code deploy - UCD
Application cloudification with liberty and urban code deploy - UCDDavide Veronese
 
Eclipse IDE, 2019.09, Java Development
Eclipse IDE, 2019.09, Java Development Eclipse IDE, 2019.09, Java Development
Eclipse IDE, 2019.09, Java Development Pei-Hsuan Hsieh
 
Practical advice on deployment and management of enterprise workloads
Practical advice on deployment and management of enterprise workloadsPractical advice on deployment and management of enterprise workloads
Practical advice on deployment and management of enterprise workloadsJarek Miszczyk
 
Exploring key admin features for comprehensive Applications Performance Monit...
Exploring key admin features for comprehensive Applications Performance Monit...Exploring key admin features for comprehensive Applications Performance Monit...
Exploring key admin features for comprehensive Applications Performance Monit...ManageEngine, Zoho Corporation
 
How to prepare a project for automated deployment?
How to prepare a project for automated deployment?How to prepare a project for automated deployment?
How to prepare a project for automated deployment?ONE BCG
 
Wellington MuleSoft Meetup 2021-02-18
Wellington MuleSoft Meetup 2021-02-18Wellington MuleSoft Meetup 2021-02-18
Wellington MuleSoft Meetup 2021-02-18Mary Joy Sabal
 
Cetas - Application Development Services
Cetas - Application Development ServicesCetas - Application Development Services
Cetas - Application Development ServicesKabilan D
 
TechNet Live spor 1 sesjon 2 - sc-forefront 2
TechNet Live spor 1   sesjon 2 - sc-forefront 2TechNet Live spor 1   sesjon 2 - sc-forefront 2
TechNet Live spor 1 sesjon 2 - sc-forefront 2Anders Borchsenius
 
XPages -Beyond the Basics
XPages -Beyond the BasicsXPages -Beyond the Basics
XPages -Beyond the BasicsUlrich Krause
 
Tech Talk Live on Share Extensibility
Tech Talk Live on Share ExtensibilityTech Talk Live on Share Extensibility
Tech Talk Live on Share ExtensibilityAlfresco Software
 

Similar to Using the Corporate Geographic Data Model with Subversion (20)

SFDC Deployments
SFDC DeploymentsSFDC Deployments
SFDC Deployments
 
Whats new in Enterprise 5.0 Product Suite
Whats new in Enterprise 5.0 Product SuiteWhats new in Enterprise 5.0 Product Suite
Whats new in Enterprise 5.0 Product Suite
 
Configuration management
Configuration managementConfiguration management
Configuration management
 
3- Siemens Open Library - Example Object Configuration.pdf
3- Siemens Open Library - Example Object Configuration.pdf3- Siemens Open Library - Example Object Configuration.pdf
3- Siemens Open Library - Example Object Configuration.pdf
 
The Art of Sitecore Upgrades
The Art of Sitecore UpgradesThe Art of Sitecore Upgrades
The Art of Sitecore Upgrades
 
OroCRM Partner Technical Training: September 2015
OroCRM Partner Technical Training: September 2015OroCRM Partner Technical Training: September 2015
OroCRM Partner Technical Training: September 2015
 
Planning & Completing An IBM Connections Upgrade
Planning & Completing An IBM Connections UpgradePlanning & Completing An IBM Connections Upgrade
Planning & Completing An IBM Connections Upgrade
 
Expert guidance on migrating from magento 1 to magento 2
Expert guidance on migrating from magento 1 to magento 2Expert guidance on migrating from magento 1 to magento 2
Expert guidance on migrating from magento 1 to magento 2
 
Application cloudification with liberty and urban code deploy - UCD
Application cloudification with liberty and urban code deploy - UCDApplication cloudification with liberty and urban code deploy - UCD
Application cloudification with liberty and urban code deploy - UCD
 
Learning%20%20 port
Learning%20%20 portLearning%20%20 port
Learning%20%20 port
 
IUG ATL PC 9.5
IUG ATL PC 9.5IUG ATL PC 9.5
IUG ATL PC 9.5
 
Eclipse IDE, 2019.09, Java Development
Eclipse IDE, 2019.09, Java Development Eclipse IDE, 2019.09, Java Development
Eclipse IDE, 2019.09, Java Development
 
Practical advice on deployment and management of enterprise workloads
Practical advice on deployment and management of enterprise workloadsPractical advice on deployment and management of enterprise workloads
Practical advice on deployment and management of enterprise workloads
 
Exploring key admin features for comprehensive Applications Performance Monit...
Exploring key admin features for comprehensive Applications Performance Monit...Exploring key admin features for comprehensive Applications Performance Monit...
Exploring key admin features for comprehensive Applications Performance Monit...
 
How to prepare a project for automated deployment?
How to prepare a project for automated deployment?How to prepare a project for automated deployment?
How to prepare a project for automated deployment?
 
Wellington MuleSoft Meetup 2021-02-18
Wellington MuleSoft Meetup 2021-02-18Wellington MuleSoft Meetup 2021-02-18
Wellington MuleSoft Meetup 2021-02-18
 
Cetas - Application Development Services
Cetas - Application Development ServicesCetas - Application Development Services
Cetas - Application Development Services
 
TechNet Live spor 1 sesjon 2 - sc-forefront 2
TechNet Live spor 1   sesjon 2 - sc-forefront 2TechNet Live spor 1   sesjon 2 - sc-forefront 2
TechNet Live spor 1 sesjon 2 - sc-forefront 2
 
XPages -Beyond the Basics
XPages -Beyond the BasicsXPages -Beyond the Basics
XPages -Beyond the Basics
 
Tech Talk Live on Share Extensibility
Tech Talk Live on Share ExtensibilityTech Talk Live on Share Extensibility
Tech Talk Live on Share Extensibility
 

Recently uploaded

February 2024 Recommendations for newsletter
February 2024 Recommendations for newsletterFebruary 2024 Recommendations for newsletter
February 2024 Recommendations for newsletterssuserdfec6a
 
Colaba Escorts 🥰 8617370543 Call Girls Offer VIP Hot Girls
Colaba Escorts 🥰 8617370543 Call Girls Offer VIP Hot GirlsColaba Escorts 🥰 8617370543 Call Girls Offer VIP Hot Girls
Colaba Escorts 🥰 8617370543 Call Girls Offer VIP Hot GirlsDeepika Singh
 
Emotional Freedom Technique Tapping Points Diagram.pdf
Emotional Freedom Technique Tapping Points Diagram.pdfEmotional Freedom Technique Tapping Points Diagram.pdf
Emotional Freedom Technique Tapping Points Diagram.pdfaprilross605
 
Call Girls In Mumbai Just Genuine Call ☎ 7738596112✅ Call Girl Andheri East G...
Call Girls In Mumbai Just Genuine Call ☎ 7738596112✅ Call Girl Andheri East G...Call Girls In Mumbai Just Genuine Call ☎ 7738596112✅ Call Girl Andheri East G...
Call Girls In Mumbai Just Genuine Call ☎ 7738596112✅ Call Girl Andheri East G...mitaliverma221
 
Exploring Stoic Philosophy From Ancient Wisdom to Modern Relevance.pdf
Exploring Stoic Philosophy From Ancient Wisdom to Modern Relevance.pdfExploring Stoic Philosophy From Ancient Wisdom to Modern Relevance.pdf
Exploring Stoic Philosophy From Ancient Wisdom to Modern Relevance.pdfMindful Wellness Journey
 
Dadar West Escorts 🥰 8617370543 Call Girls Offer VIP Hot Girls
Dadar West Escorts 🥰 8617370543 Call Girls Offer VIP Hot GirlsDadar West Escorts 🥰 8617370543 Call Girls Offer VIP Hot Girls
Dadar West Escorts 🥰 8617370543 Call Girls Offer VIP Hot GirlsDeepika Singh
 
KLINIK BATA Jual obat penggugur kandungan 087776558899 ABORSI JANIN KEHAMILAN...
KLINIK BATA Jual obat penggugur kandungan 087776558899 ABORSI JANIN KEHAMILAN...KLINIK BATA Jual obat penggugur kandungan 087776558899 ABORSI JANIN KEHAMILAN...
KLINIK BATA Jual obat penggugur kandungan 087776558899 ABORSI JANIN KEHAMILAN...Cara Menggugurkan Kandungan 087776558899
 
Hisar Escorts 🥰 8617370543 Call Girls Offer VIP Hot Girls
Hisar Escorts 🥰 8617370543 Call Girls Offer VIP Hot GirlsHisar Escorts 🥰 8617370543 Call Girls Offer VIP Hot Girls
Hisar Escorts 🥰 8617370543 Call Girls Offer VIP Hot GirlsDeepika Singh
 
Bokaro Escorts Service Girl ^ 9332606886, WhatsApp Anytime Bokaro
Bokaro Escorts Service Girl ^ 9332606886, WhatsApp Anytime BokaroBokaro Escorts Service Girl ^ 9332606886, WhatsApp Anytime Bokaro
Bokaro Escorts Service Girl ^ 9332606886, WhatsApp Anytime Bokaromeghakumariji156
 
March 2023 Recommendations for newsletter
March 2023 Recommendations for newsletterMarch 2023 Recommendations for newsletter
March 2023 Recommendations for newsletterssuserdfec6a
 
2023 - Between Philosophy and Practice: Introducing Yoga
2023 - Between Philosophy and Practice: Introducing Yoga2023 - Between Philosophy and Practice: Introducing Yoga
2023 - Between Philosophy and Practice: Introducing YogaRaphaël Semeteys
 
Goregaon West Escorts 🥰 8617370543 Call Girls Offer VIP Hot Girls
Goregaon West Escorts 🥰 8617370543 Call Girls Offer VIP Hot GirlsGoregaon West Escorts 🥰 8617370543 Call Girls Offer VIP Hot Girls
Goregaon West Escorts 🥰 8617370543 Call Girls Offer VIP Hot GirlsDeepika Singh
 
(JAYA)🎄Low Rate Call Girls Lucknow Call Now 8630512678 Premium Collection Of ...
(JAYA)🎄Low Rate Call Girls Lucknow Call Now 8630512678 Premium Collection Of ...(JAYA)🎄Low Rate Call Girls Lucknow Call Now 8630512678 Premium Collection Of ...
(JAYA)🎄Low Rate Call Girls Lucknow Call Now 8630512678 Premium Collection Of ...aarushi sharma
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377087607
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377087607FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377087607
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377087607dollysharma2066
 
SIKP311 Sikolohiyang Pilipino - Ginhawa.pptx
SIKP311 Sikolohiyang Pilipino - Ginhawa.pptxSIKP311 Sikolohiyang Pilipino - Ginhawa.pptx
SIKP311 Sikolohiyang Pilipino - Ginhawa.pptxStephenMino
 
Social Learning Theory presentation.pptx
Social Learning Theory presentation.pptxSocial Learning Theory presentation.pptx
Social Learning Theory presentation.pptxumef01177
 
What are some effective methods for increasing concentration and focus while ...
What are some effective methods for increasing concentration and focus while ...What are some effective methods for increasing concentration and focus while ...
What are some effective methods for increasing concentration and focus while ...SOFTTECHHUB
 

Recently uploaded (18)

February 2024 Recommendations for newsletter
February 2024 Recommendations for newsletterFebruary 2024 Recommendations for newsletter
February 2024 Recommendations for newsletter
 
Colaba Escorts 🥰 8617370543 Call Girls Offer VIP Hot Girls
Colaba Escorts 🥰 8617370543 Call Girls Offer VIP Hot GirlsColaba Escorts 🥰 8617370543 Call Girls Offer VIP Hot Girls
Colaba Escorts 🥰 8617370543 Call Girls Offer VIP Hot Girls
 
Emotional Freedom Technique Tapping Points Diagram.pdf
Emotional Freedom Technique Tapping Points Diagram.pdfEmotional Freedom Technique Tapping Points Diagram.pdf
Emotional Freedom Technique Tapping Points Diagram.pdf
 
Call Girls In Mumbai Just Genuine Call ☎ 7738596112✅ Call Girl Andheri East G...
Call Girls In Mumbai Just Genuine Call ☎ 7738596112✅ Call Girl Andheri East G...Call Girls In Mumbai Just Genuine Call ☎ 7738596112✅ Call Girl Andheri East G...
Call Girls In Mumbai Just Genuine Call ☎ 7738596112✅ Call Girl Andheri East G...
 
Exploring Stoic Philosophy From Ancient Wisdom to Modern Relevance.pdf
Exploring Stoic Philosophy From Ancient Wisdom to Modern Relevance.pdfExploring Stoic Philosophy From Ancient Wisdom to Modern Relevance.pdf
Exploring Stoic Philosophy From Ancient Wisdom to Modern Relevance.pdf
 
Dadar West Escorts 🥰 8617370543 Call Girls Offer VIP Hot Girls
Dadar West Escorts 🥰 8617370543 Call Girls Offer VIP Hot GirlsDadar West Escorts 🥰 8617370543 Call Girls Offer VIP Hot Girls
Dadar West Escorts 🥰 8617370543 Call Girls Offer VIP Hot Girls
 
KLINIK BATA Jual obat penggugur kandungan 087776558899 ABORSI JANIN KEHAMILAN...
KLINIK BATA Jual obat penggugur kandungan 087776558899 ABORSI JANIN KEHAMILAN...KLINIK BATA Jual obat penggugur kandungan 087776558899 ABORSI JANIN KEHAMILAN...
KLINIK BATA Jual obat penggugur kandungan 087776558899 ABORSI JANIN KEHAMILAN...
 
Hisar Escorts 🥰 8617370543 Call Girls Offer VIP Hot Girls
Hisar Escorts 🥰 8617370543 Call Girls Offer VIP Hot GirlsHisar Escorts 🥰 8617370543 Call Girls Offer VIP Hot Girls
Hisar Escorts 🥰 8617370543 Call Girls Offer VIP Hot Girls
 
Bokaro Escorts Service Girl ^ 9332606886, WhatsApp Anytime Bokaro
Bokaro Escorts Service Girl ^ 9332606886, WhatsApp Anytime BokaroBokaro Escorts Service Girl ^ 9332606886, WhatsApp Anytime Bokaro
Bokaro Escorts Service Girl ^ 9332606886, WhatsApp Anytime Bokaro
 
March 2023 Recommendations for newsletter
March 2023 Recommendations for newsletterMarch 2023 Recommendations for newsletter
March 2023 Recommendations for newsletter
 
2023 - Between Philosophy and Practice: Introducing Yoga
2023 - Between Philosophy and Practice: Introducing Yoga2023 - Between Philosophy and Practice: Introducing Yoga
2023 - Between Philosophy and Practice: Introducing Yoga
 
Goregaon West Escorts 🥰 8617370543 Call Girls Offer VIP Hot Girls
Goregaon West Escorts 🥰 8617370543 Call Girls Offer VIP Hot GirlsGoregaon West Escorts 🥰 8617370543 Call Girls Offer VIP Hot Girls
Goregaon West Escorts 🥰 8617370543 Call Girls Offer VIP Hot Girls
 
(JAYA)🎄Low Rate Call Girls Lucknow Call Now 8630512678 Premium Collection Of ...
(JAYA)🎄Low Rate Call Girls Lucknow Call Now 8630512678 Premium Collection Of ...(JAYA)🎄Low Rate Call Girls Lucknow Call Now 8630512678 Premium Collection Of ...
(JAYA)🎄Low Rate Call Girls Lucknow Call Now 8630512678 Premium Collection Of ...
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377087607
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377087607FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377087607
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377087607
 
SIKP311 Sikolohiyang Pilipino - Ginhawa.pptx
SIKP311 Sikolohiyang Pilipino - Ginhawa.pptxSIKP311 Sikolohiyang Pilipino - Ginhawa.pptx
SIKP311 Sikolohiyang Pilipino - Ginhawa.pptx
 
Social Learning Theory presentation.pptx
Social Learning Theory presentation.pptxSocial Learning Theory presentation.pptx
Social Learning Theory presentation.pptx
 
Girls in Mahipalpur (delhi) call me [🔝9953056974🔝] escort service 24X7
Girls in Mahipalpur  (delhi) call me [🔝9953056974🔝] escort service 24X7Girls in Mahipalpur  (delhi) call me [🔝9953056974🔝] escort service 24X7
Girls in Mahipalpur (delhi) call me [🔝9953056974🔝] escort service 24X7
 
What are some effective methods for increasing concentration and focus while ...
What are some effective methods for increasing concentration and focus while ...What are some effective methods for increasing concentration and focus while ...
What are some effective methods for increasing concentration and focus while ...
 

Using the Corporate Geographic Data Model with Subversion

  • 1. Using the Corporate Geographic Data Model with Subversion Debbie Wilson Senior Geographic Information Architect debbie.wilson@ordnancesurvey.co.uk 16th January 2014
  • 2. Version Control – Configuration Management • Version control is the management of changes to resources. • OS Information Models are concurrently developed by a diverse team • Need for formal management of change that supports: • Concurrent editing (on-site/off-site environments) • Track changes • Roll-back changes • Create snapshots of individual model components (e.g. releases or baselines) • Subversion is an open-source software for version control • Alternates are GitHub but only Subversion is supported by Enterprise Architect
  • 3. Version Controlling – Configuration Management Further Reading: • Several internal resources for version control developed by IS Software Configuration Management (SCM): • Subversion Quick Reference Guide IS Subversion Training
  • 4. Using the CGDM with Subversion There are 4 steps required to set up the Corporate Geographic Data Model for use with Subversion: 1. Install Subversion Clients (complete) 2. Checkout local version of UML repositories 3. Create a local EAP file and configure version control settings 4. Get Data Model package(s) 5. Editing version controlled packages 6. Creating version controlled packages
  • 5. Step 1: Install Subversion Clients • Two clients are required for using and managing version controlled resources within Subversion: • Collabnet Subversion Command Line Client v1.7 • Tortoise Subversion client v1.7 NOTE: The latest version of both Subversion clients is v1.8. However, this does not currently work with the public INSPIRE UML repository. As it forces a requirement to have user credentials which is not required in v1.7.
  • 6. Accessing the repository without SVN client • You can access as a read-only user without dedicated SVN clients • All you need is a web browser and user credentials http://svn/corp_geo_data_model/
  • 7. What is contained within the repository? • The Corporate Geographic Data Model repository has the standard subversion repository structure:
  • 8. Subversion directories • Trunk • This is directory containing the resources that are used for the main line of development • Tags • This directory contains folders that represent snapshots of the resources that have been tagged as notable revisions such as releases • Branches • Branches are used when you are asked to “tweak” the resource to meet the requirements of a specific user • But their requirements are not needed as part of the core resource
  • 9. Contents of the CGDM Trunk Information Models: • EA XMI files containing model elements • Separated into 3 directories: • Products • Systems: MRDP, GDMS etc. • Services: (future) • Contains set of pre-defined model structures
  • 10. Contents of the CGDM Trunk Resources • Contains supporting tools for modelling and creating schemas • UML Profiles • Document Templates • MDA Transformations • ShapeChange
  • 11. Contents of the CGDM Trunk schemas • This directory shall contain the various implementation schemas for products, systems, services: • GML schemas • Ontologies • Dictionaries/vocabularies • DDLs
  • 12. Contents of the CGDM Trunk The CGDM is not limited to these resources. Can been extended. We all have full right privileges so anyone can create new content.
  • 13. Step 2: Checkout local version of repository • The Corporate Geographic Data Model contains only the UML models created and managed by Ordnance Survey • But Information models are built upon international standards developed by ISO TC211, OGC and INSPIRE Directive • Therefore several UML repositories must be checked out to use the Corporate Geographic Data Model: 1. Corporate Geographic Data Model: http://svn/corp_geo_data_model/ 2. ISO TC211: https://inspire-twg.jrc.ec.europa.eu/svn/iso or https://www.seegrid.csiro.au/mirrors/iso-harmonized-model/ 3. INSPIRE: https://inspire-twg.jrc.ec.europa.eu/svn/inspire- model/branches/public
  • 14. Step 2: Checkout Corporate Geographic Data Model 1. Create a directory to contain the UML repositories (e.g. C:UML) 2. Open a cmd dialog window and set directory to be your UML repository 3. Use the subversion command line svn checkout to download a local copy of the Corporate Geographic Data Model • You will be required to log in using your windows credentials NOTE: this should only be required once
  • 15. Step 2: Checkout Corporate Geographic Data Model
  • 16. Step 2: Checkout INSPIRE and ISO TC211 repositories INSPIRE repository • You may get this message • Accept the certificate permanently by typing the 'p' and press return.
  • 17. Step 2: Checkout ISO TC 211and INSPIRE repositories ISO TC 211 UML repository • Can check out ISO repository using Tortoise SVN client rather than the command line client as don’t need to edit it or accept any certificates • Within your UML repository directory in Windows Explorer right- click and select SVN Checkout… TortoiseSVN is not a program you access from Start Menu. It’s added a set of SVN tools to Windows Explorer
  • 18. Step 2: Checkout ISO TC 211and INSPIRE repositories • In Checkout dialog type URL for ISO TC211 UML Repository (can choose either INSPIRE or SEEGrid ISO mirror both same) • Name the destination directory iso
  • 19. Step 3: Create a local EAP file and configure version control settings • We will no longer be using a single corporate EAP file • Instead each of us shall use a local enterprise architect file which shall either contain: • Full Corporate Geographic Data Model • Subset view of the Corporate Geographic Data Model (e.g. Products only or MRDP) • User defined project made up of one or more packages from model
  • 20. What the benefits of moving to SVN? 1. Version controlled • Can track changes – know who made which change • Fully maintained history of all changes • Roll back any changes that may been made in error • Improve process for managing development/release – no longer maintain archive packages in model 2. Can Work offline/off-site more effectively • Check out packages to work on when offline • On VPN - EA accesses local repository so responds as if in office 3. Integrates with other tools • JIRA/Fisheye – trace changes to back tasks/bugs • GitHub – supports collaboration with Subversion so can integrate with IS better in future
  • 21. Step 3: Create a local EAP file and configure version control settings 1. Open Enterprise Architect and create a new project and save locally in preferred directory 2. Cancel Model Wizard dialog as importing existing models from repository 3. Right-click on the Root Model in Project Browser, select Package Control  Version Control Settings
  • 22. Step 3: Configure version control settings • In the Version Control Settings dialog need to configure subversion settings for the three UML repositories: • Corporate Geographic Data Model • ISO TC211 • INSPIRE Insert protective marking - see QSP 032
  • 23. Step 3: Configure version control settings 1. Tick This model is private 2. In configuration details assign a unique id for the Corporate Geographic Data Model: CGDM 3. Select Subversion as type 4. Set working copy path to trunk directory of checked out repository: e.g. C:UMLcorp_geo_data_modeltrunk 5. Set Subversion Exe Path to location of the Collabnet Subversion Client: e.g. C:Program FilesCollabNetSubversion Clientsvn.exe 6. Save NOTE: this only needs to be set once it will now be remembered.
  • 24. Step 3: Configure version control settings Repeat for ISO TC211 and INSPIRE 1. Select New 2. In configuration details assign the unique id: isotc211 3. Set type as Subversion 4. Set working copy path to trunk directory of checked out repository: e.g. C:UMLiso 5. Save
  • 25. Step 3: Configure version control settings 1. Select New 2. In configuration details assign the unique id: inspire-model 3. Set type as Subversion 4. Set working copy path to trunk directory of checked out repository: e.g. C:UMLpublicapprovedlatest 5. Save. You are now accessing models from 3 UML repositories 6. Close Use this approach to add more repositories as required if working on systems (e.g. IS/1Spatial for MRDP)
  • 26. Step 4: Get Package and import models • Once the version control settings are configured you can import either: 1. Pre-defined model (focus of this section) 2. Set up your own model and import individual version controlled models from the Corporate Geographic Data Model, Foundation Schema or other external schema as required
  • 27. Step 4: Import Pre-Defined Model • Within the Corporate Geographic Data Model several pre- defined models have been configured: 1. Corporate Geographic Data Model: Provides a consolidated view of all models developed within OS for products, systems and services 2. Products: Contains the logical and implementation models for products 3. Systems: Contains |the various models (data models, business rules, requirements, use cases, data flows) for data maintenance and productions systems
  • 28. Step 4: Import Pre-Defined Model • Right click on the root Model package and select Package Control  Get Package
  • 29. Step 4: Get Package and import models • In the Get Shared File dialog select CGDM from the Select a Version Control Configuration drop down list:
  • 30. Step 4: Get Package and import models • Select one of the root model packages:
  • 31. Step 4: Get Package and import models • Chose whether to import model as Root Model or under selected package • As we are importing a pre-defined model structure select Yes NOTE: If you are creating a user-defined model structure you would select No - this will give you the option to move packages around as you build the structure
  • 32. Step 4: Get Package and import models • Final Step is to import all models • Right-click on a package, select Package Control  Get all Latest  Import changed files only NOTE: This will take a long time the first time – good time for a brew!
  • 33. Corporate Geographic Data Model • You have successfully set up Enterprise Architect to work with version controlled models
  • 34. Importing INSPIRE/ISO TC211 models Issue 1: Inconsistent use of Foundation Models • In past we have manually imported snapshots of the INSPIRE and ISO models • While these models are pretty stable they do change • Required us to regularly manually check for changes and then re-import models • Only parts of the ISO TC211 data modelling packages imported • Some aspects of the ISO TC211 models may have been deleted – THIS IS A BIG NO NO! • INSPIRE models are imported on a package by package basis as required. GCM containing common models not included!
  • 35. Importing INSPIRE/ISO TC211 models Issue 2: Maintenance of EA identifiers • Can run into issues when sharing models that use manual imports of foundation models: • Foundation Model elements may have different EA identifiers so “disappear” from the model • By using formal models within repository ensure that same EA identifiers are used • Ensure our models can be integrated with INSPIRE/OGC/ISO models by users Now – we shall all use the same Foundation Schema to ensure modelling consistency
  • 36. Editing version controlled packages • Lots of packages now have lock icons • Not allowed to make any changes to any element in the package • To make edits to a model you need to checkout the package from the version control repository Right-click on package to edit  Package Control  Check Out
  • 37. Editing version controlled packages • When you check out a package, EA checks against the central repository whether the version is the model is the latest • If it is the latest version select Accept current package NOTE: EA only supports exclusive check out • i.e. package is locked to one user only • Can only edit package once its been checked back in
  • 38. Editing version controlled packages • Select a package to edit – make sure its not the same package as someone else • Test that you can move items on diagram and add/edit classes
  • 39. Editing version controlled packages • To check in edits, Right-click on the package  Package Control  Check In • Before the check-in is committed you will be prompted to add a Check-in comment • This should be short description of edits made (+ JIRA task id)
  • 40. Editing version controlled packages • By adding comments it makes it easier to understand what changes occurred by whom and when • Allows traceability when viewing history Insert protective marking - see QSP 032
  • 41. Viewing history • You can view history of changes to a package either within EA or using TortoiseSVN • To view history in EA, select package  Right click  Package Control  File History
  • 42. Viewing history • You can view history of changes to a package either within EA or using TortoiseSVN • To view history in EA, select package  Right click  Package Control  File History
  • 43. Viewing history • Using TortoiseSVN, select xmi representing package  Right- click  TortoiseSVN  Show log
  • 44. Editing version controlled packages • There may be times when you check out a package but make no edits or do not want the edits to be committed • EA allows you to Undo Check Out • Undo Check Out for the package you checked out earlier
  • 45. Adding packages to Subversion • We will need to continually add new model packages to Subversion • Restructure large models for easier management • May need to move packages around • Create new models • Thankfully this is relatively easy and involves 3 steps: 1. Export package as XMI 1.1 and save to respective directory in your local SVN directory 2. Add the file to the central repository and commit 3. Delete exported package from model and Get Package from repository
  • 46. Adding packages to Subversion Step 1: Export Package as XMI 1.1 and save to SVN • Right-click on package  Select Import/Export  Export to Package to XML… • Export as XMI 1.1
  • 47. Adding packages to Subversion Step 2: Add file to central repository and commit • Navigate to output directory in Window Explorer • Select exported XMI file  Right-click  TortoiseSVN Add • Commit file to central SVN Repository
  • 48. Adding packages to Subversion Step 3: Replace original package with version controlled package • Delete the exported package from the Project Browser NOTE: If the package is contained within another package may need to check-out parent package, if version controlled • Right-click on parent package  Package Control  Get Package • Select the CGDM • Select the exported XMI file from list • Check in parent package