Jan van Bennekom-Minnema [email protected] MSc Programme GIMA msc-gima.nl

60
1 18.06.08 # The Land Administration Domain Model 'Survey Package' and Model Driven Architecture Presentation of Master of Science Thesis Jan van Bennekom-Minnema [email protected] MSc Programme GIMA http://www.msc-gima.nl

description

The Land Administration Domain Model 'Survey Package' and Model Driven Architecture Presentation of Master of Science Thesis. Jan van Bennekom-Minnema [email protected] MSc Programme GIMA http://www.msc-gima.nl. Research Topics. MDA Prototype. Conclusion. Introduction. Agenda. - PowerPoint PPT Presentation

Transcript of Jan van Bennekom-Minnema [email protected] MSc Programme GIMA msc-gima.nl

Page 1: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

118.06.08

#

The Land Administration Domain Model'Survey Package'

and Model Driven Architecture

Presentation of Master of Science Thesis

Jan van [email protected]

MSc Programme GIMAhttp://www.msc-gima.nl

Page 2: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation218.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Agenda

Introduction

– Highlight main topics and MSc thesis project

Details on Research Topics

– Land Administration Domain Model, Model Driven Architecture, constraints in UML models, Kadaster survey measurements

Model Driven Architecture Prototype

– Transformations from PIM to PSM

– Analysis of quality/accuracy of Dutch cadastral map

Conclusion

– Revisit research question, conclusions, recommendations

Research Topics

MDA Prototype

Conclusion

Introduction

Page 3: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation318.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

INTRODUCTION

Land Administration Domain Model 'Survey Package'

Object Constraint Language

Model Driven Architecture

Kadaster Project "Registration Map Quality"

MSc Thesis Project

– Objective

– Research Question

– Approach

Abbreviations

LADM = Land Administration Domain Model

LADM SP = LADM's Survey Package

MDA = Model Driven Architecture

PIM = Platform Independent Model (e.g. LADM)

PSM = Platform Specific Model (e.g. for PostGIS)

OCL = Object Constraint Language

EA = Enterprise Architect (-> UML/MDA tool)

Introduction

Page 4: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation418.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Land Administration Domain Model 'Survey Package'

Land Administration Domain Model (LADM)– UML class diagram [Lemmen and Van Oosterom, 2006]– ISO 19152 standard [ISO/TC211, 2008]

Goals

– Extensible basis for IS development, based on Model Driven Architecture (MDA)

LADM packages

– Core elements:

Registered Object, RRR (Rights, Responsibilities, Restrictions) & Persons

– 5 LADM packages around core elements

Focus on: Survey Package– Measurements of immovable objects– Representations of objects on the cadastral map

Introduction

Page 5: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation518.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Object Constraint Language

Object Constraint Language (OCL) [OMG, 2006b]

– UML is not capable of modelling every kind of constraint

– Extension of the UML diagrams to formally describe constraints

– No support for spatial data types and operations

Example OCL constraint

– Based on LADM Core Elements

OCL invariant:

context RegisterObject

inv SumOfShares:

self.RRR.share->sum()=1 or self.RRR->size()=0

Written constraint:

the sum of all shares

of a certain right (RRR)

on a specific RegisterObject should be 1

Rights, Responsibilities

and Restrictions

Introduction

Page 6: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation618.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Model Driven Architecture

Model Driven Architecture [OMG, 2003]

– Generate information systems (semi) automatically

– Based on platform independent models

Input: Platform Independent Model (PIM)

– The LADM Survey Package UML Class Diagram (+ OCL)

– Independent of implementation technology (e.g. PostGIS)

E.g. classes, attributes, associations

Output: Platform Specific Models (PSM)

– The LADM 'Survey Package' PostgreSQL/PostGIS database

– Specific for target platform (i.e. PostGIS)

E.g. tables, columns, primary key and check constraints, views, triggers

Introduction

Page 7: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation718.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Kadaster Project "Registration Map Quality"

Case Study: Project "Registration Map Quality"

– NL: "Registratie Kaart Kwaliteit"

– Survey Measurements

Differences between:

