SlideShare a Scribd company logo
1 of 55
Download to read offline
1	
  
FME within NRCan
Marie-EveMartin
Jean-MarcPrévost
2	
  
Agenda
!  Context
!  System architecture
!  Programming standards, Quality assurance,
testing methods, etc.
!  Validations processes and dependencies
!  FME developments at NRCan
!  Safe Software collaboration
3	
  
Agenda
!  Context
!  Who are we?
!  Where do we come from?
!  Where are we now?
!  Where are we going?
!  System architecture
!  Programming standards, Quality assurance, testing methods, etc.
!  Validations processes and dependencies
!  FME developments at NRCan
!  Safe Software collaboration
4	
  
Natural Resources Canada
Mission and Outcomes
5	
  
NRCan	
  
Earth	
  Science	
  
Sector	
  
Geoma4cs	
  
Canada	
  
CCMEO	
  /	
  CCCOT	
  
Energy	
  Sector	
  
Canadian	
  Forest	
  Service	
  
Direc4on	
  &	
  Coordina4on	
  
Minerals	
  &	
  Metal	
  Sector	
  
Science	
  &	
  Policy	
  
Integra4on	
  
Energy	
  Technology	
  &	
  
Programs	
  Sector	
  
Corporate	
  Management	
  
&	
  Services	
  Sector	
  
NRCan structure overview
CCMEO	
  
	
  Canada	
  
	
  Centre	
  for	
  
	
  Mapping	
  and	
  
	
  Earth	
  
	
  Observa5on	
  
CCCOT	
  
	
  Centre	
  
	
  Canadien	
  de	
  
	
  Cartographie	
  et	
  d’	
  
	
  Observa5on	
  de	
  la	
  
	
  Terre	
  
CCMEO	
  total	
  number	
  of	
  employees:	
  319	
  
227	
  employees	
  for	
  Mapping	
  	
  
92	
  employees	
  for	
  Earth	
  Observa5on	
  
Sherbrooke	
  
OGawa	
  
6	
  
Agenda
!  Context
!  Who are we?
!  Where do we come from?
!  Where are we now?
!  Where are we going?
!  System architecture
!  Programming standards, Quality assurance, testing methods, etc.
!  Validations processes and dependencies
!  FME developments at NRCan
!  Safe Software collaboration
7	
  
FME history at CCMEO
NTDB	
  
specs	
  
vectoriza4on	
  
File	
  management	
  
CanVec,	
  CanTopo,	
  GeoBase,	
  etc.	
  era	
  
Database	
  management	
  
FGP	
  
2015	
  2010	
  2005	
  2000	
  1995	
  1990	
  1985	
  
Transla4ons	
  
-­‐	
  Workbench	
  
-­‐	
  Data	
  manipula4on	
  &	
  valida4on	
  
Custom	
  transformers	
  
-­‐	
  Programming	
  standards	
  
-­‐	
  Tes4ng	
  methodology	
  
≈700	
  
8	
  
Agenda
!  Context
!  Who are we?
!  Where do we come from?
!  Where are we now?
!  Where are we going?
!  System architecture
!  Programming standards, Quality assurance, testing methods, etc.
!  Validations processes and dependencies
!  FME developments at NRCan
!  Safe Software collaboration
9	
  
Distribu?on	
  Management	
  
System architecture at CCMEO
Aquisi?on	
  
Condi4onning	
  
Partners
Data
acquisition
Others	
  
Data	
  
Access	
  QA	
  
10	
  
What do we produce ?
!  Main products :
!  Canvec
!  Toporama
!  CDED
!  200 collections of various nature
!  Statistics for last year :
!  8 500 000 downloads
!  3 000 mail and phone requests
11	
  
Where to find our products ?
!  Data availability :
!  Geogratis : geogratis.gc.ca
!  Geobase : www.geobase.ca
!  WMS services
!  Licence : Open Government Licence
12	
  
Data extraction tool
http://geogratis.gc.ca/site/eng/extraction
13	
  
Agenda
!  Context
!  Who are we?
!  Where do we come from?
!  Where are we now?
!  Where are we going?
!  System architecture
!  Programming standards, Quality assurance, testing methods, etc.
!  Validations processes and dependencies
!  FME developments at NRCan
!  Safe Software collaboration
14	
  
15	
  
Agenda
!  Context
!  System architecture
!  Programming standards, Quality assurance,
testing methods, etc.
!  Validations processes and dependencies
!  FME developments at NRCan
!  Safe Software collaboration
16	
  
System architecture
FME,	
  Python,	
  	
  
.EXE,	
  SQL,	
  etc.	
  
Windows	
  servers	
  
Produc4on:	
  64	
  processes	
  (32bits)	
  
Distribu4on:	
  56	
  processes	
  (64bits)	
  
Oracle	
  11g,	
  PostgreSQL	
  9.2	
  
ArcSDE	
  10.1,	
  PostGIS	
  2.0	
  
400	
  TB	
  
Instruc?on	
  
files	
  
17	
  
Agenda
!  Context
!  System architecture
!  Programming standards, Quality assurance,
testing methods, etc.
!  Validations processes and dependencies
!  FME developments at NRCan
!  Safe Software collaboration
18	
  
Worbenches – Last saved build
Programs	
  s4ll	
  
in	
  opera4on	
  !	
  
19	
  
Taking control
!  2007 problematic:
!  Mix of FME versions on computers
!  Everyone wanted the lasted build
!  Increasing number of workbenches
!  Workbenches were transferred to support team
!  Solution :
!  FME upgrades management
!  Programming standards
20	
  
FME upgrades management
!  Upgrade rules:
!  Everyone use one common build
!  Upgrade only to official builds
!  At least one upgrade per year
(idealy no more than two)
21	
  
Programming standards
22	
  
Programming standards
!  Documentation (.docx and annotations)
!  Parameter naming standards
!  Known bad practices review
!  Unit tests
!  Peer review
23	
  
