Message Broker Feature Backlog

Summary of features coming up


Test code coverage

Mapping nodes

We will be looking to add coverage of MappingNodes/files as part of our next major release. This will mean that the coverage report will include which paths have been executed by the test cases.

Datapower

For Datapower users, we will be looking to add basic coverage in the following release. This may be initially as simple as showing in the code coverage report which Datapower flows were executed. Once we have that implemented we will be looking at how we can provide coverage of executing branches.

Diagram generation

Code coverage

Once code coverage of Msgflows has been implemented we will look to overlay that information with the generated architectural diagram so that it will be easy to identify which flows have been executed as part of unit testing.

SQL expansion

Summary and expansion of all SQL code in a project so that DBAs can monitor and review embedded SQL. This will include SQL run using the “PASSTHRU” function and in the native ESQL format.

Plugin performance

Configurable multi-threaded support to allow improved running of the plugin within a continuous build environment.

Performance

XSL Performance

Avoid descendant-or-self (//) if possible
- It traverses (and parses) the whole message
- Use /descendant::aaa[1] instead of (//aaa)[1]

Check DB Access

Check DBAccess nodes have reasonable polling intervals as to not cause DB resource contention.

Stored Procedures

Access stored procedures via “CREATE PROCEDURE” rather then “PASSTHRU”.

Standards

Magic numbers and Strings

Track magic numbers and strings that could be constants.

Publishing

Publish a generated file of queues required

Helps with managing queue definition promotion.

Publish list of promoted properties

Helps with determining which properties need to be setup for sending through to baroveride.

Publish list of flows and messagesets

Helps to develop deployment scripts that make use of “mqsibardeploy” for use in ant builds.

Check for deprecated nodes

Functions return values

Functions should return values otherwise they should be procedures.

Check that nodes and subflows are connected

Warn when nodes and flows are not connected as they are effectively dead code.

Correctness

Warn on delete

Warn when whole table deletes are being called.

Message set ID’s

Check that the message sets used in the code are valid.

PASSTHRU

Check that the SQL used in a PASSTHRU has the correct number of values passed in.
Check that alias names are “quoted” to ensure the case is honored. Navigating the message tree is case sensitive.

Other

Match msgflows and msgsets to build file configuration for completeness