Нисходящее проектирование
Занятие 12-2 часа
Метод нисходящего проектирования предполагает последовательное разложение общей функции обработки данных на простые функциональные элементы ("сверху- / вниз").
В результате строится иерархическая схема, отражающая состав и взаимоподчиненность отдельных функций, которая носит название функциональная структура алгоритма {ФСА) приложения:
Последовательность действий по разработке функциональной структуры алгоритма приложения:
■ определяются цели автоматизации предметной области и их иерархия {цель-подцель);
■ устанавливается состав приложений (задач обработки), обеспечивающих реализацию поставленных целей;
■ уточняется характервзаимосвязи приложений и их основные характеристики (информация для решения задач, время и периодичность решения, условия выполнения и др.);
■ определяются необходимые для решения задач функции обработки данных; выполняется декомпозиция функций обработки до необходимой структурнойсложности, реализуемой предполагаемым инструментарием.
Подобная структура приложения представлена на рисунке 16 отражает наиболее важное - состав и взаимосвязь функций обработки информации для реализации приложений, хотя и не раскрывает логику выполнения каждой отдельной функции, условия илипериодичность их вызовов.
Разложение должно носить строго функциональный характер, т.е. отдельный элемент ФСА описывает законченную содержательную функцию обработки информации, которая предполагает определенный способ реализации на программном уровне.
Функции ввода-вывода информации рекомендуется отделять от функций вычислительной или логической обработки данных.
По частоте использования функции делятся на:
однократно выполняемые;
повторяющиеся,
Степеньдетализации функции может быть различной, но иерархическая схема должна давать представление о составе и структурё взаимосвязанных функций и общем алгоритме обработки данных. Широко используемые функции приобретают ранг стандартных (встроенных) функций при проектировании внутреннейструктуры программного продукта.
Рисунок 16 – функциональная структура приложение
На рисунке 16 представлены некоторые функции, например Ф2, далее неразложимы на составляющие, они предполагают не посредственную программную реализацию Другие функции, например Ф1,Фm, могут быть представлены ввиде структурного объединения более простых функций, например Ф11, Ф12 и т.д. Для всех функций-компонентов осуществляется самостоятельная программная реализация; составные функции (типа Ф1, Фm) реализуются как программные модули, управляющие функциями-компонентами, например, ввиде программ.