Find Courses Here
SOA Data Modeling Print E-mail
Course Length - 3 Days
 
Course Description

This course is designed for the data modelers who are considering using SOA as the next generation methodology for Enterprise Application Integration. Data modeling plays a key role in SOA where the chief concern is data integration between applications. Traditionally data modeling has been limited to Relational Database Management Systems (RDBMS). This course will help you extend your existing RDBMS modeling knowledge to the SOA world.

 

Course Prerequisites

It is expected that students have a clear idea about the SOA methodology and its benefits. If you are relatively new to SOA, Introduction to SOA is highly recommended.

 

Who Should Attend?

IT practitioners who are responsible for data modeling, such as, database administrators and business analysts. 

 

Course Outline

1. Getting Started with XML

  • XML Overview
  • Data and Document Structure
  • An Employee Document
  • Elements
  • First XML
  • What is XML ?
  • Why XML?
  • Another Example of XML
  • Well-formed vs. Valid XML Document
  • Enforcing Validity DTDs
  • Presentation Style
  • XSL and XSLT
  • Markup Languages
  • SGML
  • HTML
  • Structure of HTML
  • XML
  • Goals of XML
  • Usage of XML

2. XML Syntax

  • XML Elements
  • Empty and Non-Empty Elements
  • XML Naming Rules
  • Rules for XML Tags
  • Nesting and Hierarchy of XML Elements
  • Simple XML
  • XML Declaration
  • Sections of an XML Document
  • XML Elements
  • Tag Attributes
  • Comment Tags
  • CDATA Tags
  • Entity References
  • Character References
  • Processing Instructions
  • Is the XML Declaration a Processing Instruction ?
  • Well-formed vs. Valid XML Document
  • Is this document well-formed?
  • Namespaces
  • Namespace URLS
  • Namespaces
  • Using XML Namespaces
  • Binary Data In XML
  • Encoding Binary Data
  • Specifying Content Type of Binary Data
  • Specifying Content Type of Binary Data

3. XML Schema Basics

  • Objectives
  • What is an XML Schema?
  • Role of XML Schema in SOA
  • Creating a Schema File
  • Defining a Simple Element
  • Defining a Complex Element
  • Defining Element Attributes
  • Referring to an Element From Another Element
  • Defining Abstract Data Types
  • Adding Restrictions
  • Referring to a Schema from an XML Document
  • Validating the XML Against the Schema
  • Summary

4. Introduction to XQuery

  • What Is XQuery?
  • XQuery Uses
  • XQuery Properties
  • XPath and XSLT
  • XQuery Flow
  • XQuery Participants
  • Sample XQuery Source
  • Simple Example Queries
  • FLWOR Queries
  • F-WOR Explained
  • L Explained
  • Wrapping Output
  • Converting Output
  • Inline Output
  • Data Rendering
  • Functions
  • Joins
  • Join Example
  • Summary

5. XPath Fundamentals

  • XPath
  • Tree Structure
  • Example
  • XPath Examples
  • XPath Core Definitions
  • Wildcards and Multiple Matches
  • Other Node Operators
  • Path Operators
  • Predicates
  • Predicate Relationships and Attributes
  • More Predicate Examples
  • Predicates Chaining and Indexing
  • XPath Expressions
  • XPath Numbers
  • XPath Strings
  • XPath Booleans
  • XPath Functions
  • String Functions
  • Boolean Functions
  • Number Functions
  • XSLT and XPath
  • XPath and Content Based Routing
  • Summary

6. XLink and XPointer

  • XLink - Introduction
  • Simple XLink Example
  • Analogous HTML
  • Data Relationship Example
  • Extended XLink Example
  • XPointer - Introduction
  • XPointer Shorthand Form Example
  • XPointer Scheme-based Form Example
  • References

