Tuesday, April 10, 2012

Business Orchestration Server for IBM WebSphere Operational Decision Management

The event runtime is a shared, secured component that runs Decision Server Events assets such as business objects, events, and actions. After the business events are defined and developed using development tools such as Event Designer and Business Space it needs to be deployed to be available at runtime to be executed.

Interaction between event runtime and outer application happens using the various connectors. The event runtime starts collecting and filtering the business event information it receives from the connectors that have been implemented and business users have described and stored. The event runtime environment sorts through the volume of event information it receives and associates the relevant information it detects, it can then match whether the event is pertinent to the defined patterns and correlations that the business users have described and sorted.

Business information can be from short activity, combination of multiple events or may be complex events processing, once runtime senses a defined pattern it initiates action which can be anything defined by the system. Once we deploy the event runtime it retrieves the assets and uses them as instructions during event handling to do tasks such as creating business objects, evaluating filters in event rules and firing actions.

The picture below depicts high level architecture for Business Orchestration Server (The event runtime)


As shown in the picture above Business Orchestration Server (rhe event runtime) is implemented on WebSphere Application Server. It is installed and deployed as an application (wberuntimeear) with in WebSphere Application Server to take advantage of all the benefits of WebSphere Application Server including high availability, scalability, security and transparency of operations and use.

Since event runtime is actually an application running within WebSphere Application Server its access is controlled by WebSphere Application Server. The event runtime is based on publish/subscribe architecture and it supports messaging layers of WebSphere Application server and utilizes WebSphere messaging platform. Basic concept and mechanism on which event runtime works on is CBE (Common Base Events) and CEI (Common Event Infrastructure)

CBE is defined as standard/platform independent XML schema to be used for the format of business events to be sent to runtime using connectors

CEI is an event notification and event transmission framework that is used as a mechanism for passing events in CBE format to event runtime

The CEI is IBM's implementation of a consistent, unified set of APIs and infrastructure for the creation, transmission, persistence and distribution of a wide range of business, system and network CBE-formatted events

CEI provides public interfaces to:

  • Publish (or emit) an event
  • Subscribe to events that match a particular filter (event group)
  • Consume an event
  • Query historical event data (if the optional event data store is enabled, this can be achieved via a published interface)

The CEI provides a point of integration to consolidate events from a number of potentially disparate and diverse sources. It also provides the ability to distribute these events to consumers. These events are represented using the CBE model described.

Using CEI products, applications and functions are able to integrate their events. This enables the support of the end-to-end business-centric process views that these services make up.

At the runtime during the execution of Business Events we need to have database system configured as the runtime configuration for Business Events is stored within the database and at the time of initialization and real run time it retrieves the data to process the incoming events. For complex processing of events and executing actions database can also be configured to store information about for subsequent processing.

The event runtime supports almost all Professional RDBMS databases

The picture below depicts the Business Orchestration server run-time architecture


  • The event runtime is the core of Business Events. This is where the logic of business event processing takes place.
  • Connectors are internal system components that provide codeless connection to and from touchpoints via a variety of protocols.
  • The repository provides shared, secured storage for definitions of Business Events assets.

Business Orchestration Server (The event runtime) mostly consists of these following components:

  • WebSphere Application Server Network Deployment
  • A RDBMS to contain the repository such as business objects, events, actions….
  • The Decision Server Events application for business event processing (BEP), wberuntimeear
  • The WebSphere Business Events application installed and deployed with in WebSphere Application Server Network Deployment.
  • Java Message Service message queue managed by a message queue server such as WebSphere Application server ND service integration bus or WebSphere MQ.
  • Event connectors and action connectors for touchpoints
  • A database manager to serve as a message store for persistent messages
  • A LDAP or Microsoft Active Directory, if user authentication is required
  • JDBC drivers for database access at runtime

The following picture depicts the event runtime processing:


The event runtime manages the real-time business event coordination that was defined during application development. As an event occurs in a touchpoint that potentially requires one or more actions in another touchpoint, the relevant data (field name, field type, and value), called an event payload, and is passed using the connector of the touchpoint to the JMS message queue. Web services environments that employ SOAP to package messages and other protocols like HTTP, can direct those messages through the JMS queue.

The event runtime retrieves the message from the JMS queue and populates the appropriate intermediate objects with the values contained in the event payload. The event runtime parses the event, identifies the interaction sets that reference the event and determines whether any filters exist that require further evaluation.