– Measured coordinates of parcels & buildings

– Adjusted (Transferred) coordinates of parcels & buildings to fit in the cadastral map (with existing objects)

Survey Measurements from Kadaster

– April 2006 - December 2007

– Analysis of Quality / Accuracy of Cadastral Map

Graphical Precision: difference = max. 20 cm in urban area and 40 cm in rural area

Introduction

Page 8: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation818.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

MSc Thesis ProjectObjectives and Research Question

Objectives

– Investigate the possibilities and limitations of the Model Driven Architecture (MDA) approach

– Establish an extension of the Land Administration Domain Model (LADM) with regard to its Survey Package

Research Question

How can the Land Administration Domain Model 'Survey Package'

be implemented and deployed based on Model Driven Architecture principles, and

how can the Land Administration Domain Model 'Survey Package'

be extended and improved?

Introduction

Page 9: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation918.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

MSc Thesis ProjectSub-topics

Evaluation of LADM 'Survey Package'

– Literature research

Evaluation of Model Driven Architecture

– Literature research & MDA Prototype experiments

Evaluation of constraints in data modelling

– Literature research and MDA Prototype experiments

Case Study

– Literature research and analysis of processes, tools and data for survey measurements

Create MDA Prototype to implement Adapted LADM 'Survey Package'

– MDA Prototype experimentsCompliance with MDA concepts

Degree of automatic MDA transformations

Standard support and required custom development by MDA tool (i.e. EA)

Introduction

Page 10: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation1018.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Introduction - Summary

Prepare an Platform Independent Model (PIM)

– Adapted LADM 'Survey Package'

Build a MDA Prototype

– To Transform PIM into Platform Specific Model (PSM)

– Target PSM = PostGIS

– Based on Enterprise Architect (EA)

Create PostGIS database

– Generate DDL scripts to automatically create database

Load Kadaster data

– Analyse survey measurements -> quality/accuracy cadastral map

Next: Research Topics

Introduction

Research Topics

Page 11: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation1118.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

DETAILS on RESEARCH TOPICS

LADM Survey Package

– Adapted LADM Survey Package

Model Driven Architecture

– Process

Constraints in Data Modelling

– Object Constraint Language (OCL)

– Implementation examples

Research Topics

Page 12: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation1218.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

LADM ‘Survey Package’

Recommendations for extension

– Minor errors reported

– Preliminary recommendations, e.g. SurveyProject

Publications relevant for extension

– Observations and Measurements [Open Geospatial Consortium, 2006b]

– Survey Record Management System [Lee, 2005]

Adapted LADM ‘Survey Package’

– To serve as input PIM for MDA prototype

– To be able to contain the Survey Measurement data (Kadaster)

Research Topics

Page 13: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation1318.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Research Topics

Adapted LADM 'Survey Package'PIM / UML class diagram

SurveyProject

SurveyDocument

SurveyPoint

Page 14: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation1418.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Research Topics

Platform Independent Model

(PIM)

Adapted LADM 'Survey Package'

PostGIS:

•geometry

•POINT

•POLYGON

•Etc.

Platform Specific data types and operations

Platform Specific Model

(PSM)

Target platform PostgreSQL/PostGISPlatform Specific implementation code (e.g. DDL & DML)

Platform Independent data types and operations

MDA Transformation Rules:

•Class to Table

•Generate Primary Key

•Enumeration Class

•Etc.

Platform Specific Transformation Specification

ISO19107:

•GM_Point

•GM_Polygon

•Etc.

Model Driven Architecture Process

Page 15: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation1518.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Object Constraint Language Implementation example (1)

Simple constraint for multiple attributes

"startDate" must be before "endDate"

OCL invariant for multiple attribute:

context SurveyProject

inv startDateBeforeEndDate:

self.startDate < self.endDate

Implemented as table check constraint

Table survey_project CHECK ( start_date < end_date )

Research Topics

Page 16: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation1618.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Research Topics

Object Constraint Language Implementation example (2)

Complex constraint for multiple classes

Sum of "share" must be equal to 1