Programming standards
Examples of bad practices
!  Missing Rounders
!  Missing Terminators
24	
  
Programming standards
Unit tests
!  Each workbench is managed in a source code
control environment
!  Each workbench is saved with the bat file,
sources and expected results files necessary
to test it
!  Batch testing of all workbenches before every
upgrade.
25	
  
Programming standards
Unit tests
!  Fail rate is used to plan upgrades
Source Destination Fail rate
2013 SP1 2013 SP4 2%
2013 SP4 2014 SP1 10%
26	
  
Programming standards
Peer review
!  FME is easy to learn without taking classes
!  FME always offer various way of doing
something
!  Peer review allows:
!  Improved shared knowledge
!  Programming uniformity
!  Identifying repetitive patterns
27	
  
Agenda
!  Context
!  System architecture
!  Programming standards, Quality assurance,
testing methods, etc.
!  Validations processes and dependencies
!  FME developments at NRCan
!  Safe Software collaboration
28	
  
Validation processes
!  At CCMEO, FME is used for :
!  Feature translation
!  Feature creation
!  Feature validation
Catalog
29	
  
Distribu?on	
  Management	
  
Validation processes
Aquisi?on	
  
Condi4onning	
  
Partners
Data
acquisition
Others	
  
Data	
  
Access	
  QA	
  
30	
  
Validation Catalog
!  ISO-19110 compliant
XML HTMLDatabase
Users
31	
  
Catalog based validations
!  Spatial relations validation
!  Domain attribute validation
!  Proximity validation
!  Minimal dimension validation
!  Segmentation validation
!  Data clipping validation
32	
  
Catalog based validations
Example
Spatial relations validation
!  Based on Egenhofer-Clementini DE-9IM masks
33	
  
Catalog based validations
Examples
!  Spatial relations
!  Attribute value
34	
  
Catalog validation within FME
ISO	
  19110	
  
XML	
  
List	
  friendly	
  
format	
  
Generic	
  reader	
  
Generic	
  writer	
  
Valida4on	
  
Error	
  	
  
forma4ng	
  
Valida4on	
  rules	
  
extrac4on	
  
Valida4on	
  
Error	
  	
  
forma4ng	
  
Valida4on	
  rules	
  
extrac4on	
  
One	
  custom	
  transformer	
  
per	
  valida5on	
  concept!	
  
35	
  
Catalog validation within FME
!  Real program example:
36	
  
Agenda
!  Context
!  System architecture
!  Programming standards, Quality assurance,
testing methods, etc.
!  Validations processes and dependencies
!  FME developments at NRCan
!  Safe Software collaboration
37	
  
Utility customs - Examples
!  TerminatorRecorder
!  Record all the errors to a .ffs
file before causing the
workbench to fail
!  TerminatorMinMax
!  Cause the workbench to fail if
the number of feature is not
as expected
38	
  
!  Matcher_CCMEO
!  Match features if
start/end points
are within tolerance
!  SnapToNeatline
!  Snap features within tolerance without
collapsing
Utility customs - Examples
39	
  
Utility customs - Examples
!  SchemaMapper_CCMEO
!  Similar to SchemaMapper but :
!  Allow mapping with a variable number of
conditions
!  Conditions may be ranges of values
!  Conditions may use any operator (>, <, != , etc)
!  Conditions are validated and produce report if
badly formatted
TYPE=[11:13];PRECISION<=20;NAME=Lake	
  
40	
  
Validation customs
Minimal dimension
Voronoi	
  
Side	
  lines	
  
Centerline	
  
Area	
   Width	
   Length	
  
41	
  
Validation customs
Proximity
What	
  are	
  we	
  
looking	
  for?	
  
Valida4on	
  
Process	
  
Op4misa4on	
  
Process	
  
42	
  
Agenda
!  Context
!  System architecture
!  Programming standards, Quality assurance,
testing methods, etc.
!  Validations processes and dependencies
!  FME developments at NRCan
!  Safe Software collaboration
43	
  
Safe Software collaboration
!  Motivations for collaboration
!  Simplifies our workbenches
!  Faster processing
!  Maintenance under Safe’s responsibility
44	
  
Safe Software collaboration
Generalization
Hydro network
AngularityCalculator	
  
SherbendGeneralizer	
  
StreamOrderCalculator	
  
StreamPriorityCalculator	
  
NetworkFlowOrientor	
  
BoundingBoxAccumulator	
  
45	
  
Safe Software collaboration
VoronoiDiagrammer	
  
46	
  
QUESTIONS ?!?
Marie-Eve.Martin@RNCan-NRCan.gc.ca
Jean-Marc.Prevost@RNCan-NRCan.gc.ca
47	
  
Amalgamator
48	
  
ConvexityFilter
49	
  
Generalizer
Wang	
  
The	
  Wang	
  algorithm	
  will	
  itera5vely	
  combine,	
  eliminate	
  and	
  exaggerate	
  bends	
  un5l	
  
the	
  input	
  line	
  feature	
  has	
  no	
  bend	
  that	
  is	
  smaller	
  than	
  the	
  given	
  tolerance	
  value.	
  
McMaster	
  /	
  McMaster	
  Weighted	
  Distance	
  
The	
  McMaster	
  algorithm	
  calculates	
  a	
  new	
  loca5on	
  for	
  each	
  point	
  by	
  first	
  taking	
  the	
  
average	
  value	
  of	
  the	
  x	
  and	
  y	
  coordinates	
  of	
  the	
  point	
  and	
  a	
  number	
  of	
  neighboring	
  
points.	
  It	
  then	
  slides	
  the	
  averaged	
  point	
  towards	
  the	
  original	
  point	
  according	
  to	
  a	
  
specified	
  displacement	
  value.	
  The	
  overall	
  effect	
  is	
  that	
  each	
  point	
  will	
  be	
  pulled	
  
towards	
  its	
  neighboring	
  points.	
  
NURBfit	
  (B-­‐Spline)	
  
