Shipping Operations Management Services

The Shipping Operations Management Services are also called the 'IMS Integration Framework'.

When would I use it?

For shipping operations management with large scale enterprise customers using Enterprise Resource Planning (ERP) systems to coordinate their shipping operations.

The IMS Integration Framework services:

  • Follow a Service-Oriented Architecture (SOA) paradigm best suited for a large-scale corporate environment using an Enterprise Service Bus
  • Communicate using Java Message Service (JMS) message queues (Apache Software Foundation’s ActiveMQ)
  • Need to be orchestrated by coordinating services that you have to create to cover customer-specific business processes
  • Communicate using the industry standard Open Applications Group Integration Specification (OAGIS) and Business To Manufacturing Markup Language (B2MML) extensible markup language (XML)-based protocols. Messages in these formats are mapped to MineMarket objects using extensible stylesheet language transformation (XSLT) mappings. You can also create XSLT mappings from other protocols to MineMarket objects graphically with Altova’s MapForce™ tool.

What does it do?

The services expose a collection of MineMarket entities (through services) in the shipping operations management domain for Create, Read, Update, Delete (CRUD) operations.

The services can send or export CRUD operations for the following MineMarket entities:

  • Shipments (vessel nominations for fulfilling cargo shipment contracts for customers)
  • Despatch Routes (overlays of geographical transport routes that track contractual fulfilment events at points along the route)
  • Incidents (records of delays that occur during ship loading operations, for use in reporting and optimisation). This service is more than just CRUD. It has sophisticated and extensible finite state machine business logic for determining if sets of input shipping transport events indicate that different kinds of delays/incidents have occurred, and automatically populating the incident reports with reason codes, measurements, and so on. This service can be configured to generate different incidents for other shipping transport events.
  • Hatch Loading Plans

The services can receive or import CRUD operations for the following MineMarket entities:

  • Shipments
  • Despatch Orders
  • Sales Contracts
  • Organisations (for example, customers for sales contracts)
  • Despatch Routes
  • Hatch Loading Plans
  • Vessels (details of the ships to be used in transporting cargo)
  • Products (basic product names)

These (mostly) CRUD-based entity level services are reusable building blocks that can be coordinated by more procedural orchestration services tailored to a specific customer’s business processes.

How does it work?

The services are run as Windows NT service processes, in which CRUD logic for the entities are hosted by a common underlying service-oriented infrastructure framework that provides:

  • Self-registering NT service process containers
  • ActiveMQ connectivity for asynchronous and synchronous JMS messaging compatible with a variety of Java-based Enterprise Service Buses or JMS message queues, communicating using industry standard OAGIS and B2MML XML-based protocols
  • XSLT translation capabilities to map from any external wire protocol to MineMarket internal objects (and vice versa)

These services communicate with each other, MineMarket’s Integration Host and the external customer systems.

The MineMarket Integration Host communicates with the services (over ActiveMQ queues) and the MineMarket Service (using TCP, as a MineMarket client).

Diagram of Shipping Operations Management Services integration

How would I use it?

MineMarket must be configured to support the services:

  • In the configuration files, the correct channels must be set up to communicate with the MineMarket Integration Host.
  • Several BT text lists, extended data fields, event templates and similar items must be set up.

The Integration Host must be configured to communicate:

  • With the MineMarket Service using .NET Remoting over TCP, just like a MineMarket client
  • With the IMS-IF services using ActiveMQ queues

The IMS-IF services must be configured to communicate:

  • With the Integration Host using ActiveMQ queues
  • With the Orchestration Services (or directly with the customer systems) using OAGIS and B2MML protocols over ActiveMQ queues

Orchestration Services must be written to:

  • Communicate with the customer systems using whatever protocol and communications channels the customer mandates
  • Respond to requests from the customer systems and send notifications to the customer systems using business-process-based workflows
  • Create workflows within the orchestration services that enact the customer specific business processes by coordinating calls to (and receiving notifications from) the various IMS Integration Framework services, using the services as building blocks of reusable functionality
  • Communicate with the IMS-IF services using OAGIS and B2MML over ActiveMQ queues