Friday, February 01, 2008

Key skills on a BPM technology project

The last year, while doing BPM technology projects, I learned a number of lessons on skillsets that you will need on a BPM project. Some lessons the hard way (e.g. missing them, and needing to fight for them :-)).

Let's take a "typical" BPM technology project where...- A company wants to improve certain processes (think efficiency, visibility and agility)- A project has been started that tries to tackle this from two sides:1. BPM as a set of process interventions (proces analysis, design, and implementation of a new operating model around processes - ranging from process ownership, measurements/KPI's to improving the process awareness end to end, and breaking functional silos)2. Introducing BPM technology (I prefer to call this BPMS or BPM technology, instead of just BPM, to avoid confusion - some people unfortunately still think you can do BPM with only this 2nd item...). Think BPM Suite, maybe a Portal, maybe some ECM/Document management, some or much back end integration, realizing a mix of use cases around human centric workflow, straight through processing and business/process intelligence.

1. ProjectmanagementManaging scope, expectations, budget, timeline and issues. The usual. Someone that knows how to let things get done!

2. ChangemanagementBPM in the end is about people working in new ways. You will need skills on your team to be able to involve people, get ideas, stimulate thinking and collaboration, identify risks, etc.I am not a proponent of the typical "changemanagement" concepts as "communicate" "train" "push down their throats".... What I mean is people that can build a process culture, where people are valued and are actively involved in making their daily joblife meaningfull, fun and effective. I am thinking of the Toyota culture here..

3. Process analist/designerAnalysing processes is a skill. A skill that in the end more and more people in your business should possses, but in the beginning you will need to have a specialist here - don't try this on your own. I am thinking of someone with Lean Six Sigma skills, that can work with key stakeholders in analysing and designing processes. Preferably someone that can teach the people involved how to keep this going themselves for process refinements

4. Requirements analist/Functional designerAgain, being able to look at a new process and translate it to a meaningfull set of software requirements is a skill. You will need someone that understands possibilities of modern technology such as BPM, Portals, Web 2.0, etc. If possible, find someone that is also able to translate requirements into solutions. Of course this person also finds and details business rules.

5. Business/process intelligence specialistHow do you measure a process? What does need to be measured? How will you present the information to people? How will this enable them to steer and control processes? Key questions that a BI/Process intelligence specialist should be able to answer, leading to data/reporting requirements

6. Interaction design/Usability specialistUnfortunately, with the whole BPM thinking, some people believe that applying BPM is simply defining a process, defining forms that end up in people's inbox, and voila, BPM is running.It reminds me of the horrible user interfaces we ended up with, when working with IT people doing prototype sessions and building client-server apps. No!Realize - the user interface of your BPM solution will give people feelings (about your company and your brand) and has a immense influence on their ability to work and trust the solution. I have seen interaction designers that have created wonderfull easy effective user interfaces, thet people loved!The funny thing is also: during your BPM project you will need to keep selling your projectgoals and future system. Do you think CEO's and users get impressed with your service bus based, SOA super duper EDA CEP Agile BPM solution? I think not. But you can reach out to them with a good user interface - crystal clear...

7. Solution architectThe person that is able to understand the processes, requirements and functional design, have an overview of the backend systems and all technology layers and stacks, and come up with a firm architecture. A person that can guide the engineers and make sure quality is delivered.

8. BPM & development technology specialistThis new BPM technology is new stuff. Many settings, many known bugs. You will run into problems. Don't let your solution architect or engineers get bogged down with this stuff - get someone in with close ties to the vendor. Let this person (or another) also create the best development environment - source control/config management, automatic builds & automatic testscripts execution, deployments, server maintenance, etc.

9, Software EngineersThis is the gold in your team - the people that actually create working software (and that's in the end what is all boils down to, right?). Depending on the scope you might see various skillsets centralized or distributed in your team: people that can magically connect to backend systems and understand transactions, services, etc. People that can build user interfaces. And people that understand how to translation process data to meaningfull BI solutions.

10. Testing specialistIf you use TDD, then you might be able to combine this with 9. But in general, you will often need testingspecialists on your team. And realize - this is not trivial testing. You will need testers that are able to test end-to-end processes from a process, functional and non-functional perspective.

Hope this helps! If you are about to start a BPM technology project, use this as a checklist. And realize - if you ommit some of these skills, the issues and activities will not go away, but simply haunt you during the project....

1 comment:

I particularly agree with your comment about process analysis being an underpresented skill. I've worked on several projects with several companies where I am, in fact, the only person with any knowledge or understanding of how to analyse a project with any level of competence.

My question to you is: How many of the items in your list should a typical project look to outsource (either in part or totally), and how many should be left as in house skills?