DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Please enter at least three characters to search
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Zones

Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks

Last call! Secure your stack and shape the future! Help dev teams across the globe navigate their software supply chain security challenges.

Modernize your data layer. Learn how to design cloud-native database architectures to meet the evolving demands of AI and GenAI workloads.

Releasing software shouldn't be stressful or risky. Learn how to leverage progressive delivery techniques to ensure safer deployments.

Avoid machine learning mistakes and boost model performance! Discover key ML patterns, anti-patterns, data strategies, and more.

Related

  • Tackling Multidomain Integration in Software Development
  • SAP Commerce Cloud Architecture: All You Need to Know!
  • Understanding the Integration of Embedded Systems in Consumer Electronics
  • Modernizing Mainframe Applications by Harnessing Specialty Processors and the Power of the Cloud

Trending

  • AI’s Role in Everyday Development
  • Performing and Managing Incremental Backups Using pg_basebackup in PostgreSQL 17
  • Unmasking Entity-Based Data Masking: Best Practices 2025
  • AI-Based Threat Detection in Cloud Security
  1. DZone
  2. Software Design and Architecture
  3. Integration
  4. The Importance of Middleware in Integrating CIS and GIS Systems

The Importance of Middleware in Integrating CIS and GIS Systems

Learn how middleware facilitates seamless integration between Customer Information Systems (CIS) and Geographic Information Systems (GIS) in utility management.

By 
jaya krishna tummala user avatar
jaya krishna tummala
·
Jan. 16, 25 · Analysis
Likes (1)
Comment
Save
Tweet
Share
5.1K Views

Join the DZone community and get the full member experience.

Join For Free

Integrating Customer Information Systems (CIS) with Geographic Information Systems (GIS) is crucial, as both are Tier 1 applications. CIS serves as the core for customer and billing management, while GIS is essential for infrastructure management. Middleware functions as a vital layer that enables communication and data exchange between these diverse systems, playing a key role in data transformation, protocol mediation, message routing, and transaction management to ensure seamless integration.

This article will delve into the significance of middleware in bridging the gap between CIS and GIS, along with a practical demonstration of its implementation using Python.

Understanding CIS and GIS Integration

CIS systems maintain critical customer-related data, including billing information, service requests, and account details. GIS systems manage spatial data related to infrastructure assets such as substations and service lines. Integrating these systems allows utilities to visualize customer information spatially, optimize field operations, and enhance asset management. However, differences in data formats, protocols, and architectures pose significant challenges to achieving seamless integration.

For instance, when a new service point is created in the CIS, automated processes enable its representation in the GIS. Continuous data flows between the systems depend on updates regarding field activities, such as technician progress (e.g., acknowledgment of field activity, arrival at the facility, and meter installation). Using latitude and longitude data, the GIS can automatically depict the service point and service line, with middleware facilitating this process.

The Role of Middleware

Middleware acts as a bridge, enabling communication and interoperability between CIS and GIS systems. It orchestrates various functions, including:

  1. Maintaining compatibility and data integrity: Ensuring data consistency across systems
  2. Secure and efficient data routing: Directing data to appropriate destinations safely
  3. Protocol mediation: Bridging communication gaps by translating messages between the protocols and standards used by CIS and GIS systems
  4. Transaction integrity: Managing the integrity of transactions during data exchanges

Best Practices for ESB Solution Design

A best practice for designing an ESB solution is to utilize the IBM Integration Bus (IIB). Selecting the appropriate topology — whether physical or logical — for organizing IIB nodes, servers, endpoints, and message flows is critical. Factors such as network latency, load balancing, fault tolerance, redundancy, and modularity should be carefully considered in the design.

To optimize performance, minimize the number of nodes and transformations in your message flows, and use caching and aggregation to reduce external calls. When tuning the configuration, adjust the heap size, thread pool size, and garbage collection policies for your IIB nodes, as well as properties such as transaction mode, audit level, and trace level.

Sample Automation Representations in GIS for the Information Coming From the CIS System

Streetlight


Sample Steps According to ERCOT for GB, New Service Gang Base Installation: Workflow

  1. Locate gang base service line: Use AEGIS with the data tool.
  2. Create a SMLCOM premise in CC&B. 
  3. Create a service point for the premise.
  4. Drop an 814_03 MVI transaction.
  5. Verify 814_03 status: Ensure "Permit Required."
  6. Enter inspection details in premise characteristics.
  7. Create ARATE WR and 814_03 MVI in CC&B.
  8. Dispatch the event to the mobile unit.
  9. Look for the meter number from Maximo.
  10. Complete the job in MobileTC with GB service info code and structures FLN-X and FLN-Y.
  11. Verify work request completion in CC&B.
  12. Update AEGIS service line and service point with the ESI location.
  13. Update the WMIS serv_gl table and record the transaction.
  14. Update FIM extract and finalize the transaction update.

