Tuesday, April 21, 2009

Vendors Survival: The Sun is Red - Oracle to buy SUN First Take

Today (April, 21) is the Holocaust Day. This post is in the memory of my cousins, aunts and uncles murdered by the Nazis in concentration camps before I was born.


In July 2008 I published a post in my Vendor Survival series. In the post titled Will SUN Microsystems Survive until 2018? I argued that Sun will not survive and named IBM, HP and EMC as companies which may think of Sun as target for acquisition. My opinion was supported by Sun discussing with IBM the possibility that IBM will acquire it. However, Sun attempts to being acquired by IBM failed.

Sun's board was divided to acquisition supporter (Jonathan Schwartz camp) and those who opposed the deal (Scott McNealy camp). Instead of being purchased by IBM for $7 billion USDs, Sun is going to be acquired by Oracle for approximately $7.4 billion.

I never thought of Oracle as a potential buyer of Sun or any other hardware vendor.I still think that Oracle's decision to buy Sun is probably wrong.

Oracle was always a software vendor and adding hardware to its products portfolio is a major business model change.


In addition, Oracle will face difficulties in continuing partnerships with server and storage vendors such as HP, Dell, EMC, NetApp and at the same time competing with them with Sun's servers and storage devices.

Assimilating all the acquired applications vendors (PeopleSoft, J.D Edwards, Siebel etc.) with Oracle is a big challenge, due to overlapping products lines, cultural and organizational issues and technological issues. Deciding which infrastructure products should be strategic: BEA's or Oracle is another issue. As far as SOA is concerned you can read my view and other views commented in the following posts: Oracle's BEA acquisition: SOA perspective, Oracle's BEA acquisition SOA perspective – Revisited, Oracle's BEA acquisition SOA perspective – Revisited again

All these yet unresolved challenges are augmented by the SUN acquisition.

Overlapping everywhere

Databases

Oracle is the leading database as far as market share is concerned. MySQL is in the forth place and is the Open Source DBMS market leader.

According to MySQL's publications prior to the acquisition of MySQL by Sun, its advantages over Oracle, DB2 and SQLServer where technical and not only price related advantages.

The two leading advantages cited where:

1. Availability - The company quoted an objective test showing that MySQL and Oracle where the most stable databases.

2. Simplicity - By omitting frequently unused features the company claimed a friendlier, easy to develop, easy to maintain and easy to manage database.

Killing MySQL is not an option, but Oracle database is the company's flagship product.


Expect for:

  • Less innovative MySQL
  • A Niche Player MySQL. Similar to the way Oracle positioned RDB many years ago.
  • Competition from other Open Source databases as well as from MariaDB (MySQL version developed by Michael "Monty" Widenius, the founder of MySQL and former MYSQL workers, who left Sun after MySQL acquisition).

Java

  • Oracle will own the JCP

. .

Expect for:

  • Two strong leaders in the Java community: Oracle and IBM
  • BEA's Weblogic as the strategic Application Server. Sun's Application Server will gradually fade.


SOA & Cloud Computing

  • Three Oracle's SOA suites: BEA, Oracle and Sun. I see no reason to change my predictions that BEA's solutions will dominate. The company started already to build a comprehensive Fusion Middleware solution including BEA's and Oracle's SOA products.


Expect for:

  • Few Sun's (formerly SeeBeyond) SOA infrastructure elements will be added to Oracle's future SOA suite.
  • Heterogeneous Java integration (Integration of multiple different JEE Application Servers) elements are candidates for inclusion in oracle's future SOA suite, because this is Sun's SOA solutions strength.
  • GlassFish ESB End Of Life or an Open Source Glassfish without Oracle support.
  • Sun's innovative Cloud Computing solutions will play a key roll in Oracle's Cloud Computing strategy


Operating Systems and Servers

  • RedHat Linux is currently Oracle's preferred Operating System. Now oracle owns Open Solaris UNIX operating System and should decide upon Operating Systems strategy: UNIX centered? Linux Centered? Or both.


Expect for:

  • Dual approach for the next few year
  • Linux domination for Long Term
  • New Linux variant including some Open Solaris capabilities
  • for Long Term: SPARC chip End Of Life and Intel/AMD based Oracle's Operating System


