Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Twitter #NIEMNTE3 Lightning-Fast IEPD Development Techniques Presenter David RR Webber Information Architect Oracle Public Sector.

Similar presentations


Presentation on theme: "1 Twitter #NIEMNTE3 Lightning-Fast IEPD Development Techniques Presenter David RR Webber Information Architect Oracle Public Sector."— Presentation transcript:

1 1 Twitter #NIEMNTE3 Lightning-Fast IEPD Development Techniques Presenter David RR Webber Information Architect Oracle Public Sector

2 2 Twitter #NIEMNTE3 The following is not intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.

3 3 Twitter #NIEMNTE3 Introduction Effective NIEM IEPD development requires a complete process understanding and partnership between program management and application implementers. This session provides a road map for executives and developers alike, based on the actual development experience of federal and state IEPDs and processes. For executives, the session covers the latest techniques for leveraging domain dictionary assets and modeling tools to enable enterprise wide coordination. For developers, the session illustrates lightning-fast IEPD development techniques and live prototyping using the latest version of the open source CAM toolkit for IEPD development. Attendees will gain an understanding of how to maximize existing enterprise assets and processes to optimize the IEPD development process to ensure involvement and participation for all stakeholders, with successful outcomes as the goal.

4 4 Twitter #NIEMNTE3 Agenda Part 1 – IEPD Process Mechanics – Aligning with SDLC (Software Development Life-Cycle) – Integrating NIEM into the Enterprise Part 2 – CAM toolkit overview – Component Dictionaries – Patterns for building XML Exchanges – CAM IEPD Demonstration Q & A Workshop – Testing & Delivery

5 5 Twitter #NIEMNTE3 IEPD Process Mechanics Designing an XML exchange requires: – Understanding of the application data model – Business needs of the information exchange – Engineering efficient data exchanges with XML To complete an IEPD needs: – Understanding of the NIEM Naming and Design Rules (NDR) – Building layout structures of XML exchange documents – Set of business rules for content and use patterns – Mapping to NIEM schema for component reuse – Working test case examples

6 6 Twitter #NIEMNTE3 Aligning to SDLC Vital that NIEM IEPD development be integral part of SDLC – otherwise there will be duplicative work, retrofitting and refactoring Initial IEPD reviews must be early in the process Ideally the IEPD artifacts should be derived from the actual production XML exchange assets Development team should work in tandem with architects and business analysts – not in isolation Too often we hear “well we already have it in production so we can’t change it now”

7 7 Twitter #NIEMNTE3 Integrating NIEM into the Enterprise Guidelines when to utilize NIEM domain dictionaries Building EIEM – Enterprise Information Exchange Model Canonical Components dictionary – NIEM consistent Generate exchange artifacts for developers from EIEM Aligning coding practices with XML to NIEM NDR Developers and Data Architects synchronize components library and logical and physical models to EIEM constantly

8 8 Twitter #NIEMNTE3 Why do we need EIEM dictionaries? Allows domains to manage their components libraries Provides consistency for project development teams – Sets of NIEM consistent XML exchange components – Aligned to enterprise data stores – Optimized for reuse and interoperability Save time and effort across the enterprise – Perennial question for developers – when should I use NIEM components, and when our own local ones? – Are there components already available for that purpose? Provide formal mechanisms and procedures to share components and collaborate across SDLC process Provide external parties consistent data views

9 9 Twitter #NIEMNTE3 How to create EIEM dictionaries Top down - directly from information models – Enterprise modelling tools – SQL database physical table definitions Bottom up – Harvesting from existing data assets – Harvesting from XML exchange structures and schema Using neutral abstract standards based representations

10 10 Twitter #NIEMNTE3 Conceptual Information Model Child (BBIE) Item Child (BBIE) Item Parent (ABIE) Item Parent (ABIE) Item Follows Naming and Design Rule (NDR) principles and guidelines Canonical Components Dictionary XML Canonical Components Dictionary XML ebXML CCTS terms (ABIE, BBIE, ASBIE) Parent = Aggregate Business Information Entity Child = Basic Business Information Entity Attribute = Association Business Information Entity Parent (ABIE) Item Parent (ABIE) Item Parent (ABIE) Item Parent (ABIE) Item Parent (ABIE) Item Parent (ABIE) Item..... Child (BBIE) Item Child (BBIE) Item Child (BBIE) Item Child (BBIE) Item Child (BBIE) Item Child (BBIE) Item Attribute (ASBIE) Attribute (ASBIE) Attribute (ASBIE) Attribute (ASBIE) * CCTS – Core Components Technical Specification Attribute (ASBIE) Attribute (ASBIE) Attribute (ASBIE) Attribute (ASBIE) Each compound component Each atomic component Optional attributes of component

11 11 Twitter #NIEMNTE3 Example – Person Name Person Name (ABIE) – Verified Details? (ASBIE) – First Name (BBIE) – Middle Name (BBIE) – Last Name (BBIE) – Previous Name? (ASBIE) – Language Code (BBIE) Language Code may exist independently of Person Name Verified Details and Previous Name are flags that denote additional information about the entity they are associated with There are three component items aspects: structure relationships; content rules; definitions