If an action includes a filter, the event runtime attempts to evaluate it to determine if the filter conditions for a given action have been met. For complex event processing, this includes determining if referenced events or actions have occurred or not occurred as described in the filter condition. If any values are missing, the event runtime will attempt to retrieve the missing information from an external data source. The action is initiated only if the filter condition is true.

If the action does not include a filter, then the appropriate action will be initiated.

The event runtime passes the relevant data (field name, field type, and value) associated with the action from intermediate objects as an action payload to the outbound message queue, where it is picked up by the appropriate connector. The connector pushes the data to the appropriate touchpoint(s) and initiates logic within the touchpoint to perform the appropriate activity. The connector might return a result back to the JMS queue, where it is retrieved by the event runtime as a new event and processed appropriately.

If the action requires human intervention, it is directed to User Console, where the user can access it. When the user responds to the information displayed on the screen, the response is sent back to the JMS queue as a result event, where it is retrieved by event runtime as a new event and processed appropriately.

History for events, actions and filters used in event rule group evaluation is stored in a History database manager. This information is retrieved, formatted and displayed as charts in real time in Business Space by the Event Chart widget.

Alok Keshri, a Technical Manager for Prolifics focusing mainly on ILOG-JRules and WODM 7.5, has over eleven years of experience in the IT industry spanning across various industries. He is an experienced and resourceful enterprise software Tech Lead/Architect and has worked with J2EE/ SOA/BRMS/ BPM technologies. He is specialized in Object Oriented Analysis, Design, Development, and Estimation of projects with heterogeneous Web technologies in complex business systems based on a variety of platforms. He has extensive experience in IBM middleware products such as WebSphere Application Server, WebSphere ILog-JRules, WebSphere Message Broker and other products in the IBM BPM stack. He is also certified in WebSphere ILOG-JRules and FileNet. Alok received his BE in Electrical Engineering in 2000.

Tuesday, March 6, 2012

The Importance of Unique Cell Names in BPM 7.5

In order for the many features of IBM Business Process Manager (BPM) Advanced 7.5 product to function as designed, one must plan accordingly and pay attention to detail, specifically around naming conventions.
BPM 7.5 includes a feature known as the Process Inspector. This feature, in Process Designer, allows developers to run and debug processes in the Process Center authoring environment, as well as, remote Process Server environments that are connected to the Process Center. Process Inspector provides a centralized location for viewing and debugging running process instances in any environment connected to your Process Center. Table 1 below outlines some of the main tasks that the Inspector allows a developer to perform.

Table 1 – Tasks in Process Inspector (IBM, 2011)

In order to use the Inspector functionality to its full potential, it is important to ensure that each of your BPM cells has unique names. According to the IBM BPM 7.5 InfoCenter,
“Use a unique name for the deployment manager cell. A cell name must be unique in any circumstance in which the product is running on the same physical workstation or cluster of workstations, such as a Sysplex. Additionally, a cell name must be unique in any circumstance in which network connectivity between entities is required either between the cells or from a client that must communicate with each of the cells. Cell names also must be unique if their name spaces are going to be federated. Otherwise, you might encounter symptoms such as a javax.naming.Name NotFoundException exception, in which case, you need to create uniquely named cells.” (IBM, 2011)
Process Inspector does make use of connectivity between the cells and also from a client that must communicate with each of the cells. When connecting to Process Center through the Inspector, there is cross-cell communication that occurs when Inspector goes to look for the running instances you have in one of your remote Process Server environments. As an example, if a developer has deployed code onto the Process Center server (also known as the playback server) and is now ready to test the code on a remote Process Server environment, Process Inspector will allow the developer to kick off a process instance and debug the code step by step through the process, provided the snapshot has already been deployed to the remote Process Server. The drop down box in Figure 1 shows the various Process Server environments that are connected to the Process Center.

Figure 1 – View of Process Inspector while running a process instance

Normally, after selecting an environment to test your process instance on, Inspector would connect to the remote Process Server and allow you to execute your tests. However, if your BPM cells for all of your environments are named with the exact same name, you may see a screen resembling Figure 2, even though you have already successfully deployed the snapshot.

Figure 2 – Error messaging indicating no snapshots are deployed