(Not in thesis report -> FIG WW Stockholm)OCL invariant for multiple classes:

context RegisterObject

inv SumOfShares:

self.RRR.share->sum()=1 or self.RRR->size()=0

Implemented as OCL View used in database trigger(s)

create view v_ocl_sum_of_shares as

select self.oid

from register_object self

, right_responsibility_restriction rrr

where self.oid = rrr.register_object.oid

having sum(rrr.share) = 1

OCL View: returns records that violate the

OCL invariant

Page 17: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation1718.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Research Topics - Summary

Adapted LADM 'Survey Package' defined (PIM)

MDA process from PIM to PSM

– Platform Specific Transformation Rules

Set of MDA transformation rules, one for each PIM element

Constraint (OCL) implementation examples

Next: MDA Prototype

Research Topics

MDA Prototype

Page 18: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation1818.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

MDA PROTOTYPE

MDA Prototype Setup

– Based on Enterprise Architect [Sparx Systems, 2007]

– Transformations from PIM to PSM

Result: Platform Specific Model

– For Adapted LADM 'Survey Package'

Analysis of Quality of Dutch Cadastral Map

MDA Prototype

Page 19: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation1918.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

C# Windows Forms

– 5800 lines of source code

– 90% custom developed

– demonstration

MDA Prototype Setup

MDA Prototype

Page 20: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation2018.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Transformations from PIM to PSMMDA Prototype Functionality

First Transformation from PIM to PSM-1

– Transformation of PIM elements (UML class diagram)

– based on EA functionality: Transformation Definitions

Second Transformation from PSM-1 to PSM-2

– Fine-tuning of PSM elements (UML class diagram)

– based on MDA Prototype in C# / .NET (EA SDK)

Third Transformation from PIM OCL to PSM-2

– Initial experiments with OCL invariants

– based on MDA Prototype in C# / .NET (EA SDK)

Generate database creation scripts

– E.g. Tables, Geometry Columns, Primary, Unique and Foreign Key constraints, Check constraints, Indexes, Views

MDA Prototype

Page 21: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation2118.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Research Topics

Model Driven ArchitectureTransformation Rules

Object Oriented UML (PIM)

– Class

– Attribute

– PIM data type

GM_Point (ISO19107)

GM_Polygon (ISO19107)

– Association

– Super & Sub Class

Flattening of class hierarchy branch

– Enumeration Class

– CodeList Class

– Attribute with [0..*] bounds

Relational DBMS (PSM)

– Table + Primary Key constraint

– Column

– PSM data type

POINT (PostGIS)

POLYGON (PostGIS)

– Foreign Key Constraint

– One Table

Inherited columns for super class attributes

– Check constraint

– 'Look-up' table

– Child table with foreign key

MDA Transformation Rule for each PIM element

Page 22: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation2218.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

MDA Prototype

Example MDA Transformation Rule: 1) Column Data type

– PIM: String GM_Point GM_MultiSurface

– PSM: varchar(100) POINT MULTIPOLYGON

PIM

PSM: PostGIS

Page 23: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation2318.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Example MDA Transformation Rule: 2) Transformation of Super and Sub Classes

Super class SourceDocument

– Inherited by table legal_document and survey_document

Super class SourceDocument

PIM PSM: PostGIS

MDA Prototype

Sub class LegalDocument

Sub class SourceDocumen

t

Page 24: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation2418.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

MDA Prototype

Example MDA Transformation Rule: 3) Transformation of <<enumeration>> class

Enumeration class SurveyPointQuality

– Implemented as check constraint check_survey_point_quality

PIM PSM: PostGIS

Page 25: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation2518.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

MDA Prototype

Result: Platform Specific Model (PSM) Adapted LADM 'Survey Package' in PostGIS

Platform Independent Model (PIM)Platform Specific Model: PostGIS

Page 26: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation2618.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

The Netherlands (April 2006 - Dec. 2007)

Connection Points

– Of existing objects

– Measured Coordinate

– Transferred Coordinate

– Used for analysis of quality/accuracy of cadastral map

MDA Prototype

Difference between measured and transferred coordinate

