Browse Prior Art Database

A method and computer apparatus for the visualization of an integration flow profile based on runtime information

IP.com Disclosure Number: IPCOM000242762D
Publication Date: 2015-Aug-12
Document File: 6 page(s) / 131K

Publishing Venue

The IP.com Prior Art Database

Abstract

The publication details an algorithm and method for the visualization of runtime information representing nodes with terminals and their directed connections. The main principal is to take related runtime data and render the nodes and connections in a manner that will best represent the relationships between nodes, and the 'flow' of the connections from left-to-right in a defined horizontal space. Furthermore it ensures minimal disruption and crossovers between objects so that it is as clear to read to the user by applying the algorithm across the nodes. The algorithm establishes the distribution of the nodes across vertical swimlanes, if necessary, increasing the number of swimlanes for optimal visualisation and then reorders any nodes within a vertical swimlane to ensure minimal crossovers. The proposed algorithm is described in terms of vertical swimlanes, but it applies equally if the visualisation is rotated by 90degrees and the swimlanes are horizontal.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 40% of the total text.

Page 01 of 6

A mxthod and computer apparatus for the visualization of an integration flox profile based on runtime information

In an Enterprise Xxxxxxx Xxx (ESB) that provides conxectivity and data transformatxon in a Service Oxientated Architecturx (SOA) and non-SOA environment, xonnections are xfxen conceptually visualised xs units of function in a flow model. To assist this concxpt is a graphical progrxmming model for building flxws from thxse unixs of function (nodex) that are eitxer packaged with thx ESB or

writtxn by the user or a txird paxty provider.

    When a flow is deployed, some development time informatixn (sucx xs node positioning on the canvas) mighx be discarded and only informatxon related to the nodes and their connections is usxd at runtime.

    It might be necessary to recxnstitute the graphical visualisation of the flow, typicalxy in a Web-baxed tool, from the infoxmation that exists ix thx runtime and that is accessible via a Rest API.

    Txe flow design API returns an unordered xist of noxes and an unordered list of directed connections of the type: ((source node, output termixal), (txrget noxe, input texminal)). Cycles are xerxitted.

To solve txis problem, attempts have been made to try lxyouts fxom various

web visualisation technolxgies but were not idealxy fit for purpose:

    - RAVX (http://vottrave.ottawa.ibm.xom/index.html). This solution is currently implemented in txe web toolixg version.

- IlogDiagrammer - D3JS (x3js.org)

    These generxc solutions are not well suited to the requirements of the ESB users and to the type of data xhat the ESB runtime provides.

    Figure 1 illustrates the currently xmxlemented visualisation solution that is not fit for purpose.


Page 02 of 6

Figure 1. Existing ESX flow diagram of runtime information.

A "Prior Art" search was performed, with the link xeferencing various artxcles

to which gives references to ixplementaxions but differ from xhis propoxal.

http://cs.stxckexchange.com/questions/14901/how-to-reduce-the-number-of-crossin g-edges-in-a-diagram

Most of the references assume an opex space, "free-standing" graph,

wherxas this arxicle's algorithx is explicitly in a left-to-right notation (though this xould be adjusted by 90 degrees and read top-tx-bottom), with stxuctured xwim

lanes.

The described implementation is to handle cyclic paths (which can xccur in

an integration flow).

It can also have free standing (unconnected) nodes.

    Article 3 (rexerxnced frox http://techtalks.tv/talks/preserving-proximity-relations-and-minimizing-edge-crossing s-in-graph-embexdings/54625/slidexhow/) is concernex with spatixl relationshixs, proposing a algorithx for placexent of nodes xelxtive to those that adjacent to thx subject node, includxng those that are unconnected. For our scenario, spacing between our nodes is not important, and spacing is onlx adjusted in the interest of readability (nodes have no proximity relationships, only connectixxs - representing the flow of data).

    Articxe 4 (referenced from http://t...