Archive for October, 2008

Oct 23 2008

Adobe on Business Process Modelling Notation (BPMN)

Recently I was asked by a large system integrator about Adobe’s standpoint on the Business Process Modelling Notation (BMPN) specification.

Not many people know that Adobe participates in quite some industry standards and supports their maturity/evolution such as BPMN, BPEL, BPDM and XPDL and that we are voting members of standard bodies such as OMG, OASIS and WFMC. Adobe is represented in all these standards bodies and actively participates in reviewing and authoring of these standards. We take a lot of that knowledge back into the decisions we make when developing our enterprise products, especially Adobe’s LiveCycle Enterprise Suite.

BPMN (Business Process Modelling Notation) is a specification for a couple of things:

  • A graphical notation. E.g. How different activities are represented in a process diagram.
  • Semantics of the graphical notation. E.g. What does it mean when you connect activities with a line.

From wikipedia:

The primary goal of BPMN is to provide a standard notation that is readily understandable by all business stakeholders. These business stakeholders include the business analysts who create and refine the processes, the technical developers responsible for implementing the processes, and the business managers who monitor and manage the processes. Consequently BPMN is intended to serve as common language to bridge the communication gap that frequently occurs between business process design and implementation.

Using the Process perspective in LiveCycle Workbench, one can visually create process maps that define and control your automated business processes. Since Workbench implements the main constructs for the graphical notation and the semantics of that notation as specified by BPMN, business analysts can create process diagrams using swimlanes, activities, events and associations following common modeling methodologies (we still have a gap to cover when it comes to modeling of Gateways).

LiveCycle Process Designer

To summarize: if you have been trained in BPMN, you will find it easy to model a process using LiveCycle Workbench.

If you want to read more on Adobe’s comments on BPEL and general standards, you should read this article on de LiveCycle DevNet:

ps: One should know that the current BPMN spec (v1.1) does not specify how a process diagram should be persisted by a modeling tool. There is no XML schema for example. However, there is another specification – XDPL – which does provide this and the BPMN v2 specification currently in review also has a defined schema for persistence. Since standards have not been defined or widely accepted, LiveCycle Workbench currently persist that process definition using custom XML for which Adobe has publish the XML Schema (which after installation can be found under the LiveCycle SDK/schema directory).

One response so far

Oct 22 2008

First FlexCamp for the Netherlands coming up !

Published by Christoph Rooms under Adobe AIR, Adobe Flex

Flexcamp is a free community event where you can share knowledge with other Flex developers. There will be lots of sessions : the early sessions will be for starters, and later on it will become more and more advanced. The idea is that you can jump in whenever you feel like …  There will be also a room for “unconference” style sessions,  these sessions allow you to discuss together with a number of community members on a specific topic of your choice. Get more info on http://www.flexcamp.nl. Also James Ward and Christophe Coenraets will also be around. Flexcamp is organized by the Dutch Flex User Group. Get registered today … seats are limited !

No responses yet

Oct 22 2008

LiveCycle Data Services 2.6 Capacity Planning Guide Now Available

Finally the Capacity Planning Guide for LiveCycle Data Services 2.6 has been published on the Adobe site. A document like this was asked for a few times during a DrLiveCycle consult, so it seems very welcomed by Flex developers leveraging Adobe LCDS.

As Damon Cooper, Director of Engineering, wrote on his website:

With LiveCycle Data Services 2.6, you can create Adobe Flex applications that can deliver thousands of messages per second to thousands of end users simultaneously:

This document presents the results of software benchmark tests performed by Adobe engineers on my LiveCycle Data Services team and show how LiveCycle Data Services 2.6 can scale linearly and perform under load using various messaging scenarios that represent real-world situations. It provides a starting point for those who need to plan a hardware and software infrastructure that scales in a linear fashion to meet peak period demand.

You can download the Capacity Planning Guide for LiveCycle Data Services 2.6 from www.adobe.com/go/lcds26_cap_planning_guide.

No responses yet

Oct 21 2008

Answering LiveCycle Data Services messaging questions

This month’s DrLiveCycle consult was about leveraging the message feature of LiveCycle Data Services.

Disease:
You are planning the architecture of your LCDS Messaging based application and you asked yourself the following questions:

  • Is the order in which the messages are delivered to the clients always guaranteed, and does that depend on which channel you use?
  • If you have many concurrent consumers/producers connected to your messaging destination, but the consumers/producers don’t generate a lot of messages, would that have more impact on the processor or the memory

