Michael A. Jackson (computer scientist)

Short description: British computer scientist

For other people named Michael Jackson, see Michael Jackson (disambiguation).

Michael Anthony Jackson (born 16 February 1936) is a British computer scientist, and independent computing consultant in London, England. He is also a visiting research professor at the Open University in the UK.[1]

## Contents

* 1 Biography
* 2 Work
* 2.1 Jackson Structured Programming
* 2.2 Jackson System Development
* 2.3 Problem Frames Approach
* 3 Publications
* 4 References
* 5 External links

## Biography

Born in Birmingham to Montagu M. Jackson and Bertha (Green) Jackson, Jackson was educated at Harrow School in Harrow, London, England. There he was taught by Christopher Strachey and wrote his first program under Strachey's guidance. From 1954 to 1958, he studied classics (known as "Greats") at Merton College, Oxford;[2] a fellow student, two years ahead of him, was C. A. R. Hoare. They shared an interest in logic, which was studied as part of Greats at Oxford.

After his graduation in 1961, Jackson started as computer science designer and consultant for Maxwell Stamp Associates in London. Here he designed, coded and tested his first programs for IBM and Honeywell computers, working in assembler. There Jackson found his calling, as he recollected in 2000: "Although I was a careful designer — drawing meticulous flowcharts before coding — and a conscientious tester, I realised that program design was hard and the results likely to be erroneous..."[3] Information system design was in need of a structured approach.

In 1964, Jackson joined the new consultancy firm John Hoskyns and Company in London, before founding his own company Michael Jackson Systems Limited in 1971. In the 1960s, he had started his search for a "more reliable and systematic way of programming."[3] He contributed to the emerging modular programming movement, meeting Larry Constantine, George H. Mealy and several others on a 1968 symposium.[3] 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.

As a part-time researcher at AT&T Labs Research, in collaboration with Pamela Zave, Jackson created "Distributed Feature Composition",[4] a virtual architecture for specification and implementation of telecommunication services.

Jackson received the Stevens Award for Software Development Methods in 1997.[5] and British Computer Society Lovelace Medal in 1998.

In 1961, Jackson married Judith Wendy Blackburn;[2] they have four sons, one of whom, Daniel, is also a computer scientist based at MIT.[6]

## Work

Jackson has developed a series of methods. 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.

### Jackson Structured Programming

Jackson Structured Programming (JSP) 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.[7] JSP covers the design of individual programs, but not systems.

### Jackson System Development

The Jackson System Development (JSD) was the second software development method that Jackson developed.[8] 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 Frames Approach

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. The First International Workshop on Applications and Advances in Problem Frames[9] was held as part of ICSE’04 held in Edinburgh, Scotland.

## Publications

Michael Jackson's books include:

* 1975\. Principles of Program Design ISBN 0-12-379050-6.
* 1983\. System Development ISBN 0-13-880328-5.
* 1995\. Software Requirements & Specifications ISBN 0-201-87712-0.
* 1997\. Business Process Implementation
* 2001\. Problem Frames: Analysing and Structuring Software Development Problems ISBN 0-201-59627-X.

Many of his essays have been collected, along with research papers relating to his work, in the book:

* 2010\. Software Requirements and Design: The Work of Michael Jackson, Bashar Nuseibeh and Pamela Zave, editors. ISBN 978-0-557-44467-0

## References

1. ↑ Michael Jackson (not the singer) Consultancy & Research in Software Development. Accessed 24 April 2009.
2. ↑ 2.0 2.1 Levens, R.G.C., ed (1964). Merton College Register 1900–1964. Oxford: Basil Blackwell. p. 457.
3. ↑ 3.0 3.1 3.2 Jackson, Michael (April–June 2000). "The Origins of JSP and JSD: a Personal Recollection". IEEE Annals of Software Engineering 22 (2): 61–63, 66.
4. ↑ Distributed Feature Composition - Accessed 28 August 2018
5. ↑ Previous Stevens Recipients . Accessed 24 April 2009.
6. ↑ Jackson, Daniel. "Daniel Jackson". CSAIL Faculty Pages. http://people.csail.mit.edu/dnj/.
7. ↑ Jackson, M. A. (1975). Principles of Program Design. Academic Press, 1975
8. ↑ A System development method . M. A. Jackson, 1982
9. ↑ "First International Workshop on Applications and Advances in Problem Frames". http://www.cse.unsw.edu.au/~karlc/ProblemFramesWorkshop.htm.

## External links

* Michael Jackson home page
* The Jackson Software Development Methods
* The World and the Machine software engineering blog by Michael Jackson

* v
* t
* e

Software engineering

Fields|

* Computer programming
* Requirements engineering
* Software deployment
* Software design
* Software maintenance
* Software testing
* Systems analysis
* Formal methods

Concepts|

* Data modeling
* Enterprise architecture
* Functional specification
* Modeling language
* Orthogonality
* Programming paradigm
* Software
* Software archaeology
* Software architecture
* Software configuration management
* Software development methodology
* Software development process
* Software quality
* Software quality assurance
* Software verification and validation
* Structured analysis

Orientations|

* Agile
* Aspect-oriented
* Object orientation
* Ontology
* Service orientation
* SDLC

Models|

| Developmental|

* Agile
* EUP
* Executable UML
* Incremental model
* Iterative model
* Prototype model
* RAD
* UP
* Scrum
* Spiral model
* V-Model
* Waterfall model
* XP

|

Other|

* SPICE
* CMMI
* Data model
* ER model
* Function model
* Information model
* Metamodeling
* Object model
* Systems model
* View model

Languages|

* IDEF
* UML
* USL
* SysML

Software
engineers

* Victor Basili
* Kent Beck
* Grady Booch
* Fred Brooks
* Barry Boehm
* Peter Chen
* Danese Cooper
* Ward Cunningham
* Tom DeMarco
* Edsger W. Dijkstra
* Delores M. Etter
* Martin Fowler
* Adele Goldstine
* Margaret Hamilton
* C. A. R. Hoare
* Lois Haibt
* Mary Jean Harrold
* Grace Hopper
* Watts Humphrey
* Michael A. Jackson
* Ivar Jacobson
* Alan Kay
* Nancy Leveson
* Stephen J. Mellor
* Bertrand Meyer
* David Parnas
* Trygve Reenskaug
* Winston W. Royce
* James Rumbaugh
* Mary Shaw
* Peri Tarr
* Elaine Weyuker
* Niklaus Wirth
* Edward Yourdon

Related fields|

* Computer science
* Computer engineering
* Project management
* Risk management
* Systems engineering

* Category
* Commons

0.00

(0 votes)

Original source: https://en.wikipedia.org/wiki/Michael A. Jackson (computer scientist). Read more

|

Retrieved from "https://handwiki.org/wiki/index.php?title=Biography:Michael_A._Jackson_(computer_scientist)&oldid=835996"
*[v]: View this template
*[t]: Discuss this template
*[e]: Edit this template