Archive for the ‘Technology’ Category

Gravity and Windows Workflow Foundation

Tuesday, March 9th, 2010

I was recently struck by the difference between a couple of posts about SAP Gravity and Microsoft’s Windows Workflow Foundation.

In the first, some demonstrations of SAP Gravity with Google Wave are presented. But they seem a bit contrived to me – and moreover Google Wave isn’t realistic for enterprise use yet – which makes SAP’s focus on Wave all the more puzzling (since they usually don’t focus on any technology until its pretty tried and true).  Gravity seems to be long on sizzle and short on substance to me.  But I give SAP props for trying something different to unlock innovation around their huge install base.  And honestly, what they’ve done so far has definite “cool” factor.

But then I saw this post on Windows Workflow Foundation, and I see that it is possible to have been in the BPM space for 10 years and still not get the importance of the business – it is still a programmer’s product, rather than a business-person’s product.  You can sum it all up right here:

“The purpose of WF is not to be a complete workflow solution for Windows. Instead, the goal is to make it easier for software developers to create workflow-based Windows applications.”

Luckily, if you really want to be on a Windows-centric solution, there are BPMS vendors out there that do that…

BPM, same as it ever was?

Monday, March 8th, 2010

Every so often, someone makes the argument that essentially nothing has changed in the world of BPM.  Actually, this isn’t unique to BPM – it is a common refrain across all kinds of software categories.

And it is tempting to buy into this, when you realize how durable a writeup like the history of BPM can be (this isn’t a bad writeup, by the way). But one has to remember that history *should* be a bit durable with the passage of time. Jon Pyke recently opined that no one in BPM has anything new to offer.  But the substance of his post is that the marketing isn’t differentiated, and the product positioning isn’t differentiated, and further, that the people who work at these companies don’t know what differentiates them.

Having worked on both sides of the coin (on the software side and the consulting side), I have to disagree with some of Jon’s conclusions because the input data is more limited than he’s realized.

For example:  of course the marketing messages are commoditized among BPM vendors, as is product positioning.  Sadly, it is perfectly easy to copy someone else’s marketing and positioning – it takes minutes, hours, or days at most to do so.  I think the tragedy in BPM is that all the vendors seem willing to implement “checkbox” versions of every feature that analysts care about, rather than go deep with the product in areas that produce real value for customers.  Unfortunately, vendors have been largely rewarded for such behavior with good product comparison reviews and chart placement – but their customers have not been similarly rewarded by this kind of investment.

There are real differences in these products, but it requires a much more in-depth understanding of the products to appreciate it.  Can we be surprised that customers have a hard time achieving this level of product knowledge during the evaluation process?  I used to work with someone who was always telling me how “nothing had changed” in the last 5 years in BPM – at a time when, 5 years before, there was no BPMN – and at that time, BPMN was the de facto modeling standard for BPMS offerings.

There has been quite a bit of innovation in the last 10 years in BPM, but some of the best ideas didn’t get enough investment to go from interesting to indispensable, and some of the best ideas really were commoditized – picked up by all the pure play vendors (and later, but the stack vendors).  I could argue that nothing much has changed since 1994, when I wrote a sales process application that leveraged Lotus Notes VIP to replicate sales data and manage workflow between Sales, Sales Engineering, Manufacturing, and R&D.  But that would be a bit disingenuous. I could write that solution in 1994, but I didn’t have a way to communicate the process to the business (BPMN), that accurately reflected the implementation so we could make sure we had it right.  And I didn’t have a standard data representation for analyzing the process data (for business process improvement).  I certainly couldn’t handle in a trivial way a process that required parallelism the way I can with executable BPMN models.

Jon says:

That’s why, and I’ve said this many times before, BPM is far too important a topic to leave in the hands of product vendors – this is a Business thing – the clue is in the name BUSINESS PROCESS MANAGEMENT. [...] They will talk about the presentation layer, the SOA integration support, analytics, modeling and what have you.

This is, unfortunately, true of a great many people in the BPM ecosystem.  However, it doesn’t sound like a few of the pure plays that have been acquired (take a gander at Phil Gilbert’s blog for several essays on the subject of business taking control back from IT), and it doesn’t sound like some of the new vendors (ActionBase as one example).  Whether these vendors are well-represented at Gartner conferences is another question entirely, but it is ironic that it is typically the small vendor that is more focused on business value. One of Jon’s last points:

Every vendor believes they are unique but the fact of the matter is many of the software metaphors used in these products were defined by pioneering workflow vendors such as Filenet, Staffware, Plexus and Wang

Well, honestly, software metaphors are meant to be re-used, so I’m not sure that that, in and of itself, is a point of criticism.  For example, some of the metaphors in older integration technologies like CORBA and DCOM are embodied in SOAP and WSDL – but not many would argue that web services weren’t a step forward. And if BPM functionality is truly commoditized – is that bad for the customer and the industry if it becomes more standard and more cheaply available?

I know it is tempting to look at the glass as half-empty, but with so many BPM vendors performing so well in a challenging environment, its hard not to look at the glass as half-full. Call me an optimist.

Will BPM efforts increasingly look like service integration?

Monday, March 1st, 2010

MWD Advisors has a post up about the coming move from “systems integrators” to “service integrators”.  Its a smart read, pointing out that customers who want to offload technical details to service providers are also likely to hand-off the technical lifting to integrate and coordinate these SaaS/Cloud services together to the companies that currently do systems integration.