12 12 Twitter #NIEMNTE3 Example DHS/ICE EIEM ICE Enterprise Data Model (EDM) OASIS CAM template Model Components XSD schema Model Components XSD schema ERwin Refactoring, Compress, Renaming Tool NIEM NDR Evaluations ERwin Refactoring, Compress, Renaming Tool NIEM NDR Evaluations Generate Standard Components Dictionary XML Generate Standard Components Dictionary XML 5 5 Canonical Dictionary of ICE exchange components XML + XSD XML + XSD 3 3 Analyst Review ebXML CCTS compatible (ABIE, BBIE, ASBIE) 2 2 Ele Def DDL Production Rules 4 4 1 1 Completed CAM template Excel Spreadsheet 6 6 7 7 BENEFITS:  Will reduce ICE development time and effort  Pre-built NIEM consistent XML components  XML consistent with ICE enterprise SQL data  Removes scope for definition errors  Maximizes reuse potential across ICE  Open public standards based approach  Open technology infrastructure Code Lists Code Lists Code Lists Code Lists ERwin Client ERwin model Write Apply ImportExport

13 13 Twitter #NIEMNTE3 CAM Renaming Tool Expands abbreviations (has built-in lists with context) Corrects common typos and spelling errors (200+) Adjusts names to camel case with no separators (_) Retains acronyms Adds name suffix according to NIEM representation terms and type of content, e.g. date, number, code, etc Optionally refactor rules by their type for interoperability; make nillable optional; relax DB length restrictions Can optionally insert namespace prefix Can be configured by editing the lists in: word-utils.xsl

14 14 Twitter #NIEMNTE3 Part 2 – CAM Toolkit Overview – CAM Templates – Patterns for building XML Exchanges – XML Exchange Life-Cycle – CAMV validation engine / code lists / lookups – CAM IEPD Demonstration

15 15 Twitter #NIEMNTE3 CAM Toolkit Overview Open source, open public standards based, cross- platform deployment written using Java, SWT and XSLT Project is sponsored by Oracle NIEM-based features: – Evaluation tool for NDR and interoperability – Compare to dictionary, generates cross-reference, re-use score, and SSGT “want list” – Profiles for generating NIEM schema bundles – NIEM and LEXS dictionaries – Models export to ArgoUML, XMI or Mind maps

16 16 Twitter #NIEMNTE3 CAM Templates Structure Rules Documentation CAM Template http://www.oasis-open.org/committees/cam WYSIWYG

17 17 Twitter #NIEMNTE3 INGEST CAM and W3C Schema Wizards EXPORT XSLT tools process entire XSD collection XSLT tools process entire XSD collection XSD Collection Structure Rules Documentation *Code list xsd Namespace * Optional XML Schema xsd subset *Constraint xsd *Extension xsd *Restriction xsd Industry Domain schemas Code list xsd LEGEND: Exchange xsd Exchange Schema CAM Template

18 18 Twitter #NIEMNTE3 Visual Designer with Dictionary Collection Drag n’ Drop Tool Industry dictionary Domain dictionary Component Definitions 4 4 Search Tools Search Tools 2 2 Exchange Designer Exchange Designer 1 1 Insert Dictionary Components Insert Dictionary Components 3 3 Completed Exchange Template 5 5 Collection

19 19 Twitter #NIEMNTE3 Configurable Dictionary Collections Dictionary Control File XMLDictionary XML Compiled Dictionaries Dictionary Summary Format Compiler tool Referenced Namespace / Dictionary / Location Loads collection into CAM viewer Excel spreadsheet compatible CAM viewer compatible

20 20 Twitter #NIEMNTE3 Patterns for building XML exchanges Adapting existing exchange XML schema – Tailoring document model to business needs – Insert new components, publish new IEPD – Restructuring and refactoring exchange structure – Flattening XML schema bundle for middleware tooling Building new exchange schema – Using EIEM components – Blending EIEM with NIEM components – Custom community exchanges – e.g. OASIS

21 21 Twitter #NIEMNTE3 XML exchange life cycle MonitorMonitor DeployDeploy DesignDesign AuthorTestAuthorTest Component Dictionary CAM Template CAM Template Compiled Templates Compiled Templates XSD Schema XML Samples XMI / UML Models Production Log Results Production Log Results Template Updates Template Updates Documentation Drag and Drop Visual Editor

22 22 Twitter #NIEMNTE3 CAMV Validation Engine Standalone XML validator using XPath rules External code list and SQL table lookup support Callable via Spring framework or Java API Configurable error levels – error, warning, info Context aware and declarative rules approach Integrated with CAM editor menus for instant testing Workshop session

23 23 Twitter #NIEMNTE3 CAM Tutorial Website NIEM IEPD online tutorial video http://tutorial.cameditor.org

24 24 Twitter #NIEMNTE3 CAM IEPD Demonstration Import an existing XML exchange Add new dictionary components via Drag and Drop Apply the NIEM NDR evaluation – assess XML exchange quality Compare to NIEM dictionary produce reuse scores, cross-reference spreadsheet, wantlist (SSGT compatible) Generate new NIEM compatible XSD schema collection Adapt exchange use pattern to suit business needs, add data hints Generate XML examples; validate them with CAMV engine Document the Exchange; Generate Models 30 Minutes 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8

25 25 Twitter #NIEMNTE3 CAM Functions Demonstrated

26 26 Twitter #NIEMNTE3 What are we working on? Improvements – Enhancing XML example generation with synthetic data – Aligning WSDL generation with SOA best practices – More business documentation reporting options New features – SQL database lookup from CAMV and CAM editor – Dictionary integration with Domain Update Tool – Evaluation tools for dictionaries and components – Integration artifacts generation for SOA services

27 27 Twitter #NIEMNTE3 Q & A Download the CAM editor toolkit from: http://www.cameditor.org


Download ppt "1 Twitter #NIEMNTE3 Lightning-Fast IEPD Development Techniques Presenter David RR Webber Information Architect Oracle Public Sector."

Similar presentations


Ads by Google