Технология программирования стр.68

Самый простой вид программного обеспечения - программа, которая в качестве структурных компонентов может включать только подпрограммы и библиотеки ресурсов. Разработку структурной схемы программы обычно выполняют методом пошаговой детализации (см. § S.2).

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

Структурная схема п р о г р а м м н о г о к о м п л е к с а демонстрирует передачу управления от программы-диспетчера соответствующей программе (рис. 5.1).

Структурная схема п р о г р а м м н о й с и с т е м ы, как правило, показывает наличие подсистем или других структурных компонентов. В отличие от программного комплекса отдельные части (подсистемы) программной системы интенсивно обмениваются данными между собой и, возможно, с основной программой. Структурная же схема программной системы этого обычно не показывает (рис. 5.2).

Более полное представление о проектируемом программном обеспечении с точки зрения взаимодействия его компонентов между собой и с внешней средой дает функциональная схема.

Функциональная схема. Функциональная схема или схема данных (ГОСТ 19.701-90) - схема взаимодействия компонентов программного обеспечения с описанием информационных потоков, состава данных в потоках и указанием используемых файлов и устройств. Для изображения функциональных схем используют специальные обозначения, установленные стандартом. Основные обозначения схем данных по ГОСТ 19.701-90 приведены в табл. 5.1.

Функциональные схемы, более информативны, чем структурные. На рис. 5.3 для сравнения приведены функциональные схемы программных комплексов и систем.

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


5.2. Использование метода пошаговой детализации для проектирования структуры программного обеспечения

Структурный подход к программированию в том виде, в котором он был сформулирован в 70-х годах XX в., предлагал осуществлять декомпозицию программ методом пошаговой детализации. Результатом декомпозиции является структурная схема программы, которая представляет собой многоуровневую иерархическую схему взаимодействия подпрограмм по управлению. Минимально такая схема отображает два уровня иерархии, т. е. показывает общую структуру программы. Однако тот же метод позволяет получить структурные схемы с большим количеством уровней.

Метод пошаговой детализации (см. § 1.3) реализует нисходящий подход (см. § 2.3) и базируется на основных конструкциях структурного программирования (см.    § 2.4). Он предполагает пошаговую разработку алгоритма. Каждый шаг при этом включает разложение функции на подфункции. Так на первом этапе описывают решение поставленной задачи, выделяя общие подзадачи, на следующем аналогично описывают решение подзадач, формулируя при этом подзадачи следующего уровня. Таким образом, на каждом шаге происходит уточнение функций проектируемого программного обеспечения. Процесс продолжают, пока не доходят до подзадач, алгоритмы решения которых очевидны.

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


⇐ назад к прежней странице | | перейти на следующую страницу ⇒

Читайте также:

Помоги себе сам

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

AlgoMusic M51 Galaxy - виртуальный инструмент на основе PD-синтеза

Виртуальный инструмент M51 Galaxy позволяет синтезировать "космические" звуки, обладает завораживающим звучанием. Обычно музыканты не очень жалуют инструменты, созданные с помощью SynthEdit. Однако M51, хоть и относится к их числу, действительно очень хорош. Секрет его звучания кроется в оригинальной архитектуре синтеза. На M51 Galaxy распространяется поговорка, что "все новое - это хорошо забытое старое". Идеи, заложенные в M51, уже были успешно реализованы в 80-х годах XX века.

Яркая жизнь с компьютерными программами

На каждом шагу сегодня мы слышим нарекания на современную молодёжь и её бездеятельность. А ведь и правда – ребят кроме компьютера и досконального его знания мало что интересует и беспокоит, даже будучи на шашлыках, они тянут с собой компьютер и включают музыку либо фильмы. Такая зависимость является страшной для развития человечества в целом хотя б потому что все вокруг становятся замкнутыми и променивают реальный мир на виртуальное общение. Раньше, вспоминают люди постарше, у костра играли на гитаре вживую, ездили в горы с палатками, игрались миниатюрными поездами теперь заменённое компьютерными играми и различными программами симуляторами. Возникает закономерный вопрос – так ли вредны эти самые компьютерные программы и для чего они были созданы.