2012 — Present
Largely retired, I carry on some professional activities. I have also done voluntary web design and software development for the Society of Recorder Players.
Independent Consultant 2004 — 2011
Praxis contributed to the Rodin project researching rigorous development environment for complex systems. My role was to use the CDIS project as a case study.
In 2004 and 2005 I taught a course in Systems Requirements Engineering in the Department of Computer Science at University College London. Subsequently I taught a one week course in Requirements Engineering for the UCL Centre for Systems Engineering.
Principal Consultant, Praxis Critical Systems 1986 — 2004
Technical authority and leader in numerous software and systems development projects.
Initiated and led the specification and deployment of a new requirements engineering method, REVEAL, by combining theoretical research with extensive practical experience.
Based on a experience in a number of projects, developed methods for combining rigorous specification with object-oriented design, resulting in software architectures that are maintainable and changeable with very high assurance.
In addition assisted numerous clients in the UK (including Rolls-Royce, Siemens, NATS, Railtrack and Lloyds TSB), the US (Federal Aviation Administration) and Europe (railway authorities in Norway, Denmark and Switzerland) with all stages of the lifecycle including requirements for multi-billion pound systems, design of distributed real-time communications, safety engineering of operational systems, and security of business processes.
Visiting Professor, Carnegie Mellon University 1994
Taught a course on Methods of Software Development in the Master of Software Engineering program. Carried out research into formal refinement and large-scale design in the Composable Systems Group.
Principal Consultant, Systems Designers 1984 — 1986
Had strategic responsibility for project support environments. Acted as technical architect on the Alvey ASPECT IPSE. As a member of Ada Europe, advised the European Commission on Ada Programming Support Environment issues.
Senior Consultant, Systems Programming Limited 1980 — 1984
Project manager of a six-person project to develop a compiler for a new teaching language.
Consultant jointly responsible for design of the Ada Programming Support Environment (APSE) in the collaborative project to develop an Ada compiler and tools. Later, project manager of the whole Ada Group project.
Responsible for thirty staff working on compilers, cross development systems, software tools and methods.
Principal Scientific Officer
British Museum Research Laboratory
1973 — 1980
Established the computer section of the British Museum Research Laboratory. Led a team of four people.
Developed computer support for laboratory instruments, including system programming, hardware construction and interfacing.
Developed statistical and graphical programs to support archaeologists.
Developed an information retrieval system for archaeological publications and worked with the US editor of Art and Archaeology Technical Abstracts to provide computerised indexing for the journal.
Developed information systems to support cataloguing and information management of the Museum’s collections. Introduced the computerisation of catalogue information in several Museum departments. Was one of the founder members of the Museum Documentation Association which set national standards for documentation of museum collections in a form suitable for computerisation.
ICI Research Fellow
Department of Theoretical Chemistry, University of Sheffield
1971 — 1973
Researched computational techniques for quantum chemistry.
D Phil in Theoretical Chemistry from Oxford in 1971
BA in Chemistry from Oxford in 1968.