When the BPM cell names are all the same, cross-cell communication experiences issues that will cause you to lose key functionality of the products, as described above. Figure 3 provides a high level view (as an example) of the connectivity between Process Designer (which contains Process Inspector), Process Center, and Process Server environments:

Figure 3 – Cross Cell Communication for Deployment in BPM 7.5 (Markowitz, 2011)

In conclusion, it is imperative that you review the pre-requisites for installing IBM BPM 7.5 Advanced, or any products for that matter, thoroughly to ensure a successful implementation. The old saying “measure twice and cut once” is always a good rule of thumb to avoid rework and further expense down the road.

Works Cited:
IBM. (2011). Naming considerations for profiles, nodes, servers, hosts, and cells. Retrieved February 16, 2012, from IBM Business Process Manager 7.5 InfoCenter: http://publib.boulder.ibm.com/infocenter/dmndhelp/v7r5mx/index.jsp?topic=%2Fcom.ibm.wbpm.main.doc%2Ftopics%2Fcins_naming.html
IBM. (2011). Running and debugging processes with the Inspector. Retrieved February 16, 2012, from IBM Business Process Manager 7.5 InfoCenter: http://publib.boulder.ibm.com/infocenter/dmndhelp/v7r5mx/index.jsp?topic=%2Fcom.ibm.wbpm.wle.editor.doc%2Ftopics%2Frunning_debugging_procs.html
Markowitz, E. (2011, 11). Product Development Director at Prolifics.

Seth Gagnon, a Senior Consultant for Prolifics, has over seven years experience in the healthcare industry and has worked with business process management technology to automate member enrollment and claim adjudication for a Fortune 200 healthcare client. He has experience in IBM middleware products such as WebSphere Application Server, WebSphere Process Server, WebSphere Business Process Manager, and other products in the IBM BPM stack. Seth received his BS in Management Information Systems from the University of CT and his MS in Technology Commercialization from Northeastern University.

Monday, February 27, 2012

Expectations for Pulse 2012

IBM Pulse 2012 will offer new opportunities to learn about IBM’s ongoing initiatives around integration between their numerous products lines. The Tivoli product line continues to become more integrated with Rational, WebSphere and Lotus brands. Existing integrations between products such as IBM Tivoli Composite Application Manager for Application Diagnostics (ITCAMforAD) and Transactions (ITCAMforTrans) and Rational Performance Tester (RPT) will be augmented with further extensions of the already powerful integration between ITCAM for SOA and WebSphere Registry and Repository (WSRR). Centers of Excellence are in place at many key Fortune 500 companies and products from the IBM portfolio that support this effort continue to be leaders in their technology areas.

Expanded integration with SOA environments is an area of particular interest for Prolifics, given our strong focus, proven record of success and acclaimed expertise in the areas of Technical Monitoring, Governance and Business Process Management (BPM). Prolifics is uniquely positioned among IBM Business Partners to deliver world class architecture and deployment services in this extremely complex business and technical area.

To see what Prolifics will be up to at Pulse 2012 click here.

Dan Kern joined Prolifics as a Senior WebSphere Administrator and Performance Tuning expert. Over the past 7 years, he has held roles as a Technical Solution Director, Practice Director for the Automation and Systems Management area and now helps customers realize the full potential of their software investments as a Solution Architect. Dan is highly regarded in the Tivoli SAPM product and business areas and continues his focus on top quality solutions.

Considerations When Monitoring IBM DataPower

Effective and comprehensive monitoring of SOA environments that leverage the power, and complexity, of IBM DataPower appliances requires a multi-tiered approach. The various appliances deliver enhanced security, message transformation and routing and as key components of business critical applications, require close attention to insure high availability in all regards.

Coverage for DataPower appliances must include monitoring of services and resources. While the appliances expose a good number of metrics through SNMP MIBs, monitoring of the services they provide allows proactive alerting, to both Consumer and Provider communities. Operational teams focused on the health of the appliances must be informed of any issues related to the appliances themselves, such as power, cooling and hardware errors to proactively address any degradation in performance or availability.

Service monitoring of the appliances starts with engaging the application teams, Consumers and Providers, to establish the Service Level Agreement for the deployed services. Live traffic is then analyzed and factored against the requested response times and availability levels for all subscribed Services and Operations. This additional level of validation allows more comprehensive tuning and distribution of alerts, increasing service and operation availability and reducing Mean Time To Resolve (MTTR) in case of performance degradation.