7. Introduction to XSL

  • Topics
  • Formatting XML Documents
  • XSL
  • Three Parts of XSL
  • XSLT XSL Transformation
  • <xsl:stylesheet>
  • <?xml-stylesheet>
  • <xsl:template>
  • <xsl:value-of>
  • Navigating with XPath
  • Navigating With XPath
  • <xsl:for-each>
  • <xsl:if>
  • XPath Boolean expressions
  • XPath Boolean Expressions
  • <xsl:choose>
  • <xsl:apply-templates>
  • <xsl:sort>
  • <xsl:sort>
  • The Music Collection Example Introduction
  • The Music Collection Example Sample XML file
  • The Music Collection Example Retrieving owner details
  • The Music Collection Example Retrieving the core data
  • The Music Collection Example Retrieving the core data
  • The Music Collection Example Current Output
  • The Music Collection Example Retrieving canadianContent data
  • The Music Collection Example Retrieving canadianContent data
  • The Music Collection Example Current Output
  • The Music Collection Example Retrieving media data
  • The Music Collection Example Retrieving media data
  • The Music Collection Example Retrieving media data
  • The Music Collection Example Retrieving media data
  • The Music Collection Example Final Output
  • Formatting XML Documents

8. XML in Applications

  • Topics
  • Needs for Using XML in Applications
  • Basic Functionalities Required for XML Applications
  • XML Parser
  • Obtaining a Parser
  • SAX
  • How it Works
  • DOM
  • DOM Parsing
  • Applying XML Across System Boundaries
  • Using XML on the Client Side
  • Using XML on the Server Side
  • Using XML in Non-Networked Systems
  • Using XML in RDBMS
  • The J2EE Blueprint
  • A Typical Architecture Using XML in J2EE Applications
  • Using XML in Applets
  • Using XML Parser in Applets
  • Using XML in Servlets
  • Creating XML Middleware for Accessing Databases
  • Transforming RDBMS Data to XML Data
  • Transforming XML Data to RDBMS Data
  • Storing XML Data in DB2

9. Web services Description Language (WSDL)

  • Objectives
  • WSDL Overview
  • WSDL Document Tags
  • WSDL Namespaces
  • Sample WSDL Document Structure
  • <definitions>
  • <import>
  • <types>
  • <message>
  • <portType>
  • <operation>
  • One-way <operation>
  • Request-Response <operation>
  • Solicit-Response <operation>
  • Notification <operation>
  • Modeling Simple Operation
  • Modeling Complex Operation
  • Modeling Complex Message
  • <binding>
  • More on <binding>
  • <binding> Syntax
  • SOAP Binding Example
  • <service> and <port>
  • More on <port>
  • WSDL SOAP Binding Extensions
  • soap:binding
  • soap:operation
  • RPC or Document Style?
  • WSDL API for Java
  • Summary

10. Information Management in SOA

  • Objectives
  • Introduction
  • SOA and Enterprise Information Management
  • Operational Data Replication Basics
  • SOA and Data Basics
  • Data Publishing Event
  • Modeling Events
  • Handling Events in a BPEL Process
  • Data Mediation
  • Data Format
  • Generic Data Model
  • Example Generic Data Model
  • Mapping Data
  • Loading Data
  • Extract Transform Loading (ETL)
  • ETL and SOA
  • Data Federation
  • Summary

11. Introduction to Service Oriented Analysis & Design (SOAD)

  • Objectives
  • Introduction to SOAD
  • Applying OOAD Principles
  • Abstraction
  • Abstraction in SOAD
  • Encapsulation
  • Encapsulation in SOAD
  • Modularity
  • Modularity in SOAD
  • Hierarchy
  • Hierarchy in SOAD
  • Why OOAD Is Not Enough
  • Granularity
  • The Need for Loose Coupling
  • The SOAD Methodology
  • The SOAD Methodology Steps
  • Stage 1: Requirements Gathering & Process Modeling
  • Stage 2: Service Identification
  • Stage 3: Service Implementation
  • Stage 4: Process Implementation
  • SOAD Stages and SOA Lifecycle
  • Summary

