And I'm not meaning Bits Per Minute, but Business Process Management.
At first though BPM was overestimated, because the technology is somehow easy to address, but I've learned the value of BPM suites is in involving the non-technical, the business experts into the software design.
I know, the user is always with us during analysis, but the artifacts we use are always very unfamiliar to them. No matter how friendly the UML diagram looks like, or how many Agile iterations we go into, there is always a gap between the final user and the final developer ( usually covered by the user manager and the IT manager :-S )
How do you ( as software developers ) see BPM? Does it looks interesting? Would you consider to learn one of them? Do your think in 5 yrs it will be dead?
I know BPM is not silver bullet at all, but unless you have a very smart customer who knows how to express their requirements for us to get it right, the analysis and requirements will always be the area where the projects will fail.
I spent a couple years in the Content Management/Information Management circle using both FileNet and IBM BPM products. I would have to say I am incredibly unimpressed, and here is why:
1) BPM is one of those things I have not ever seen implemented intuitively. By that I mean (similar to what you say in your question) that a business user cannot sit down, and with 30 minutes create a process/workflow.
2) I have rarely seen a non-programmer be able to create acceptable solutions
3) The lack of ability to explain BPM to business users, the inability of business users to comprehend, and the amount of time and money spent on BPM seems ludicrous to me. From experience in everything I have been involved in, the company could hire 1 or 2 people (technical types) to work full time and create them a custom app for the time it takes a bunch of business types to have numerous meetings and hire consultants or train business people.
4) It is an incredibly niche market, and 90% of the outcome involves document routing and approvals. This is a VERY VERY simple concept, and one which a developer can usually code and implement a solution for much cheaper. If the developer is good, they can make it much more intuitive with less steps too.
5) It usually takes longer to have a coder talk with 10 people in management, a bunch of business users, learn to use a bad limited product and come up with a solution than it would be just to let normal development go on.
Don't get me wrong here - I know my experience, while quite deep compared to some, only deals with a couple products meaning I have only touched a little of what is out there. I am all in favor of innovation, but I haven't yet seen a halfway decent solution, and they all cost 20 times more than they are worth. I am sure COTS BPM type software will persist, but I hope I don't have to work with it for many more years. Hopefully then it will be halfway decent.
I see BPM as being something orthogonal to a traditional IT unit that "keeps the computers running" as BPM is where we try to improve how things are done by adding this technology or changing a process accordingly. I find it rather fascinating in a few ways.
Another interesting part of it for me is that this tends to involve looking at different parts of the business, e.g. how does the sales team work, marketing, human resources, etc. and trying to see just how efficient are they and where can things be improved?
I don't think it'll die but the meaning of the name will change and evolve I suspect where one branch may be Automating Business Experts or some other name. I do also see this blending with the idea of a portfolio of applications in an IT department of a company. The applications are improved or replaced on a regular basis to improve how things work with a continuous improvement value to it.
Don't forget that there are those of us in IT that frequent this site. I may be a Web Developer in title but this can have a couple of different angles depending on the company: 1) Product Development - Here I help make the product or facilitate the service the company sells, 2) Information Technology - Here I help the company run by knowing the backbone of the company which is a group of machines and various pieces of software stitched together by various processes for how the company runs.
The evolution of requirements and the technologies that can help meet those requirements are usually a couple of big things that can impact any large software integration like an ERP or CRM system. In taking years to get the software installed and the company using it correctly, there will likely be many changes as to how we thought it would work to this is how we actually use it, where not all changes are bad. It may be that by removing some part a company could save thousands of dollars on the man hours that would be spent on something that isn't really needed or useful but this wasn't known at the start and thus one of the requested features is removed from the list of things wanted at the end.