Interestingly, if BPM vendors provide the right tooling, a SaaS BPMS (or even a hosted one) could be ideal tooling for pulling together these other services to support cross-functional processes for the business.

Apple Benefits from a Tight Focus

Wednesday, February 24th, 2010

Fascinating notes were taken at a talk Tim Cook gave earlier today, in which he explicitly laid out the fact that Apple benefited from its narrow product focus, a $40B company whose entire product portfolio could fit on a single table.

So given that focus, why invest in custom silicon?

“We felt that we had the best knowledge of what we wanted the silicon to do,” he said.

By designing its own silicon, he said, Apple can create chips that are best-suited for the company’s products, allowing them to run cooler and more power efficient.

“Apple has, for years, been in the silicon design business,” he said. “When we were on the PowerPC architecture, Apple always personally crafted the northbridge and southbridge chipset, and so it’s not new to us.”

In other words, even when it appears that they are straying from their focus, Apple’s management team has identified an opportunity to use their laser-focus to their advantage, upstream and downstream of the core product the consumer is buying.  (In my way of thinking, silicon is downstream, and retail would be “upstream” of the product itself)

Coincident to this talk, there was new data out showing that the iPhone’s unit shipments *and* market share grew more than any of its rivals in the smart phone space (and honestly, the research firms are being generous when they apply the “smart” label to some of the phones included).

And meanwhile, they’re getting some good news from their major US partner: AT&T.  A recent report from PCWorld shows that AT&T has dramatically improved the reliability and speed of its network.  Not that I can feel these improvements from a particular square block in downtown San Francisco (and the AT&T network gets its lowest scores in San Francisco!), but I’ll take the study at its word that on the whole these improvements are real.

Oh, and, happy birthday, Steve.

For the Second Decade of #BPM, Design Matters

Monday, February 22nd, 2010

Theo Priestly on BPM Redux wrote about ArisAlign and its lack of “buzz”.  I’ve had similar feelings about Aris’ user experience, and the feeling that some of the enthusiasm espoused is a little forced – sort of trying to hard with the “I (heart) ArisBPM” pins, etc.

But the post reminded me of a theme that has been on my mind a lot over the last year: Design Matters in BPM. As if there was any doubt, I see more and more evidence that in the Second Decade of BPM, design will matter.  Not just a little bit.  I believe design will dictate whether BPM achieves ubiquity in the business. Design will dictate which tools will benefit from that ubiquity.

Apple serves as a good example of how much design matters in an industry that appeared to be commoditized (personal computing, cell phones).  Some might argue that BPM software isn’t commoditized yet, and therefore the focus might be on features/functions rather than “design”.  But I think the key elements of BPMS are, by enterprise software standards, fairly commoditized:  there are many players in the space, customers have a difficult time discerning the differences from a feature/function point of view, and ASP (Average Selling Price) is likely declining for most BPM vendors.  There are also a couple of open-source BPM software offerings on the make.

Combine the above with a trend toward putting BPM suites “in the cloud” and offering them in a SaaS model, and it really starts to look more like a utility.  But what takes it to the next level?  Here are some areas of BPM and my thoughts about how well they’ll differentiate vendors…

  • Execution.  I think everyone agrees execution is nearly commoditized.  There are *real* differences at the execution level, but the market doesn’t recognize these differences in a way that channels dollars to the best execution engines.
  • Simulation. Many of the vendors offer this.
  • More modeling constructs? Already, vendors barely provide a fraction of the BPMN modeling capabilities defined in BPMN 2.0 (or even 1.0).  So, there’s an opportunity here, but fast-following will be pretty easy.
  • Process Discovery? This holds some promise for differentiation in the short-to-medium term, in my view (there are only a few vendors who even claim this ability).
  • Optimization? This has potential, but the current solutions simply don’t achieve it.  They work really well on small data sets and don’t (yet) let you efficiently do “optimization” on enterprise production data.  There’s a significant software investment to make here, and opportunity for differentiation.  Pair optimization with process discovery and you’ve got something really interesting…
  • Modeling tools?  This is heading toward commodity rapidly.  Absent the advent of SaaS software I would have predicted an open source modeling tool would gain pre-eminence and get embedded in a lot of commercial products.
  • SaaS / Cloud offering? There are already numerous choices and prices are heading toward standard increments.
  • Community / Collaboration?  Outside of BPM, these are already fairly commoditized from a feature/function point of view.  Wikis, chats, Instant Messaging, Videochats, Communities – these features will not provide differentiation on their own.  In fact, vendors may rely on Wave or similar technologies to incorporate collaboration without making some of the IT investments that early adopters have had to make.
  • “Dynamic” BPM or “Case Management”.  Call me crazy, but I remember CASE tools being all the rage in the mid-90’s.  I think unstructured, dynamic, and case management style processes are important, but I don’t think the technology required will offer differentiation to vendors for long from a feature/function point of view.  What they offer is a “better fit” to these use cases, but they’re not solving a problem that couldn’t be solved before.  (Note: Better fit matters, its why you should use BPM tooling to solve process problems rather than just slinging some Java or PHP code or hoisting a SOA stack into place)  To the extent that these “case management” tools are better, its a result of better design to suit the problem, not a case of out-featuring the other guys…

The opportunity for BPM vendors will be to produce differentiation based on the design of their products and offerings, by producing designs that engage the users, that elicit effective and efficient usage.  Collaboration, Unstructured BPM, Process Discovery, and Optimization all offer the biggest opportunities for differentiation by product design, in my opinion.