12. Data Modeling in SOA

  • Objectives
  • Data Modeling in SOA
  • Data Models in SOA
  • The Physical Data Model
  • Deriving the Physical Data Model
  • New Software System scenario
  • Legacy Data Model scenario
  • Adapter-based service
  • Adapter-based service C++ example
  • Wrapper Web service
  • Meet-in-the-middle scenario
  • The role of XML in SOA data modeling
  • Converting Relational to XML data
  • Storing XML data in a RDBMS
  • Approaches to storing XML data in a RDBMS
  • Storing the entire XML document
  • Shredding the XML document
  • Using a native XML data type
  • SQL extensions for native XML support
  • The Logical Data Model
  • Benefits of the Logical data model
  • Deriving a Logical Data model from the Physical
  • Designing the Logical Data Model
  • The Enterprise Architecture approach
  • EA Approach - example
  • Aligning your logical and physical models
  • How to align your logical and physical models
  • The SOAD approach
  • The Logical Data Model in Business Process Modeling
  • Business Process state variables
  • Input and the Receive activity
  • Output and the Reply activity
  • The Invoke activity
  • The Assign activity
  • Why do you need a published data model?
  • Industry-standard XML-based data models
  • Review questions
  • Summary

13. The Data Mapping Layer

  • Objectives
  • Why do you need data transformation in SOA?
  • Interface mapping in SOA
  • Business processes and data mapping
  • How are Data Maps used?
  • How are Data Maps created?
  • XML-to-XML data mapping
  • XML-to-Any data mapping
  • Mapping techniques
  • Copy
  • Splitting
  • Aggregation
  • Enrichment
  • Filtering
  • Computed
  • Testing data maps
  • Review questions
  • Summary

14. Master Data Management (MDM)

  • Objectives
  • What is Master Data Management?
  • A typical data management scenario
  • Why do you need MDM? (1 of 2)
  • Why do you need MDM? (2 of 2)
  • Why do you need MDM in SOA? (1 of 2)
  • Why do you need MDM in SOA? (2 of 2)
  • What role does MDM play in SOA?
  • MDM and SOA shared principles
  • MDM and SOA Governance
  • MDM products
  • Implementing MDM in an SOA (1 of 3)
  • Implementing MDM in an SOA (2 of 3)
  • Implementing MDM in an SOA (3 of 3)
  • Review questions
  • Summary

15. Industry Standard Data Models

  • Objectives
  • What are industry data models?
  • Why are these models important in SOA?
  • ACORD Introduction
  • ACORD Insurance data models
  • ACORD, IBM and SOA
  • The future of ACORD and SOA
  • HL7 - Healthcare
  • The HL7 data model
  • SID - Telecom
  • ARTS - Retail
  • Review questions
  • Summary

16. Schema Configuration Management

  • Objectives
  • Evolving Schema
  • Management Techniques
  • Internal Techniques
  • Schema Version Attribute
  • Adding An Attribute
  • Namespace Change
  • File-Based Mechanisms
  • External
  • Which To Use?
  • Summary

17. Data Model Governance

  • Objectives
  • What is data governance?
  • Roles and Responsibilities
  • What is metadata?
  • SOA metadata repository
  • SOA registry as a governance tool
  • Review questions
  • Summary

18. Data Modeling in SOA

  • Objectives
  • Pattern template
  • Data Federation pattern - Synopsis
  • Data Federation pattern - Benefits
  • Data Federation pattern Context
  • Data Federation pattern - Solution
  • Data Federation pattern Solution architecture
  • Data Federation pattern - Considerations
  • Data Federation pattern - Summary
  • Data Consolidation pattern - Synopsis
  • Data Consolidation pattern - Benefits
  • Data Consolidation pattern - Context
  • Data Consolidation pattern - Solution
  • Data Consolidation pattern - Considerations
  • Data Consolidation pattern - Summary
  • Data Cleansing pattern Synopsis
  • Data Cleansing pattern Benefits
  • Data Cleansing pattern Context
  • Data Cleansing pattern Solution
  • Data Cleansing pattern Considerations
  • Data Cleansing pattern Summary
  • Data Management systems primer
  • MDM patterns Synopsis
  • MDM patterns Benefits
  • MDM pattern taxonomy
  • MDM pattern catalogue
  • Transaction Interception pattern
  • Transaction Interception pattern flow
  • MDM Pub/Sub pattern
  • Message-based Integration pattern
  • Master Data Integration pattern
  • Information synchronization pattern (1 of 2)
  • Information synchronization pattern (2 of 2)
  • BI Analytical pattern
  • Review questions
  • Summary