September 07, 2008   Sign In |  About ebizQ |  Contact Us |  Join ebizQ Gold Club
James Taylor
James Taylor's Decision Management
James is one the leading experts in enterprise decision management, a published author and a principal of Smart (enough) Systems LLC. His blog discusses the use of decision management technologies like predictive analytics and business rules to deliver agility, improve business processes and bring intelligent automation to SOA.

« Pareto, Gauss and John Hagel | Main | Blogging InterACT »

May 14, 2007
Change Time in Software Development

I saw an interesting piece over on Keith's blog today - Dealing with change during software development - talking about change and how to cope. Keith makes some good points and I just wanted to add my 2 cents. I have blogged about Ch-ch-changing applications before and discussed how teams today should consider systemt to be built to change not built to last. I recommend using business rules as an approach and a technology as it is both a great fit for agile devleopment (see this article on agile and business rules) and a key enabler for agility. I also think it can help business and IT collaborate and become more change tolerant.

Posted by jtaylor in Business Agility • Business Rules • Decision Technologies |Digg This|Add to del.icio.us

Trackback Pings

TrackBack URL for this entry:
http://www.ebizq.net/mt/mt-tb.cgi/1866

Comments

Hi James

Yes, definitely! When creating a system design, I always take care to document the high-level constraints on the system - i.e., the business rules that apply to its objects and processes.

There are then some interesting choices to make, aren't there, depending on the technologies you intend to employ to construct the system.

For example, I have been writing recently about how it is possible to automate business processes without use of a BPM Suite. This argument can be summarized as BPM Suite = Tactical, Model-Driven Design = Strategic.

So if you decide to take what I would call the Strategic route, and build processes using Model-Driven Design, you have a number of choices regarding business rule implementation. At a minimum, the following options should be evaluated as part of technical planning:

  • Employ software design patterns that cleanly separate business logic from other elements of the code;

  • Use a lightweight code library such as JBoss Rules;

  • Employ a validation framework customized to your technology (e.g., Eclipse EMF Validation);

  • Create a business rules layer, either using a rules-specific engine or a more general-purpose engine that incorporates rules support.

Whatever route you choose, the key thing is to make the rules independent of the code, isn't it - the argument you promote, of course, and that I entirely agree with.

--
All the best
Keith

Posted by: Keith Harrison-Broninski [TypeKey Profile Page] at May 15, 2007 02:51 AM

Hi James

Yes. When creating a system design, I always take care to document the high-level constraints on the system - i.e., the business rules that apply to its objects and processes.

There are then some interesting choices to make, aren't there, depending on the technologies you intend to employ to construct the system.

For example, I have been writing recently about how it is possible to automate business processes without use of a BPM Suite. This argument can be summarized as BPM Suite = Tactical, Model-Driven Design = Strategic.

So if you decide to take what I would call the Strategic route, and build processes using Model-Driven Design, you have a number of choices regarding business rule implementation. At a minimum, the following options should be evaluated as part of technical planning:

  • Employ software design patterns that cleanly separate business logic from other elements of the code;

  • Use a lightweight code library such as JBoss Rules;

  • Employ a validation framework customized to your technology (e.g., Eclipse EMF Validation);

  • Create a business rules layer, either using a rules-specific engine or a more general-purpose engine that incorporates rules support.

Whatever route you choose, the key thing is to make the rules independent of the code, isn't it - the argument you promote, of course, and that I entirely agree with.

--
All the best
Keith

Posted by: Keith Harrison-Broninski [TypeKey Profile Page] at May 15, 2007 05:49 AM

Post a comment




Remember Me?

(you may use HTML tags for style)

We ask that you type your code (displayed below) in the text box.This code is an image that cannot be read by a machine. It prevents automated programs from submitting comments.


Code:



Most Recent ebizQ Blog Entries
ADVERTISEMENT
This Work
Accountability:The opinions expressed in this blog are solely representative of the blog's author, and not of ebizQ

Subscribe to our Newsletters
ebizQ Weekly Gold Club Update
Live Webinar Updates
Updates from ebizQ Partners
ebizQ SOA Update
ebizQ BPM Update
ebizQ Security Update
ebizQ BI Update
ebizQ Open Source Software Update
Virtual Show Newsletter
ebizQ Web 2.0 and the Enterprise
Your E-mail Address:
The Future of Application Servers in the Enterprise & IBM WebSphere Application Server V7
Date: Sep 10, 2008
Time: 12:00 PM ET
(16:00 GMT)

REGISTER TODAY!
How to Get a BPM Initiative off the Ground
Date: Sep 16, 2008
Time: 12:00 PM ET
(16:00 GMT)

REGISTER TODAY!
Archived Webinars | Upcoming Webinars

Marketing Solutions | Feedback | About ebizQ | Unsubscribe | Privacy Policy | Site Map

Live Chat