• Max 20 cm in Urban area

• Max. 40 cm in Rural area

Population of PostGIS Survey Measurements

Page 27: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation2718.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Analysis of provided dataCadastral Office

National level 20 cm

MDA Prototype

Difference between measured and transferred coordinate

• Max 20 cm in Urban area

• Max. 40 cm in Rural area

Page 28: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation2818.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Analysis of provided dataCadastral Section

Outside Kadaster Norm

– Less than 95% of measurements within resp. 20 and 40 cm

MDA Prototype

Page 29: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation2918.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

MDA Prototype - Summary

Custom developed MDA prototype (C#)

Based on possibilities Enterprise Architect

Based on specified MDA transformation rules

Automatically generates PSM from PIM

Automatically generates DDL creation scripts

Analysis of cadastral map accuracy performed

Next: Demonstration MDA Prototype

Next: Conclusion

MDA Prototype

Conclusion

Page 30: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation3018.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Demonstration MDA Prototype

From PIM to PostGIS (database create scripts)

SurveyProject, SurveyDocument & SurveyPoint

MDA Prototype

Page 31: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation3118.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Conclusions

Research objective reviewed

Conclusions on MSc thesis project

Recommendations for Future

Conclusion

Page 32: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation3218.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Research objective reviewed

Focus on Model Driven Architecture

– "to gain experience with Model Driven Architecture (MDA) by performing a literature study, and by creating a prototype of the (adapted) LADM Survey Package, based on MDA principles".

Performed partially

– the analysis of the quality / accuracy of cadastral map

differences between measured and transferred coordinates of connection points

– the involvement of OCL constraints in the MDA prototype

Limited amount of experiments

– the extension and improvement of the LADM 'Survey Package'

Conclusion

Page 33: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation3318.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Conclusions (1)

MDA Prototype Automatically transforms PIM to PSM

– PIM -> PSM -> PostGIS

– complaint with MDA concept [OMG, 2003]

– Based on Enterprise Architect

Solution for difference between O-O (PIM) and relational DBMS (PSM)

– Based on Platform specific transformation specification

MDA transformation rules

– Considerable custom development required

Conclusion

Page 34: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation3418.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Conclusions (2)

Transform and implement Geometric data types and operations

– Transforming geometric data types

e.g. GM_Point, GM_LineString, GM_Polygon

– No Topology -> future research

Constraints assessed and classified for implementation

– Object Constraint Language (OCL)

extension of UML -> constraints that cannot be recorded in UML.

– Implementation by row and statement level triggers

– Custom development of a "transaction management mechanism" required

Conclusion

Page 35: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation3518.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Conclusions (3)

Analysis of quality of the cadastral map at different levels

– required "graphical precision" (20/40 cm) is obtained at level of Cadastral Offices

– individual cases exist at cadastral section level need analysis

Conclusion

Page 36: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation3618.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Recommendations (1)

Improve the standard MDA transformations in Enterprise Architect

– Support more complex MDA transformation rules by EA

Not only the EA Software Developers Kit (~ custom development)

– Support OCL

Enhance the current MDA Prototype

– Aimed at changes to existing target databases

– Support additional MDA transformation rules

Conclusion

Page 37: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation3718.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Recommendations (2)

Build MDA Transformation Tool based on XMI

– Independent of commercially available tool

– Based on XMI (input/output) [OMG, 2005]

– Variation of MDA transformation rules for UML and OCL

Further research into combination of MDA, OCL, Geometry, and Topology

– Other geometric data types and operations

– Topological data types, structures and operations

Conclusion

Page 38: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation3818.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Recommendations (3)

Extend the OCL with spatial definitions

– Spatial data types and operations

– Platform independent level: e.g. ISO19107

– Platform specific level: e.g. ISO/IEC 13249 SQL/MM

Extend the LADM 'Survey Package'

– Resolution of errors and improvements (from MSc thesis report)

– Publications on survey measurement related areas [Ingvarsson, 2005, Lee, 2005, Open Geospatial Consortium, 2006b].

Conclusion

Page 39: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation3918.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Recommendations (4)

Further analysis of quality of the Cadastral Map

– Outliers in the data

– Which sections are Urban and which are Rural?

– Cadastral Sections with less than 95% within 40 cm range

Implement improvements with regard to Survey Measurement Handling

– Currently based on different and separated applications

– Not all data is preserved (digitally and centrally)

– Recommended: Permanent storage in an integrated structured database with constraint validation and handling

– Possible result: improving the (less accurate) cadastral map with (more accurate) measurements in stead of the reverse

Conclusion

Page 40: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation4018.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Sources

MSc Thesis & MDA Prototype source

– http://www.rgi-otb.nl/geoinfoned/mda

– http://www.janvanbennekom.nl/mscthesis.html

FIG Working Week 2008, Stockholm

– The Model Driven Architecture Approach Applied to the Land Administration Domain Model Version 1.1 - with Focus on Constraints Specified in the Object Constraint Language

– http://www.fig.net/pub/fig2008/papers/ts01e/ts01e_01_hespanha_etal_2962.pdf

Future articles

– Currently planning sub-sequent article MDA/OCL

Conclusion

Page 41: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation4118.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Discussion

Thank you for your attention

Next: Discussion

Introduction

Conclusion

MDA Prototype

Research Topics

Page 42: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation4218.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

BACKUP

Page 43: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation4318.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

OCL Example (1)

Constraint for one attribute

"name" must be in uppercase

OCL invariant for attribute:

context CadastralMunicipality

inv nameUppercase: self.name = self.name.toUpper()

Implemented as table check constraint

Table cadastral_municipality CHECK ( name = upper(name) )

Research Topics

Page 44: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation4418.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Research Topics

Implementation of ConstraintsRow, Statement, Transaction level

Example Transaction

– Group of insert, update, delete statements

– SurveyProject, SurveyDocument, SurveyPoint

Transaction Create survey documents with survey points

Statement 1 Create survey project

Statement 6 Update survey points

Statement 2 Create survey document

INSERT INTO survey_project (oid, survey_project_type, surveyor, start_date) VALUES (80430, ‘collection’, ‘Van de Wetering’, now() );

INSERT INTO survey_document (oid, survey_project_oid, survey_date) VALUES (51122, 80430, now() );

Statement 3 Create survey pointINSERT INTO survey_point (oid, source_oid, location_measured) VALUES (1234, 51122, ST_PointFromText(POINT(100874.278 428888.75), 28992) ) );