DataPower appliances are most often monitored by a combination of agents, such as those supplied by IBM as part of the Tivoli Composite Application Management for SOA (ITCAM for SOA) Platforms package. ITCAM for SOA includes agents to monitor both Service execution and Resource Usage of the appliances, supplying invaluable data and insights to Operations, Application Support and Software Development teams. The Services and Resource agents are most often deployed on the same remote server and poll the appliances via SOMA and SNMP protocols. This architecture allows more centralized deployment and reduces license cost.

The monitoring team interfaces with a variety of teams, from Network Security, DataPower Support and Enterprise Architecture, SOA Governance and Application teams. Each operational team provides their own level of expertise to the architecture and deployment effort and their involvement helps insure a solid and well supported deployment.

Application teams in SOA environments are heavily invested in the success and availability of their services, so the overall effort will benefit from their early and frequent involvement. ITCAM for SOA provides unique insight into Consumer and Provider service response time and can assist in validation of the business logic and rules driving service architecture and deployment.

Dan Kern joined Prolifics as a Senior WebSphere Administrator and Performance Tuning expert. Over the past 7 years, he has held roles as a Technical Solution Director, Practice Director for the Automation and Systems Management area and now helps customers realize the full potential of their software investments as a Solution Architect. Dan is highly regarded in the Tivoli SAPM product and business areas and continues his focus on top quality solutions.

Friday, January 20, 2012

Business Rules, ILOG and WebSphere Operational Decision Management

Business Rules and why they are needed?
Business rules have been a very familiar term not only in the insurance, banking and retail sectors but the public sector as well. Change is inevitable in any organization’s business. What drives them apart is how quickly one can adapt to change. But this is what everyone talks about - change and adapting to change. Where do business rules fit in here?

Rules are policies that are defined by the business and they are designed by definition to expect constant change. Moreover, since rules are defined and designed by the business, they make more sense to the business. Traditionally, a business has been dependent on IT to implement any change that occurs in an organization. Business rules give the power of implementing that change back to the business. This is what drives organizations to the world of business rules.

The prime and most robust solution to implement business rules is IBM’s Websphere ILOG JRules. The entire rule management solution is known as a BRMS (Business Rules Management System). In this article, we will look at the latest IBM offering – WODM (which is ILOG v7.5). Before diving into WODM, let us look at ILOG JRules and what your organization needs in order to implement ILOG JRules.

Exploring ILOG JRules
ILOG comes from two French words – “Intelligence” and “Logiciel” meaning intelligent software. When business rules are implemented in ILOG, they tend to act as intelligent systems which can give you an answer based on relevant information that you provide, hence the name.

Before moving on to a rules-based solution I recommend asking the stakeholders in your organization the following:
  • Do you need to improve your organization’s current decision collaboration with more visibility and transparency?
  • Do you need to see instant change or automate real time actions with high performance and reliability?
  • Is your organization spending too much time and money to change minimal decision logic?
  • Do you need increased speed and agility in your change control process?
If the answer to any of the above was yes, then ILOG JRules is the way to go.

An ILOG BRMS gives your organization the capability to put all your business rules in one place. This is called a rules repository. Not only are these rules separate from your application code but also independent of any change that occurs in your application code across the enterprise. Apart from being independent, rules in ILOG can be changed by the business without IT collaboration. Managers can monitor changed rules and for the first time business logic becomes transparent as opposed to embedded deep somewhere in that ugly thing called code.

In order to make a recommendation to your organization, you need to get a background of what would need to be done in order to implement ILOG’s BRMS (business rule management system). Let’s look at what components ILOG JRules consist of.

Components of ILOG JRules
WebSphere ILOG JRules has three different components. These are:
  • The standalone developer tool – Rule Studio Eclipse for JRules.
  • Rules Execution Server – web based tool to deploy and execute the rules.
  • Rule Team Server – web-based tool to change/update rules on production, for the business owners/ users.
Apart from the above, there are testing tools that might be needed; these include Decision Validation Services or Rule Scenario Manager (in the older version of ILOG JRules).

Since ILOG JRules is now being replaced by WODM we will now shift our focus on WODM (version 7.5)

WODM (WebSphere Operational Decision Management) – What, Why and How?
In an effort to package and market ILOG JRules as a more robust solution for entire decision management, IBM renamed ILOG JRules to WODM recently. This is ILOG’s 7.5 version. WODM gives your business the enhanced capability to integrate business events with business rules.

