Talk:Jackson System Development

From Wikipedia, the free encyclopedia

Note: The following is the former content of an article on the same topic as this one. It is being moved here to preserve it and its history so that the content may be merged into the main article. Mangojuicetalk 15:33, 14 August 2006 (UTC)

[edit] JSD

Michael A. Jackson is an original thinker in the area of information systems development. He is the author of "Principles of Program Design" (1975), "Jackson System Development" (1983) and "Software Requirements & Specifications" (1993). He is currently doing research on specifying the long-distance telephone network at AT&T Laboratories. His thinking about communicating sequential processes is closely related to Hoare's CSP. In fact, JSD can be expressed in CSP.

PHILOSOPHY

JSD does not start from a given specification, nor does it decompose the system into sequential processes. Instead, development begins by creating a specification for the system, building it up from parts which are themselves sequential processes. JSD is an activity of synthesis rather than decomposition. Used to develop systems in whose real world subject matter it is important to recognize occurrence of events within a time dimension.

STAGES

JSD is an object-based system of development, where the behaviour of objects is captured in an entity structure diagram. It is claimed that easier to build more maintainable systems with JSD because the model of real world is a stable basis for development, being less likely to change than the functions built upon it.

TECHNIQUES

In JSD, the model implies function. We can specify any function in terms of members of the model. But in dysfunctional decomposition, the functions imply the model. We build a model in terms of required functions. This is inherently less flexible. JSD models the real world as a set of sequential model processes that communicate with the real world and with each other by sequential data streams (as well as by a second read-only communication called state vector connection). The structure of a model process is determined by the structure of its inputs and outputs. The JSD implementation step embodies the JSP implementation technique, program inversion, in which a program is transformed into a procedure. Other JSP techniques, such as the single read-ahead rule and backtracking, and principles, such as implementation through transformation, are used in JSD.

SOURCES

Associate of Science in Computer Information Systems http://cisx2.uma.maine.edu/NickTemp/JSP&JSDLec/jsd.html

Computing at Northumbria University http://computing.unn.ac.uk/