In closing, I should clarify that product design is not just skin deep.  Some make this mistake when they look at Apple Products and see only the outer shell.  Good product design goes much deeper than the UI, than the outer shell of the product.


Updates on the Cloud and BPM Community

Friday, February 19th, 2010

Sandy Kemsley has a few good updates on these topics.

In the first, she releases a review on IBM’s BlueWorks online community for BPM.  Some of the interesting tidbits:

  • IBM BlueWorks uses Flash.  Interestingly, Lombardi started with a flash interface (and it was a very slick prototype) and scrapped it for GWT/Ajax.  Why?  Because Flash was just not stable enough to support what they wanted to do (even in the early stages), and they could see that they were going to run out of “room to run” with Flash, whereas in GWT they felt the sky was the limit in terms of layout and functionality over time.  Quote from her blog: “The process designer is Flash-based, and it only took me about 5 minutes to crash it; luckily, it saved as I worked, so I didn’t lose any work.”
  • She gives pretty good marks to the content they included, which might form the basis or significant contribution to a CoE.

Speaking of BPMN modelers in the cloud… Sandy followed up with a good post about why locating your hosting services in different locales matters (a lot) to customers.  Although I can point anecdotally to data points (companies) that don’t have an issue with the location of servers (unless it affects performance), I can also attest that quite a few customers in other geographies *do* have an issue with hosting location.

Hopefully as these services mature they can offer more options for their customers.  Certainly IBM has the global reach to put its cloud / community offerings in as many geographies as it needs to to be sufficient for its customers.

Web Applications Masquerading as Processes

Wednesday, February 10th, 2010

Or was that the other way around?

Prashant Gadgil gave a presentation at bpmCamp 2010 @ Stanford on this topic – because often business process problems are described as a process but require a full-fledged web application to properly address – or vice versa.  His talk focused on helping differentiate between the two – or to know when you are stepping outside the sweet spot of what a BPMS usually offers you.  Still, if you have a process, you don’t want to lose sight of it as you build out your web application’s functionality!

There was more ground covered in discussion but I don’t have notes from this session, so the slides will have to suffice! Prashant was generous enough to allow us to publish via slideshare (and they are also available to bpmCamp participants via the bpmCamp wiki site).

More to come from bpmCamp notes in the coming week…

A Crack in the GooglePlex Facade

Wednesday, February 10th, 2010

I’m a big fan of Google.  And of the products that Google produces that I use (Gmail, Google Apps, Gtalk, Google search itself).  But lately some of the products from Google are reminding me more and more of Microsoft, which has me concerned:

  1. Me-too product releases
  2. VERY corporate-appropriate names for the products being released
  3. Failure to embrace the world outside the ‘plex

Maybe I should explain what I mean in more detail…

Me-Too Product Releases

You might say everything Google has ever done is “me-too” – its not as if Search didn’t exist before Google came along.  Or email.  Or even web email.  Or instant messaging.  Or document editing in a web browser… the list goes on and on.

But the difference in (most of) these cases is that the field had become a bit moribund and was lacking innovation – leaving itself open to a new entrant.  Search seemed like a dead-end.  Web email was stagnant and sites like Yahoo! mail and Hotmail left a lot to be desired.  If there wasn’t a technological edge that Google could gain, then Google was able to exploit an economic edge (more storage for the “free” price, or free document editing on Google Apps instead of paying for MS Word).

But the space of real-time broadcasting and status updates and social graphs is hardly a field of stagnation.  Facebook and Twitter are robust companies at the top of their game for their respective niches.  Foursquare is up-and-coming (and several other firms like it). The problem here is that Google can’t out-innovate these companies in their core competency.  The fast-follow works better if you wait for the arteriosclerosis to set in with these firms – either due to the weight of technical debt they’ve taken on (client side apps, instant messaging), or due to the organizational heft and indecision (Yahoo?) or due to painting themselves into a corner with respect to revenue models (e.g. Microsoft).  The new firms have none of these problems.  They’re nimble, decisive, and have emerging revenue models with little to lose and much to disrupt. VERY corporate-appropriate names for the products being released

Corporate-Appropriate Names

Remember when Microsoft had a lock on this approach to naming applications? Now Google is doing it.  Latitude, Gmail, Gtalk, Buzz, Docs, Apps, etc.  And when they do come up with a “funky” name, it really doesn’t resonate (Orkut?).  Meanwhile, companies with lighthearted names are eating their lunch – Facebook, Foursquare, Yelp, Gowalla.

It just makes me wonder if the suits have taken over important naming-functions at the firm.  Sometimes the name of something affects how people perceive it – even internally.  And unfortunately, even when Google tries to be more whimsical these days, it comes off like they’re trying too hard.

Remember when Google was coming up with whimsical names like… “Google” ?

Failure to Embrace the World Outside the ‘Plex

Search gives Google an advantage in “embracing” the outside world in most of their applications – most noticeably in Google Maps (now there’s a product name with all the creativity of paint drying).  I’m not sure why Google didn’t just buy Twitter and get it over with. But, if Google’s not going to buy Twitter, another straightforward thing to do is embrace it by integrating Twitter functionality into Gmail – not copying Twitter, but leveraging Twitter’s API.  Show how integrating Twitter functionality into your email client could make both more useful.  Show how integrating search into the experience can also make them more powerful.