Open Source

The Open Source community may face challenges due to possible changes in Oracle's strategy in two components of the LAMP architecture: Linux and MySQL.

It should be remained seeing if Oracle will change its strategy towards less Open Source support.

Another Sun's Open Source project, Open Office could be ill positioned after the acquisition.

Whatever decision taken by Oracle, I think that the Open Source model will continue to be a leading model, especially during the current Recession.


Additional Notes

Sun's acquisition is part of the Market Consolidation trend described in a previous post: Vendor Survival Guide: Supermarket, Grocery and Kiosk.

  • Expect for a tougher competition between: Microsoft, IBM and Oracle. Google, HP and Cisco will continue to be market leaders.
  • The winner in the traditional Applications market from Sun's acquisition by Oracle could be SAP due to less vendor neutral Oracle and more resources allocation by Oracle towards merging efforts.


Saturday, April 11, 2009

BPEL for the People

BPEL for the People  is not a new song like John Lennon's Power to the People.
It is a new extension to WS-BPEL standard called officially BPEL4People.
The new extension goal is to address Human Processes to the automatic processes addressed so far by BPEL.
The proposed extension was submitted to OASIS as draft in 2009.

In my lecture on SOA BPM in a CIOs course, a week ago I summarized the current status of BPM by the following bullets:
  • Many enterprises did not start their BPM initiative
  • Usually a BPM effort is executed together with a SOA initiative. Sometimes they are not synchronized because SOA is initiated by IT while BPM is initiated by a Business unit.
  • In many cases the implementation scope is in a departmental level or a Business Line and not in the Enterprise.
  • A large number of BPM tools in the market indicating an immature market
  • Beginning of market consolidation due to acquisitions
As far as BPM standards are concerned, there are two leading standards OASIS's WS-BPEL and OMG's BPMN. Few years ago WS-BPEL was considered as the most promising BPM standard, however due to disappointments from BPEL implementations, BPMN is now considered as the most important BPM standard.

BPMN and WS-BPEL are not competing standards. Part of BPEL acronym EL, stands for Execution Language, describing a run time BPM standard. Unlike WS-BPEL, BPMN is a modeling Standard and not an execution standard.

On the one hand the two standards are not competing, but on the other hand they are not completing each other by addressing together a full Process Life Cycle.
The following section depicts BPEL limitations and some of the reasons why the two standards are not completing each other.

WS-BPEL Limitations
The main three limitations of current WS-BPEL standards are:
1. BPEL does not address Human Processes.
BPEL addresses only Orchestration of automated services.
BPMN addresses Automatic as well as Human Processes.

2. BPEL does not include a concept of Subprocess.
The concept of Subprocess is important. It enables division of the process to logical units. Each logical unit or Subprocess is composed of related activities.
A Business user view could be composed of Subprocesses, while an IT BPM developer's view could be drilled down to technical details.

3. There is no full Round Tripping between BPMN model and BPEL execution code. The issue of Process Round Tripping was discussed in a general level in previous posts: SOA and BPM: Too Much Round Tripping? and SOA & BPM.
In most cases BPMN model which does not include Human activities is translatable to BPEL, but in many cases it is not possible to build a BPMN based model, from BPEL code. The reason for this limitation is incompatibilities between two standards which are managed by two standards bodies.

BPEL4People goal is to overcome the first limitation.
In June 2007 a paper titled: WS-BPEL Extension for People (BPEL4People), Version 1.0 was published by Active EndpPoints, Adobe, BEA, IBM, Oracle and SAP.

In January 2008 it was submitted to OASIS and OASIS committee is working on it.
As discussed in my presentation in the CIOs course handling Human based processes is a tougher task than handling automatic processes.

The following elements are included only in human based processes:
  • Roles – Who is authorized to execute a human activity in a process?
  • To Do List – Which Process instances should be handeled by a person?
The To Do List should include priorities.
  • Schedules – Until which time and date an activity should be completed?
  • Replacement – Who will handle activities which should be handled by an unavailable person (due to illness, vacations or other reasons)?
  • Reports – a manager should have a report describing current status of all process instances activities which should be performed by his subordinates. The manager could use the reports for solving Bottlenecks as well as for adjusting the human workload by assigining new processes to the least busy team members.

