РАЗРАБОТКА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ПОСТРОЕНИЯ XML ОПИСАНИЯ КОДА

Селиверстова Ирина Александровна
Пензенский государственный университет
кандидат технических наук, доцент, доцент кафедры системы автоматизированного проектирования

Аннотация
На практике для создания алгоритма программисты зачастую не используют блок-схемы, а лишь создают их после написания программы. Поэтому для сокращения времени создания документации ПО необходимо автоматизировать этот процесс, а для лучшего представления алгоритма использовать структурограммы.

Ключевые слова: блок-схемы, построение XML описания кода, программное обеспечение, разработка программного обеспечения, структурограммы


XML-BASED PROGRAM DOCUMENTATION SOFTWARE

Seliverstova Irina Aleksandrovna
Penza State University
PhD in CS, Assistant Professor at CAD Department

Abstract
Often programmers develop the programs without the use of flowcharts. They create the flowcharts only when their work on the program is finished. It may take a lot of time so it would be useful to provide a way to make it easier and faster. The article describes the use of Nassi-Shneiderman diagrams for comprehensive algorithm representation.

Рубрика: 05.00.00 ТЕХНИЧЕСКИЕ НАУКИ

Библиографическая ссылка на статью:
Селиверстова И.А. Разработка программного обеспечения построения XML описания кода // Современные научные исследования и инновации. 2016. № 2 [Электронный ресурс]. URL: https://web.snauka.ru/issues/2016/02/63157 (дата обращения: 15.03.2024).

На территории Российской Федерации действует единая система программной документации (ЕСПД), частью которой является Государственный стандарт – ГОСТ 19.701-90 “Схемы алгоритмов программ, данных и систем” [1]. В нём, в качестве графического описания алгоритма закреплены блок-схемы. На данный момент блок-схемы не являются лучшим графическим способом представления алгоритма, куда лучше для этой работы выглядит использование структурограмм. Они обладают рядом преимуществ, в частности более наглядно и компактно представляют структуру алгоритма, что зачастую невозможно при использовании блок-схем. Данный вид графического представления алгоритма не распространён на территории Российской Федерации так как является немецким стандартом.

При создании программы, одного лишь кода, как правило, недостаточно. Должен быть предоставлен некоторый текст, описывающий различные аспекты того, что именно делает код. Такая документация часто включается непосредственно в исходный код или предоставляется вместе с ним.

Подобная документация имеет сильно выраженный технический характер и в основном используется для определения и описания API, структур данных и алгоритмов.

Решение задач на компьютере основано на понятии алгоритма.

Алгоритм означает точное описание некоторого процесса, инструкцию по его выполнению. Разработка алгоритма является сложным и трудоемким процессом.

Для записи алгоритма решения задачи применяются следующие изобразительные способы их представления:

−    Словесно- формульное описание;

−    Блок-схема (схема графических символов);

−    Алгоритмические языки;

−    Структурограммы (схемы Насси-Шнейдермана);

−    Операторные схемы;

−    Псевдокод.

Графический способ описания алгоритма (блок – схема) получил самое широкое распространение. Для графического описания алгоритмов используются схемы алгоритмов или блочные символы (блоки), которые соединяются между собой линиями связи.

Каждый этап вычислительного процесса представляется геометрическими фигурами (блоками). Они делятся на арифметические или вычислительные (прямоугольник), логические (ромб) и блоки ввода-вывода данных (параллелограмм).

Порядок выполнения этапов указывается стрелками, соединяющими блоки. Геометрические фигуры размещаются сверху вниз и слева на право. Нумерация блоков производится в порядке их размещения в схеме.

Блок-схема является формой представления алгоритма с помощью графических символов.

Графические символы, их размеры, а также правила построения блок-схем определены государственными стандартами.

Блок-схемы – это та часть документации к программе, которая почти всегда имеется в избытке. Между тем многие программы вообще не нуждаются в блок-схемах и лишь очень немногие из них требуют больше одного листа таковых.

