Software Design

Real World Information Modelling: Naming

Despite the growing maturity of our industry, there are some mistakes that seem to be repeated by each new generation of developers.

We have good technical standards for how we document our information structure – from good old Entity-Relationship diagrams through to the UML. There are even some attempts to provide general guidance on information modelling – the Nebulon Archetypes aka Colour Modelling are one good example – but in too many ways the lessons learnt by one generation of modellers are left for the next to learn anew.

Validation and Domain Driven Design

I read an interesting blog post today from Justin Etheredge talking about how Validation should be handled in the context of a system using Domain Driven Design principles.

Single Reponsibility Principle

I have a draft post explaining the Single Responsibility Principle that I've been working on for the last couple of months. I've just never been able to find a simple way to explain it that's not open to misinterpretation.

I'm going to have to junk that post completely, because it's now obsolete.

Check out this explanation, put together by Brent Brown and posted by Jarod Ferguson:

srp1.jpg

Brilliant!

Giving your Application a voice

No, I’m not talking about using speech synthesis to abuse your users when they make a mistake – though the idea has merit … I’m instead referring to a blog entry written by Oren Eini back in August.

Oren made the suggestion that your application should have a blog – a place where it can post informative messages about normal operation and abnormal conditions.

A Server out of Space

This morning I discovered that our StarTeam server was being uncooperative – refusing to accept check-ins because of a lack of available storage space.

Users were receiving this message:

space.png

A quick look at the appropriate network share revealed plenty of space – while the hives were configured to use up to 99% of the available space, the share was only 86% full.

Weirdness.

Delving into the log file, I found this message (formatted for this post):

Syndicate content