Before exploring further, let’s look at how one can distinguish between a business event and a business rule. A business event is something that occurs such as ‘a claim’ or ‘a transaction’ or ‘an alarm’. It’s the trigger that causes business rules to get invoked. An event does not care about the “logic” that goes with a business policy or change, rather it acts as a signal to invoke rules and generate a response based on the business rule.

Based on the above we can safely say that WODM does not really change the way ILOG has been as far as implementing a BRMS is concerned. It provides integration with business events but when it comes to what needs to be done to implement rules and a BRMS, there are hardly any surprises. Bottomline – if you are familiar or comfortable with ILOG JRules, you don’t need to worry about any learning curve in transitioning to WODM.

Since a picture is worth a thousand words, let’s look at one shall we?


The above picture represents a high-level view of WODM. The entire arrow on the left represents rules, and in parenthesis you can see “WebSphere ILOG BRMS.” The right hand side of the picture includes WebSphere Business Events.

Exploring WODM
In order to improve the quality of repeatable transactions and process-related decisions, a combined business rules and business events platform is needed. WODM provides this solution. It enables stakeholders within any line of business to create decision logic, separate decisions from processes and applications and execute real time decisions based on various interactions.

Components of WODM and Differences from ILOG JRules
Below is a figure representing components of WODM:


From the figure above, there are two specific components that need mention – Decision Center and Decision Server. Let’s look at what these are and how they differ from ILOG’s previous versions.


And, that is it. The way business rules were designed previously in ILOG does not change. Instead of using Rule Studio eclipse, now the enhanced Rule Designer is used. Decision Center for business space offers the capability to change namespaces out of the box and view enhanced reports for business rules and events.

Having discussed what WODM (and ILOG) is and what it consists of, let me now propose a delivery structure that gives you an idea of how your organization can implement a BRMS.

Proposed Delivery Suggestion for WODM
In order to establish a new BRMS system, there has to be detailed steps involved with Installation, Testing and Integration of the BRMS with application server environment. A new BRMS delivery approach should be broken down in four phases:
  • Installation of Decision Server (Rule Designer and Rule Execution Server) on IT developer and Architect’s personal machines.
  • Installation of Decision Server (Rule Execution Server) on dev/qa boxes and rules exposed as a service to be consumed by other services.
  • Installation of Decision Center (Rule Team Server) on dev/qa boxes in order for rule reviewers and business users to change rules on the fly.
  • Replicating qa installations of Decision Server and Decision Center on prod boxes. Note: Decision Center prod install is optional based on your organization’s governance policies.
The above breakdown of phases in which a WODM-ILOG based solution is delivered ensures that the rule solution has first been integrated within the SOA enterprise before the rules are exposed for being edited by the business. This breakdown also ensures if any leaks and gaps are present they get detected in the first three phases rather than breaking the system and causing damages on production when business users make a change on the fly. The above breakdown also takes into consideration the learning curve associated with making business users comfortable with changing business rules.

Transitioning from ILOG to WODM is an easy process and all your organization needs to do is get the latest software from IBM and follow the four step process above. Learning curve is almost zero if your organization is already using ILOG.

Conclusion
Business rules in general drive your organization towards becoming highly agile and flexible to change. Implementing a BRMS in your organization gives you an edge over your competitors in today’s world of quick adaptability. Automated decision making capabilities reduce cost and overhead for your organization. IBM’s WebSphere Operational Decision Management is the most robust solution to achieve your organization’s goals of having transparent and improved quality of transactions and process related decisions.

Akshat Srivastava is an ILOG consultant at Prolifics with 5 years experience in the IT industry having worked in insurance, banking, retail and public sector companies. He is experienced in all aspects of the development life cycle, including bottom-up estimates, analysis, design, development, testing, release management, and bug-fixing. He has created rule based solutions at various clients, authored rule repositories and best practice documents while focusing on ILOG as the implementation environment.

Wednesday, January 11, 2012

Exceptional Web Experiences 101

As I continue to prepare for Lotusphere 2012, I am reflecting on my experience last year at the conference in 2011. At Lotusphere 2011 there was lot of attention on providing an “Exceptional Web Experience” to the customers. And rightly so. At the end of the day, it’s all about making the customer, the end user, the client (or whatever they are called) happy. There can be a lot of misconceptions in the User Experience space about the concept of “web” experience”

