Publications

My
book "A Hacker's Guide to Project Management" acts as a guide through the
maze of Project Management. It’s aimed specifically at those managing a project
or leading a team for the first time, but it will also help more experienced
managers who are either new to software development, or dealing with a new part
of the software life-cycle.

Buy It Now!

My earlier books "The Illustrated Lotus 1-2-3 for Windows" and
"The Illustrated Microsoft Access" are now sadly out of print. If
you're a late adopter who really wants a copy,
contact me and I'll see what I can do!

My 1992 paper "Muzzling the Alligators: a Pragmatic Approach to Quality"
appears with a number of excellent papers on Software Quality and Testing by
various authors in the Unicom book "Management and Measurement of Software
Quality", edited by Mike Kelly and published in 1993 by Avebury Technical,
ISDN 0 291 39801 4.

Conference and Forum Papers

Here's the paper I presented at the Enterprise Architecture Conference in
London in June 2011, on the topic of how an Enterprise Application Integration
scheme develops, evolves and can deliver solid benefits. It also explains the
benefits of a strong canonical architecture, to realise the benefits of "hub and
spoke" architectures at a logical as well as a physical level.

This is the paper I presented at the Enterprise Architecture Conference in
London in June 2006. It’s about a couple of different things. Firstly, it’s
about what we, as architects, can learn from agile development practices, so
that we start working in an agile way. Whether the development teams follow
agile methods themselves or not, this shows how architects can get a great deal
of benefit from agile ideas.

The paper is also about making the architecture itself agile, able to
“embrace change”. This doesn’t happen by accident, it happens by design, and the
paper suggests ways to make this happen.

Unlike the simplistic models in books and training courses, a real enterprise
has a very complicated data architecture. Most of the data will be held in large
legacy or package systems, for which the details of data structure may be
unknown. Other data will be held in spreadsheets and personal databases (such as
Microsoft Access), and may be invisible to the IT department or senior business
data administrators. Some key data may reside in external systems
maintained by service providers or business partners. To manage this you need
powerful, simple, but effective models of the data structure from an enterprise
viewpoint -- a set of models known as the “Enterprise Data Architecture.”

This article, co-written by Richard Wiggins and originally published in the
Rational Edge in February 2003
describes a new approach, based on UML, which meets the real requirements of
modeling the Enterprise Data Architecture.

Organisations need to protect and maximise the value of their IT assets. To
protect against threats from business and technological change systems need to
be flexible: able to change to support new functions, new workloads and new
working environments. Flexibility does not happen by accident - it is usually
the result of planning, forward thinking and adopting strategies known to
enhance and encourage it.

This paper, originally published by the
CBDi Forum, presents some of those strategies.

I co-authored this paper with my very dear friend, the late Steve Hazeltine,
for the EuroStar '96 Software Testing Conference in Amsterdam. We also presented
substantially the same paper at the May 1997 British Computer Society Testing
Special Interest Group meeting.

The paper describes how we successfully specified the server required for
the ported Rental Systems at Livingston UK, the European leader in providing
services to users of electronic equipment and computers. A primary business
activity is the rental of electronic equipment and computers, much of which is
conducted over the telephone, so response times are key to the business. We
therefore had to be sure that the new system would perform at least as well as
the old one without wasting money through over-specified hardware. The paper
suggests a practical and pragmatic approach to system sizing and performance
testing, which has been proven in practice.

I wrote this paper for the 1993 Conference "Managing Software Quality in the
1990s". At the time I was working as Quality Manager at Eurotunnel, and becoming
increasingly concerned that many ideas for changing the software production
process did not meet the concerns of experienced practical software builders.

While some concerns can easily (and often correctly) be ascribed to laziness
or good old-fashioned Ludd-ism, there is nonetheless a minefield of vested
interests and inappropriate solutions. The paper described my approach at
Eurotunnel based on recognising the real problems which constrain and motivate
the developers, and offering practical aid in order to gain acceptance of the
quality initiative.

The development of Eurotunnel's commercial information systems presented a
number of unusual testing challenges:

Rapidly evolving requirements within a new organisation, requiring
fast-track development as the requirements became known,

No existing business, procedures or systems with which to compare the new
systems,

Huge project and business creation pressures severely limiting user time
and their ability to participate in system development,

Rapid delivery of multiple external systems concurrently with the final
physical infrastructure,

A variety of system architectures, histories and underlying quality
levels,

Use of then new technologies, such as 4GLs, client/server structures and
graphical interfaces.

Traditional testing methods didn't adequately address these problems, so it
was necessary to develop a new test method which was practical, matched to the
target environments and systems, and was realistic about what could be achieved.
This presentation to EuroSTAR '94 describes the evolution of that test method.