Monday, December 3, 2007

SOA MAKES BPM AGILE

SOA MAKES BPM AGILE


BPM traditionally has been separate from composite applications and the concept of service orchestration because it has traditionally been a modeling or design-time application. But runtime process modeling and management necessarily means management of composite services, which means that process-driven SOA tools will necessarily support composite applications that are either an orchestration or choreography of services.

The integration technology must loosely couple the applications and resources that make up the process, otherwise the logic of a process will get hard-coded into a particular technology platform, which may be expensive to change and therefore defeat the entire purpose of BPM. This is where standards-based service oriented architecture (SOA) comes in. An SOA provides the technical ability to create that process independence. SOA standards, such as Web Services, make information resources and task automation applications available yet loosely integrated for process designers to use and reuse at will. Thus processes modeled with BPM tools can be rapidly implemented in production via SOA infrastructure.

Together BPM and SOA facilitate the next phase of business process evolution from merely “automated” to “managed flexibility.” Thus business automation will no longer be about hard-coding a function to be repeated infinitely. Automation will be about creating services reusable in many different ways in multiple processes that can be continuously improved. This helps allow enterprises to achieve dramatic improvements in market capture, cost effectiveness and profitability.

Saturday, December 1, 2007

Performance Parameters for BPM Tools

Organizations are using BPM tools as a comprehensive solution to model, monitor, simulate and redesign processes for competitive improvement. The BPM tools in order to be truly effective should have adequate scalability as well as reliability to match the organization needs.
Importance of Performance Parameters
Any organization selecting any BPM tools will have their own set of requirements in terms of
· Capacity of the system to handle the number of users
· The response time required from the system
· Scalability of system

Reliability of system
The success of any BPM tools depends on satisfying the above set of requirements no matter how good the tool is? The reason behind this is in real life scenario any implemented software solution is benefitting any organization if it is able to handle the expected user load , the response time is good ,able to handle future volumes of load and is reliable. In a typical case if any software fails under any of the above criteria it will lead to more organization hassles rather than solving problems.

Performance Testing
Performance tests are usually described as belonging to one of the following three categories:
Performance testing. This type of testing determines or validates the speed, scalability, and/or stability characteristics of the system or application under test. Performance is concerned with achieving response times, throughput, and resource-utilization levels that meet the performance objectives for the project or product. In this guide, performance testing represents the superset of all of the other subcategories of performance-related testing.

Load testing
This subcategory of performance testing is focused on determining or validating performance characteristics of the system or application under test when subjected to workloads and load volumes anticipated during production operations.

Stress testing
This subcategory of performance testing is focused on determining or validating performance characteristics of the system or application under test when subjected to conditions beyond those anticipated during production operations. Stress tests may also include tests focused on determining or validating performance characteristics of the system or application under test when subjected to other stressful conditions, such as limited memory, insufficient disk space, or server failure. These tests are designed to determine under what conditions an application will fail, how it will fail, and what indicators can be monitored to warn of an impending failure.

BPM Enabling Six Sigma Methodology

BPM Enabling Six Sigma Methodology

The market scenarios are changing rapidly and organizations have to be agile enough to adjust to the changing marketing trends. The two key areas which are the pillars of organization are the processes and the quality of products coming out of processes.BPM drives the process whereas Six Sigma helps in analyzing the process quality.
Six Sigma is a road of continuous quality improvement which involves following steps
· Define: The problem is defined in this stage .This involves modeling of process and knowledge management
· Measure: The data related to process is collected at this stage
· Analyze : The various report from the data are generated and the bottlenecks are identified
· Improve: The processes improvement plan is laid down and the processes are reengineered for better results.
· Control: The processes are continuously monitored for better results
On taking a close look we will realize that Six Sigma is guiding principle only and the implementation needs an active collaboration between IT and Management to implement all these stages. The data collection ,management, analysis and monitoring projects a need to have a methodology encompassing all these as well as integrating the management and IT to achieve this.
BPM is the answer to the problems of Six Sigma requirements offering perfect synergy between Management and IT for entire Six Sigma Guiding principles.BPM involves define the process and business rules ,modeling the process, stimulating the process ,monitoring the process and analyzing the report. Taking a closer look we find

