More About Lotus Composite Applications

We recently described an interesting and important aspect of Notes/Domino 8, Composite Applications. We have several concerns about such applications.

Building the Notes PIM application as a composite application means that in theory:

  • Individual PIM component applications can be reused as elements of new composite applications.
  • The view or data parts employed in each component application can be reused as elements of a new component application.

We say "in theory" because there is very little evidence that this has occurred. It is not clear what has been the cause of this, but explanations we have heard include:

  • Data parts, view parts, and component applications have not been well enough documented to be easily reused.
  • The Composite Application Editor has not been well enough documented to be easily employed.
  • The Composite Application framework is too flaky for general use.
  • Building component applications is beyond the skill level of most Notes developers. Remember, Domino Designer is a Rapid Application Development (RAD) platform and not a Java IDE!
  • Lotus has not developed additional Notes data parts, view parts, or Notes component applications that could be combined into new composite applications. It has focused on producing component applications from other domains (DB2, SAP, spreadsheets, etc.). While in some cases these are useful, it has provided nothing additional for the Domino application development community -- either business partners or in-house developers.

Over the last year, Lotus has addressed some, but not all, of these issues.

  • The company has introduced a new way of packaging component applications, called a Container. A Container is a parameterized component applications template.
  • It has enhanced the Composite Application Editor to be able to:
    • Graphically configure a container; for example, map the Columns in a Notes View Container (via formulas) to fields in a Notes view.
    • Graphically wire Containers together, so that publication of an event by one Container is subscribed to by another Container.
  • It has produced a base set of Containers including:
    • A Browser Container
    • A Notes View, Notes Form, and Notes PIM View Container
    • A Lotus Symphony Spreadsheet Container

What concerns Ferris is that:

  • While composite applications can add value to Notes applications by allowing end users to interact with data in multiple Notes and non-Notes repositories, there is very little (if any) additional Notes functionality being delivered to Notes developers. Does this mean that IBM views Notes/Domino as a "legacy environment," rather than as a first-level RAD platform? IBM says one thing, and then appears to do another (first Workplace, now Component Applications).
  • Notes development for Notes client and browser access was once unified -- a Notes Navigator, View, Form, etc., had a similar Notes client and a Web manifestation. Yes some tailoring, by adding HTML fragments, was possible, but this was icing and not cake. IBM has now fragmented Notes/Domino development with separate approaches for Notes clients (Composite Applications) and the Web (Xpages). Ferris believes that if IBM wishes to signal that Notes/Domino is not a "legacy environment" ripe for replacement by Microsoft offerings, it urgently needs a road map that describes how it will reunify Notes/Domino development for Notes Clients and the Web, and then execute to it.
  • At one point Lotus Notes/Domino possessed many advantages over Microsoft Outlook/Exchange/SharePoint; for example, shared-nothing redundancy, rapid email dial-tone after a failure, etc. Microsoft has now caught up, and in some areas surpassed Lotus. The two areas in which Lotus still possesses an advantage are: the ability to take documents offline and resynchronize them at a later date (SharePoint currently lacks such a facility), and RAD. IBM needs to bolster this RAD capability if it wishes to protect its Notes/Domino franchise.

... Nick Shelness

One Comment

  1. Posted May 4, 2009 at 1:32 PM | Permalink

    Hi Nick,

    I appreciate your research into the Composite Application capabilities for Lotus Expeditor and Lotus Notes. I’ll respond to with both clarification of our existing capabilities delivered in Lotus Notes 8.5 and the work underway for 8.5.X that directly addresses your other concerns.

    “… Does this mean that IBM views Notes/Domino as a “legacy environment,” rather than as a first-level RAD platform? IBM says one thing, and then appears to do another (first Workplace, now Component Applications).”

    Lotus Composite Applications allow Notes developers to componetize and modernize stand-alone apps into integrative solutions, facilitating re-use and rapid integration of existing assets while incrementally adding new capabilities in a modular approach. This could include a new design element or component built in Domino Designer, a sidebar plug-in or dynamic menu extensions built in the Java toolkit, or LiveText that facilitates one-click context-sensitive access to an application. Domino Designer is still the RAD tool for “designing” new application capabilities and components using existing form and view elements or the new XPage design element. The Composite Application Editor (CAE) allows the “capturing” of a component from existing applications and assets (Notes, Symphony, Host Access, Native, . . .) through a outside-in approach that does not re-coding or re-developing the application. CAE also supports the “assembler” use case by rapidly integrating and wiring loosely-coupled components.
    The Lotus Composite Application technology was core to the Mail, Contacts, and Calendar user experiences shipped since Notes 8 and continues to extend its role to support our own internal feature development as well as customer and partner applications. I’m unclear about your reference to Workplace, which was a separate product offering entirely whereas Composite Applications are a platform capability of the Notes and Expeditor client architecture.

    “.. IBM has now fragmented Notes/Domino development with separate approaches for Notes clients (Composite Applications) and the Web (Xpages).”

    XPages were introduced in 8.5 and initially only supported running on the server, however we have been stating publicly our intention to include Notes client support in the near future. Even in 8.5 Composite Applications allowed integration of a XPage through the Browser container. Soon the XPage design element will be definable as a component inside Domino Designer that can be assembled directly on the client using CAE or on a server as a iWidget.
    Our strategy and continued execution in 8.5.X is to provide a leading collaborative platform for application development with full support for existing Lotus applications while embracing new technology like XPages in a way that is complimentary for both end users, developers, and administrators. I look forward to our upcoming 8.5.X announcement where we will be able to provide clarity and detail.

    In addition I would like to offer you an opportunity to evaluate and provide feedback directly to us. The development team has been keenly focused on improving stability, performance, and intuitiveness in addition to the out-of-the-box functionality provided by the containers. We have received excellent feedback from our Design Partners and would appreciate your input as well. Please contact me and I can arrange details.

    Thanks,

    Michael Masterson
    Product Manager, Application Development
    IBM Lotus Software

Post a comment

You must be logged in to post a comment. To comment, first join our community.