Обычно предлагается следующая последовательность шагов при проектировании спецификаций:
) разделение проекта на 10-50 модулей;
) организация иерархии модулей;
) определение маршрутов данных между модулями;
) определение форматов внешних файлов;
) определение способов доступа к внешним файлам;
) определение структур данных;
) проектирование ключевых алгоритмов;
) определение подпрограмм внутри каждого модуля.
Структурные методологии предлагают методику трансляции проектных спецификаций в модель реализации, в дальнейшем используемую
при кодогенерации. Кодогенерация предполагает наличие кодовых стандартов, специфицирующих формат заголовков подпрограмм, ступенчатый вид вложенных блоков, номенклатуру для спецификации переменных и имен подпрограмм и т.п.
Несмотря на достаточно широкий спектр используемых методов и диаграммных техник, большинство методологий базируется на следующей "классической" совокупности:
а) диаграммы потоков данных в нотации Йодана/Де Марко или Гейна-Сарсона, обеспечивающие анализ требований и функциональное проектирование информационных систем;
б) расширения Хагли и Уорда-Меллора для проектирования систем реального времени, основанные на диаграммах переходов состояний, таблицах и деревьях решений, картах и схемах потоков управления;
в) диаграммы "сущность-связь" (в нотации Чена или Баркера) или скобочные диаграммы Варнье-Орра для проектирования структур данных, схем БД, форматов файлов как части всего проекта;
г) структурные карты Джексона и/или Константайна для проектирования межмодульных взаимодействий и внутренней структуры модулей, позволяющие развить модель анализа, построенную на базе вышеперечисленных средств, до модели реализации.
Современные структурные методологии анализа и проектирования классифицируются по следующим признакам:
) по отношению к школам:
§ Software Engineering (SE),
§ Information Engineering (IE).
2) по порядку построения модели:
§ процедурно-ориентированные,
§ ориентированные на данные,
§ информационно-ориентированные.
) по типу целевых систем:
§ для систем реального времени (СРВ),
§ для информационных систем (ИС).является нисходящим поэтапным подходом к разработке ПО, начинающейся с общего взгляда на его функционирование. Затем производится декомпозиция на подфункции, и процесс повторяется для подфункций до тех пор, пока они не станут достаточно малы для их реализации кодированием. В результате получается иерархическая, структурированная, модульная программа. SE является универсальной дисциплиной разработки ПО, успешно применяющейся как при разработке систем реального времени, так и при разработке информационных систем. IE - более новая дисциплина. С одной стороны, она имеет более широкую область применения, чем SE: IE является дисциплиной построения систем вообще, а не только систем ПО, и включает этапы более высокого Уровня (например, стратегическое планирование), однако на этапе проектнрования систем ПО эти дисциплины аналогичны. С другой стороны. IE - более узкая дисциплина, чем SE, т.к. IE используется только для построения информационных систем, a SE - для всех типов систем.
Разработка ПО основана на модели ВХОД-ОБРАБОТКА-ВЫХОД. Данные входят в систему, обрабатываются или преобразуются и выходят из системы. Такая модель используется во всех структурных методологиях. При этом важен порядок построения модели. Традиционный процедурно-ориентированный подход регламентирует первичность проектирования функциональных компонент по отношению к проектированию структур данных: требования к данным раскрываются через функциональные требования. При подходе, ориентированном на данные, вход и выход являются наиболее важными - структуры данных определяются первыми, а процедурные компоненты являются производными от данных. Информационно-ориентированный подход, как часть IE-дисциплины, отличается от подхода, ориентированного на данные, тем, что позволяет работать с неиерархическими структурами данных.
Перейти на страницу: 1 2 3 4 5 6 7
|