If you’re a Lotus Notes user you have no doubt heard about the current release of Notes 8 and the introduction of the brand new Composite Application feature. To explain this new feature quickly, a Composite Application is basically an application that draws together functionality from several different sources or applications into a single screen (or series of screens).
We’ve split this article into two sections below – one for the business person who is thinking “what does this new feature do for me?” And one section for the Notes developers and our IT readers.
Update (3/10/2008)
IBM have released a new white paper on Composite Applications. Click on the link below to download:
IBM White paper: Composite Applications in Notes - Benefits and Technical Overview (2.63MB)
You may also be interested in our more recent news article A Perspective on Lotus Notes 8.0.1 or New Features in Lotus Notes 8.0.2.
The Business Perspective
In Lotus Notes 8, IBM have included a tool that allows development of ‘composite applications’. So what this means is that you can take information from each of your applications and combine them to create new applications.
For example, if you had a client directory, a jobs/projects database, a sales database and a KPI database, you could combine information from each of these to present a new application that lets you see current jobs and current sales by a selected client, while also illustrating how you are tracking toward your KPI targets. This would draw all of this information into one screen, which is accessible with just the click of your mouse.
Not only does this extend the life of your current applications, there is options for the future such as pulling through information from the web and further integration with IBM’s range of collaboration products. The future is bright for Lotus Notes and if you’d like an in-depth demonstration for your business please Contact Us.
The Technical Perspective
We like to term this new feature as the ‘Domino Portal’ - as you can keep your investment in Lotus and leverage brand new functionality for your existing applications – not only extending their life, but also giving you a much better return on your Lotus investment.
One myth that we must first dispel is how easy it is to create a composite application and have it up and running without significant Notes development beforehand. If you believe the current hype, any user can simply begin threading together the different pieces of information and presenting them in a new application. While for some basic database applications this may be true, Eos recommends a different development path based on our years of experience with Lotus.
We’ll take you through this in the section below with some screenshots and a demo of a basic application we’ve put together. If you’re interested in a live demonstration just Contact Us.
Best Practice - Requirements Gathering and Technical Mapping
The single most essential task when determining the requirements for a composite application is to map the information flow. This involves determining not only the elements from your existing applications that you wish to display but also how they need to relate to each other.
Before you begin designing your composite application, this information flow, at least in it’s most basic form, must be known. So we recommend starting by defining the information flow to be used by various elements of your application.
Thinking about this up front allows you to plan for the number of views required on screen. With a Notes 8 composite application, you can have unlimited views, across multiple pages if you like. But in an effort to preserve screen ‘real estate’, you should consider options such as putting clickable ‘tabs’ at the top of your views to make it easier to switch between screens. Usability is a key to this whole process and we recommend a User Interface (UI) Assessment prior to developing a complex composite application.
Let’s say you have a Lotus Notes based CRM system, called Trackit, which you’d like to extend through the development of a composite app. Your reasons for this could include a requirement to have a quick management overview of new, in progress or delayed orders – illustrated by department or region.
To start with you’d need to understand the required steps in this proposed information flow. This could follow a basic mapping process as illustrated in this diagram:

With the above mapping process, what we are doing is showing the sequential process required in the application. In this case, the user begins working in the application by clicking on ‘current department/region’. This will then populate three other views (see illustration below) based on new orders by selected region/department, orders in progress by selected region/department and delayed/late orders by selected region/department.
After mapping out this process, you can begin the application design phase.
Application Design – Technical
There are essentially three parts to a composite application, the presentation layer, the definition layer and the communication layer. The presentation layer is the user interface and what your users will actually experience when they open the composite application and the information flow that is presented to them. It is possible to use the development of this layer as part of a requirements gathering exercise, in the manner of a more traditional Domino prototyping approach.
The presentation layer, in terms of just the screen layout and what is to be presented in each element of the application, can be developed and used to finalise your requirements and map the information flow. Once this is complete, the underlying definition and communication layer elements can be designed and implemented.
This is the time when you can continue doing this yourself in-house or you can call in Eos to help you with your development. If you are doing this yourself have a look at the myriad of IBM resources available on this topic before getting started. We’ve recently been putting together some composite applications for clients and for our own internal use, and for this article we’ve developed a basic demo application that shows us business information by state, our current work in progress, invoicing due, and current client support calls.
We began developing this application through the mapping process shown above. Once this was complete, we began the process of building this application. Below are steps in the development stage with some screenshots.
|
|
|
| To help build the application (bear in mind this is a pretty basic version of what we can do), IBM have provided an appropriately titled tool called the Composite Application Editor. This allows you to build the User Interface (UI) for your new application through a simple drag ‘n’ drop process. This defines the elements you want to see and their placement on screen. |
|
|
|
|
| Once the design step is complete, you can begin moving onto the next step of using the IBM Property Broker (and no, it can’t negatively gear your property investments) to create the processes that work behind the scenes. This tool allows you to create and define WSDL’s, to create the ‘back-end’ or server data through XML. This process defines your information into actions for the user. |
|
|
|
|
| Once you’ve defined each of the properties you want users to be able to use, you need to link together the properties and the actions in a process known as wiring. Part of the Composite Application Editor allows you to identify the relationships between our defined properties and actions through a simple drag and drop wiring process. Once this is complete the application is ready for use. |
|
|
|
|
Using our own Embrace: Lotus Notes Applications as the basis, we managed to whip up a quick and very helpful composite application.
Click here to see a quick flash animation illustrating the flow in our demo composite application.
What is happening in the world of ND8 composite applications?
| See an interesting composite application that a Japanese IBM Business Partner has developed. Their solution incorporates live charting, which we are currently investigating. IBM also has a very nice demo of a composite application available via the Lotus Sandbox. |
Check out the range of resources available for developing composite applications in Lotus Notes 8. If you need any additional help or advice, feel free to Contact Us or call 1300 658 720.
Tutorials
Articles
Other articles of interest:
White papers and IBM Redbooks
Demos and presentations
For more information on developing Composite Applications in Lotus Notes 8, Contact Us or telephone 1300 658 720.