Incorporating Word in Case Management

Documents are an integral part of case management applications. They mostly form the unstructured data related to the subject of the case. Their use is so often that adding a document panel in the Be Informed platform is a trivial procedure.

one

Looking a bit deeper into the matter we can distinguish at least two major use cases for using documents. One is when documents are part of the data that is required to process the case and are usually used in a read-only fashion. The second use case is when the document is actually constructed while processing the case. In the ideal situation, whenever a document is be constructed while processing the case then we want it to be generated automatically. This is to say that the case workers need only to worry about (parts of ) the content in its basic form (text, not styling and form in general) and that the document is then generated by the application. This ideal situation is indeed only ideal. In practice we come across situations where the main task of some case workers is to edit a document while processing a case.

In the case of having to edit a document within the context of case most, based on the the Be Informed platform, projects tend to use of the following approaches

  • Rely on a document management system as part of the overall solution or
  • Provide the ability to download a document locally, edit it then upload it again

The first approach is, AFAIK, not used that often and the second is workable but tends to introduce undesirable side effects as many aspects are left the case workers to decide. In a recent project the customer was concerned about the various naming conventions and versions of the same document uploaded by various case workers. The case workers were not very happy with having to download, edit and upload a document. Could we do something about it, was the question.

So what does it take to make it possible for case workers to edit a Word document on the fly within the context of a case? Well, basically the same things it takes to edit a word document in any on-line application. That must have been done so many times before or at least so I thought.

The most straight-forward solution would be to provide the document not as a read-only but as read-write and let the client (browser) open it with Microsoft Word. That turned out to be much easier said than done. Although the new versions of Office support opening a remote file (as on the server) they do require specific HTTP methods that are not supported by the Be Informed server nor can be easily added. Going down this path would mean to replicate a Java solution form a document management system (like Alfresco) into the platform which might take months of work.

The basic functionality of editing a Word document in web application is however a problem that has already been tackled. There is even a commercial library that does that for you so why not use that instead. After a short research I ended up choosing Aceoffix. It had all the functionality I needed and I could try it with an evaluation licence.

The architecture of the solution is shown in the figure below

two

On the bowser side an extra plugin (that can readily be loaded the first time the application is started) is used across all browser types to embed Microsoft Word in the HTML page. Microsoft Word has to be installed on this target machine and is not provided by the plugin.

On the server side there is a service provided by Aceoffix to deal with Microsoft Word documents and a V&R plugin that provides the service as part of the Be Informed server functionality. The functionality includes o.a locking the file being edited.

three

From an end user perspective the editing is seamlessly done within the application. If a document is being edited by another user then it is clearly seen in the overview and is only available to other users in a read-only mode.

Keeping track of Be Informed optional plugins

The Be Informed platform comes with tens of optional (add-on) plugins that are usually added as seen fit by the project implementing the business application. There are also cases where custom plugins are made specifically for a project and also need to be added. In both situations the addition is simple and straight forward. Thanks to using the OSGI framework underneath Be Informed, dropping the new plugin into the folder called “plugins” in either the Studio or the server folder will do the job. That folder holds all (including mandatory) plugins and contains many plugins, by the way, and not only the optional ones. This ease is so tempting that I know of no project using Be Informed that is doing it in any other way.

You might ask yourself: it works so why bother doing it differently? Well, yes it does work but up until you want to upgrade to a newer (sub)version of Be Informed. The fact that so many plugins are in the same folder (mandatory and optional) makes it hard to see at a glance which optionals were added. Ask any project how they deal with upgrading and you’ll find that people either keep separate lists of used plugins or spend far more time than they want during the upgrade to get this right.

A solution to avoid the lists and the extra time is not that hard. If only we could keep the optional plugins in their own folder and away from the rest. The good news is: It is also possible. Be Informed version 3.x uses Eclipse 3.2 run time and such it is possible to isolate the optional plugins following these steps:

  • Create a folder that you want to put the optional plugins in. On a PC running Windows this could be something as D:\ExtraBIPlugins\eclipse\plugins. Note that the folder has to end with eclipse\plugins.
  • In the Be Informed Studio installation folder create a folder with the name links.
  • Create a file with the name extra.links (on Be Informed 3.9.X and earlier the name should be extra.link) and edit it to have this line:                             Path= D:\ExtraBIPlugins
  • That is. Starting Be informed Studio all the plugins put in D:\ExtraBIPlugins\eclipse\plugins will now be seen.

Note that other methods that would work for newer versions of Eclipse will not work here. The path can be shared between more Studio instances by adding the link folder to a new instance so you can use this to share the same plugins between more Be Informed installations.

Be Informed Smart Scan

Be Informed Smart Scan

So you are involved in a Be Informed project where you successfully solve your customer business challenge. You know you are doing all the right things but you would like to have an objective assessment of the work done. Maybe you have a clear vision of what that objective assessment is and maybe you don’t. One thing you do know: you have no time to experiment and no desire to reinvent the wheel.

Welcome to smart scan!

Overview
Overview of major components in a project

 

Smart scan is an exclusive service to analyse existing Be Informed projects providing essential and key information about these projects. The basic analysis is done on all models by an automated process within the Be Informed Studio environment using a special plugin created by Value and Result for this purpose.

Smart scan is an exclusive service to analyse existing Be Informed projects providing essential and key information about these projects. The basic analysis is done on all models by an automated process within the Be Informed Studio environment using a special plugin created by Value and Result for this purpose.The automated analysis delivers measurements of the analysed models that can be used to quantify the work done. The measurements include:

  • Number of models per major category (knowledge, process and data)
  • Number of models specified by type (like knowledge model, data set, event, form, etc)
  • Total number of knowledge concepts and number of concepts per concept type
  • Additional information about each concept (eventual usage of expression, text fragment or source reference)
  • Total number of references to knowledge concepts
  • Number of concepts used per knowledge instrument
  • Number of fan-in and fan-out relations per knowledge concept
  • Total list of expressions used in the whole project
  • Total list of queries used in the whole project
Validation

Besides delivering measurements, the automated analysis identifies potential issues and reports them. The most important issue reported is the number and location of fields that are used but have no value assigned to them. Such a field can cause strange behaviour of the application and is very hard to track down.

Based on the specific needs of the customer, the delivered measurement can be used to give insight in areas of interest or answers to specific questions. Defining the needs, running and interpreting the analysis are the main components of the smart scan service offered by Value and Result.

 

The smart scan delivers insight for both the customer requesting the Be Informed solution and the party delivering the solution. It answers questions and provides information directly relevant to project managers, project architects, solution designers and solution modellers.