Statement 4 Create survey point

Statement 5 Create survey point

INSERT INTO survey_point (oid, source_oid, location_measured) VALUES (1235, 51122, ST_PointFromText(POINT(100881.217 428902.95), 28992) ) );

INSERT INTO survey_point (oid, source_oid, location_measured) VALUES (1236, 51122, ST_PointFromText(POINT(100897.223 428888.322), 28992) ) );

UPDATE survey_point set point_number = 1 where oid = 1234;

UPDATE survey_point set point_number = 1 where oid = 1235;

UPDATE survey_point set point_number = 3 where oid = 1236;

Commit Transaction

row level trigger

row level trigger

row level trigger

row level trigger

row level triggerrow level triggerrow level trigger

statement level trigger

statement level trigger

statement level trigger

statement level trigger

statement level trigger

statement level trigger

row level trigger

Page 45: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation4518.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Research Topics

1st phase free network adjustment

Various measurements of one (1) point

Local and/or Dutch RijksDriehoek spatial reference system

Create one (1) Measured coordinate

Input 2nd phase adjustment

Page 46: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation4618.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Research Topics

2nd phase control point constraint network adjustment

Convert measured coordinate to fit into the cadastral map

Result: Transferred coordinate

– In cadastral map

Page 47: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation4718.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

MDA Prototype

Example MDA Transformation Rule: 2) Column Cardinality

Column errors of type ProjectMessage

– With cardinality [0..*]

– Implemented as child table errors_survey_project

PIMPSM: PostGIS

Page 48: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation4818.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

MDA Prototype

MDA Prototype SetupEnterprise Architect

Based on Enterprise Architect