And then figure out how to slip Google’s own “real-time-update” infrastructure into the mix – perhaps by granting twitter users their identical @names on Google’s infrastructure – essentially adopting the useful conventions of the leading platform.  Don’t make people rebuild their social graph, let them port it over while retaining a separate identity from their email address (one of the beauties of Twitter, for example, is that it is (somewhat) resistant to spam because you only see messages from people you follow).

Well, Google has a lot of smart people – I’m sure they’ll figure out the strategy, but I was disappointed that they didn’t just improve my life by making it easier for me to Tweet (Twitter?) and Facebook.  I’m not the only one who thinks they might have missed the target.  The Business Insider describes Buzz as “Late, Boring, and Lame“.  And Twitter was not full of supportive comments today, e.g.:

cdixon : Prediction: Google’s Twitter killer will be lame. A few billion dollars later they buy Twitter.

cdixon : Besides being just generally bad at social, Google products seem to be suffering from a strategy tax a la MSFT.

I think Google should drop the product launches.  Apple is really good at them, and each product launch creates almost as much negative buzz in the aftermath as positive buzz (where’s my videocamera on the iPad!? who named it “iPad”? ).  If you do a mediocre or “okay” job with the product launches, its even worse.  I suggest they go back to releasing product the Googley way:  by putting it out there and letting people discover it.

Creating and Retiring Process Debt at #bpmCamp 2010 @ Stanford

Monday, February 8th, 2010

The first go-round on Process Debt got quite a few reads and private emails and comments that motivated me to keep thinking about his topic and how to further clarify process debt so that we can use this concept to help manage our process development efforts.  It also motivated me to run a small session at bpmCamp on Creating and Retiring Process Debt.

We had a good discussion during the presentation and lots of examples from recent history to draw on in this room.  A couple of folks from the same company were in the room and as a result they tell me that they now have a common, useful vocabulary for describing trade-off process decisions which are made *all* the time in BPM groups.

Presentation embedded here, but also some rough notes below for those who prefer reading text…

(Incidentally, I used a tool called “Prezi” for this which I find pretty useful for organizing thoughts about a topic that requires a lot of context or gets past a certain number of slides… Something about the spatial relationship of the elements helps maintain context in the discussion.)

First, let’s agree that there is such a thing as Technical Debt, as defined by smarter folks than I. But also, that we can repackage it just a bit to more closely align with Process terminology and concerns.

Why we incur Technical Debt (borrowing heavily from McConnell):

  1. Time to market – we want to get our process built quickly so that we can start to reap the ROI quickly – and time is money.  If a process can save you $1M per month, each month of additional development effectively costs you $1M.  Time to market matters.
  2. Preservation of budget (for startups, preservation of capital)- We have a limited budget, and we want to make sure we spend it on the things that give us the most leverage for getting ROI.  These are likely the same things that will help justify budget for additional improvements going forward.
  3. Delaying development expense.  As a system nears end of life, it takes a very high degree of return to justify anything but expedient fixes -because when a system is retired, its technical debt no longer matters and isn’t paid within that system – it is being paid by whatever is replacing it.

What are the types of Technical Debt that we can be concerned with:

  1. Unintentional Debt – debt incurred due to poor technical choices, but not with forethought.
  2. Intentional Debt – debt incurred for strategic reasons, with explicit trade-offs.
    1. Short-term debt:  sacrifices made to get a specific release out by a certain date.
    2. Long-term debt:  typically architectural decisions (assuming only one database platform, for example) that can be good trade-offs measured in years.

And then we have “Product Design” debt – which I believe can occur in process projects where functionality is added over time until the originally simple screens have become cumbersome and unwieldy.  This isn’t quite the same as Process Debt – but process projects can become afflicted with it.

Finally, we have Process Debt itself.  I think we can follow on the Technical Debt framework and build on it:

  1. Unintentional debt
    1. Process Shift – this happens when performance of the process degrades over time.
    2. Requirements Shift – this happens when the external realities change but your process fails to adjust adequately.
    3. Squeezing the balloon – the local process gets optimized at the (greater) expense of other parts of the organization (or customers or vendors)
  2. Intentional debt
    1. Short-term trade-offs to get a release out – scope removed, etc.
    2. Experiments to find out which possible solution is the right one
    3. Manual work-arounds in place of system integration (SOA team can’t give you your webservice in time? will a manual work around work for the first few weeks or months?)
    4. Sub-optimal integrations (batch instead of real-time, etc. )
    5. Assumptions around geography or localization or product line support.

Tracking Debt:

  1. Enter tasks into work tracking or defect tracking software to track both the items that need to be worked on and the effort required to retire the debt incurred.
  2. Measure the process for squeeze-the-balloon effects (can be difficult if the other parts of the balloon are not measured).
  3. Teach the team not to take short-cuts that “aren’t worth entering compensating tasks in the software tracking tool” – if they’re not worth it then the short cuts aren’t worth it either.
  4. Another suggestion (from James Shore) is to measure Source Lines of Code (SLOC) as an approximation for technical debt. It isn’t an exact measure, but since lines of code will affect cost of maintenance, it is a reasonable proxy.

The starting point is that you have to have a system for tracking your work and work backlog – and from there you can mature the way you think about Process Debt based on what works for your organization.

So the iPad is Almost Here… Now What?

Wednesday, February 3rd, 2010

Interesting developments in the land of “tablets” and “netbooks”.

It isn’t really my area of primary interest but because I like following Apple’s product direction I follow the news.