So I asked my self this question: Is an iGoogle Page (that I view every single day) a good web experience?


Sure enough, the iGoogle page provides me with the information that I need. But to get the information, I had to enter my zip code 5 times and my address a couple of times. And none of the snippets or widgets of information talk to each other. Is this what you would call “Exceptional”?

This year, I participated in a few IBM Social Roadshows last year and I decided as part of Prolifics commitment with IBM I would talk about the whats and hows of this social experience and also present some trends in the space.

So what exactly is an “Exceptional Web Experience”? How do you achieve it?



When I looked up the meaning, I found the following answer: “it’s about how a person feels about the system”. To me that said it all, but the real question is how do you design the user experience (UE) so that it makes the end user feel good about the system? How do you attain the level of excellence?

According to me, these are some of the key drivers in creating a great User Experience
1. It’s about Relevance - Create highly personalized customer interactions

2. It’s not only just about the product - Design experiences, not features

3. Go beyond the desktop or laptop - Having a mobile presence is a must

4. Earn the trust of the customer - Improve customer loyalty and relationship by enabling “Social”

5. It’s about Web 2.0 and beyond… Web 3.0 - Visual Appeal + Ease of use = Wow customers. Keep the UI Simple, Interactive and Responsive (SIR principle)

For over a decade, IBM WebSphere Portal has led the web 2.0 space in providing a seamless web experience. But now with the help of its accelerators (Social, Collaboration, Mobile etc) it’s poised for providing greater results in the enterprise business and social space. IBM WebSphere Portal delivers greater flexibility by creating personalized web experiences that seamlessly combine back-end applications, commerce solutions, social media sites, and cloud-based services.

Speaking of Social, there is phenomenal potential in the power of introducing “Social” into day-to-day business.

I have observed some trends in how customers and clients are using the power of social to engage customers.

Social Trend #1 - Engage the Customer on the Site

This is the single biggest focus of most customers and clients. Two questions that normally arise in a UE discussion are: how do we keep the user engaged on the site? How can we have share information with users and between users?

Answer: Leverage Social. By Enabling Users to Socialize:
  • Share conversations and information between users
  • Wikis, blogs, forums, communities
  • Ratings, commenting, tagging
  • Shared bookmarks, files, activities for work & ideas
Search
• Based on profile: expertise, projects, responsibilities, and interests.

Customer Service
• Enable customers to get problems resolved quickly with click-to-chat functions.Provide them targeted results

Social Collaboration
• Improve brand awareness by syndicating content across the web, into other online properties, such as Facebook, Twitter, Google etc.

IBM WebSphere Portal provides a great point solution to start your social initiative. Concepts like tagging and rating are essential components for developing collective intelligence about the site/product. They have also proven useful in engaging customers on the site and creating a trust and a sense of community between the end of users. Out of the box templates like Blogs, Wikis, Newsletters, Communities have made it very easy for clients to share information with the users. (Requires no development, only customization). Tools like click-to-chat, integration with RSS feeds from external sources like Facebook, Twitter, Google etc have added a great social dimension to Portal which was always perceived as “single point front end solution to IBM SOA framework"



Now if your business is ready for a more mature Social strategy IBM Lotus Connections is the right solution. To highlight some of the key features that product presents
• Profiles – Find people and expertise in your social network
• Community - Connect with people of common interests to share ideas
• Forum - Start discussions to solicit feedback from end users
• Activities - Dashboard of to-dos and activities within your network
• Files - Share variety of artifacts with your individuals and groups


Social Trend #2- Expand Beyond Traditional Web

There are 4.6 Billion mobile customers. To me it means 4.6B reasons to expand the outreach of your products to beyond traditional desktop. Having a mobile presence does not mean that users can access your site via a smart phone. But a true mobile experience comes from having a site to adopt the rendering process based on the smart phone. UI elements like themes on the portal pages, the navigation schemes should be able to differentiate between an iPhone or a Blackberry or any other smart phone.

Keep in mind the following consideration for developing a mobile strategy

  • Create a device agnostic presentation
  • Utilize common business logic and services
  • Cater to device specific requirements (iPhone maps, geo location etc)
  • Create lots of screen presence despite limited real estate
  • High Response time despite broadband limitations
  • Leverage one common theme

There are several questions in this space. What sort of a mobile strategy should customers adopt? Should I create a native iPhone app? What about a mobile website? What’s the buzz about HTML 5?