The highlights of BPEL4People's draft described in the next paragraph illustrate the complexity of handling Human based processes.

BPEL4People draft Highlights

  • The Human processes tasks are handled by two completing standards BPEL4People and WS-Human Tasks (WS-HT)
  • The extension defines three roles:
Process Initiator – The person triggering the Process instance
Process stakeholders – people who can influence the progress of the Process instance. They can influence it, for example, by adding ad-hoc attachments.
Business administrators - people allowed to perform administrative actions on the business process, such as resolving missed deadlines.
  • People are assigned to acting upon a process via logical People Groups or other methods. People assigning is performed by usage of BPEL3People in conjunction with WS-HT.
  • People activities are basic activities for integrating human interactions with automatic BPEL processes. It may include Human tasks and notifications.
  • Four types of people tasks are defined:
Constellation 1: Inline task as part of a people activity – limited to a specific people activity

Constellation 2: Inline task which may be reused within multiple people activities
Constellation 3: Standalone task within the same environment without the specification of a callable Web Services interface on the task i.e. task invocation is implementation-specific.
Constellation 4: Standalone task from a different environmentwith the specification of a callable Web services interface.
  • Priorities are assigned to human tasks and are subject to change during the process instance execution.
WS-HT Highlights
A detailed description of WS-HT is available in a document dated June 2007 titled:
Web Services Human Task (WS-HumanTask), Version 1.0.
It was published by the same companies which published BPEL4People document on the same month and year. (The companies' names are cited in the BPEL4People Highlights section of this post).

  • Defines Human Tasks which are part of a Business Process, but they can also be used for human tasks which are invoked as services.
  • Enables integration of Human beings in Service Oriented applications
  • Roles based. This document defines the same roles defined in the corresponding BPEL4People document and additional roles. Unlike the BPEL4People document, the roles in this document are defined in the task level and not in the process level. Additional roles are: Actual Owner, Potential Owners, Excluded Owners and Notifications receivers.
  • Logical People Groups are defined and used in conjunction with BPEL4People
  • The User Interface for Man-Machine interactions in the specific context is included in the WS-HT defined.
  • Examples of properties defined for a task:
Name
Interface (WSDL)
Priority
People Assignments
Delgation (to whom a task instance task could be delegated)
Presentation Elements – elements to be presented as part of the task in
task lists
Outcome – Business results of the task
SearchBy – Customed search for task instances
Rendering method
Deadlines – for Timeouts and Escalations

  • An authorized user can invoke Participation Operations such as: Start, Stop, Suspend, Resume, Cancel, Claim (Reserve an instance for a specific user), Complete (The Human task was completed successfully), Fail (The task's owner complete it unsuccessfully). There are many other Participation Operations.
  • Query Operations allow retrieving task data.
  • Administrative Operations may be invoked by an Administrator e.g. Activate a task (change its status to Ready), Nominate (nominate an organization entity to process the task)
  • Xpath extension function

  • In case of an application which is human task aware a coordination protocol is required. WS-HT coordination protocol is a protocol based on WS-Coordination standard. The difference between regular WS-Coordination and the WS-HT coordination is that usually the coordination is between Web Services and in this particular case the coordination includes also Human tasks.

The complex technical aspects of WS-HT coordination protocol are beyond the scope of this post. A reader who would like to drill down to that protocol should read Chapter 7 of the WS-HT document cited in the beginning of this section.
Conclusions
It should be remained seeing if the new specifications of BPEL4People and WS-Human Tasks will address the issue of extending BPEL to Human based Processes.
Probably, it will take at least two years until this draft standard will mature.

AS far as the complexity of handling Human based Processes is concerned I am sure that I rest my case: It is complex.

I will not be surprised if the next version of BPEL4People and the next version of WS-HT standards will omit the some of the current complex features.


Public Cloud Core Banking: Hype or Reality? - Revisited

  More than 4 years ago I was asked if Public Cloud Core Banking is a Hype or a Short Term Reality? If you had read the post, you would prob...