Sample CIS-GIS architecture

Sample CIS-GIS architecture


Premise correction information flow

Premise correction information flow


Sample Code for Implementation of Middleware for CIS-GIS Integration Using ESB Architecture

SQL
 
SELECT GEO.PREM_ID,PREM.ADDRESS1, PREM.POSTAL, PREM.CITY, PREM.PREM_TYPE_CD,PREM.COUTY,PREM.IN_CITY_LIMIT,

PREM_CHAR.SRCH_CHAR_VAL, PREM_CHAR.CHAR_TYPE_CD, ESI.CM_ESI_STATUS, SP. SP_TYPE_CD

            FROM CISADM.CM_ESI_ID ESI

JOIN CISADM.CI_PREM_GEO GEO

            ON GEO.GEO_VAL=ESI.CM_ESI_LOC

JOIN CISADM.CI_PREM PREM

            ON PREM.PREM_ID=GEO.PREM_ID

JOIN CISADM.CI_SP SP

        ON SP. PREM_ID=PREM.PREM_ID

JOIN CISADM.CI_PREM_CHAR PREM_CHAR

        ON PREM_CHAR.PREMISE_ID=PREM.PREMISE_ID

WHERE GEO.GEO_CD= 'ESI_LOC'


Sample Logic for Service Line Install Process

1. If the Service Point is not found, create a Service Point.

2. Find the facility that the Service Line will connect to by calling GetConnectingFacility.

  • If there are errors locating the connecting facility, return the message and status received from GetConnectingFacility and exit the method.

3. If the Meter Geocode tolerance is not overridden (g_Meter_Tolerance_Override = 0), validate that the meter geocode location is at a valid location by calling CheckMeterGeocodeLocation.

  • If there are errors validating the meter geocode location, return the message and status received from CheckMeterGeocodeLocation and exit the method.

4. Create the Service Point feature by calling AddServicePoint.

  • If there are errors creating the Service Point, return the message and status received from AddServicePoint and exit the method.

5. Create the Premise record for the Service Point by calling AddPremise.

  • If there are errors creating the Premise record, return the message and status received from AddPremise and exit the method.

6. If not Customer Owned services (CU contains ‘CUSTOMER’), create the Service Line by calling AddServiceLine.

  • If there are errors creating the Service Line, return the message and status received from AddServiceLine and exit the method.

7. Establish the connectivity relationships by calling EstablishConnectivity.

  • If there are errors establishing the connectivity relationships, return the message and status received from EstablishConnectivity and exit the method.

8. Set the ownership of the Service Line to the located Structure.

9. Complete the processing by calling UpdateTransaction, passing the following information:

  • Message: ‘Service placed’
  • Status: ‘COMPLETED’

10. Set Status = ‘Success’

11. Exit the method.

Conclusion

In conclusion, middleware facilitation of CIS-GIS integration helps the utilities to harness the full potential of their systems. By implementing middleware solutions, utilities can streamline operations, improve decision-making, and enhance customer service. However, it's essential to tailor middleware implementations to specific requirements and ensure robustness, scalability, and security in the integration process. With middleware as a cornerstone, utilities can navigate the complexities of CIS-GIS integration with confidence, driving efficiency and innovation in utility management. 

Middleware systems Integration

Opinions expressed by DZone contributors are their own.

Related

  • Tackling Multidomain Integration in Software Development
  • SAP Commerce Cloud Architecture: All You Need to Know!
  • Understanding the Integration of Embedded Systems in Consumer Electronics
  • Modernizing Mainframe Applications by Harnessing Specialty Processors and the Power of the Cloud

Partner Resources

×

Comments
Oops! Something Went Wrong

The likes didn't load as expected. Please refresh the page and try again.

ABOUT US

  • About DZone
  • Support and feedback
  • Community research
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Core Program
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 100
  • Nashville, TN 37211
  • support@dzone.com

Let's be friends:

Likes
There are no likes...yet! 👀
Be the first to like this post!
It looks like you're not logged in.
Sign in to see who liked this post!