Структурное программирование Джексона: анализ данных и проектирование программ
Jackson structured programming
Структурное программирование Джексона (JSP): метод разработки ПО, основанный на анализе данных и создании интуитивно понятной структуры программы. 1975 год.
Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Содержание
Введение
Структурированное программирование Джексона (JSP) — это метод структурированного программирования, разработанный британским консультантом по программному обеспечению Майклом А. Джексоном и описанный в его книге 1975 года «Принципы проектирования программ». Суть метода JSP заключается в анализе структур данных файлов, которые программа должна считывать на входе и создавать на выходе, а затем в разработке дизайна программы на основе этих структур данных, чтобы структура управления программой обрабатывала их естественным и интуитивно понятным образом. JSP описывает структуры (как данных, так и программ) с использованием трех базовых структур — последовательности, повторения и выбора (или альтернатив). Эти структуры схематически представляются как (по сути) визуальное представление регулярного выражения.
Jackson structured programming (JSP) is a method for structured programming developed by British software consultant Michael A. Jackson and described in his 1975 book Principles of Program Design. The technique of JSP is to analyze the data structures of the files that a program must read as input and produce as output, and then produce a program design based on those data structures, so that the program control structure handles those data structures in a natural and intuitive way. JSP describes structures (of both data and programs) using three basic structures – sequence, iteration, and selection (or alternatives). These structures are diagrammed as (in effect) a visual representation of a regular expression.
Введение
Майкл А. Джексон первоначально разработал JSP в 1970-х годах. Он описал эту систему в своей книге 1975 года «Принципы проектирования программ». Он представил ретроспективный анализ первоначальных движущих сил метода и связал его с последующими разработками в области инженерии программного обеспечения. Целью Джексона было упростить модификацию и поддержку программ пакетной обработки COBOL, но метод может быть использован для разработки программ на любом языке программирования, имеющем структурированные конструкции управления — последовательность, повторение и выбор («if/then/else»). Структурированное программирование Джексона было похоже на структурированное программирование Warnier/Orr, хотя JSP учитывал структуры как входных, так и выходных данных, в то время как метод Warnier/Orr был сосредоточен почти исключительно на структуре выходного потока.
Michael A. Jackson originally developed JSP in the 1970s. He documented the system in his 1975 book Principles of Program Design. 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— sequence, iteration, and selection ("if/then/else"). Jackson Structured Programming was similar to Warnier/Orr structured programming although JSP considered both input and output data structures while the Warnier/Orr method focused almost exclusively on the structure of the output stream.
Мотивация для метода
В то время, когда JSP разрабатывался, большинство программ представляли собой пакетные программы на COBOL, обрабатывающие последовательные файлы, хранящиеся на магнитной ленте. Типичная программа читала входной файл как последовательность записей, поэтому все программы имели одинаковую структуру — единственный главный цикл, который последовательно обрабатывал все записи в файле. Джексон утверждал, что такая структура программы почти всегда была ошибочной, и призывал программистов искать более сложные структуры данных. В главе 3 книги «Принципы разработки программ»
At the time that JSP was developed, most programs were batch COBOL programs that processed sequential files stored on tape. A typical program read through its input file as a sequence of records, so that all programs had the same structure— a single main loop that processed all of the records in the file, one at a time. Jackson asserted that this program structure was almost always wrong, and encouraged programmers to look for more complex data structures. In Chapter 3 of Principles of Program Design