Back to newsletter 068 contents
I've done many a performance design review - that's where I look at the design from a performance perspective, looking for good and potentially bad performance issues. It doesn't take long to see the main performance design issues in an application. On several occasions I've done this review with a group of people, consisting of architects and several observers. Typically, the observers are there to learn more about the system, i.e. the customer is combining the review with a session for some others to learn more about the system - which makes extra good use of everyone's time (I encourage this, the architects are more comfortable knowing their time is being used in this extra productive way).
After these group reviews I've often had people come up to me and ask how it was that we managed to detail so much that was important about the system in such a short time. On one memorable occasion, a manager of one of the external teams told me he had been trying for a year and a half, to tease out the details we had just covered, but we had done it in a day. So what is my secret?
Its a simple, well known, but seemingly out of fashion technique called data flow analysis. Performance of most complex systems is critically constrained by the flow of data. How it flows, where it flows, how much of it flows to particular places, and what delays it from getting to where it needs to be next. Well, you may well be reading this and saying to yourself "yes, of course, why are you telling me this, everyone knows that!". Which is true. It's kind of like the well known - and completely accurate - advice on how to make money from shares: buy low and sell high. The knowledge is well known, the trick is to apply the knowledge consistently.
Many of the places I've been to will even have some old data flow analysis report they can pull out. But the thing is, it's not one of those "going through the motions" things. You have to do it regularly, and use that knowledge to see why the data doesn't or can't flow through the system as well as it needs to. You don't need any formal techniques either. Just ask those questions about the data flow. And keep asking them, until you know where all the data flows in the system.
Information Technology - we do love our fashions! But we always seem to be a bit too quick to drop the useful bits of our trade, in the rush to use the next cool fashionable technique.
Moving on to our news, here's some news for you Javva the Hutt fans. I've tracked Javva down to his current location, and he's agreed to carry on his column ... Yay! I'm hoping to have his first contribution in September's newsletter, but its vaguely possible that we'll have something next month. Meanwhile, for those of you who don't know Javva, or want a reminder, we've added a page for you to access all his old columns here
Now read on for our other news, this months selected articles and new tools, and of course our many new extracted performance tips.
Java performance tuning related news.
Java performance tuning related tools.
Back to newsletter 068 contents