First, there’s this article from the day after the keynote, in which Andy Ihnatko goes into great detail with his iPad experience.  I like that he took the time to actually use the device rather than rushing to get a story out and cutting short his time to experience the device.  I’ll note that most of the journalists who stayed and laid hands on it actually had a more positive impression than those that didn’t.  That’s surprising (usually expectations meeting reality is a set up for disappointment).  And it says something about Apple’s attention to detail.

Some of the comments that jumped out from Andy’s review were that it “felt right”.  The “rightness” of products is something Apple has really been excelling at in the last few years.  Another was his commentary on its speed – that it actually feels like you are moving something – not just gesturing and waiting for the phone to move it – a much more complete experience, if you will.

The implications for the iPhone are that Apple may be able to squeeze its A4 (or similar) design into an iPhone and offer this kind of speed in the smaller form factor.  I think there’s limited runway for SPEED to differentiate with phones – and we’ll hit those diminishing returns faster than the 20 years or so it took with PCs -  but right now there’s a lot of room for improvement over my iPhone 3G, and it sounds like Apple has a chance to do that – and still preserve battery life.  That’s impressive.

The truly impressive thing Apple did was leverage the App Store to make the iPad instantly relevant instead of making it a platform in search of applications and utility.  The Kindle and other single-purposes devices suddenly pale in comparison.

Also, regarding the most oft-reported shortcoming (no Flash support):

Months ago, I installed a browser plugin for Safari called “ClickToFlash.” It blocks all Flash content. You’ll see a placeholder image in the webpage and if you want to view the content, give it a click and it’ll load in. I have not noticed any drop in my ability to enjoy the Web. What I have noticed is that my browser is faster and more responsive, and that I can leave a couple of dozen tabs and windows up for weeks without having to force-restart my Mac.

Interestingly, I do this as well, and it doesn’t diminish my experience one bit – in fact it enhances it.  Granted, I do like the option of turning on flash for, say, streaming stock quotes.  But HTML5 can handle that level of animation and is “more standard” than Flash… I think Apple has done the smart thing here by protecting their platform and brand image, and putting pressure on Adobe to step up and make Flash a better product, or get out of the way and make way for HTML 5.

Next, the North Temple blog has an interesting post: On iPads, Grandmas and GameChanging, but I would have called it, so a Grandma, a Technophobe, and a Luddite meet in a bar… The short point here: people he never expected to be interested in a computing device are interested in the iPad.  I had a similar experience when my parents told me they were “buying each other iPhones for Christmas.” And then they asked me if they should get the 3G or 3GS… seriously?  I was tempted to tell them 3G just so they wouldn’t leap frog me technologically.  Then, I find out they’re Netflix subscribers.  When my parents start buying something technical – it is going to be big – because they are NOT early adopters anymore by any stretch.  But they are influencers.  My dad proudly tells of all the guys at the golf club who now have gone out and gotten iPhones to keep up.  And hey, they like the big numbers on the phone.

On a surprising, but I think intelligent response to the advent of the iPad, Acer says it will not release a competing device per se.  I think it is refreshing that Acer is sticking to what it does best.  Honestly, I think this is what RIM should do – make the keyboard experience better and better, rather than try to be a touchscreen phone company.  Acer understands that if they make a tablet it will lack the advantages of Apple’s iPad, but it will have all the same disadvantages.  So they’re punting (for now). Smart move, in my opinion.

Many pundits surmise that Apple won’t have a 2 year lead this time… but I think they will have at least 1 year before a competing system (an Android tablet?) will come along that can leverage apps (android apps?) that even come close to putting it in the same league.  And Apple is also adding pressure by having what looks to be better performance that will be tricky to match in the short-term. The key points from Lin of Acer:

Lin pointed out that designing an iPad-like device would not pose any technical challenges for Acer, but said such a product does not fit into Acer’s business model.

Apple is able to support the iPad through its iTunes ecosystem, while few other makers, including Acer, have comparable experience in operating an online store, Lin noted.

Astute analysis.

Now, StevenF argues that the iPad is a signal of the New World, versus the Old World.  Gen X being smack in the middle of old world computing, and the New World being targeted at those both older and younger than Gen X.  I’m not a big fan of generational themes like Gen X, but he has a point.  If computers in the future will “just work” and reduce the expertise required to use them, they become accessible to more people, and become more important to our society.  I’m constantly trying to get people (rather, the people who ask me IT questions) to switch to Macs because the number of IT-related issues is so much less (as judged by how often they ask me for help).  But an iPhone? I never get questions about how to get some driver installed or printer to work with it… !

I especially enjoyed reading how stevenf railed against the iPhone’s closed system at first -but a month later came back and used it full time.  Because it is just a better phone / smartphone experience, and the open/closed argument doesn’t really matter outside of technophiles like me.  And even I can see that it shouldn’t matter to 99% of the world’s population.  When it is your phone, or your car, you just want it to work. Period. No BSOD. No crashing.  To that end, foursquare can you please fix your app? It crashes more than any other 3 apps I use combined.

So how are things going elsewhere in smartphone land?  Jay Yarrow of the Insider says that the Google Android app store is a joke… You don’t often hear Google described as “sloppy”.  The fact that Android developers feel they can make more money on the Apple App Store is not a good sign for Google/Android. And it is an indication that doing this stuff right is harder than many of us assumed.  From Skyhook Wireless:

In December, wireless firm Skyhook Wireless produced a report about developer frustration with Android. Skyhook interviewed 30 mobile application developers and concluded, “developers are not generating real revenue via Android apps.” As a result “developers are becoming hesitant to invest more time and effort into apps that do not pay off.”

