Content deleted Content added
ClueBot NG (talk | contribs) m Reverting possible vandalism by White devil199 to version by MER-C. Report False Positive? Thanks, ClueBot NG. (3458037) (Bot) |
Citation bot (talk | contribs) m Add: isbn, doi, citeseerx. Removed parameters. | You can use this bot yourself. Report bugs here. | User-activated. |
||
Line 1:
[[Image:JSP RLE output1.png|thumb|240px|Example of a JSP diagram.]]
'''Jackson structured programming''' ('''JSP''') is a method for [[structured programming]] based on correspondences between data stream structure and program structure. JSP structures programs and data in terms of sequences, iterations and selections, and as a consequence it is applied when designing a program's detailed control structure. The method applies to processing of any data structure or data stream that is describable as a hierarchical structure of sequential, optional and iterated elements. This could be a stream of messages that a process reads to invoke and coordinate other modules or objects, or it could be a string of characters in parameters passed to a single operation on an "object" coded in an object-oriented programming language. In other words, it could be either above or below the level where [[Object-oriented programming|object-oriented methods]] are applied <ref>{{Citation | first = R | last = Wieringa | title = A survey of structured and object-oriented software specification methods and techniques
== Introduction ==
[[Michael A. Jackson]] originally developed JSP in the 1970s. He documented the system in his 1975 book ''Principles of Program Design''.<ref name="PoPD">{{Citation | first = MA | last = Jackson | title = Principles of Program Design | publisher = Academic | year = 1975}}.</ref> In a 2001 conference talk,<ref name="perspective">{{Citation | first = MA | last = Jackson | title = JSP in Perspective | place = sd&m Pioneers’ Conference, Bonn, June 2001 | year=2001 | url = http://mcs.open.ac.uk/mj665/JSPPers1.pdf | access-date = 2017-01-26}}</ref> he provided a retrospective analysis of the original driving forces behind the method, and related it to subsequent software engineering developments. Jackson's aim was to make [[COBOL]] batch file processing programs easier to modify and maintain, but the method can be used to design programs for any [[programming language]] that has structured control constructs, languages such as [[C (programming language)|C]], [[Java (programming language)|Java]] and [[Perl]]. Despite its age, JSP is still in use and is supported by diagramming tools such as Microsoft's Visio and CASE tools such as Jackson Workbench.<ref name= "Ourusoff 2003">{{Cite web|url=http://www.proceedings.informingscience.org/IS2003Proceedings/docs/091Ourus.pdf|title = Using Jackson Structured Programming (JSP) and Jackson Workbench to Teach Program Design | accessdate = 2017-01-16 | publisher =Informing Science|year= 2003| first =Nicholas | last = Ourusoff|work= InSite 2003
Jackson Structured Programming was seen by many as related<ref>{{Citation | first = KT | last = Orr | year = 1980 | contribution = Structured programming in the 1980s | title = Proceedings of the ACM 1980 Annual Conference | publisher = ACM Press | place = New York, NY | pages = 323–26 |
Because JSP focuses on the existing input and output data streams, designing a program using JSP is claimed to be more straightforward than with other structured programming methods, avoiding the leaps of intuition needed to successfully program using methods such as top-down decomposition.<ref>{{Citation | last1 = Sorensen | first1 = K | last2 = Verelst | first2 = J | title = On the conversion of program specifications into pseudo code using Jackson structured programming | journal = Journal of Computing and Information Technology | volume = 9 | issue = 1 | year = 2001 | pages = 71–80 | doi=10.2498/cit.2001.01.06}}.</ref>
|