OTB Research Institute for Housing, Urban and Mobility Studies 2007-12-071 Research Outcomes – Aug.-Dec. 07 PhD Thesis “Development Methodology for an.

Slides:



Advertisements
Similar presentations
Three-Step Database Design
Advertisements

Integration of MBSE and Virtual Engineering for Detailed Design
Profiles Construction Eclipse ECESIS Project Construction of Complex UML Profiles UPM ETSI Telecomunicación Ciudad Universitaria s/n Madrid 28040,
MDI 2010, Oslo, Norway Behavioural Interoperability to Support Model-Driven Systems Integration Alek Radjenovic, Richard Paige The University of York,
Presented by: Thabet Kacem Spring Outline Contributions Introduction Proposed Approach Related Work Reconception of ADLs XTEAM Tool Chain Discussion.
Building Enterprise Applications Using Visual Studio ®.NET Enterprise Architect.
Geographic Information Systems
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Whole Platform Tesi di Dottorato di: RICCARDO SOLMI Università degli Studi di Bologna Facoltà di scienze matematiche, fisiche e naturali Corso di Dottorato.
Supplement 02CASE Tools1 Supplement 02 - Case Tools And Franchise Colleges By MANSHA NAWAZ.
Attribute databases. GIS Definition Diagram Output Query Results.
RIZWAN REHMAN, CCS, DU. Advantages of ORDBMSs  The main advantages of extending the relational data model come from reuse and sharing.  Reuse comes.
Object Oriented Analysis and Design Using the UML
Version Enterprise Architect Redefines Modeling in 2006 An Agile and Scalable modeling solution Provides Full Lifecycle.
MDC Open Information Model West Virginia University CS486 Presentation Feb 18, 2000 Lijian Liu (OIM:
Database System Development Lifecycle © Pearson Education Limited 1995, 2005.
UML - Development Process 1 Software Development Process Using UML (2)
Overview of the Database Development Process
CSC2012 Database Technology & CSC2513 Database Systems.
Xactium xDSLs Run Models Not Code Tony Clark
Chapter 6 System Engineering - Computer-based system - System engineering process - “Business process” engineering - Product engineering (Source: Pressman,
Faculty of Informatics and Information Technologies Slovak University of Technology Peter Kajsa and Ľubomír Majtás Design.
Slide 1 Wolfram Höpken RMSIG Reference Model Special Interest Group Second RMSIG Workshop Methodology and Process Wolfram Höpken.
Designing and Performing Geographic Analysis Processes with GISCASE Cirano Iochpe, Guillermo N. Hess, Cláudio Ruschel, Alécio P. D. Binotto, Luciana V.
MDA and QVT  Tom Gullion, Director of Product Management, Together Products.
ITEC224 Database Programming
1 Introduction to Database Systems. 2 Database and Database System / A database is a shared collection of logically related data designed to meet the.
Introduction to MDA (Model Driven Architecture) CYT.
OTB Research Institute for Housing, Urban and Mobility Studies 1 Development Methodology for an Integrated Legal Cadastre Report on PhD Research GISt lunch.
Agenda 1. Introduction 2. Overview of SU-MoVal 3. OCL-based Model Validation 4. QVT-based Transformations 5. Demo of SU-MoVal 6. Conclusion and Future.
Alignment of ATL and QVT © 2006 ATLAS Nantes Alignment of ATL and QVT Ivan Kurtev ATLAS group, INRIA & University of Nantes, France
Computer Science 101 Database Concepts. Database Collection of related data Models real world “universe” Reflects changes Specific purposes and audience.
Specializing and extending the UML
Introduction of Geoprocessing Topic 7a 4/10/2007.
SaveUML System design. System overview Possible...
DEPICT: DiscovEring Patterns and InteraCTions in databases A tool for testing data-intensive systems.
Selected Topics in Software Engineering - Distributed Software Development.
Systems Analysis and Design in a Changing World, 3rd Edition
DEV337 Modeling Distributed Enterprise Applications Using UML in Visual Studio.NET David Keogh Program Manager Visual Studio Enterprise Tools.
1 OCL Tools Supervised by Prof. Daniel Amyot May Khalil Nadia Spido Submitted to Professor Daniel Amyot in partial fulfillment of the requirements for.
Mapping the IntesaGIS model to the EuroRoads model Alberto Belussi Università di Verona Giuseppe Pelagatti, Mauro Negri Politecnico di Milano ESDI Workshop.
Sheet 1 DocEng’03, Grenoble, November 2003 Model Driven Architecture based XML Processing Ivan Kurtev, Klaas van den Berg University of Twente, the Netherlands.
MODEL-BASED SOFTWARE ARCHITECTURES.  Models of software are used in an increasing number of projects to handle the complexity of application domains.
Introduction of Geoprocessing Lecture 9. Geoprocessing  Geoprocessing is any GIS operation used to manipulate data. A typical geoprocessing operation.
Ch- 8. Class Diagrams Class diagrams are the most common diagram found in modeling object- oriented systems. Class diagrams are important not only for.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
® IBM Software Group © 2007 IBM Corporation Module 1: Getting Started with Rational Software Architect Essentials of Modeling with IBM Rational Software.
UML Profile BY RAEF MOUSHEIMISH. Background Model is a description of system or part of a system using well- defined language. Model is a description.
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
Class Diagrams. Terms and Concepts A class diagram is a diagram that shows a set of classes, interfaces, and collaborations and their relationships.
Yu, et al.’s “A Model-Driven Development Framework for Enterprise Web Services” In proceedings of the 10 th IEEE Intl Enterprise Distributed Object Computing.
Introduction of Geoprocessing Lecture 9 3/24/2008.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
Model Driven Architecture MDA SE-548 Lale Doğan
Welcome: To the fifth learning sequence “ Data Models “ Recap : In the previous learning sequence, we discussed The Database concepts. Present learning:
© 2010 IBM Corporation RESTFul Service Modelling in Rational Software Architect April, 2011.
Aspect-oriented Code Generation Approaches Abid Mehmood & Dayang N. A. Jawawi Department of Software Engineering Faculty of Computer Science and Information.
Defects of UML Yang Yichuan. For the Presentation Something you know Instead of lots of new stuff. Cases Instead of Concepts. Methodology instead of the.
Building Enterprise Applications Using Visual Studio®
- The most common types of data models.
The Development Process of Web Applications
SysML v2 Formalism: Requirements & Benefits
Geographic Information Systems
Using JDeveloper.
Data Model.
Software Development Process Using UML Recap
UML Design for an Automated Registration System
Software Architecture & Design
Presentation transcript:

OTB Research Institute for Housing, Urban and Mobility Studies Research Outcomes – Aug.-Dec. 07 PhD Thesis “Development Methodology for an Integrated Legal Cadastre” GISt-GiGb Lunch meeting João Paulo Hespanha

OTB Research Institute for Housing, Urban and Mobility Studies Presentation Summary Research Aims & Questions; Literature search Extending the Model on the Cadastral Domain: Portugal country profile and Legal Model Spatial UML Profile in EA: GeoUML and SimpleFeatures Refining spatial and aspatial constraints through OCL Development of a CASE Tool implementing a UML/OCL Model into a Spatial DB + OO Abstraction Layer Building a test data set for the CASE Tool (issues of working with real data!) Future developments on the CASE Tool and 2008 research plan

OTB Research Institute for Housing, Urban and Mobility Studies Thesis Aim & Research Questions Thesis Aim: Propose a Cadastral System Development Methodology capable to achieve an effective and efficient legal cadastre as a core to support other main functions of the Cadastral System, namely Valuation (for Tax purposes) and issuing of Permits (by the Municipalities). Research Questions: How can a system development methodology achieve an integrated legal cadastre, while addressing its socio-technical nature, and thus the interrelations between the technical, legal and organisational aspects? How to implement an enriched semantic model (through spatial and aspatial constraints and spatial profiles) on current SDBMS? Furthermore, how can this enriched model support integrated update procedures in an Editor environment? What type of consistency checks should be implemented on such model? Which methodological steps should be taken to cope with new land related rights and regulations?

OTB Research Institute for Housing, Urban and Mobility Studies Literature search During the study period, facilities at TUDelft library, specially the electronically available books and journals (through Springer Link and Elsevier Science Direct) where researched on the following Fields of Study: IT Development Methodologies: Business Process Modeling and Model-Driven Architecture; IT and GIS Standards: UML, Object Constraint Language, ISO19000 series standards (the last ones available through OTB); Spatial UML Profiles (initial references supplied by the Supervisor); Articles and tutorials on the Eclipse Modeling Framework; For further modeling the Legal Domain, a search for articles on Cadastral Registration, Real Rights and Property Rights returned a small (but important) set of documents. Later on, after a decision was made to report the Thesis outcomes using LaTeX, the JabRef utility application was used to start a database of research references.

OTB Research Institute for Housing, Urban and Mobility Studies The JabRef & BibTeX reference DB

OTB Research Institute for Housing, Urban and Mobility Studies Cadastral Domain: extending the model Land Administration Domain Model The start point for the research; it describes the Cadastral Domain using a UML Class Diagram containing a series of packages of related sub- domains (Register Objects, Survey, Geometry and Topology, Persons and Legal and Administrative packages) Deriving a Country Profile First step on the research was to derive Portugal country profile from LADM, combining generic (LADM) and country specific requirements and generating a proposal for a prototype. This first version did not elaborate on the Legal and Administrative package Modeling the Legal and Administrative Domain Starting with a generic conceptual proposal from related research (J. Paasch, KTH Stockholm), a refined legal and administrative model was produced, combining the Private and Public Law into an overall conceptual framework

OTB Research Institute for Housing, Urban and Mobility Studies The Integrated Legal Cadastre Model An extended country profile The term in the title refers to a model where the conceptual framework encompassing Public and Private Law related to Land is integrated with the remaining Cadastral model packages Modeling behavior through UML The full power of the UML language is used in order to model a number of typical Real Property Transactions. This will contribute further to the specification of requirements and cadastral update functions Using Enterprise Architect as modeling and MDA tool Following slides give an idea on the use of this tool in order to obtain the different types of diagrams composing the Integrated Model

OTB Research Institute for Housing, Urban and Mobility Studies Enterprise Architect: Class Model

OTB Research Institute for Housing, Urban and Mobility Studies EA: Use Case depicting Cadastral Update

OTB Research Institute for Housing, Urban and Mobility Studies EA: Activity Diagram on Cadastral Update

OTB Research Institute for Housing, Urban and Mobility Studies EA: Integrated Model; Forms of Property

OTB Research Institute for Housing, Urban and Mobility Studies TODO: Integrating Public Law

OTB Research Institute for Housing, Urban and Mobility Studies Spatial UML Profile in EA Reasons to apply a Spatial Profile The UML Profile is a standard UML mechanism provided to extend the standard to new application domains. The generic GIS field is an example, once implies the use of new, complex data types which possess their own behavior and associations Spatial Data Standards To be widely used, a spatial UML Profile should rely on international standards, the more relevant here being ISO19107 (Spatial Schema) or derived implementations as GML Simple Features An existent UML Profile: Intesa GIS ‘GeoUML’ There were no Spatial UML Profiles available in EA; the GeoUML profile was first considered because consistently derived its spatial features from ISO, using UML with OCL, contrary to a number of other proposals that were not based on standards.

OTB Research Institute for Housing, Urban and Mobility Studies The GeoUML Spatial Profile (initial) This class diagram shows GeoUML spatial types as specialized types from the ISO spatial schema, defining override methods and constraints.

OTB Research Institute for Housing, Urban and Mobility Studies GeoUML Topological Profile view in EA After studying proposed types and constraints, a profile diagram is generated in EA, as a collection of related metaclasses and stereotypes. This diagram is then exported as an EA Profile (a special format XMI). For GeoUML, only the topological relationships were translated into a UML Profile.

OTB Research Institute for Housing, Urban and Mobility Studies GeoUML: Applying the Profile In order to be applied to another EA Model, the Profile XMI should be first imported into the project resources (left) and then be called through the toolbox, clicking on ‘more tools’ (right). For practical reasons concerning the development of a CASE Tool performing the schema implementation into a spatial database, this UML Profile was later discarded in favor of the Simple Features Access for SQL (see next diagram for the profile)

OTB Research Institute for Housing, Urban and Mobility Studies Simple Features Profile in EA The SFA-SQL standard (ISO19125) has a fundamental advantage when compared with GeoUML, that being its widely adoption and implementation into a number of databases with spatial extensions, namely Postgresql or Oracle. The Profile diagram above shows the geometry types implemented in PostGIS; it was used to define the test data schema for the CASE Tool.

OTB Research Institute for Housing, Urban and Mobility Studies Refining spatial and aspatial constraints with OCL Purpose of OCL: To refine specifications of UML model elements through the use of a formal language forming regular expressions. These expressions should not have ‘side effects’, i.e. when evaluated, they should not alter the state of an object. It is now a component of the UML standard (version 2). Use of OCL in the Integrated Model /* * Test for Integrated Model defined constraints concerning GDBPropertyCadastre, * legaladministrative and IntegratedModel packages. * Dresden OCL2 Parser file generated manually. UML Model produced with Enterprise * Architect and saved as XMI, can not be used for absolute syntax cause is using UML2. * Refer to package model diagrams for visual check of the absolute syntax. */ package GDBPropertyCadastre context CornerStone inv: self.tipo = TypeOfCornerStone::TwoEdgesCornerStone implies self.parcel_Edge -> size() = 2 inv: self.tipo = TypeOfCornerStone::ThreeEdgesCornerStone implies self.parcel_Edge -> size() = 3 inv: self.tipo = TypeOfCornerStone::FourEdgesCornerStone implies self.parcel_Edge -> size() = 4 inv: self.tipo = TypeOfCornerStone::MultipleEdgesCornerStone implies self.parcel_Edge -> size() > 4

OTB Research Institute for Housing, Urban and Mobility Studies OCL parsing and validation with Dresden OCL2 application The picture shows the parsing and validation of GeoUML spatial type GU_Point2D constraints. Only the concrete syntax was validated, once it was not possible to import the UML Model to validate the absolute syntax. CST stands for ‘Concrete Syntax Tree’ and concerns the OCL expression itself (not considering related UML model elements, which together form the absolute syntax).

OTB Research Institute for Housing, Urban and Mobility Studies Dresden OCL2 usefulness and drawbacks Project structure: This is an open source project written in Java, which fits with the current development environment for the CASE Tool. Furthermore, besides parsing and validation, also a library to generate SQL scripts for checks and queries from OCL expressions is supplied (OCL22SQL) The basic libraries were also ported to a number of UML tools, with different implementations, the most interesting (for the CASE Tool) being the Eclipse TOPCASED plugin Drawbacks: Current implementations refer to UML 1.5 and MOF 1.4; Current UML tools produce UML 2 models (not compatible); Model and OCL expressions are treated in a separate way (different file formats to store model elements and OCL expressions)

OTB Research Institute for Housing, Urban and Mobility Studies CASE Tool development Purpose: To perform a model-to-text transformation (following the MDA approach) where a spatially profiled UML model constrained with OCL is translated to a set of SQL script expressions capable to implement a Spatial Database Schema Current EA MDA approach: Although implementing the majority of MDA functionalities, EA lacks significant support for OCL, and the transformation language (templates based) is also very poor. Using current XSD generation, OCL constraints are completely ignored in the automated process Standards based development: A number of standards, like XMI, UML, OCL and Simple Features, will be taken into consideration during design and implementation of the tool, in order to provide as generic functionality as possible

OTB Research Institute for Housing, Urban and Mobility Studies CASE Tool: the Open Source path The best support: Opting for Open Source software offers the best development support for the CASE Tool, because a number of current libraries can be used and its functionality extended through a Java programming environment. Development environment: The Eclipse IDE will be the main development framework to produce the CASE Tool (and further applications), the basic pack being complemented with the Modeling Framework (EMF) and also other relevant plug-ins like UML Tools, OCL and Hibernate Tools. Full Open Source solution: A desirable result from the research, justifying the migration of the current schema into Postgresql (with PostGIS), but currently limited by the use of EA. Eclipse UML Tools like TOPCASED could supply an alternative solution for the Integrated Model, completing thus the full Open Source solution.

OTB Research Institute for Housing, Urban and Mobility Studies Use of Hibernate & Hibernate Spatial Usefulness: Can perform an automated mapping from an Object Oriented implementation of the UML Model, called the ‘OO Abstraction Layer’, to a spatial database schema, assuring a proper connection to the Postgresql server through one or more sessions; The mappings are defined through a number of XML files, typically representing Java classes (simpler solution; 1:1 mappings); Reverse engineering capabilities are supported, meaning that the ‘OO Abstraction Layer’ can be generated from an existent schema, supporting does the MDA paradigm.

OTB Research Institute for Housing, Urban and Mobility Studies CASE Tool: Activity Diagram

OTB Research Institute for Housing, Urban and Mobility Studies CASE Tool: Building a test data set In order to define a set of (manually) produced input / output artifacts for the CASE Tool, a number of applications was used, namely: Enterprise Architect: a reduced sub-set of the Integrated Model class packages was used in order to specify the UML Model input (in the final form of a XMI file); PostGIS: a manually derived implementation schema was produced, and all the relevant SQL script expressions were saved to a sql file. This should form the final CASE Tool output; OCL expressions and topologic relationships are still missing from the data set (TODO); The PostGIS test data set was populated with cadastral data from the Pilot Project (Ilhavo Municipality); this required a previous data conversion to an intermediary ArcGIS Geodatabase. Following slides show examples of the different artifacts in the data set.

OTB Research Institute for Housing, Urban and Mobility Studies Test data UML Model in EA

OTB Research Institute for Housing, Urban and Mobility Studies Test data XMI file (input to the Tool)

OTB Research Institute for Housing, Urban and Mobility Studies Test data: SQL scripts (pgsql; output) CREATE TABLE "Parcel" ( "area_E" double precision, "area_NE" double precision, "area_S" double precision, "dataRec" date, perito character varying(70), dicofre double precision, observ character varying(150), "nFolhaPredio" character varying(15), "nomePredio" character varying(50), CONSTRAINT "nFolhaPredio" PRIMARY KEY ("nFolhaPredio") USING INDEX TABLESPACE pg_default ) WITH OIDS TABLESPACE pg_default; ALTER TABLE "Parcel" OWNER TO postgres; COMMENT ON COLUMN "Parcel"."area_E" IS 'Parcel built up area. Sum of the Building objects areas within the Parcel.'; COMMENT ON COLUMN "Parcel"."area_NE" IS 'Parcel area free of buildings.'; COMMENT ON COLUMN "Parcel"."area_S" IS 'Parcel social area. Sum of all the Parcel Social Area objects areas within the Parcel.'; COMMENT ON COLUMN "Parcel"."dataRec" IS 'Date of (last) field survey from which Parcel object was acquired.'; COMMENT ON COLUMN "Parcel".perito IS 'Name or professional identification of the licensed surveyor (related to the last survey).'; COMMENT ON COLUMN "Parcel".dicofre IS 'Administrative code (District, Municipality and Parish).'; COMMENT ON COLUMN "Parcel".observ IS 'Field survey observations. Surveyer notes judged relevant to describe the Parcel, not included in any of the collected attributes.'; COMMENT ON COLUMN "Parcel"."nFolhaPredio" IS 'Short Parcel identifier (not including Units under Horizontal Property). Should work as the primary key for this class (in the Data Model).'; COMMENT ON COLUMN "Parcel"."nomePredio" IS 'Name of the Parcel. A local name identifying e.g. a cottage or a farm. Null values should be allowed.'; COMMENT ON TABLE "Parcel" IS 'Parcel (Pre´dio) is the fundamental legal unit in the 2D partition of space. Represents immovable property under Private Law; Legal definition on D.L. 172/95, art.1, 1b). This Class contains solely the alphanumeric attributes stored for each Parcel. The constraint to verify the sum of Built up areas (area_E) against the Building class was not introduced, once implies more than one navigation (an intermediate class exists).'; GRANT SELECT ON TABLE "Parcel" TO public;

OTB Research Institute for Housing, Urban and Mobility Studies Test data: PostGIS schema (PgAdmin)

OTB Research Institute for Housing, Urban and Mobility Studies Test data: intermediary ArcGIS GDB

OTB Research Institute for Housing, Urban and Mobility Studies Test data: Java class in Eclipse

OTB Research Institute for Housing, Urban and Mobility Studies CASE Tool: next steps Identify specific mappings to define through application code (starting by a detailed Activity Diagram); Implement the test data set using Hibernate Spatial – a first, hard-coded implementation will be produced; Design XMI parsing code which generates the ‘OO Abstraction Layer’. Examine OCL constraints mappings to database check constraints, triggers and stored procedures (also related to queries and views definition);

OTB Research Institute for Housing, Urban and Mobility Studies PhD Research: study plan 2008