Ouch.

Finally, some would argue that the iPad is a sign of the third revolution

I’m looking forward to laying hands on the iPad. But more than that, I’m looking forward to iPhone 4.0 – I want to see if it is worth upgrading!

Chess Meet Process. Process, Meet Chess.

Monday, February 1st, 2010

Great piece by Kasparov on the combination of human process and machine computation to allow amateur chess players to beat some of the world’s best chess masters.  This is a darn good read – and though not really a BPM article, it should inspire us all to improve with the aid of process and computation.

#bpmCamp 2010 @ Stanford – Overview

Monday, February 1st, 2010

bpmCamp's patio

Last week Stanford hosted the first “bpmCamp” for Lombardi Teamworks and Blueprint practitioners.  By all accounts the event was a success – sold out at 40 participants – and with some truly great interactive sessions and discussion that is hard to have at a bigger forum.  Our Stanford hosts did a wonderful job hosting, including all of the little details like name badges and maps, but also helping organize logistics around lodging, transportation, parking, and providing an excellent facility in which to have our meetings.  Encina Commons is one of the older buildings at Stanford – sandstone and arches and wide covered patios, surrounded by lots of green – a perfect atmosphere for sharing.  We were lucky to get a reprieve from the rain for 2 days so that we could really enjoy the surroundings (and make the occasional trip for espresso).  Thank you to Lombardi, and Apex (and bp3) for sponsoring the dinner on Thursday night at Pampas – an all-you-can-eat Brazilian feast.

The lawn outside Encina Commons / bpmCamp

And thanks most of all to everyone who came and led a session, contributed their opinions, reached out to their colleagues and made new friends and contacts.  What a great experience.

We’ll follow-up with a series of blog posts based on bpmCamp to share some of the content with a chance to step back and editorialize a bit. The biggest takeaway that I had was that the community needed an event like this to step out of the daily grind of delivering processes and process improvement – to see what others are doing, to see the forest for the trees.  Sessions ranged in size from 5 people to 40, and discussions were often lively…

bpmCamp in Session

Meanwhile, we’ll start with a short session from Friday morning, when we had a cameo appearance from Phil Gilbert, giving his impressions of the acquisition and the plans for Lombardi products for the next 6 months.  There’s a clear focus on proving that they can deliver and innovate “even faster” after the acquisition, as Phil put it.  And they have set themselves some very high, but relevant goals.  In particular, making it as easy to install Teamworks on Websphere as it is to install Teamworks on JBoss today (cur

Phil Gilbert holds forth @ bpmCamp

rently JBoss is your option if you want an embedded appserver), and making upgrades to Teamworks 7 a truly good experience.  The goal is to bring the ease of use of Teamworks to IBM’s customers, and to leverage key IBM technologies but expose them in ways that let you cut through the noise and focus on delivery. It was a motivating message for our bpmCamp crowd because clearly Phil’s attention is still on the BPM game, and this prioritization will keep Teamworks relevant for the audience.  Knowing the developers that IBM/Lombardi are putting on this project and upgrade paths, I also know that this is a crack team of some of the best engineers at Lombardi, which says something about the commitment from the executive team.

Someone in the audience noted afterward that this was a more tactical set of goals than they expected to hear from Phil- who usually talks in terms such as “the Second Decade of BPM“… but if the focus on the tactical reveals that they believe the tactical may BE the strategic right now, I think its a welcome shift-  because truly, what’s holding people back from BPM is not the knowledge that it has value – the press and blogs are full of information on that score – but rather, its the “getting started” effort required that slows things down.  The easier a software company can make the transition from “business problem conceived” to “BPM project underway” the more likely it is that BPM software is applied to that problem instead of sticky notes and a change order on an ERP system scheduled for 2 years out.

There were so many more great sessions to report on, so there will be more posts here about the sessions.  One thing anyone reading this can do for me that will help – is let us know if you’d be interested in attending a future bpmCamp, and if you would travel to attend, or if not, where you’re located so we can judge where we have critical mass for another event.

Thanks again to everyone who participated, and watch this space for more information!

Also, lest you think that BPM was the only educational opportunity at Stanford last week, I stopped by the Cantor Museum for Visual Arts and took a few photos of Rodin sculptures – the collection is the second largest in the world and nearly every piece was on display:

the infamous "Gates of Hell"

IBM Doesn’t Waste Any Time. Neither Does Lombardi. #bpm

Tuesday, January 26th, 2010

Well, as Sandy Kemsley pointed out, this deal closed fast.

Equally quickly, Lombardi shows how a SaaS product can catch up to the news (or at least start to), by releasing Blueprint to Websphere Business Modeler integration today.

Good start to the new relationship – I just wish all the products were as easily rationalized!

Top Ten List for How to Make Coach Designer Better

Thursday, January 21st, 2010

