Tuesday, February 21, 2012

SOA without BPM?

Before I get into my topic today, I just have a quick note about a webinar I am giving soon. Last month we gave a webinar on SOA with BPM and it went very well. We had a lot of attendees and some very good feedback. Because of that interest, we will be doing another version of the webinar again this Thursday. Based on interest, we are going to add more information about business rules. You can sign up for the webinar here(https://www2.gotomeeting.com/register/521865394). Please sign up ahead of time so that you won't miss any of the webinar.

Maybe I am looking at the question through my BPM glasses, but why would anyone want to implement SOA without BPM? There are so many challenges in pure SOA implementations that are addressed in BPM systems. To me, BPM is SOA+. The BPM systems that I have looked at have all of the benefits of SOA with significant benefits that mitigate the problems of SOA.

Associating technology with business - With a pure-play SOA solution, it can be difficult to see the relationship between the business and the implementation of the solution. This has implications in maintaining the solution when business requirements change. BPM systems also provide the opportunity to get visual validation from the business stakeholders. They don't need to see the technology working to understand if it is generally going in the right direction.

Accessibility of technology - SOA solutions use what is now well established technology. But that technology is not always accessible or easy to use for less experienced developers. I have taught business analysts without development experience to create executable processes our BPMS in 2 days. A BPMS does much of the heavy lifting and allows even highly experienced developers to focus on the most important parts.

Change management - By change management, I am referring to deploying into the production environment. Change management is simpler in a BPMS solution because deployment from the BPMS development environment is simpler. The BPMS provides the mechanism for deploying the many different files and components that go into an SOA business solution. Developers can focus on development, instead of writing custom scripts for deployment or deploying manually.

Troubleshooting - SOA solutions are usually deployed in an environment that is in some way distributed. As such, troubleshooting becomes a challenge. With a BPMS solution, messages between services are tracked on the BPMS server as they pass between services. The BPMS server provides the troubleshooter access to data and a "window" on the inner workings of the process.

As I talk to people who are considering a pure-play SOA solution, I always recommend that they at least look at BPM solutions. If your BPM solution isn't handling all of these challenges well, please consider ours (www.intalio.com/bpms).

Monday, October 10, 2011

Master and Slave

One of the reasons I love my job is that it is related to both technology and business. I love building things. Especially things that meet needs and are useful. I can understand why some people build things just because they want to build something. But not when it comes to technology in business. Let's make sure one thing is clear: in the relationship between technology and business, business is the master and technology is the slave.

In my position, I visit a lot of organizations and help them deploy a BPMS, and build some of their first business processes. When modeling out these processes, I end up talking to different levels of management. It always amazes me how the perspective on the business changes between different levels of management. Not just in terms of the specific process I am addressing, but of the business as a whole. I am amazed how the farther you get from top level management, the faster you lose sight of the business goals. Technology departments have a tendency to do this as they consider technological virtue over business objectives.

I think that this is less common than it used to be, though. The requirements gathering process at most organizations has become more rigorous. But it takes time, communication, and effort to get very clear on those requirements. Sometimes the business is not clear on its goals either. Not every organization has a mission statement. In that case, the project is not likely to have great success. How can it? Without a goal to compare against, how can you tell if it works?

So business is the master and technology the slave. But unless business is doing a good job selecting and communicating objectives, technology won't be a very useful or profitable slave.

Friday, July 10, 2009

Another link for the definition of Kaizen

Here is another good link for a definition of Kaizen.

The meaning of Kaizen

I suddenly occurred to me that not everyone understands the meaning of Kaizen. Kaizen is a Japanese words that means improvement and betterment. I think that it is an obvious part of business process management. Managing business processes is a constant effort to improve (or kaizen) processes to bring about better results. If you would like to know more about Kaizen, I recommend you check out this link.

Friday, January 23, 2009

Business Process Management in Startups

Early on in my career, I had a tendency to use technological cannons to swat operational flies. I remember the time I was in a development team meeting and in answer to a architectural issue I suggested we re-write the whole application in Java. Then there was a time that I found out I could set up a Linux server for free! I excitedly told my wife how I wanted to set up a server for our home to facilitate communication among family members. She just asked "Why?". An excellent question and one I could not come up with a good answer for.

So when I propose that start up companies should start practicing Business Process Management, I need to stop and think about that myself. Hmmm. Yes, it is a good idea. I'll tell you why.

First, let's consider why it might not seem like a good idea at first blush. Here are some of the common objections. Low cost solutions don't provide the needed features. Solutions with the needed features are too expensive. It would take time away from other more important activities. Startups are so small, they don't have processes to manage. Let's examine these objections one at a time and see if they hold up.

Most low cost solutions don't provide needed features
I agree with this wholeheartedly. Like many of you I have used Visio and other drawing tools to capture and communicate process information. Visio is one of the best drawing tools out there. But it is not an effective business process management tool. The key missing feature is the management aspect. Management implies stewardship of a process. Drawing tools capture snapshots of a process in time and don't actually help you implement that process.

Needed BPM features are too expensive
Depending on how much you look at the industry, this is a very reasonable objection. If you look at the major players in the BPM industry, most of them cost an arm and a leg. And that is just the software licenses. If you add on support and maintenance, consulting, and an RFP process it looks incredibly expensive. But there are alternatives. Intalio has a BPM Suite with all the features you need to get your startup off the ground using BPM. If you go to bpms.intalio.com you can download a designer for creating your process and a server for executing those processes. And it is free. Yes, their community edition is free for the taking.

BPM takes resources away from more important activites
Resources in this case means time and money. The money issue we already talked about. You can download Intalio's community edition for free. Time is the other issue. At a startup who has the time to do business process management. I would turn that around and ask how can you afford not to do BPM at a startup? Saying you don't have time to manage your processes at a startup is like saying you don't have time to account for your finances. If I were a Venture Capitalist, I would be curious how you were managing your processes. I would have much more confidence in a company that demonstrated efficient and effective processes and how those processes would be improved over time.
All companies have processes. The question is how you manage them. If you are managing your processes based on pictures that may or may not be up to date or may or may not be followed by employees, you are managing blind.

BPM in a startup is not overkill. It is a necessity for viability and effective operations. You are welcome to disagree. If you do, I hope you will tell me and tell me why.