Jackson Structured Programming (JSP) is a method of program design. Its origins lie in the data processing systems that grew up in the 1960s, when reliable, relatively cheap and adequately powerful computers first became generally available. The fundamental abstraction in JSP is the sequential data stream. Originally, this abstraction was inspired and motivated by the sequential tape files that characterised data processing in the 1960s, but it quickly became clear that it had a much wider applicability. Today the JSP design method is valuable for applications including embedded software, processing streams of EDI messages, handling network protocols and many others.
JSP arose from efforts by a small group of people in a data processing consultancy company to improve their programming practices, and to make their programs more reliable and easier to understand and to modify. In 1971 it became the core product of a very small new company, Michael Jackson Systems Limited, which offered development services, training courses, consultancy, and — from 1975 — software to support JSP design of COBOL programs. The name JSP was coined by the company’s Swedish licensee in 1974. In the commercial world, IBM had appropriated the name ‘Structured Programming’ in the early 1970s, and Yourdon Inc. started offering courses in ‘Structured Design’ around 1974. A distinctive name was a commercial necessity. It was also technically appropriate to choose a distinctive and proprietary name: the JSP method was very different from its competitors.
KeywordsInput File Program Structure Read Operation File Structure Data Processing System
Unable to display preview. Download preview PDF.
- E. Achelis; The Calendar for the Modern Age; Thomas Nelson, 1959.Google Scholar
- AV Aho and JD Ullman; Principles of Compiler Design Addison-Wesley, 1977.Google Scholar
- Barnett and Constantine eds; Modular Programming: Proceedings of a National Symposium; Information and Systems Press, 1968.Google Scholar
- ME Conway; Design of a Separable Transition-Diagram Compiler, Communications of the ACM 6, 7, 1963.Google Scholar
- O-J Dahl, B Myhrhaug and K Nygaard; SIMULA-67 Common Base Language. Technical Report Number S-22, Norwegian Computer Centre, Oslo, 1970.Google Scholar
- MA Jackson; Principles of Program Design; Academic Press, 1975.Google Scholar
- MA Jackson; Constructive Methods of Program Design; in C Coos and J Hartman is, eds; Proceedings of the 1st Conference of the European Cooperation in Informatics, Lecture Notes in Computer Science 44; Springer, 1976.Google Scholar
- M Jackson; Jackson Development Methods: JSP and JSD: in JJ Marciniak, ed; Encyclopaedia of Software Engineering, Volume I; Wiley, 1994.Google Scholar
- CJ Myers; Software Reliability: Principles & Practices; Wiley, 1976.Google Scholar
- WP Stevens, GJ Myers, and LL Constantine; Structured Design; IBM Systems Journal 13, 2, 1974.Google Scholar
- JD Warmer; Logical Construction of Programs HE Stenfert Kroese, 1974, and Van Nostrand Reinhold, 1976.Google Scholar