Consider your requirements before choosing a solution. Here are some options



There are several other options for non-Portal, non-IBM based customers as well, such as using one of the open source mobile and HTML 5 based frameworks.

Social Trend #3- Optimize the Experience with BI Analytics

One of the focus areas in social business is optimizing the experience based on real-time data, site usage and social analytics.
  • What drives BI Analytics?
  • Who is coming to my site?
  • How did they find it?
  • What are they doing?
  • What did they search for? Did they find it?
  • What are the most popular areas?
  • What are the most popular topics/content?

Leverage analytics to:
  • Improve user engagement by measuring and then fine tuning the customer experience
  • Intelligently manage your marketing resources
  • Make better decisions faster
  • Exceptional web experiences engage, attract, satisfy and retain customers and partners.
  • Being nimble and agile is required to keep web content fresh, engaging and relevant.
I look forward to seeing how these trends have evolved since Lotusphere 2011 and discover new trends to look for in 2012. Click here to see what Prolifics has in store for Lotusphere next week, including information about our 4 speaking sessions.

Niral Jhaveri is the User Experience Practice Director at Prolifics and has extensive expertise in the IBM Lotus, WebSphere and Rational family of products. He has played a key role at several strategic clients by providing technical leadership. Niral has an extensive background in the design and development of IBM WebSphere Portal, SOA and Web 2.0 applications with a proven track record of consulting and architecting solutions for several industry verticals like Finance, Retail, Insurance and Technology.

Friday, January 6, 2012

A 'Smart Web' Pattern for Tomorrow’s Enterprise

With over 5 billion mobile subscribers and 627 million mobile web users, projected to reach 1.5 billion by 2015, 'Mobile Platforms' are here to stay. Most Enterprises want to take advantage of these platforms to stay competitive and provide value to consumers.

Despite widespread adoption what daunts most technology teams today is the maintenance of multiple code bases across Web, Tablets and Smart phones. Web applications were developed targeting desktops and laptops as smart phones were a luxury a few years back. However, enterprises have taken note of the recent mobile wave and added support for smart phones and tablets rather than a ground-up redesign. The immediate need was to get a mobile presence out there which was accomplished using an ‘App’ or a mobile website in addition to existing assets. This adhoc solution approach leads to code fragmentation and maintenance becomes a nightmare in due course of time.

The following article discusses in detail strategies that could be employed for building mobile frameworks and apps with maximum re-usability and minimal code fragmentation: 17 Solutions to Build your own Mobile Application

Enterprises look for a development pattern that helps in the development of Web Applications and native mobile apps (iOS, Android) in a seamless manner through a single application code base. The pattern should be flexible to accommodate existing web applications. Such a pattern could be achieved by having an abstraction layer on top of mobile platforms (created using COTS Products) and integrating new code with their existing web applications.

We explored various options available in the market and zeroed in on Titanium IDE provided by Appcelerator. Titanium follows the same pattern as followed by Java, in that it’s a ‘Write once , run everywhere’ platform. It creates an abstraction layer in Javascript that helps developers generate native code for individual platforms without going through the process of maintaining individual code bases. The generated project, essentially a collection of Javascript files could be integrated with existing code base resulting in a single code base across platforms. Of course, a few tweaks are required in the build process to create customized builds for each device but that’s a one-time effort. The entire development process is seamless and bodes well for the organization in terms of maintenance and gives them extra leverage to react to changes in this ever growing market.

Selecting the right COTS Product for Mobile Development is a challenge given abundant products available in market today. Titanium IDE is based on Open standards and generates native code for mobile platforms. It provides Out-of-the-box Mobile ecosystem and connections to Enterprise data, content and processes. This results in shorter development cycles, manageable code base and code reuse across platforms. Enterprises can spend their dollars building new features and reacting better to market changes by adopting the above 'Smart Web' pattern.

Laks Sundararajan is a Solution Architect with Prolifics and a key member of highly specialized team working on IBM WebSphere Portal, Content Management and Collaboration technologies. He has led the implementation of many global projects using IBM WebSphere Portal and has extensive background in design and development of enterprise portals. He specializes in providing Enterprise SOA solutions leveraging WebSphere Portal, Content Management, Tivoli and Mashup’s. He holds Masters in Information Technology from Carnegie Mellon University and a Graduate Degree in Engineering from BITS, Pilani.