EA = UML modelling tool

– PIM: Adapted LADM 'Survey Package'

– PSM: e.g. PostgreSQL/PostGIS

OCL support is limited in EA

– Limited validation / no transformation & implementation

EA supports MDA transformation

– EA Transformation Definitions

– EA Software Developers Kit

– Aimed at custom development

Page 49: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation4918.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

MDA Prototype

Example MDA Transformation Rule: 5) Transformation of <<CodeList>> class

CodeList class SurveyDocumentType

– Implemented as look-up table codelist_surveydocumenttype

PIM

PSM: PostGIS

Page 50: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation5018.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Implementation of Constraints

SQL sub select in base table check constraint

ALTER TABLE survey_document

ADD CONSTRAINT amount_of_survey_points CHECK

(not exists (select count(spt.source_oid)

from survey_point spt

where oid = spt.source_oid

having not (count(spt.source_oid) = 0

or count(spt.source_oid) > 2) ) );

SQL standard [ISO/IEC, 2003]

– Assertions

– Sub selects in base table check constraints

– Suitable, but not possible/available

SQL Assertion

create assertion amount_of_survey_points

Check (not exists

(select * from v_ocl_amount_of_survey_points));

Research Topics

Page 51: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation5118.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

MDA Prototype

Open Source Tools

PostgreSQL / PostGIS database

– http://www.postgresql.org & http://postgis.refractions.net

uDig: visualisation of the geographic information

– http://udig.refractions.net/

7.5 million records provided by Kadaster

Page 52: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation5218.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Research Topics

Kadaster Project "Registration Map Quality"

Handling of Survey Measurements

1st phase free network adjustment

– Input: various survey measurements of one point

– Output: one Measured Coordinate

2nd phase control point constraint network adjustment

– Input: Measured Coordinate

– Output: Transferred Coordinates for Parcels and buildings on cadastral map

Survey Measurements are "fitted in" the cadastral map

Page 53: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation5318.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Research Topics

Quality of cadastral map

Difference Measured and Transferred Coordinate

– i.e. before and after 2nd phase adjustments

– Graphical Precision: max. 20 cm in urban & 40 cm in rural area

– Kadaster Norm: Graphical Precision: valid for 95% of survey measurements

Page 54: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation5418.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Analysis of provided dataCadastral Municipality

Difference between measured and transferred coordinate

•Max 20 cm. in Urban area

•Max. 40 cm. in Rural area

MDA Prototype

Page 55: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation5518.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Constraints in Data modellingImplementation possibilities in target PSM

RDBMS standard provided functionality, e.g.:

mandatory columns (i.e NOT NULL)

primary key constraint

unique key constraint

foreign key constraint

Base table Check constraints

Research Topics

Page 56: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation5618.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Constraints in Data modellingImplementation possibilities in target PSM

Alternative: Table triggers using OCL Views

– Row level; firing for each record

– Statement level; firing for a group of records for one table

– Some (more complex) constraints require triggers at Transaction Level

For example: the "SumOfShares" constraint

SQL standard

– SQL assertion

– Sub-select statements in check-constraints

Transaction Management Mechanism

– Handling records for multiple tables

– Requires a custom development

Research Topics

Not available

Page 57: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation5718.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

MDA Prototype

C# Windows Forms

– 5800 lines of source code

– 90% custom developed

Input:

– Platform

Independent Model

Output: PSM

– Platform

Specific ModelPIM

PSM

MDA Prototype Setup

Adapted LADM 'Survey Package'

Target platform PostgreSQL/PostGIS

Page 58: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation5818.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Population of PostGISParcels and Buildings

Province of Utrecht

MDA Prototype

Page 59: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation5918.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion

Population of PostGISCadastral Office, Municipalities, Sections

The Netherlands

MDA Prototype

Municipality Houten

Section K

Page 60: Jan van Bennekom-Minnema mail@janvanbennekom.nl MSc Programme GIMA msc-gima.nl

Master of Science Thesis Presentation6018.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture

#

Research Topics

Introduction

MDA Prototype

Conclusion