Блок-схемы показывают структуру ветвления программы только в одном ее аспекте. Но даже эта структура видна достаточно четко, только если вся блок-схема помещается на одной странице, и о ней очень трудно получить хорошее представление, если блок-схема располагается на нескольких листах, связанных вместе нумерованными стрелками.

В действительности блок-схемы гораздо больше превозносятся, чем используются на практике. Большинство программистов рисуют схемы только после того, как программа была написана.

Более удобным средством графического представления алгоритмов являются структурограммы (диаграммы Насси – Шнейдермана).

Диаграмма Насси – Шнейдермана(ДНШ) — это графический способ представления структурированных алгоритмов и программ, разработанный в 1972 году американскими аспирантами Беном Шнейдерманом и Айзеком Насси.[2]

Поскольку в структурном программировании не используется безусловный переход, то Бен Шнейдерман решил, что для записи структурированных алгоритмов не нужны используемые в блок-схемах стрелки. Придумав разные способы изображения основных структур управления, он затем вместе с Айзеком Насси подробно проработал свою идею. Вместе они написали статью «Техника блок-схем для структурного программирования», которая была опубликована в научном журнале «SIGPLAN Notices» в августе 1973 года.[3]

Диаграммы Насси — Шнейдермана имеют ряд преимуществ перед блок-схемами при разработке структурированных алгоритмов и программ:

−    Запись является более компактной и наглядной (в первую очередь за счёт отсутствия стрелок между элементами).

−    Отсутствии соединительных линий со стрелками, что помогает избежать случайных ошибок;

−    Изобразив алгоритм или программу в виде диаграммы Насси — Шнейдермана, можно быть гарантировано уверенным в том, что принципы структурного программирования соблюдены (при использовании блок-схем можно случайно получить неструктурированный алгоритм, если быть невнимательным).

−    Диаграммы Насси — Шнейдермана удобнее использовать для пошаговой детализации задачи, так как они тоже строятся по принципу пошаговой детализации — изначально диаграмма представляет собой один прямоугольник (исходная задача), затем в нём рисуется некоторая структура управления, в которой имеется несколько прямоугольников (подзадач исходной задачи), и далее с каждым прямоугольником (подзадачей) может быть проделана та же операция.

Диаграммы Насси – Шнейдермана строятся с использованием шести элементарных “строительных блоков”.

  • Блок действия
  • Блок с разветвлением
  • Блок множественного выбора
  • Блок цикла с предусловием
  • Блок цикла с постусловием
  • Блок подпрограммы

Так как на практике графическое представление алгоритма рисуется программистом уже после написания программы, то для сокращения сроков создания документации по ПО, необходимо приложение позволяющее автоматизировать этот процесс, а при построении, для более удобного представления алгоритмов, использовать структурограммы. Приложение должно обладать высокой скоростью работы и удобным интерфейсом.


Библиографический список
  1. Межгосударственный стандарт http://www.novsu.ru/file/1142824 (дата обращения: 13.10.2015);
  2. Википедия (свободная энциклопедия). Диаграмма Насси — Шнейдермана. [Электронный ресурс] – Режим доступа: https://ru.wikipedia.org/wiki/%C4%E8%E0%E3%F0%E0%EC%EC%E0_%CD%E0%F1%F1%E8_%97_%D8%ED%E5%E9%E4%E5%F0%EC%E0%ED%E0 (дата обращения: 22.05.2015)
  3. Школа программирования: тематический выпуск газеты “В мир информатики”. / “Информатика”, 2006, № 68.


Количество просмотров публикации: Please wait

Все статьи автора «Селиверстова Ирина Александровна»


© Если вы обнаружили нарушение авторских или смежных прав, пожалуйста, незамедлительно сообщите нам об этом по электронной почте или через форму обратной связи.

Связь с автором (комментарии/рецензии к статье)

Оставить комментарий

Вы должны авторизоваться, чтобы оставить комментарий.

Если Вы еще не зарегистрированы на сайте, то Вам необходимо зарегистрироваться:
  • Регистрация