Prescription:
DrLiveCycle checked back with the engineering specialists (Jeff Vroom and Mete Atamel helped the doctor with the right diagnose) and learned that the order of messages from server to client are currently only guaranteed when using the RTMP channel. A RTMP channel uses only a single TCP connection and therefore the message order is always guaranteed. The AMF/HTTP channels, on the other hand, may issue concurrent HTTP requests over multiple TCP connections and even though each TCP connection guarantees its message ordering, there’s no message order guaranteed across multiple TCP connections. So, currently the order is only guaranteed with RTMP channels.

So how about memory and CPU usage of low-active consumers? The answer is that an inactive consumer would just take up memory (there is the connection memory, session memory etc.). The only CPU load that an idle messaging client would take up is any load caused by polling, or the heart-beat style functionality that was put into the HTTP streaming channel.

Tips to stay healthy:
The polling overhead is fairly easy to compute based on your settings – how long does the request wait on both the client and the server. The streaming overhead is pretty low… periodically the server has to send some bytes back on the connection to keep it alive. The RTMP channels – when not using the RTMPT HTTP polling mode – don’t have any significant overhead.

One response so far

Oct 13 2008

Extending Adobe Document Management with even more functionality

If you have installed and deployed Adobe LiveCycle Content Services ES for Document Management and/or Archiving purposes you have already seen the out-of-the-box features that are included in the product. Now, if you have written your own extensions and want to package these, the easiest way to do this is by creating a so called AMP file. This is a format that can be imported in another instance of Adobe LiveCycle Content Services ES.

Now without going into details on how to create these AMP files, you should know that there are also AMP files available in the community that you might want to evaluate. If you have installed the full LiveCycle ES Suite you will also get, as part of the SDK, a couple of sample packages such as records management, blog integration (including WordPress), and others.

Now the documentation is not very clear on how to deploy the included samples (or other available AMP files) to your deployed Content Services application. Below you will find a couple of steps on how to import AMP files.

1. Locate the C:\Adobe\LiveCycle8.2\LiveCycle_ES_SDK\misc directory

2. In there you will find a couple of AMP files and a utility called Module Management Tool. (adobe-contentservices-mmt.jar)

3. Locate the C:\Adobe\LiveCycle8.2\jboss\server\all\deploy\adobe-contentservices.ear

4. Retrieve the contentservices.war file from the ear file above

5. Open a command line tool and goto the directory C:\Adobe\LiveCycle8.2\LiveCycle_ES_SDK\misc

6. Run: java -jar adobe-contentservices-mmt.jar install yourfilename.amp contentservices.war (Before doing this is is recommended to make a backup of the ear file!)

7. After this, copy back the contentservices.war file into the adobe-contentservices.ear file and copy it back to the LiveCycle ES Deployment directory (C:\Adobe\LiveCycle8.2\jboss\server\all\deploy)

7a. To validate wether the AMP is included in the war file, you can run the following command for a list of extensions: “java -jar adobe-contentservices-mmt.jar list contentservices.war”

8. Restart your jboss services to be 100% sure that you have the extensions available

If you find any interesting AMP files in the community, please share them with us. Have fun in trying the above.

One response so far

Oct 06 2008

Sometimes the LiveCycle Turnkey installation wizard does not proceed

Disease:
You have downloaded and extracted the LiveCycle ES Turnkey installer to your desktop. When running the installer it gets stuck at the ‘Type of Installation’ dialog screen, so that you can’t continue installing the software.

Prescription:
Typically why a turnkey install won’t proceed from this point is due to a “Directory too deep for turnkey installation” error.  What this means is that the directory you are running the installer from (say, a network location such as \\SomeServer01\Software\Installations\, or a folder somewhere deep in My Documents and Settings – like your desktop folder) is too distant from the location you are trying to install to and LiveCycle and the path between them is too long for LiveCycle to use. So the solution is to choose for an install directory in e.g. your C:/ drive.

Tip to stay healthy:
LiveCycle can be installed ‘manually’ which allows you to deeply integrate it into applications (java application servers, databases etc) that have already been deployed in your environment. However, it means that there is a lot of configuration that you have to do yourself.

As a developer that is often not the first thing you want to have to bother about, especially not when you start learning what LiveCycle can do for you.  Or, you do not even have all the required software installed at all. In that case the Turnkey install option is a great trouble saver.

Adobe LiveCycle ES Updater 1 comes with Turnkey installers for JBoss, Websphere as well as Weblogic for both Windows and UNIX. As with most of the Adobe software there are trials available online, at www.adobe.com/go/lces_trial.

No responses yet