Archive for April 2011
As an attempt to ease the application’s development in terms of packaging, versioning and deployment, Java 7 will introduce Java Module System (JMS). The Java Module System is being developed under the Java Community Process as JSR 277. The abbreviation itself does not seem very appropriate at first sight, as it can be easily confused with JMS (Java Message Service).
Java Module System’s architecture consists of three main components:
- Java module
- Versioning System
Java Module System is a new distribution standard which (similar as JAR file) contains a set of classes and other resources. However, JMS differs from JAR in that the modules can be versioned. A module can be defined as a logical unit of a set of files, resources and other dependencies that can be versioned, packaged and deployed in the module repository. The module repository is where java modules can be stored, discovered and used by other modules.
You can read more about JMS at the following link: http://www.javabeat.net/articles/101-introduction-to-java-module-system-in-java-70-1.html
It has finally happened what we were all anxious anticipating and speculating about. IBM announced how they will unify their SOA BPM platform in the upcoming version. During the IBM Impact 2011 conference in Las Vegas (April 10-13) main attention was focused right on unified IBM BPM-SOA platform called IBM Business Process Manager (IBM BPM).
So what was is going on and how will the new platform look like? Which products are staying which will be deprecated? How the terminology will be shifted? What is new for the WPS users and what is new for the WLE users? What this means for existing deployments, how will they be migrated? How was the integration of the Process Server and Lombardi Edition process runtime unified? How will the Lombardi and Process Server processes interact? How will we design business processes and integrations in the future?
So a lot of questions are arising from IBM announcement. We will be trying to answer them in this and fallowing blog posts.
What is going on is that basically IBM is taking existing WebSphere products that were rather independent and integrating them in unified platform. Fragmentation of products happened in the past as a result of the acquisitions; remember Lombardi and ILOG for now.
WebSphere Lombardi Edition and WebSphere Process Server were finally integrated in a new platform called IBM Business Process Manager (IBM BPM). The unification objectives were to provide platform that will be simple, powerful, enable governance and visibility. Did they make it; did they create the most powerful BPM platform on the planet?
Definitely Lombardi Edition and Processes Server were best-of-breed and the upcoming integration of both will have impact on the BPMS ecosystem. IBM is shifting his strategy to more business-centric from rather to developer-centric and this helped him to unify its products in a more BPM friendly manner. Big role in this shift are playing Lombardi tools which became the core of the new platform.
IBM Business Process Manager has so many capabilities that it will be available in three different configurations (Express, Standard, and Advanced). All tools previously existing in different products are now available as one product. Company could choose appropriate configuration matching stage of their BPM program.
Did this unification impacted terminology? IBM is mainly dropping WebSphere prefix for their BPM tools. We will be designing processes in Process Designer (IPD) and designing not developing integrations in Integration Designer (IID). Designed processes will then run on the Process Server. More examples of the new terms can be spotted in the table below.
How all these “new” products constitute IBM Process Manager Platform? The main piece of platform is rather new (to WPS users) and it is called Process Center (WLE users should be familiar with it). It acts as a central BPM repository for the processes, services and related artifacts like Business objects (XSD) and Service Interfaces (WSDL). Process Center enables centralized governance of the BPM. This means that managing of the process life cycle through versioning and deployment will be carried out in Process Center.
While Process Center represent central repository of the processes it also has information about server environment. This enables publishing processes directly to the Process Server from Process Center. It has capabilities to define test, staging and production environments.
Users using Process Designer or Integration Designer will collaborate through Process Center. While Process Designer as known from Lombard has active connection to repository, the Integration Designer connection is passive. This means that synchronization with the central repository has to be made on regular intervals with build-in sync mechanisms.
Process Designer has all of the capabilities with look and feel from WebSphere Lombardi AE and the same is true for Integrations Designer and its predecessor WebSphere Integration Developer. Processes designed in the Process Designer are called Business Process Definitions (BPD), obviously these are “Lombardi“ BPMN processes. On the other hand, processes could still be designed in Integration Designer, this processes are now called Straight- Through Processes (STP) and are BPEL processes. Integration in the means of using services (processes) from one type of process in another is done via SCA and we will talk about this integration in the fallowing posts.
What is very important is the new shared runtime environment for all types of processes. BPD and BPMN share the same runtime called Process Server which is based on WebSphere Process Server. IBM process runtime environment now supports execution of the BPMN and BPEL processes.
For monitoring capabilities of the both types of processes Business Monitor is used. This is enabled with shared Process Server runtime that is emitting business events for Business Monitor. While for Business Rules one product is used for whole platform and that is ILOG JRules. It is integrated into Process Designer and Integration Designer.
What is praiseworthy is that backward compatibility will be maintained with easy migration of existing solutions. It was stated that no changes has been made to the execution engine. We all hope that this will work well.
To quickly summarize in practice there is not so lot of changes to the look and feel of the products. They have been renamed and integration capabilities have been implemented to seamlessly work with other products in the platform.
In the fallowing blog posts we will further investigate what is new in IBM Business Process Manager 7.5 on the areas of:
- Platform Configurations
- Installation and Configuration
- Business Process Shared Repository
- Integration of Process Designer and Integration Designer
- Business Process Versioning
- Human Tasks and User Experience
- Business Rules
- Environment Migration
- Registry Integration with ESB
- Business Process Monitoring
- Dynamic invocation
While doing that we will try to answer all the remaining questions.
Our team gained new competences at IBM’s Impact 2011 conference! Matej Hertiš was recognized as IBM Certified Solution Advisor for Cloud Computing and Martin Potočnik was recognized as IBM Certified SOA Associate.
On the second day of conference our Cloud Computing Centre had presentation with the topic “Mobitel’s Next Generation Order & Service Provisioning Management Platform” in cooperation with Swami Chandrasekaran.
Presentation was presented by our SOA experts Matej Hertis and Martin Potocnik who talked about how Mobitel created a new customer Order & Service Provisioning Management Platform. Highlights of the session included how Mobitel reduced its order fulfillment cycle time, gained visibility into order’s and automated manually-intensive processes.
I also would like to mention that it’s wonderful to see other Slovenian companies which participated and added extra value to this conference. The presentations are following:
- Creating Production IBM BPM Deployments – A Case Study at Mobitel; Zoran Mladenovic Mobitel, Tomaz Paternoster IBM Slovenia, Ritesh Saxena IBM
- Adopting SOA/BPM as a Competitive Advantage During Economy Downturn; Edvard Krasevec, Viator&Vektor, Jurij Rejec, A-Soft d.o.o.
- Adoption of WebSphere BPM in Slovenian Electricity Distribution Companies; Andrej Bregar, Klemen Sorcnik, Matej Nosan, Informatika d.d.
- Customer Panel: Meet the Wizards of System z – Stories of Revolution, Consolidation & Victory; Andrej Bregar, Informatika d.d. ,Marcia Harelik, IBM, Georg Huettenegger, Credit Suisse AG, Laura L. Olson, IBM, Michael Lange, Huntington Bank, Thore Thomassen, Storebrand ASA, Walker Miller, Huntington Bank
On Monday, April 11th 2011, IBM officially started one of the biggest international conferences, Impact 2011: Optimize for Growth. Deliver Results.
The conference was opened by IBM executives Jon Iwata and Nancy Pearson who took the audience on a journey through IBM’s 100 years of renovations. In this way the session focused both on IBM’s history of innovation, and on how this history positions IBM to help business become more agile in today’s marketplace.
More and more enterprises are nowadays moving applications to the cloud to modernize their current IT asset base or to prepare for future needs. There are several strategies for migrating applications to new environments. In this blog, we shall discuss a phase-driven step-by-step strategy for migrating applications to the cloud.
One of the key differentiators of AWS’ infrastructure services is its flexibility. It gives businesses the freedom of choice to choose the programming models, languages, operating systems and databases they are already using or familiar with. As a result, many organizations are moving existing applications to the cloud today. The AWS cloud brings scalability, elasticity, agility and reliability to the enterprise. To take advantage of the benefits of the AWS cloud, enterprises should adopt the previously mentioned migration strategy and try to take advantage of the cloud as early as possible. Whether it is a typical 3-tier web application, nightly batch process, or complex backend processing workflow, most applications can be moved to the cloud.
It is true that some IT assets or applications currently deployed in company data centers might not make technical or business sense to move to the cloud. Those assets can continue to stay within the organizations’ walls. However, we strongly believe that there are several assets within an organization that can be moved to the cloud with minimal effort. The step by step, phase-driven approach helps you identify ideal projects for migration, build the necessary support within the organization and migrate applications with greater confidence.
A successful migration largely depends on three things: the complexity of the application architecture; how loosely coupled your application is; and how much effort you are willing to put into migration. We have noticed that when customers have followed the step by step approach and have invested time and resources towards building proof of concept projects, they clearly see the tremendous potential of AWS, and are able to leverage its strengths very quickly.
Java Magazine will publish articles and community news about Java technology, the Java programming language, and Java-based applications. You can subscribe here.
4. April 2011 – Standards organisation IEEE (Institute of electrical and Electronics Engineering) is starting to face cloud interoperability issues with hopes to minimize cloud fragmentation.
According to IEEE Cloud Computing Initiative, “cloud computing today is very much like the nascent Internet – a disruptive technology and business model that is primed for explosive growth and rapid transformation. But without a flexible, common framework for interoperability, innovation could become stifled, leaving us with siloed ecosystem” the organisation warns. As part of this IEEE initiative two working groups are formed, P2301 and P2302. P2301 will aim to provide profiles in critical areas such as portability, management and interoperability interfaces as well as file formats and operation conventions while group P2301 will focus on cloud-to-cloud interoperability and federation. It will, for example, work on standardizing gateways that can handle data exchange between clouds.
At the moment number of organisations are working to standardize cloud computing. Even the European Commission got involved, stating that users must be able to change their cloud provider as fast and easily as changing one’s Internet or mobile-phone provider has become in many places. Formal consultations on European cloud computing will take place in Brussels on May 23.
In general, standardisation in the cloud is an extremely good thing. It will allow enterprises to use cloud computing more effectively and with more confidence, but there is also a risk that defining how things should work could have an opposite effect and stifle innovation, according to David Bradshaw, research manager of European SaaS and cloud services at IDC.
Bradshaw also hopes that they all have good sense to work together and avoid different islands of standards. The platform level (PaaS) is the area where the need for standardization is the most urgent, allowing companies to move workloads from one cloud vendor to another.
The IEEE’s Cloud Computing Initiative is being led by EMC’s Steve Diamond and at the head of working groups is David Bernstein, managing director at the consultancy firm Cloud Strategy Partners.
Scalability in general can be achieved through vertical or horizontal scaling. Vertical scaling also known as scaling up means adding more resources to the same machine. Horizontal scaling is also known as scaling out, which means creating more instances of the same machine. Scaling in IaaS Cloud is typically achieved through horizontal scaling. This can be done manually by users provisioning new virtual machines or automatically according to certain infrastructure metrics. Capacity provisioned this way can never exactly fit the software needs and that is why vertical scaling is a very desirable feature to be supported by IaaS Cloud. With automated vertical scaling, more memory and CPUs could be added to the virtual machines on the fly. Capacity provisioned this way would better fit the software needs.
Adding memory and CPU on the fly is often referred to as hot add. Windows operating systems supporting this feature are listed below. None of them supports hot removal of memory or CPUs. On the other hand hot adding and removing CPUs and memory is well supported in Linux operating systems – especially in newer versions of the Linux kernel.
|Operating system||Hot add memory||Hot remove memory||Hot add CPU||Hot remove CPU|
|Linux OS with CPU hotplug and memory hotplug support (SLES 11, RHEL 6, and others)||Yes||Yes||Yes||Yes|
|Windows Server 2008 Datacenter Edition R2 x64||Yes||No||Yes||No|
|Windows Server 2008 Enterprise Edition R2 x64||Yes||No||No||No|
|Windows Server 2008 Datacenter Edition x64||Yes||No||Yes||No|
|Windows Server 2008 Datacenter Edition x86||Yes||No||No||No|
|Windows Server 2008 Enterprise Edition x64||Yes||No||No||No|
|Windows Server 2008 Enterprise Edition x86||Yes||No||No||No|
|Windows Server 2003 Enterprise Edition x64||Yes||No||No||No|
|Windows Server 2003 Enterprise Edition x86||Yes||No||No||No|
Oracle has just filed JSR 342, the main JSR for Java Platform, Enterprise Edition 7. Emphasis within this JSR lies in emerging web technologies, cloud computing and overhaul of the JMS API.
The main focus of Java EE 7 is improved support for cloud applications. New features allow simple support for multi-tenancy, where same application modules execute in a variety of different environments. Versioning support is also added which now allows execution of different versions of same applications within the application server. Support for non-relational databases (NRDBMS, also called NOSQL databases) is also included for more scalable cloud data storage.
Jerome Dochez, Oracle GlassFish Architect, also spoke about greater need for tighter requirements between resource and state management, better application isolation and common management and monitoring interfaces at London QCon 2011 (PDF slides of the talk).
However, full modularity solution is not going to be available in JavaEE 7 yet, since full modularity features will not be making the Java SE 7 specification. Full modularity of applications and versioning is planned for Java EE 8, tentatively planned for December 2013.
Among other changes in Java EE 7 is new JAX-RS 2.0 (JSR 339) which mentions asynchronous and MVC support, client API and support for new media features.
Java Server Faces will also be receiving an overhaul (JSR 334) with added support of the new Expression Language (JSR 341) which will put heavy emphasis on new HTML5 features, including forms, audio, video, new Heading and Sectioning content model and Metadata content model. JSF 2.2 will most likely be released separately of JavaEE 7 since JSR filing notes target Java EE 6 platform together with Servlet improvements in JSR 340.
The final currently known change is the JMS messaging API overhaul (JSR 343) which will allow for better integration with application servers, add standardization for some common vendor extensions and simplify development.
The umbrella JSR has passed initial review on March 14th and is scheduled for release by the end of 2012.