The	
  NURBfit	
  algorithm	
  will	
  fit	
  lines	
  using	
  B-­‐Spline	
  curves	
  of	
  given	
  polynomial	
  degree.	
  
The	
  resul5ng	
  lines	
  will	
  follow	
  these	
  curves	
  with	
  given	
  segment	
  length.	
  The	
  higher	
  the	
  
degree,	
  the	
  smoother	
  the	
  line.	
  An	
  example	
  of	
  usage	
  is	
  smoothing	
  contour	
  lines	
  in	
  
order	
  to	
  remove	
  sparks	
  and	
  simulate	
  the	
  work	
  of	
  a	
  cartographic	
  cra[sman.	
  
Inflec?on	
  Points	
  
The	
  Inflec5on	
  algorithm	
  will	
  calculate	
  the	
  loca5on	
  of	
  the	
  inflec5on	
  points	
  along	
  a	
  
line	
  and	
  return	
  the	
  list	
  of	
  these	
  points.	
  Inflec5on	
  points	
  are	
  measures	
  of	
  the	
  sinuosity	
  
of	
  a	
  line.	
  
50	
  
SherbendGeneralizer
SherbendGeneralizer	
  
51	
  
NetworkFlowOrientor
NetworkFlowOrientor	
  
52	
  
StreamPriorityCalculator	
  
StreamPriorityCalculator
53	
  
Densifier
54	
  
Chopper
55	
  
Chopper use case scenario
chopper
dissolve
chopper chopper
dissolve
dissolve
Data
extraction
Group by metadata No group by

More Related Content

What's hot

Rob phillips.potx
Rob phillips.potxRob phillips.potx
Rob phillips.potxphillipsre
 
Ins and Outs of Using R with FME
Ins and Outs of Using R with FMEIns and Outs of Using R with FME
Ins and Outs of Using R with FMESafe Software
 
Overcoming the Complexities of AIXM with Model Based Data Integration
Overcoming the Complexities of AIXM with Model Based Data IntegrationOvercoming the Complexities of AIXM with Model Based Data Integration
Overcoming the Complexities of AIXM with Model Based Data IntegrationSafe Software
 
The Joys of APIs & FME - Integrating CAD documents to GIS from a Document Man...
The Joys of APIs & FME - Integrating CAD documents to GIS from a Document Man...The Joys of APIs & FME - Integrating CAD documents to GIS from a Document Man...
The Joys of APIs & FME - Integrating CAD documents to GIS from a Document Man...Safe Software
 
Smallworld 5 Migration Experiences
Smallworld 5 Migration ExperiencesSmallworld 5 Migration Experiences
Smallworld 5 Migration ExperiencesGlobema
 
Neriah it&engupdate
Neriah it&engupdateNeriah it&engupdate
Neriah it&engupdateAFRINIC
 
Improving Productivity Using FME Workbench
Improving Productivity Using FME WorkbenchImproving Productivity Using FME Workbench
Improving Productivity Using FME WorkbenchSafe Software
 
FME as an ESB at the Township of Langley
FME as an ESB at the Township of LangleyFME as an ESB at the Township of Langley
FME as an ESB at the Township of LangleySafe Software
 
Safe on FME: Bugzilla to Jira – Moving 18 Years of Data
Safe on FME: Bugzilla to Jira – Moving 18 Years of DataSafe on FME: Bugzilla to Jira – Moving 18 Years of Data
Safe on FME: Bugzilla to Jira – Moving 18 Years of DataSafe Software
 
Data Integration Solutions for Airports
Data Integration Solutions for AirportsData Integration Solutions for Airports
Data Integration Solutions for AirportsSafe Software
 
Metadata Matters! What it is and How to Manage it
Metadata Matters! What it is and How to Manage itMetadata Matters! What it is and How to Manage it
Metadata Matters! What it is and How to Manage itSafe Software
 
How to Efficiently Transform Non-Spatial Data using FME
How to Efficiently Transform Non-Spatial Data using FMEHow to Efficiently Transform Non-Spatial Data using FME
How to Efficiently Transform Non-Spatial Data using FMESafe Software
 
Building Local Spatial Layers from a REST Web Service
Building Local Spatial Layers from a REST Web ServiceBuilding Local Spatial Layers from a REST Web Service
Building Local Spatial Layers from a REST Web ServiceSafe Software
 
Integrating NiFi and Flink
Integrating NiFi and FlinkIntegrating NiFi and Flink
Integrating NiFi and FlinkBryan Bende
 
FME World Tour 2015 - FME & Data Migration Simon McCabe
FME World Tour 2015 -  FME & Data Migration Simon McCabeFME World Tour 2015 -  FME & Data Migration Simon McCabe
FME World Tour 2015 - FME & Data Migration Simon McCabeIMGS
 
IANA Services Update
IANA Services UpdateIANA Services Update
IANA Services UpdateAPNIC
 
How to Manage Open Police Data - Tips for Data QA/QC and Automation
How to Manage Open Police Data - Tips for Data QA/QC and AutomationHow to Manage Open Police Data - Tips for Data QA/QC and Automation
How to Manage Open Police Data - Tips for Data QA/QC and AutomationSafe Software
 
Gomez Marvin_8_10_2016
Gomez Marvin_8_10_2016Gomez Marvin_8_10_2016
Gomez Marvin_8_10_2016Marvin Gomez
 
Analytics with R in SQL Server 2016
Analytics with R in SQL Server 2016Analytics with R in SQL Server 2016
Analytics with R in SQL Server 2016HARIHARAN R
 

What's hot (20)

Rob phillips.potx
Rob phillips.potxRob phillips.potx
Rob phillips.potx
 
Ins and Outs of Using R with FME
Ins and Outs of Using R with FMEIns and Outs of Using R with FME
Ins and Outs of Using R with FME
 
Overcoming the Complexities of AIXM with Model Based Data Integration
Overcoming the Complexities of AIXM with Model Based Data IntegrationOvercoming the Complexities of AIXM with Model Based Data Integration
Overcoming the Complexities of AIXM with Model Based Data Integration
 
The Joys of APIs & FME - Integrating CAD documents to GIS from a Document Man...
The Joys of APIs & FME - Integrating CAD documents to GIS from a Document Man...The Joys of APIs & FME - Integrating CAD documents to GIS from a Document Man...
The Joys of APIs & FME - Integrating CAD documents to GIS from a Document Man...
 
Smallworld 5 Migration Experiences
Smallworld 5 Migration ExperiencesSmallworld 5 Migration Experiences
Smallworld 5 Migration Experiences
 
Neriah it&engupdate
Neriah it&engupdateNeriah it&engupdate
Neriah it&engupdate
 
Improving Productivity Using FME Workbench
Improving Productivity Using FME WorkbenchImproving Productivity Using FME Workbench
Improving Productivity Using FME Workbench
 
FME as an ESB at the Township of Langley
FME as an ESB at the Township of LangleyFME as an ESB at the Township of Langley
FME as an ESB at the Township of Langley
 
Safe on FME: Bugzilla to Jira – Moving 18 Years of Data
Safe on FME: Bugzilla to Jira – Moving 18 Years of DataSafe on FME: Bugzilla to Jira – Moving 18 Years of Data
Safe on FME: Bugzilla to Jira – Moving 18 Years of Data
 
Data Integration Solutions for Airports
Data Integration Solutions for AirportsData Integration Solutions for Airports
Data Integration Solutions for Airports
 
Metadata Matters! What it is and How to Manage it
Metadata Matters! What it is and How to Manage itMetadata Matters! What it is and How to Manage it
Metadata Matters! What it is and How to Manage it
 
How to Efficiently Transform Non-Spatial Data using FME
How to Efficiently Transform Non-Spatial Data using FMEHow to Efficiently Transform Non-Spatial Data using FME
How to Efficiently Transform Non-Spatial Data using FME
 
Building Local Spatial Layers from a REST Web Service
Building Local Spatial Layers from a REST Web ServiceBuilding Local Spatial Layers from a REST Web Service
Building Local Spatial Layers from a REST Web Service
 
Integrating NiFi and Flink
Integrating NiFi and FlinkIntegrating NiFi and Flink
Integrating NiFi and Flink
 
Fme - What For?
Fme - What For? Fme - What For?
Fme - What For?
 
FME World Tour 2015 - FME & Data Migration Simon McCabe
FME World Tour 2015 -  FME & Data Migration Simon McCabeFME World Tour 2015 -  FME & Data Migration Simon McCabe
FME World Tour 2015 - FME & Data Migration Simon McCabe
 
IANA Services Update
IANA Services UpdateIANA Services Update
IANA Services Update
 
How to Manage Open Police Data - Tips for Data QA/QC and Automation
How to Manage Open Police Data - Tips for Data QA/QC and AutomationHow to Manage Open Police Data - Tips for Data QA/QC and Automation
How to Manage Open Police Data - Tips for Data QA/QC and Automation
 
Gomez Marvin_8_10_2016
Gomez Marvin_8_10_2016Gomez Marvin_8_10_2016
Gomez Marvin_8_10_2016
 
Analytics with R in SQL Server 2016
Analytics with R in SQL Server 2016Analytics with R in SQL Server 2016
Analytics with R in SQL Server 2016
 

Similar to FME Extensive Usage Inside the Mapping Production System of Natural Resources Canada

DevOps Evolution - The Next Generation ?
DevOps Evolution - The Next Generation ?DevOps Evolution - The Next Generation ?
DevOps Evolution - The Next Generation ?Marc Hornbeek
 
Introduction to 5w’s of DevOps
Introduction to 5w’s of DevOpsIntroduction to 5w’s of DevOps
Introduction to 5w’s of DevOpsCygnet Infotech
 
Moving to Agile Methods and DevOps on IBM i with ARCAD Pack for Rational 1479...
Moving to Agile Methods and DevOps on IBM i with ARCAD Pack for Rational 1479...Moving to Agile Methods and DevOps on IBM i with ARCAD Pack for Rational 1479...
Moving to Agile Methods and DevOps on IBM i with ARCAD Pack for Rational 1479...Philippe Krief
 
[EMC] Source Code Protection
[EMC] Source Code Protection[EMC] Source Code Protection
[EMC] Source Code ProtectionPerforce
 
Part11Solutions - Overview
Part11Solutions - OverviewPart11Solutions - Overview
Part11Solutions - Overviewpart11solutions1
 
Quality assurance in dev ops and secops world
Quality assurance in dev ops and secops worldQuality assurance in dev ops and secops world
Quality assurance in dev ops and secops worldDr. Anish Cheriyan (PhD)
 
Resume of Britt Lowry_1
Resume of Britt Lowry_1Resume of Britt Lowry_1
Resume of Britt Lowry_1Britt Lowry
 
Test Automation NYC 2014
Test Automation NYC 2014Test Automation NYC 2014
Test Automation NYC 2014Kishore Bhatia
 
DevOps Continuous Testing and LaaS – The Perfect Match for SDN
DevOps Continuous Testing and LaaS – The Perfect Match for SDNDevOps Continuous Testing and LaaS – The Perfect Match for SDN
DevOps Continuous Testing and LaaS – The Perfect Match for SDNSailaja Tennati
 
Case Study: Ecolab Transforms Infrastructure and Application Monitoring into ...
Case Study: Ecolab Transforms Infrastructure and Application Monitoring into ...Case Study: Ecolab Transforms Infrastructure and Application Monitoring into ...
Case Study: Ecolab Transforms Infrastructure and Application Monitoring into ...CA Technologies
 
Curiosity and Xray present - In sprint testing: Aligning tests and teams to r...
Curiosity and Xray present - In sprint testing: Aligning tests and teams to r...Curiosity and Xray present - In sprint testing: Aligning tests and teams to r...
Curiosity and Xray present - In sprint testing: Aligning tests and teams to r...Curiosity Software Ireland
 
(Technologies) AI, Machine Learning, Predictive Analytics, IIOT, Cloud,Web-fr...
(Technologies) AI, Machine Learning, Predictive Analytics, IIOT, Cloud,Web-fr...(Technologies) AI, Machine Learning, Predictive Analytics, IIOT, Cloud,Web-fr...
(Technologies) AI, Machine Learning, Predictive Analytics, IIOT, Cloud,Web-fr...Farhan Tariq
 
Infrastructure as Code with Chef
Infrastructure as Code with ChefInfrastructure as Code with Chef
Infrastructure as Code with ChefSarah Hynes Cheney
 
Ensuring Design Quality in Mixed Signal IP
Ensuring Design Quality in Mixed Signal IPEnsuring Design Quality in Mixed Signal IP
Ensuring Design Quality in Mixed Signal IPArasan Chip Systems
 
Efficient DevOps: Standardizing Chaotic Culture at NBCUniversal
Efficient DevOps:  Standardizing Chaotic Culture at NBCUniversalEfficient DevOps:  Standardizing Chaotic Culture at NBCUniversal
Efficient DevOps: Standardizing Chaotic Culture at NBCUniversalIBM UrbanCode Products
 

Similar to FME Extensive Usage Inside the Mapping Production System of Natural Resources Canada (20)

Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
 
DevOps Evolution - The Next Generation ?
DevOps Evolution - The Next Generation ?DevOps Evolution - The Next Generation ?
DevOps Evolution - The Next Generation ?
 
Introduction to 5w’s of DevOps
Introduction to 5w’s of DevOpsIntroduction to 5w’s of DevOps
Introduction to 5w’s of DevOps
 
Moving to Agile Methods and DevOps on IBM i with ARCAD Pack for Rational 1479...
Moving to Agile Methods and DevOps on IBM i with ARCAD Pack for Rational 1479...Moving to Agile Methods and DevOps on IBM i with ARCAD Pack for Rational 1479...
Moving to Agile Methods and DevOps on IBM i with ARCAD Pack for Rational 1479...
 
[EMC] Source Code Protection
[EMC] Source Code Protection[EMC] Source Code Protection
[EMC] Source Code Protection
 
onyango_resume_aug_2016
onyango_resume_aug_2016onyango_resume_aug_2016
onyango_resume_aug_2016
 
Part11Solutions - Overview
Part11Solutions - OverviewPart11Solutions - Overview
Part11Solutions - Overview
 
Quality assurance in dev ops and secops world
Quality assurance in dev ops and secops worldQuality assurance in dev ops and secops world
Quality assurance in dev ops and secops world
 
Ramesha Rao
Ramesha RaoRamesha Rao
Ramesha Rao
 
Resume of Britt Lowry_1
Resume of Britt Lowry_1Resume of Britt Lowry_1
Resume of Britt Lowry_1
 
Test Automation NYC 2014
Test Automation NYC 2014Test Automation NYC 2014
Test Automation NYC 2014
 
DevOps Continuous Testing and LaaS – The Perfect Match for SDN
DevOps Continuous Testing and LaaS – The Perfect Match for SDNDevOps Continuous Testing and LaaS – The Perfect Match for SDN
DevOps Continuous Testing and LaaS – The Perfect Match for SDN
 
Case Study: Ecolab Transforms Infrastructure and Application Monitoring into ...
Case Study: Ecolab Transforms Infrastructure and Application Monitoring into ...Case Study: Ecolab Transforms Infrastructure and Application Monitoring into ...
Case Study: Ecolab Transforms Infrastructure and Application Monitoring into ...
 
Curiosity and Xray present - In sprint testing: Aligning tests and teams to r...
Curiosity and Xray present - In sprint testing: Aligning tests and teams to r...Curiosity and Xray present - In sprint testing: Aligning tests and teams to r...
Curiosity and Xray present - In sprint testing: Aligning tests and teams to r...
 
Clireo eTMF Solution by arivis
Clireo eTMF Solution by arivisClireo eTMF Solution by arivis
Clireo eTMF Solution by arivis
 
(Technologies) AI, Machine Learning, Predictive Analytics, IIOT, Cloud,Web-fr...
(Technologies) AI, Machine Learning, Predictive Analytics, IIOT, Cloud,Web-fr...(Technologies) AI, Machine Learning, Predictive Analytics, IIOT, Cloud,Web-fr...
(Technologies) AI, Machine Learning, Predictive Analytics, IIOT, Cloud,Web-fr...
 
Sar
SarSar
Sar
 
Infrastructure as Code with Chef
Infrastructure as Code with ChefInfrastructure as Code with Chef
Infrastructure as Code with Chef
 
Ensuring Design Quality in Mixed Signal IP
Ensuring Design Quality in Mixed Signal IPEnsuring Design Quality in Mixed Signal IP
Ensuring Design Quality in Mixed Signal IP
 
Efficient DevOps: Standardizing Chaotic Culture at NBCUniversal
Efficient DevOps:  Standardizing Chaotic Culture at NBCUniversalEfficient DevOps:  Standardizing Chaotic Culture at NBCUniversal
Efficient DevOps: Standardizing Chaotic Culture at NBCUniversal
 

More from Safe Software

Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsSafe Software
 
The Critical Role of Spatial Data in Today's Data Ecosystem
The Critical Role of Spatial Data in Today's Data EcosystemThe Critical Role of Spatial Data in Today's Data Ecosystem
The Critical Role of Spatial Data in Today's Data EcosystemSafe Software
 
Cloud Revolution: Exploring the New Wave of Serverless Spatial Data
Cloud Revolution: Exploring the New Wave of Serverless Spatial DataCloud Revolution: Exploring the New Wave of Serverless Spatial Data
Cloud Revolution: Exploring the New Wave of Serverless Spatial DataSafe Software
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsIgniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsSafe Software
 
The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightSafe Software
 
Mastering MicroStation DGN: How to Integrate CAD and GIS
Mastering MicroStation DGN: How to Integrate CAD and GISMastering MicroStation DGN: How to Integrate CAD and GIS
Mastering MicroStation DGN: How to Integrate CAD and GISSafe Software
 
Geospatial Synergy: Amplifying Efficiency with FME & Esri
Geospatial Synergy: Amplifying Efficiency with FME & EsriGeospatial Synergy: Amplifying Efficiency with FME & Esri
Geospatial Synergy: Amplifying Efficiency with FME & EsriSafe Software
 
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdfIntroducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdfSafe Software
 
Breaking Barriers & Leveraging the Latest Developments in AI Technology
Breaking Barriers & Leveraging the Latest Developments in AI TechnologyBreaking Barriers & Leveraging the Latest Developments in AI Technology
Breaking Barriers & Leveraging the Latest Developments in AI TechnologySafe Software
 
Best Practices to Navigating Data and Application Integration for the Enterpr...
Best Practices to Navigating Data and Application Integration for the Enterpr...Best Practices to Navigating Data and Application Integration for the Enterpr...
Best Practices to Navigating Data and Application Integration for the Enterpr...Safe Software
 
Cloud Revolution: Exploring the New Wave of Serverless Spatial Data
Cloud Revolution: Exploring the New Wave of Serverless Spatial DataCloud Revolution: Exploring the New Wave of Serverless Spatial Data
Cloud Revolution: Exploring the New Wave of Serverless Spatial DataSafe Software
 
New Year's Fireside Chat with Safe Software’s Founders
New Year's Fireside Chat with Safe Software’s FoundersNew Year's Fireside Chat with Safe Software’s Founders
New Year's Fireside Chat with Safe Software’s FoundersSafe Software
 
Taking Off with FME: Elevating Airport Operations to New Heights
Taking Off with FME: Elevating Airport Operations to New HeightsTaking Off with FME: Elevating Airport Operations to New Heights
Taking Off with FME: Elevating Airport Operations to New HeightsSafe Software
 
Initiating and Advancing Your Strategic GIS Governance Strategy
Initiating and Advancing Your Strategic GIS Governance StrategyInitiating and Advancing Your Strategic GIS Governance Strategy
Initiating and Advancing Your Strategic GIS Governance StrategySafe Software
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Safe Software
 
Geospatial Synergy: Amplifying Efficiency with FME & Esri ft. Peak Guest Spea...
Geospatial Synergy: Amplifying Efficiency with FME & Esri ft. Peak Guest Spea...Geospatial Synergy: Amplifying Efficiency with FME & Esri ft. Peak Guest Spea...
Geospatial Synergy: Amplifying Efficiency with FME & Esri ft. Peak Guest Spea...Safe Software
 
Mastering DevOps-Driven Data Integration with FME
Mastering DevOps-Driven Data Integration with FMEMastering DevOps-Driven Data Integration with FME
Mastering DevOps-Driven Data Integration with FMESafe Software
 
Identification of landscape features eligible for EU subsidy - Analysis of la...
Identification of landscape features eligible for EU subsidy - Analysis of la...Identification of landscape features eligible for EU subsidy - Analysis of la...
Identification of landscape features eligible for EU subsidy - Analysis of la...Safe Software
 
Utilizing FME as an API Test Framework
Utilizing FME as an API Test Framework Utilizing FME as an API Test Framework
Utilizing FME as an API Test Framework Safe Software
 

More from Safe Software (20)

Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
 
The Critical Role of Spatial Data in Today's Data Ecosystem
The Critical Role of Spatial Data in Today's Data EcosystemThe Critical Role of Spatial Data in Today's Data Ecosystem
The Critical Role of Spatial Data in Today's Data Ecosystem
 
Cloud Revolution: Exploring the New Wave of Serverless Spatial Data
Cloud Revolution: Exploring the New Wave of Serverless Spatial DataCloud Revolution: Exploring the New Wave of Serverless Spatial Data
Cloud Revolution: Exploring the New Wave of Serverless Spatial Data
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsIgniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
 
The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and Insight
 
Mastering MicroStation DGN: How to Integrate CAD and GIS
Mastering MicroStation DGN: How to Integrate CAD and GISMastering MicroStation DGN: How to Integrate CAD and GIS
Mastering MicroStation DGN: How to Integrate CAD and GIS
 
Geospatial Synergy: Amplifying Efficiency with FME & Esri
Geospatial Synergy: Amplifying Efficiency with FME & EsriGeospatial Synergy: Amplifying Efficiency with FME & Esri
Geospatial Synergy: Amplifying Efficiency with FME & Esri
 
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdfIntroducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
 
Breaking Barriers & Leveraging the Latest Developments in AI Technology
Breaking Barriers & Leveraging the Latest Developments in AI TechnologyBreaking Barriers & Leveraging the Latest Developments in AI Technology
Breaking Barriers & Leveraging the Latest Developments in AI Technology
 
Best Practices to Navigating Data and Application Integration for the Enterpr...
Best Practices to Navigating Data and Application Integration for the Enterpr...Best Practices to Navigating Data and Application Integration for the Enterpr...
Best Practices to Navigating Data and Application Integration for the Enterpr...
 
Cloud Revolution: Exploring the New Wave of Serverless Spatial Data
Cloud Revolution: Exploring the New Wave of Serverless Spatial DataCloud Revolution: Exploring the New Wave of Serverless Spatial Data
Cloud Revolution: Exploring the New Wave of Serverless Spatial Data
 
New Year's Fireside Chat with Safe Software’s Founders
New Year's Fireside Chat with Safe Software’s FoundersNew Year's Fireside Chat with Safe Software’s Founders
New Year's Fireside Chat with Safe Software’s Founders
 
Taking Off with FME: Elevating Airport Operations to New Heights
Taking Off with FME: Elevating Airport Operations to New HeightsTaking Off with FME: Elevating Airport Operations to New Heights
Taking Off with FME: Elevating Airport Operations to New Heights
 
Initiating and Advancing Your Strategic GIS Governance Strategy
Initiating and Advancing Your Strategic GIS Governance StrategyInitiating and Advancing Your Strategic GIS Governance Strategy
Initiating and Advancing Your Strategic GIS Governance Strategy
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
 
Geospatial Synergy: Amplifying Efficiency with FME & Esri ft. Peak Guest Spea...
Geospatial Synergy: Amplifying Efficiency with FME & Esri ft. Peak Guest Spea...Geospatial Synergy: Amplifying Efficiency with FME & Esri ft. Peak Guest Spea...
Geospatial Synergy: Amplifying Efficiency with FME & Esri ft. Peak Guest Spea...
 
Mastering DevOps-Driven Data Integration with FME
Mastering DevOps-Driven Data Integration with FMEMastering DevOps-Driven Data Integration with FME
Mastering DevOps-Driven Data Integration with FME
 
Identification of landscape features eligible for EU subsidy - Analysis of la...
Identification of landscape features eligible for EU subsidy - Analysis of la...Identification of landscape features eligible for EU subsidy - Analysis of la...
Identification of landscape features eligible for EU subsidy - Analysis of la...
 
Utilizing FME as an API Test Framework
Utilizing FME as an API Test Framework Utilizing FME as an API Test Framework
Utilizing FME as an API Test Framework
 

Recently uploaded

"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 

Recently uploaded (20)

"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 

FME Extensive Usage Inside the Mapping Production System of Natural Resources Canada

  • 1. 1   FME within NRCan Marie-EveMartin Jean-MarcPrévost
  • 2. 2   Agenda !  Context !  System architecture !  Programming standards, Quality assurance, testing methods, etc. !  Validations processes and dependencies !  FME developments at NRCan !  Safe Software collaboration
  • 3. 3   Agenda !  Context !  Who are we? !  Where do we come from? !  Where are we now? !  Where are we going? !  System architecture !  Programming standards, Quality assurance, testing methods, etc. !  Validations processes and dependencies !  FME developments at NRCan !  Safe Software collaboration
  • 4. 4   Natural Resources Canada Mission and Outcomes
  • 5. 5   NRCan   Earth  Science   Sector   Geoma4cs   Canada   CCMEO  /  CCCOT   Energy  Sector   Canadian  Forest  Service   Direc4on  &  Coordina4on   Minerals  &  Metal  Sector   Science  &  Policy   Integra4on   Energy  Technology  &   Programs  Sector   Corporate  Management   &  Services  Sector   NRCan structure overview CCMEO    Canada    Centre  for    Mapping  and    Earth    Observa5on   CCCOT    Centre    Canadien  de    Cartographie  et  d’    Observa5on  de  la    Terre   CCMEO  total  number  of  employees:  319   227  employees  for  Mapping     92  employees  for  Earth  Observa5on   Sherbrooke   OGawa  
  • 6. 6   Agenda !  Context !  Who are we? !  Where do we come from? !  Where are we now? !  Where are we going? !  System architecture !  Programming standards, Quality assurance, testing methods, etc. !  Validations processes and dependencies !  FME developments at NRCan !  Safe Software collaboration
  • 7. 7   FME history at CCMEO NTDB   specs   vectoriza4on   File  management   CanVec,  CanTopo,  GeoBase,  etc.  era   Database  management   FGP   2015  2010  2005  2000  1995  1990  1985   Transla4ons   -­‐  Workbench   -­‐  Data  manipula4on  &  valida4on   Custom  transformers   -­‐  Programming  standards   -­‐  Tes4ng  methodology   ≈700  
  • 8. 8   Agenda !  Context !  Who are we? !  Where do we come from? !  Where are we now? !  Where are we going? !  System architecture !  Programming standards, Quality assurance, testing methods, etc. !  Validations processes and dependencies !  FME developments at NRCan !  Safe Software collaboration
  • 9. 9   Distribu?on  Management   System architecture at CCMEO Aquisi?on   Condi4onning   Partners Data acquisition Others   Data   Access  QA  
  • 10. 10   What do we produce ? !  Main products : !  Canvec !  Toporama !  CDED !  200 collections of various nature !  Statistics for last year : !  8 500 000 downloads !  3 000 mail and phone requests
  • 11. 11   Where to find our products ? !  Data availability : !  Geogratis : geogratis.gc.ca !  Geobase : www.geobase.ca !  WMS services !  Licence : Open Government Licence
  • 12. 12   Data extraction tool http://geogratis.gc.ca/site/eng/extraction
  • 13. 13   Agenda !  Context !  Who are we? !  Where do we come from? !  Where are we now? !  Where are we going? !  System architecture !  Programming standards, Quality assurance, testing methods, etc. !  Validations processes and dependencies !  FME developments at NRCan !  Safe Software collaboration
  • 14. 14  
  • 15. 15   Agenda !  Context !  System architecture !  Programming standards, Quality assurance, testing methods, etc. !  Validations processes and dependencies !  FME developments at NRCan !  Safe Software collaboration
  • 16. 16   System architecture FME,  Python,     .EXE,  SQL,  etc.   Windows  servers   Produc4on:  64  processes  (32bits)   Distribu4on:  56  processes  (64bits)   Oracle  11g,  PostgreSQL  9.2   ArcSDE  10.1,  PostGIS  2.0   400  TB   Instruc?on   files  
  • 17. 17   Agenda !  Context !  System architecture !  Programming standards, Quality assurance, testing methods, etc. !  Validations processes and dependencies !  FME developments at NRCan !  Safe Software collaboration
  • 18. 18   Worbenches – Last saved build Programs  s4ll   in  opera4on  !  
  • 19. 19   Taking control !  2007 problematic: !  Mix of FME versions on computers !  Everyone wanted the lasted build !  Increasing number of workbenches !  Workbenches were transferred to support team !  Solution : !  FME upgrades management !  Programming standards
  • 20. 20   FME upgrades management !  Upgrade rules: !  Everyone use one common build !  Upgrade only to official builds !  At least one upgrade per year (idealy no more than two)
  • 22. 22   Programming standards !  Documentation (.docx and annotations) !  Parameter naming standards !  Known bad practices review !  Unit tests !  Peer review
  • 23. 23   Programming standards Examples of bad practices !  Missing Rounders !  Missing Terminators
  • 24. 24   Programming standards Unit tests !  Each workbench is managed in a source code control environment !  Each workbench is saved with the bat file, sources and expected results files necessary to test it !  Batch testing of all workbenches before every upgrade.
  • 25. 25   Programming standards Unit tests !  Fail rate is used to plan upgrades Source Destination Fail rate 2013 SP1 2013 SP4 2% 2013 SP4 2014 SP1 10%
  • 26. 26   Programming standards Peer review !  FME is easy to learn without taking classes !  FME always offer various way of doing something !  Peer review allows: !  Improved shared knowledge !  Programming uniformity !  Identifying repetitive patterns
  • 27. 27   Agenda !  Context !  System architecture !  Programming standards, Quality assurance, testing methods, etc. !  Validations processes and dependencies !  FME developments at NRCan !  Safe Software collaboration
  • 28. 28   Validation processes !  At CCMEO, FME is used for : !  Feature translation !  Feature creation !  Feature validation Catalog
  • 29. 29   Distribu?on  Management   Validation processes Aquisi?on   Condi4onning   Partners Data acquisition Others   Data   Access  QA  
  • 30. 30   Validation Catalog !  ISO-19110 compliant XML HTMLDatabase Users
  • 31. 31   Catalog based validations !  Spatial relations validation !  Domain attribute validation !  Proximity validation !  Minimal dimension validation !  Segmentation validation !  Data clipping validation
  • 32. 32   Catalog based validations Example Spatial relations validation !  Based on Egenhofer-Clementini DE-9IM masks
  • 33. 33   Catalog based validations Examples !  Spatial relations !  Attribute value
  • 34. 34   Catalog validation within FME ISO  19110   XML   List  friendly   format   Generic  reader   Generic  writer   Valida4on   Error     forma4ng   Valida4on  rules   extrac4on   Valida4on   Error     forma4ng   Valida4on  rules   extrac4on   One  custom  transformer   per  valida5on  concept!  
  • 35. 35   Catalog validation within FME !  Real program example:
  • 36. 36   Agenda !  Context !  System architecture !  Programming standards, Quality assurance, testing methods, etc. !  Validations processes and dependencies !  FME developments at NRCan !  Safe Software collaboration
  • 37. 37   Utility customs - Examples !  TerminatorRecorder !  Record all the errors to a .ffs file before causing the workbench to fail !  TerminatorMinMax !  Cause the workbench to fail if the number of feature is not as expected
  • 38. 38   !  Matcher_CCMEO !  Match features if start/end points are within tolerance !  SnapToNeatline !  Snap features within tolerance without collapsing Utility customs - Examples
  • 39. 39   Utility customs - Examples !  SchemaMapper_CCMEO !  Similar to SchemaMapper but : !  Allow mapping with a variable number of conditions !  Conditions may be ranges of values !  Conditions may use any operator (>, <, != , etc) !  Conditions are validated and produce report if badly formatted TYPE=[11:13];PRECISION<=20;NAME=Lake  
  • 40. 40   Validation customs Minimal dimension Voronoi   Side  lines   Centerline   Area   Width   Length  
  • 41. 41   Validation customs Proximity What  are  we   looking  for?   Valida4on   Process   Op4misa4on   Process  
  • 42. 42   Agenda !  Context !  System architecture !  Programming standards, Quality assurance, testing methods, etc. !  Validations processes and dependencies !  FME developments at NRCan !  Safe Software collaboration
  • 43. 43   Safe Software collaboration !  Motivations for collaboration !  Simplifies our workbenches !  Faster processing !  Maintenance under Safe’s responsibility
  • 44. 44   Safe Software collaboration Generalization Hydro network AngularityCalculator   SherbendGeneralizer   StreamOrderCalculator   StreamPriorityCalculator   NetworkFlowOrientor   BoundingBoxAccumulator  
  • 45. 45   Safe Software collaboration VoronoiDiagrammer  
  • 49. 49   Generalizer Wang   The  Wang  algorithm  will  itera5vely  combine,  eliminate  and  exaggerate  bends  un5l   the  input  line  feature  has  no  bend  that  is  smaller  than  the  given  tolerance  value.   McMaster  /  McMaster  Weighted  Distance   The  McMaster  algorithm  calculates  a  new  loca5on  for  each  point  by  first  taking  the   average  value  of  the  x  and  y  coordinates  of  the  point  and  a  number  of  neighboring   points.  It  then  slides  the  averaged  point  towards  the  original  point  according  to  a   specified  displacement  value.  The  overall  effect  is  that  each  point  will  be  pulled   towards  its  neighboring  points.   NURBfit  (B-­‐Spline)   The  NURBfit  algorithm  will  fit  lines  using  B-­‐Spline  curves  of  given  polynomial  degree.   The  resul5ng  lines  will  follow  these  curves  with  given  segment  length.  The  higher  the   degree,  the  smoother  the  line.  An  example  of  usage  is  smoothing  contour  lines  in   order  to  remove  sparks  and  simulate  the  work  of  a  cartographic  cra[sman.   Inflec?on  Points   The  Inflec5on  algorithm  will  calculate  the  loca5on  of  the  inflec5on  points  along  a   line  and  return  the  list  of  these  points.  Inflec5on  points  are  measures  of  the  sinuosity   of  a  line.  
  • 55. 55   Chopper use case scenario chopper dissolve chopper chopper dissolve dissolve Data extraction Group by metadata No group by