Jackson Structured Programming (JSP) was developed by British software consultant Michael A. Jackson to provide a rigorous, data-driven alternative to the intuitive “top-down” methods prevalent in the 1970s. Its evolution is characterized by a transition from micro-level program design to macro-level system architecture.
The Early 1970s: Foundation and Invention
- 1970: Michael Jackson founded his firm, Michael Jackson Systems Limited, to fully develop a new program design methodology.
- 1974: The name Jackson Structured Programming (JSP) was coined by the company’s Swedish licensee.
- 1975: Jackson published the seminal book Principles of Program Design, which formally documented the JSP method and is now considered a classic.
The Late 1970s: Standardisation and Expansion
- 1977: JSP reached global recognition, being taught in universities and used across Europe, the US, and Asia.
- Government Adoption: The UK government adopted JSP as its standard program design method under the name SDM (System Development Methodology).
- Industry Use: Large organisations like the World Health Organization (WHO) began using JSP as a standard for specifying programs.
The 1980s: Evolution into System Development (JSD)
- 1980: Jackson published JSP, A Practical Method of Program Design, further refining the technique for practical industry use.
- 1982–1983: Jackson, along with John Cameron, introduced Jackson System Development (JSD). While JSP focused on individual programs, JSD expanded these principles to entire systems.
- Integration: JSD was widely incorporated into the UK’s SSADM (Structured Systems Analysis and Design Method), specifically for entity and event modelling.
The 1990s to Present: Legacy and Modern Relevance
- 1990s: Jackson introduced his third major method, Problem Analysis (or the Problem Frames Approach), focusing on requirements and software specifications.
- Legacy: While JSP has faded from mainstream daily practice due to the rise of Object-Oriented Programming, its core concepts—like deriving program structure from data structures—influenced modern practices like Event Storming in Domain-Driven Design (DDD).
Jackson Structured Programming (JSP) Timeline by year