Aug 17


in a previous post i talked about the resources i used for sitting the omg ocup fundamental exam. wish i hadn’t waited a year before sitting the intermediate as i’m now having to do a quick refresh before studying for the exam proper. in so doing i’ve spent the last couple of hours on google looking for study resources and have drawn a complete blank. now, i’m pretty sure my previous combination of the excellent UML 2 Certification Guide, topped up when required with the tedious but necessary UML Reference Manual and UML User Guide will do the trick; but where are the blog posts, the discussions, even the odd powerpoint from a training course? there’s little except forum posts noting victorious passes and samples of testking exams, given which i suspect these two things are linked. i posted about this sort of thing six years ago and my view then still holds…

Jul 08

after several years of meaning to, i finally sat the OMG Certified UML Professional fundamental (OM0-100) exam. Although the UML is now a large and gratuitously complex language, there is actually a dearth of material available for this exam, so i thought i’d jot down what i found useful.

A trusty copy of Fowler’s UML Distilled is always a good place to start with UML. However, for this exam, which tests fundamental knowledge of the UML language, rather than how to model OO concepts, it is not particularly useful I’m afraid. Instead, you’ll need:

The UML Reference Manual - a dictionary. This is to UML what the Oxford is to the English language. Hugely useful to disambiguate - and even occasionally clarify – the particular meaning of UML words and concepts. A reasonable number of questions in the exam test vocabulary (often by way of “which of the following statements is true of x“, where x might be a term such as ‘constraint’ or ‘namespace’, for example).

The UML User Guide - a grammar. Whereas Fowler brilliantly provides the 20% you need to know to model 80% of everything you’ll ever need to model; the User Guide presents the other 80%. ahem. that is, the official, more complete and more syntax focused coverage of the usage of the UML you’ll need to pass the exam. Hugely useful in describing, illustrating and coordinating the concepts presented in the Reference Manual. These books are certainly not cheap, however i justified the cost to myself in that these are the two primary reference sources needed for all three levels of the exam. Google will, of course, provide you with pdfs of these e.g. here and here; though i personally don’t find such usable as reference materials.

Finally, the entirely essential UML 2 Certification Guide, without which a pass is unlikely. Even though i have 10 or so years practical UML modelling experience, I wouldn’t have passed without this, and that’s because the exam simply doesn’t test modelling ability or knowledge of vernacular UML. It’s testing understanding of the grammar, syntax and core concepts of the language – the UML metamodel - as described by the UML Specification itself, not its everyday use. So, unless you want to wade through the version of the specification used in the exam, using only the awful coverage maps as your guide to what to focus on; you need this. Its translated from the German, certainly written by a German at least, as every once in a while the English used makes it unclear as to what is meant (that’s where the Reference Manual and User Guide are lifesavers). Over at SlideShare you’ll find a series of presentations that appear to be a summary of the certification guide pretty much verbatim:


As for the exam? Well, there is plenty of time, I was done in just under an hour and managed 78/80; though i admit to being hugely, hugely overprepared. apologies to everyone during the week prior to the exam, and especially my partner for waking her, and child, up at 5am in the morning during last minute cramming. Now for the Intermediate…

Jun 16

When I prepared for my Visual Studio 6 MCSD, first thing I did was to collate the resources necessary to ensure a pass. That meant reading the CramSession study guides and doing Transcender practice exams the weekend before the exam. In fact, if my employer at the time hadn’t  insisted on (and paid for) my getting my MCSD in short-order; I probably wouldn’t have taken the exams otherwise.

I’m not going to take a hugely different approach this time either, except that I’ve looked at Cram4Exams. On brain-dump sites, but primarily the large number of ‘recent live exam question’ pay sites that seem to have sprung up since I did my MCSD, there is expressed a common view that the best way to pass an exam is to memorise all the answers before sitting it. While it’s certainly true that this strategy will provide a pass, I don’t think it does the developer, their (potential) employer or the certification any favours. At interviews for a C#.NET developer contract at a client, there were several early-adopter MCAD holders, and I suppose the certification was a key consideration in getting them an interview.

The standard of these applicants at interview was truly appalling, possibly because there was no brain-bump for the questions we asked, and none of the MCADs got the job. Simple OO questions, such as “what’s the difference between an abstract and virtual method” drew hesitation, shallow and evasive responses. Now, let’s be clear, I’m not implying I think this is somehow something to do with brain-dumps. I don’t think it is – its the individual’s approach to certification. Cram4Exams has a number of discussions that take brain-dump question and answers and attempt to provide explanations as to which is correct and why the other options are wrong (aka Transcender). And in my opinion that’s A Good Thing.

Like brain-dumps, Transcender exams have an uncanny resemblance to the real things – a fair number of questions from my MCSD exams evoked more than a sense of deja-vu, I admit. What is important though, is understanding why the answer is the correct one – and Transcender does a good job of explaining this, as do some of the inadvertent ‘threads’ on Cram4Exams and the like (which, btw, are set up as single-threaded message uploads rather than the discussion forums they should be).

Experience alone will not help in passing these exams. Preparation is necessary. It’s important to remember that these are part of a vendor certification programme. They are product based – and the exams will, unsurprisingly, have more to do with the product and the vendor’s proscriptive approaches than, say, being a good developer. Had I gone in and sat my Visual Studio 6 MCSD exams without preparation, I doubt I’d have passed them, even though I was an experienced senior developer and VS beta tester at the time.

preload preload preload