Tuesday, October 28, 2008
More on business modelling
Category: IT Topic: Business Modelling
In the previous blog entry, I talked about using observational semantics to help focus on modelling the domain of a problem, rather than software.
When the domain to be modelled is big, we bring another technique to bear, too. We build a number of smaller models, each with its own point of view, and then combine these smaller models into a larger model of the whole domain. Each smaller model is built from a certain viewpoint, and captures some aspect of the business.
For example, a business that rents out DVDs and a business that sells health food supplements will both have a point-of-sale aspect, characterized by the exchange of goods or services for money. Both businesses will have rules about adding a sale item to an ongoing sale, for instance, and a point-of-sale model can capture these rules.
By modelling the point-of-sale aspect of your domain separately from other aspects, you can exploit expertise. If someone has become something of an expert in point-of-sale issues on one project, they can carry it over to another project more easily if the point-of-sale aspect is initially kept separate from other aspects of the problem domain.
There are, of course, other ways to partition a big model. We've found modelling different views to be extremely useful in practice, and we think it's underused. That's why it'll make its way into our book.
Tuesday, October 21, 2008
Business Modelling
Category: IT Topic: Business Modelling
I'm working on a book describing how Mitchell Horvath and InferData consultants build business models. It's 80% finished, so there's only another 80% to go :-)
Key to the approach is the idea of observational semantics. Instead of asking, for instance, "when a customer withdraws cash, what are the business rules to constrain this piece of behaviour?" we ask "when we observe such-and-such a piece of behaviour, what does the business call what has happened?"
Adopting the observational approach helps to keep you focused on the business to be modelled, and away from software-oriented ideas of the system(s) to be built. We like to be able to focus on the business, rather than the software, whenever we're trying to uncover (or help to design) the rules by which the business runs.
The goal is to have a complete draft of the book to send to a publisher by the end of the (northern hemisphere) winter.