Windows Workflow Foundation and Work flow

Windows Workflow Foundation and Work Flow


Windows workflow foundation provides a set of .NET classes and services for highly skilled developers enabling elementary workflow capability. It was targeted for developers and does not cater to needs of business analyst. WF is intended to be used for any kind of workflow-based application. It provides a workflow engine, a standard set of activities for defining workflows, and a graphical designer to help developers create workflows and their own custom activities. Windows Workflow Foundation comes with a set of general purpose activities for defining workflows. This base activity library provides the ability to define control flows using familiar constructs such as IF/ELSE and WHILE loops. It also includes a rules engine, support for communicating with other software using web services, and more. Windows Workflow Foundation also provides functionality to create the custom activities focused on a particular problem space. The workflows in the custom activities can be combined with those in the base activity library to create workflows. The creators of custom activities are also free to completely ignore Windows Workflow Foundation's base activity library—there's no requirement to build on top of them. Windows Workflow Foundation workflows can be written directly in code. Workflows can also be defined graphically, with code added where required. To make this possible, Windows Workflow Foundation provides the Workflow Designer, a tool that allows developers to create and modify workflows. The Workflow Designer can also be hosted in, and customized for, other environments. An ISV that wishes to include workflow within its own offering might host this tool directly inside that product, giving it whatever look and feel is appropriate. Similarly, an organization that wished to provide a way for information workers to create and modify workflows could host the Workflow Designer within a more business-friendly environment than Visual Studio. ISVs are also free to create other graphical design tools for working with Windows Workflow Foundation workflows—using the Workflow Designer isn't required

What Windows Workflow Foundation does not provides?

Just as important is what WF does not provide: direct support for human workflow, such as task lists or forms creation, or direct support for system workflow, such as adapters and data transformation. WF is solely focused on defining and executing the workflow logic itself, and it’s meant to be useful for both human and system workflow. It’s also important to note that WF provides no host process for workflows, leaving this up to the application developer. WF offers no built-in support for fault tolerance, management, deployment, or other useful aspects of an enterprise application. As its name suggests, this technology is focused on just one thing: workflow

Thursday, November 29, 2007

MOSS 2007 and WORKFLOW

Managing Workflow with SharePoint Server 2007 Office SharePoint 2007 is tightly integrated with email and web browsers which simplifies interaction between people with content process and business data. It also has out of box workflows for initiating ,tracking and reviewing common business activities such as document review ,tracking status, authorization ,signature collection . The organizations can easily modify these out of box workflows or design their own workflow process by using familiar Microsoft tools such as Microsoft Office SharePoint Designer 2007 (the next generation Microsoft Office FrontPage) or Microsoft Visual Studio development system.

Do We Still Need Workflow solutions?
Does Office SharePoint 2007 have wiped out the need of workflow solutions? The answer is “No”. Let’s see why?The workflow created inside SharePoint designer are not reusable and bound to list. The conditional logic that can be applied to workflows is limited. There is no ability to debug. The escalation of the processes cannot be configured in the workflow which typically means that if there is one manager which has to approve leave and if he is absent you cannot timestamp the process to go to next level of senior manager for approval after specified period of time. The designing of multi-step workflow with visual studio is difficult. The robust audit and metric data has to be buildup .Moreover the integration with other platforms must be built from scratch.

BPM and Web based Deployment

Business organizations are increasingly relying on virtual project teams spanning across globe for their processes to be implemented. BPMN standards provide them with standardized notation to work at different location and collaborate to bring the desired results.
The success of the BPM in a global organization depends on the ease of execution of modeled processes ,workflows ,business rules and their analysis and monitoring .The deployment of BPM tools for an Organization can be web based or client server type.

BPM and Web based Deployment

Global Business organization consists of business ecosystem with different processes more than often having their own regional business flavor. For example the compliance of rules and regulations are different for different countries. Now In this scenario the process has to be modified regionally to adapt to the business environment of operation territory. The business process modeling tools is hosted on web then the standard business process can be modified sitting in the headquarters offering effective control over the processes and the way business in run .This is one single example if we try to visualize in context of different business verticals like banking ,finance ,healthcare ,SCM etc we will find many such examples .