Memo to developers: Stop hard-coding business rules into applications. Use business rules engines instead.
That’s the word from Forrester Research in its July overview of business rules platforms. Author Mike Gualtieri (who wrote the report with John R. Rymer) explained that in today’s world, application changes occur more frequently and the timeframe to make those changes has shrunk.
“When the business rules—we used to call it business logic, that might be in a stored procedure—is programmed in code, it takes longer to find, or isn’t coded in a consistent manner,” Gualtieri said. “It’s more efficient and easier to change [the business rule] if it’s stored in a rules engine than in COBOL or Java code.”
Part of the disconnect between development teams and business process management and business rules engine suppliers is that the latter group traditionally has targeted business users as their customers. The pitch has been that businesspeople shouldn’t have to bother developers to change a business rule, or that these are tools aimed at tech-savvy, do-it-yourself businesspeople. To a developer’s ear, though, it sounds like a toy, something less than a full-blown development environment. A mere trifle, if you will.
But Gualtieri argued that if a tool can make changing business rules on the fly easy for businesspeople, it can make that task easier for developers too. And he went on state that developers can differentiate themselves from their peers and colleagues by talking about business process management, and learning the ins and outs of these tools.
“People think development is just about coding,” Gualtieri said. “Even with a tool like [a BPM suite or rules engine], businesspeople don’t get it at all. They don’t know how to design and integrate a workflow, for example. Or they get stuck with data access, or don’t know how to design forms or databases, or don’t think of scale. Developers can use these tools and be more productive, so long as they don’t use C# or Java as a default for development” of business rules.
Forrester sees a convergence of the business process management, business rules engine and complex event processing markets. Gualtieri explained that business process management defines workflows in which there are usually business rules at every stop—for instance, a loan application that requires a credit check. If the score is above a certain number, move the loan application along. If the score is below a certain threshold, reject the loan application.
One of the advantages of not hard-coding business logic, of course, is that the task of updating and changing business rules can now be handed off to the “business developer,” which Forrester defines as “a businessperson, not a professional application developer, who develops or configures an application to support business functions.”
That’s not to say that professional developers don’t have a role to play here. Business developers, Gualtieri notes in the report, “can easily get in over their heads.” In fact, giving business developers tools such as BPM systems, SharePoint, Excel and more can create work for developers, who are called in to help these users out.
Further, the applications they create often don’t go through rigorous testing, which could compromise the business if a bug turns up.
In short, hard-coding business rules does not create job security. If it slows the business down and it loses a competitive position, it might have just the opposite effect.
David Rubinstein is editor-in-chief of SD Times.