We’re partners of Lombardi, and we’re avid users of their BPM software, as it is one of our preferred tools.  And we use the coach designer all the time, but I’d like to take a moment to propose a “Top Ten” list for improvements I’d like to see in the coach designer and UI generally.  The coach designer was originally conceived to have the product better support the agile methodology of the professional services team at Lombardi – and it succeeded in that.  It makes building UIs that display, edit, and leverage process data trivial to build.  However, like any good old friend, it also has room for improvement, and as friends, we’d like to put our ideas down on paper (bytes?) for what Lombardi/IBM should consider in their roadmap for the Coach Designer.

  1. Either adopt a 3rd party standard UI framework for component-izing UI controls, or add component-building capabilities to the Coach Designer.  Presently, you can build template controls, but they aren’t first order library components (Teamworks authors will know what I’m referring to).
  2. Provide controls and control-flow for building mashup UIs.  This is already possible via a html controls in Teamworks, but too much of the code ends up inside the coach, rather than abstracted in the service layer.  Intalio’s mashup editor is one example to look at, but there are lots of others (including inside IBM), which could be leveraged. I think the key is to consider how to make this interact with the service layer in Teamworks, because the end-product to display in the UI may depend on a series of external calls rather than just one client-side javascript call-out.
  3. Ajax as a native capability.  Sure, there are a couple of controls that can be populated or pre-populated via Ajax calls to Teamworks services.  But the Ajax calls need to be modeled in a way that can be seen in the Activity/Service modeler.  The way to make really rich Ajax interfaces currently obscures a lot of what is going on in javascript code.
  4. If you look at some of the open source solutions out there- they are working to support existing forms development frameworks, rather than developing their own.  This might be the path of the future.
  5. Perhaps easy integration of GWT, YUI, etc. so that they can be first class components in the Coach Designer.  After all, GWT is heavily used by blueprint, so we know Lombardi has the in-house talent on the toolkit to put it to work.
  6. Access to tasks should be opened up considerably – available via RSS feed, or via twitter. SMS text to my phone.  Give me options.  No more notification-by-email or go-to-the-browser-page.
  7. The process instance could be viewed more as a stateful webservice, which I can manipulate through web services calls even more than I can today through the external activity interface.  These external mechanisms of advancing the process should interact seamlessly with internal mechanisms (for example, if I push a close-activity event from a webservice, it shouldn’t require the model to be different than if a user closed that activity from a Teamworks Coach – and I should be able to force the process to soak up the outputs from the active activity rather than ignore them).
  8. Break the portal up into component pieces that are accessible as UI fragments or as webservices.  But don’t just replicate the exact portal functionality for each of those pieces – because some of that functionality really doesn’t make sense once you separate from the portal at large.  Really think about the API someone would want, not just the API required to support the portal/coach functionality today – there is a gap there. (technically the portal isn’t a coach… but maybe it should be)
  9. Make it easier to skin the Coach Designer with whatever look and feel makes sense.  Currently its easy to change color scheme, but not very easy to change structure and size of elements, etc.
  10. Keep investing.  If you make the right investments, you can get a multiplier effect – meaning, the investment will give process authors more power over the UI, at less development and maintenance cost, to the development team.  If you make the wrong investments, coach designer will become a closed system incapable of building the right kinds of UI the processes require.  But no investment could be worst of all – as no investment in the Coach Designer could mean that customers and consultants abandon it altogether as the cost of building UI’s outside of Teamworks continues to decline as the tech improves.  The right investments will let Teamworks ride on the coattails of these outside technologies at minimal cost.

I’m sure other people have their own ideas.  And I could write a similar list for other products.  Maybe at bpmCamp next week other attendees will have better ideas than mine for their top ten!  Welcome your top-ten comments below!

Interesting Read on Hadoop Math

Wednesday, January 20th, 2010

Ok ok, what could possibly be interesting about Hadoop-based systems and Mathematics?

Well, it sounds fancier to say Hadoop-based system… but really this basic math applies to any batch-oriented system and those of us who have been writing batch processing solutions now-and-then for the last 20 years should at least be intuitively aware of the math presented in this article, if not consciously thinking about it at design time.

The key equation:

Runtime = Overhead / (1 – {Time to process one hour of data})

Or, stated differently:

Runtime = Overhead + {Time to process one hour of data} * {Hours of data}

Where hours of data and runtime are equal.  These equations help explain why a perfectly healthy batch processing system can suddenly fall tragically behind – if the time to process an hour’s worth of new information is greater than an hour, you have a problem – and the problem will just keep getting worse until you:

  • Improve the runtime of the algorithm
  • Apply more resources to your server / cluster.
  • Filter the incoming data better (if possible) to improve your signal to noise ratio and thereby eliminate unnecessary data processing

In the BPM and CEP worlds, often that third bullet is a key element to improving performance – it doesn’t require more hardware – it just requires you to move your filter “upstream” from your BPM infrastructure to your EAI infrastructure or your ESB infrastructure… or from your EAI/ESB infrastructure to the source of the noise… Some would say this is squeezing the balloon, moving the bottleneck elsewhere, but actually, filtering better up stream may make those systems more efficient as well (if generating the payload and calling out to a webservice or ESB requires cycles, then not doing it as a result of an efficient filter may well reduce processing cycles… )

At any rate, its a good read.  Andrew Paier, figured you especially would get a kick out of this article, given our experience back in 2003…

Tom Baeyens on Blending Process and Rules

Tuesday, January 19th, 2010

Tom continues to update the world with jBPM updates – in this case, using jBPM 4 and Drools to blend process and rules. His updates definitely play to the technical audience rather than the business – but I don’t find that too surprising in the open source world.  From a technical perspective, it is certainly interesting.  Proof that these memes seem to emerge on their own : Bruce Silver has also recently posted on rules and BPM (part 2 of a previous effort).

At some point I look forward to digging into jBPM more thoroughly, and now that it supports BPMN 2, I’m more inclined to make the time, its starting to get interesting for the kinds of problems we look at.  However, I still fear that it is just a bit too technical in terms of what it requires of process authors still.

