Michael A. Jackson
From Wikipedia, the free encyclopedia
Professor Michael Anthony Jackson (born 1936) works as an independent computing consultant in London, England, and also as a part-time researcher at AT&T Research, Florham Park, NJ, U.S.. He is a visiting research professor at the Open University in the UK.
Jackson was educated at Harrow School where he was taught by Christopher Strachey and wrote his first program under Strachey's guidance. He then studied classics at Oxford University (known as "Greats"), where he was a fellow student with C. A. R. Hoare, two years ahead of him. They had a shared interest in logic, which was studied as part of Greats at Oxford.
In the 1970s, Jackson developed Jackson Structured Programming (JSP). In the 1980s, with John Cameron, he developed Jackson System Development (JSD). Then, in the 1990s, he developed the Problem Frames Approach. In collaboration with Pamela Zave, he created Distributed Feature Composition, a virtual architecture for specification and implementation of telecommunication services.
His books include:
- Principles of Program Design (1974) ISBN 0-12-379050-6.
- System Development (1983) ISBN 0-13-880328-5.
- Software Requirements & Specifications (1995) ISBN 0-201-87712-0.
- Problem Frames: Analysing and Structuring Software Development Problems (2001) ISBN 0-201-59627-X.
Jackson received the Stevens Award for Software Development Methods in 1997.
His son, Daniel Jackson, is also a computer scientist, based at MIT.
[edit] About the Jackson methods
JSP (Jackson Structured Programming) was the first software development method that Jackson developed. It is a program design method, and was described in his book Principles of Program Design. JSP covers the design of individual programs, but not systems.
JSD (Jackson System Development) was the second software development method that Jackson developed. JSD is a system development method not just for individual programs, but for entire systems. JSD is most readily applicable to information systems, but it can easily be extended to the development of real-time embedded systems. JSD was described in his book System Development.
Problem Analysis or the Problem Frames Approach was the third software development method that Jackson developed. It concerns itself with aspects of developing all kinds of software, not just information systems. It was first sketched in his book Software Requirements and Specifications, and described much more fully in his book Problem Frames.
Each of these methods covers a wider scope than the previous one, and builds on ideas that appeared, but were not fully developed, in the previous one. Reading his books in sequence allows you to follow the evolution of his thinking.