# Michael A. Jackson

Michael Anthony Jackson (1936) is een Brits informaticus en IT consultant. Hij is werkzaam bij AT&T Research in Florham Park, New York, en visiting professor aan de Universiteit van Newcastle en de Open University in het Verenigd Koninkrijk. Hij is bekend van de softwareontwikkelingsmethoden Jackson Structured Programming en Jackson System Development.

## Biografie

Michael A. Jackson werd geboren in 1936, en volgde de Harrow School in Harrow, waar de informaticus Christopher Strachey hem de beginselen van het programmeren bijbracht. Aan de Oxford University studeerde hij de Literae Humaniores (de klassieken), waar hij medestudent was van de informaticus Tony Hoare. Ze hebben een gemeenschappelijke interesse in logica, die werd bestudeerd als deel van de klassieken in Oxford.
Begin jaren 1960 ontwikkelde hij zijn eerste programma's in assembler op machines van IBM en Honeywell, waarbij hij zijn ontwerpen nauwlettend in stroomschema's optekende. Hij ervoer hier echter al dat programmaontwerp een zware klus is en de resultaten verkeerd kunnen uitpakken. In 1964 ging hij werken bij John Hoskyns and Company, een nieuw consultancybureau in Londen, waar hij veel aandacht besteedde aan de problemen van het programmaontwerp.
Eind 1970 verliet Jackson Hoskyns en startte hij zijn eigen onderneming, Michael Jackson Systems Limited. In 1971 werd hij uitgenodigd een seminar te verzorgen voor de Amerikaanse Association for Computing Machinery gesteund door de British Computing Society. In de ontwikkeling van het cursusmateriaal en het verdere cursusverloop legde hij de basis voor Jackson Structured Programming. In 1977 nam hij John Cameron in dienst en gezamenlijk ontwikkelden zij de Jackson System Development.

## Werk

In de jaren 1970 ontwikkelde Jackson de softwareontwikkelingsmethode Jackson Structured Programming (JSP), in de jaren 1980 ontwikkelde hij samen met John Cameron een methode voor systeemontwikkeling, de zogenaamde Jackson System Development (JSD), en in de jaren 1990 ontwikkelde hij de Problem Frames, een aanzet om problemen te analyseren en te structureren.
Jackson schreef verder onder andere over softwareontwikkeling in het algemeen, telecommunicatiesysteemarchitectuur, requirements en specificaties, informatiesysteemontwikkeling en sequentieel programmaontwerp.

### Jackson Structured Programming

Jackson Structured Programming (JSP) was de eerste softwareontwikkelingsmethode van Jackson, die hij in 1974 presenteerde in het boek Principles of Program Design. Deze methode is gericht op het ontwerp van individuele programma's, maar niet op systemen.

### Jackson System Development

Jackson System Development (JSD) was de tweede methodologie, die Jackson met John Cameron en verschillende anderen ontwikkelde. Het is een ontwikkelingsmethode niet alleen voor afzonderlijke programma's maar voor hele systemen. JSD is een lineaire softwareontwikkelmethode, vooral ook gericht op het ontwikkelen van makkelijk te onderhouden software. JSD bestaat uit een gestructureerde analyse- en ontwerpmethode, vergelijkbaar met SSADM, en bouwt hierbij voort op de Jackson Structured Programming. JSD is vooral bekend vanwege het feit dat dit de eerste objectgeoriënteerde systeemontwikkelmethode was.

### Problem Frames Approach

De zogenaamde Problem Analysis of Problem Frames Approach is de derde softwareontwikkelingsmethode van Jackson. Hij handelt over allerlei aspecten van de ontwikkeling van allerlei uiteenlopende software, en niet alleen systemen. Jackson heeft dit voor het eerst uitgelegd in zijn boek Software Requirements and Specifications uit 1996 en beschrijft dit vollediger in het boek Problem Frames uit 2001.