14th July 2008

Enterprise Decision Management and the Software Development Lifecycle

James Taylor Posted by James Taylor
Categories: BPM, Decision Management

One of my regular readers had a question today about Enterprise Decision Management and the Software Development Lifecycle – the EDMSDLC if you like. Here’s what he asked:

We do Business Rules in our approach… I guess one question would be, where does EDM fit in a typical SDLC? [company] does Requirements, we have a method that takes us from Scope and Objectives, through business process definition, to deliver the list of statements that are “The system must…”.
This also makes me think again about the discussion “are business rules really requirements? because business rules exist whether you have a system or not”.

In the book we say “When you’re adapting an SDLC to include EDM, you need to consider four areas: identifying and managing decision services, managing business rules separately from requirements and as a model, integrating analytic models, and recognizing the impact of adaptive control.” Taking these one at a time we can consider the impact they have on the SDLC:

  1. Identifying and managing decision services
    Identifying and managing the decision points for which decision services will be required and scoping out those decision services is part of business process definition in most modern software development processes. When working through the definition of a business process it will be natural to identify some of the business decisions that are required even if EDM is not your focus. Identifying hidden and micro decisions is often a new tasks but it fits well into this process. So much so that we have a standard consulting offering called the “Decision Discovery Process” for this work.
  2. Managing business rules separate from requirements
    I won’t repeat myself here as I have an entry in the wiki on business rules and requirements as well as a couple of posts on   Use Cases, Business Rules and Decisions and Requirements, Dr Strangelove and loving change.
  3. Integrating analytic models
    This can be a real challenge for IT organizations as the groups that usually work on analytics are quite separate. Two main issues need to be addressed. First it is essential to bring analytic modelers into the loop when doing data and object modeling. IT professionals need to see data, especially data for which significant historical data is available, as something that can be mined for new insight, new data items. Data can be available to a system even if it was never captured – a customer’s retention risk, for instance, might be entirely derived from other historical data. The second issue is one of model deployment – analysts and developers must work together to understand how the results of data mining and predictive analytics will be put into production. This requires collaboration around data cleansing, data integration and data manipulation as all of these are typically needed when building models. If no thought is given to deployment, you may end up with models you can’t deploy without writing a bunch of code.
  4. Recognizing the impact of adaptive control
    I have yet to come across an SDLC that considers adaptive control and the development and testing of challenger approaches to decision making. Using adaptive control means never stabilizing the core logic of a decision, always testing and challenging it and always deploying and re-deploying new logic. Typically this means building in user-driven iteration into the maintenance plan so that this can be kept separate from more technical maintenance.

In general, many aspects of a traditional SDLC do apply when using EDM. There is “infrastructure” required that must be developed by IT such as glue code and definition of complex rules or rule templates. Once IT has completed this development, users have a way to make changes to the system without going through the usual SDLC, but building the environment to do this requires a proper software process. You do need this second, shorter and simpler process that goes from business requirement to the business user making and testing the change Users can also be allowed to push these into production but most IT departments still want at least a partial release cycle.This is a little like using a database in the sense that designing the schema is a fairly complex IT process while using a UI to add rows within the constraints of the schema is a user-centric task. Adding a rule is somewhat like adding a row to a table or modifying a particular column of a particular row.

This entry was posted on Monday, July 14th, 2008 at 4:29 pm and written by James Taylor. It is filed under BPM, Decision Management.
Tags:, , , , , , , , , , , , , , , , , , , , , ,
You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

3 Responses to “Enterprise Decision Management and the Software Development Lifecycle”

  1. Dave Wright says:

    Thanks for this, James… need to digest and think a bit…

Trackbacks/Pingbacks

  1. [...] topic but check out these two posts on the difference between requirements and Requirements and on how to fit business rules into a software development lifecycle. This entry was posted on Thursday, January 8th, 2009 at 7:00 am and syndicated from James [...]

  2. [...] Now this is true but I don’t believe that better management of requirements is the answer. In fact what is needed is a way to turn what the SMEs know into something that can be managed in a repository and used to power systems directly. Working with SMEs to create sets of business rules to represent their know-how not only allows this knowledge to be stored in an executable format – reducing the likelihood of implementation error and speeding deployment and maintenance – it also allows each SME or SME group to manage their own rules. A modern Business Rules Management System (BRMS) will allow different users to have different access to rule sets, allowing each set of rules to be managed by those who know them best or those who “own” them. The BRMS can then be used to package up the relevant rules – typically many sets from many SMEs – into a decision service that can be deployed into a service-oriented architecture. Because the SME’s can edit the rules directly, business agility is increased because the time from the SME realizing that a change is needed to the time when that change is deployed can be cut dramatically using the rule management features of a typical BRMS. Dan’s comments about how to gather the know-how from SMEs are all good, but gathering their know how as requirements and not rules is going to limit the good it can do. I have blogged a lot on this topic but check out these two posts on the difference between requirements and Requirements and on how to fit business rules into a software development lifecycle. [...]

Leave a Reply

Hire me

Decision Management News

DMSA monthly newsletter dedicated to decision management


About

Blog Partners

PAW
15% discount code - BLOGJTDC09
SDC
MVP

Categories

Latest Series

More Links

Archives

Tag Cloud

Subscribe


 Subscribe to this blog
Enter your Email

Hear Me Speak

Gartner BPM
Advanced Decisioning for Process Excellence
October 5-7, 2009

Predictive Analytics World
Putting Predictive Analytics to Work presentation and tutorial
October 19-21, 2009

EDM Summit
Decision Management keynote and tutorial
November 1-5, 2009

Recent Comments

Recent Posts

Recent Trackbacks

The Book

Popular Tags