A previous update confirms that jBPM now supports BPMN 2.0, as of version 4.0.  This is a niche I think open source can help fill – potentially fully implementing a spec that probably won’t be fully implemented by any commercial software vendor.  (Filling out the corners is just the kind of academic exercise that seems to get tackled by *someone* within an open source effort)

Toys of Today

Monday, January 18th, 2010

Chris Dixon recently wrote that the next big thing will start out looking like a toy.  No, he’s not presaging the rise of toys as the next trend in retail or tech (although, with 100,000 Apps on the App store and 3billion downloads, one could be forgiven for assuming that that would be his point).

Chris is pointing out that the next big thing often starts out looking like a toy because one cannot accurately predict how something simple will behave when it achieves network effects due to scale.  And this is why incumbents often don’t identify the next big thing very quickly – because they dismiss it as a toy (at first).  In fact, I’d say they often go through a few stages of denial:

  1. It is just a toy, not worth wasting time on
  2. It will only work for a certain niche
  3. It will never scale
  4. It will never work for enterprise customers (or, it will only work for well-heeled consumers)
  5. It will never solve the really high end problems
  6. Buy a competing product, or buy the original

I’m sure someone could come up with a better list than mine, however.

BPM is Dead. Long Live BPM!

Thursday, January 14th, 2010

The End of Days.. ahem… The End of BPM, is here.

Or is it?

We have several pundits proclaiming so (either anonymously or otherwise). We have several vendors and analysts and bloggers dancing on the grave of BPM (or the pure play vendors). We have even BPM advocates bemoaning the loss of the BPM vendors of yore.

But lets take a step back for a minute… and imagine a strange alternate universe…

[fade to black, gradually clearing away as the voiceover starts]

Let’s imagine a world where there are only 3 BPM engines in the world, like the three heads of Cerberus. One from Oracle, one from IBM, and one from Microsoft. Or, if you prefer hydras, we could have another one from SAP.

BPM will have achieved the ubiquity of RDBMS because every corporation that buys software from these giant software providers will have at least one BPM engine as part of their enterprise stack, along with requisite modeling tools. Along with myriad integration technologies to plug these into existing applications or even other BPM engines.

In this world, there will still be opportunities for start-ups to sell tools for building applications to run on these stacks, just as there are still opportunities for start-ups with better SQL tools.  There will still be opportunities for open source BPM engines to compete with commercial BPM engines, just as there are open source RDBMSes competing with commercial ones.  If the Techies try to bury BPM in IT, the Business guys will drag it back out into the light of day where it belongs because they have real business needs to address.

Because it has never been about BPM engines, the parts that the business never sees.  Or software stacks.  Its always been about the ease in building the applications that the engine runs, the ease of adapting those applications to changing business requirements (processes), and the effectiveness of the measurements, dashboards, and analytics that provide the learning feedback loop for the business.

[ fade to black and then the lights return ]

As we wake, groggy from this little daydream… what was so different about our alternate universe?

It turns out, while we like to root for David over Goliath, the various BPM software companies selling have largely done well for themselves, their shareholders, their employees, and their customers.  Not a one of the pure play BPM vendors went out of business (or even came close, so far as we can tell).  A few IPOs would have been more exciting.  And in times when enterprise software companies were awarded better multiples, might have made sense.

And the new batch of BPM tech and companies coming along is pretty interesting too.  I see no reason for melancholy with the batch of startups that are hitting the market with interesting products that take different approaches to BPM (or facets of BPM).

I think things might just get more interesting.  Ubiquitous BPM has a good ring to it.

Hard to Spin This (#apple)

Wednesday, January 13th, 2010

It looks like Nexus One may not be the iPhone killer after all (despite all the Google ads running on TechCrunch these days)…

The first quote:

Flurry is estimating the Nexus One only sold 20,000 handsets in its first week. That means the Droid, with an estimated 250,000 units sold in its opening week, outsold the Nexus One by more than 12 times. The myTouch 3G, with 60,000 units outsold it by 3 times.

Ouch. And people were non-plussed with Droid and myTouch numbers… But it gets worse.

The iPhone 3GS sold 1.6 million units in its opening week, according to Flurry, which means it outsold the Nexus One by a “staggering” 80 times.

So, even if these estimates are off by 2x or even 10x, these aren’t stellar out-of-the-blocks numbers… I think it was too much to expect their first couple of efforts to out-do the iPhone. Story embedded below, courtesy of Business Insider.

Is Programming Hard? Is BPM Hard?

Monday, January 11th, 2010

Good article by John Reynolds on the age-old question:  is Programming Hard?  We’ve often argued that BPM suites make implementing processes easier by giving the business and technical participants in process implementation a common language for discussing the process.  It doesn’t mean that BPMN is ideal for either party, it just means that it helps bridge the gap in communications between them.

Another key concept is to understand the fundamental entities that the process is interacting with, and to model their lifecycles and attributes, from a business perspective. Modeling both can lead to a fuller understanding of the process problem.

John sums up the point pretty well:

That’s the key to making “business” programming easier… Build more tools that help programmers and their clients “make their maps” and build more software engines that “follow those maps”.  This isn’t a new idea – software modeling tools have been around for decades, but they’ve often lost their way and focused on modeling the software engineering aspects rather than the business requirement aspects of the problem.

That’s the key – because these tools have to be built by software engineers, they often turn introspective and lose sight of the end goal of being more inclusive – because by facilitating communication and consensus on requirements, we’re facilitating “easier” software development…