I graduated in 1983 from Oxford with a degree in Engineering, which means I could start from Schrödinger’s Wave Equation and prove a wheelbarrow, but couldn’t actually engineer anything.
I started out with IBM – first in their development lab in the UK. As some of the people I worked for were almost 40, this was clearly a job for old people, so I moved over to customer-facing roles building what were then called client-server systems, that were obviously going to take over the world. It’s here that I got interested in how software got built, especially Object Oriented software, which was in its early stages of commercial use.
On one project, I managed a team of 20 Smalltalk programmers – in the days when Smalltalk was cool, and was definitely going to take over the world – and co-wrote a CASE (Computer Aided Software Engineering) tool (ironically) called GOOSE – Graphical Object Oriented Solution to Everything. For this, me and my co-authors shared an IBM “Outstanding Innovation Award”, due to the huge amount of money which the project saved by using the tool. It would be great to say that the tool was then adopted by IBM, and we all went on to become rich and famous, but it didn’t, and we didn’t. It got lost in the internecine wars that are IBM product development, and we all wandered off to do other things. Sigh.
The experience did, however, give me a life-long interest in how engineering-style approaches can be used to create better business applications. Yes – I really am interested in this. (Don’t tell my children though – they already think I’m sad.)
After that I worked for a few years as a consultant and mentor for QA Training, then the UK’s largest – and best – IT training company. I looked after, and was part of, a team of trainers who went out to customer sites to give advice on adopting OO techniques. During this period I worked with dozens of customer projects - Airlines, Insurance, Banking and Government - and saw how the use of a few hours from an independent ‘expert’ could make a big difference to a project. This is why I’m a real fan of the idea of project mentors, who can stop projects from re-inventing ideas which already exist, and giving them a sounding-board for new plans.
At the end of this period, QA produced the first ever UML (Unified Modelling Language) course, and for a while this was the focus of my mentoring work, using a variety of other CASE tools. It’s at this point I started to call myself a Business Analyst. That was 10 or so years ago.
Since then, I’ve been an independent consultant, working as a BA for telecoms companies mostly in the UK, and doing occasional teaching – I wrote a UML course for a client, which I’m still adding-to and using.
It was during one of these projects that I first came across Enterprise Architect. I was the UML-specialist in a small team of BAs, who were writing the Use Cases for a telecoms system. EA was then – and still is – a fraction of the price of competing tools, and has a better user interface. If it doesn’t take over the world, I’ll be very surprised (surprisingly).
Our project also wrote its own document generator, to take the information from our EA model and produce all the documents for the project. Like many EA users have done, this was a series of Word macros, which needed a programmer to make changes, but which showed me the difference which a document generator can make to an EA project.
So, in a gap between projects, I totally re-wrote the initial generator to be an EA add-in, and eaDocX was finally born.
After working with various clients, I realised that the reason their generated documents often didn't look as they expected, was that the source models were not consistent. Data was missing or inconsistent. And that usually happened when there were large teams all adding to the model using their own favourite modelling standards. So I developed Model Expert, initially as a way to sense check and fix existing models, and then it expanded into providing help to stop those mistakes happening in the first place.
I’m now full-time coding and testing eaDocX and Model Expert, as well as planting and chopping down trees on our 45 acre farm in the Black Mountains¹, and spend most days listening to BBC 6 Music. The former is proving a timely reminder of my skills as an OO programmer, and why I prefer being a business analyst.
Our hope for Model Expert is that (1) every EA user will buy it and then (2) everyone's model quality will improve - making all their deliverables (not just documents) better.
...and Model Expert and eaDocX will take over the world, so I can go and get a real job making furniture, which is much more interesting than all of the above.
Oh, and somewhere in all that, I got married to Jackie (the eaDocX CTO, CMO, & CEO) who is a project manager and a real-life Rocket Scientist, and we have two daughters.
¹Yes- I know this adds-up to more than one job. Just look at the timestamps on my emails to see how this is done...