Slash Boxes
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

use Perl Log In

Log In

[ Create a new account ]

davorg (18)

Yahoo! ID: daveorguk (Add User, Send Message)

Hacker, author, trainer

Technorati Profile []

Journal of davorg (18)

Thursday February 20, 2003
06:02 AM

Sloppy Data Modelling

[ #10685 ]

Recently we ordered a lot of DVDs from We placed half a dozen or so orders over a period of two weeks. One of the reasons for the separate orders was because we wanted some of the packages to go to different places. Sometimes we'd place two orders at the same time and ask for them to be delivered to two different addresses.

Not all of the DVDs we wanted were in stock as we ordered then, so the different orders were all sent out at different times over the next couple of weeks. But then we started getting phone calls from some of the various people that we'd sent them to saying that they'd got the wrong DVDs. Or no DVDs. We eventually got everything we ordered, but the packages seemed to go to random addresses.

So we contacted to find out what had happened. It turns out that we were the victims of sloppy data modelling on their part.

In their database, delivery address is an attribute of an account. Each account can only have one current delivery address. This means that as each delivery is shipped out, it is sent to the last delivery address that was given for that account.

This means that it's impossible to make two orders at the same time and send them to different addresses. They will both go the same address.

Note to's IT department - delivery address is an attribute of an order, not an account. It's ok to have a default delivery address as an attribute of the account, but a customer must be able to override that on any particualr order.

Didn't these people study business systems modelling?

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
More | Login | Reply
Loading... please wait.