Andrewj.comObserver
Architect
Developer
Photographer
Traveller
Writer
Reviewer
Thoughts on the World
    • Welcome PageArchitectDeveloperPhotographerTravellerWriterObserverReviewerLinks

Rule-based message transformation for Development for National Grid Plc.

Development Case Study: Development for National Grid Plc.

The Challenge

Replace a large number of complex, hand-coded transformations between two core message models with a single generic rule-based solution.

Description

The architecture I created for National Grid’s Enterprise Application Integration scheme was based on a Common Message Model (CMM), with “adapters” transforming this where required to and from any proprietary integration format supported by individual systems.

The system at the centre of the scheme, the MIMS/Ellipse asset and work management system, offered a well-defined message-based integration point, but used a highly proprietary format etXML. As this was not suitable for use directly as a CMM, there was a need to transform between etXML and the chosen CMM. To further complicate matters the transformation would be different depending on the content of the message (e.g. asset change vs work order).

Initially these transformations were hand-coded. This was a fiddly, lengthy and error-prone process. I suggested that it might be worth investing in a more generic and data-driven solution, but the vendors of Ellipse were initially unwilling to believe that this would be practically possible.

I was convinced it should be straightforward, and quickly developed a working prototype for such a rule-based “transformation engine”. The initial prototype used .NET for speed, and I then re-wrote it in Java. At that point the solution was adopted by the vendor, doing away with a very large number of complex hand-coded transformations.

Outcomes

Working solution adopted into the production system

Timescale

Approx 2005

Current Status

Maintained as a key component of the NG integration architecture for many years

Tools and Technologies

Technologies: VB.Net, Java (JAXB and JAXC), SeeBeyond, Ellipse

Tools: Visual Studio, Eclipse

Abstract

I developed a rule-based “transformation engine” which transforms between the two models, doing away with a very large number of complex hand-coded transformations.

This entry was posted in Case Study, Development. Bookmark the permalink. Posted on 13 May 2020 by Andrew - Please share: All Addthis servicesTweet thisFacebook thisLink thisYam thisShare on Google
Previous Post: Integration Message Comparison
---- Next Post: Agile Shelf-Edge Ticketing Platform

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Thoughts on the World Proudly powered by WordPress.

Main Pages

Welcome Page

Architect (Consultancy services)

Developer (Services and Products)

Photographer

Traveller

Writer (Publications and Papers)

Observer (My blog)

Reviewer

Links

Blog Contents

Post Category:

Review Type:

  • Recent Posts

    • TechRadar: EA Technology Visualisation
    • Yodel Identity Management
    • Insurance Premium Breakdown
    • Network Automation and Orchestration
    • Knowledge Base Development
  • Recent Comments

    • Divitel on It’s Screen Time!
    • Mike Parnell on Camera History
    • ValueBlue on What Do I Mean by "Agile Architecture"?
    • Robert on Combining Risk Factors
    • Paul M Turner on Typically Tropical!
  • Blog Indexes

    Favourite/Major Articles

    All Articles by Category

    All Articles by Title

    Review Index

    Search

    References to www.andrewj.com

    References to www.agilearchitect.org

    Contact Me

    Email me

    @TweetAndrewJ

    Others

    Share

    Facebook

    Google

    Twitter

    Linked In

    Yammer

    Share

    Feeds

    @TweetAndrewJ

    Thoughts on the World (Main Feed)

    Main feed (direct XML)

    Professional Blog

    Photo Blog

    Photo Album

    Review pages

    About my feeds

    © Questa Computing Ltd. 1994 - 2023:
    Questa Computing Ltd. is registered in England and Wales number:2889117.
    Registered office: Coppertrees, Forest Road, Effingham, Leatherhead, KT24 5HE
    Credits, copyright details and cookie policy