Принципы структурного анализа

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

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

– аналитику сложно получить исчерпывающую информацию для оценки требований к системе с точки зрения заказчика;

– заказчик, в свою очередь, не имеет достаточной информации о проблеме обработки данных, чтобы судить, что является выполнимым, а что – нет;

– аналитик сталкивается с чрезмерным количеством подробных сведений о предметной области и о новой системе;

– спецификация системы из-за объема и технических терминов непонятна для заказчика;

– в случае понятности спецификации для заказчика, она будет недостаточной для разработчиков, создающих систему.

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

Структурным анализом принято называть метод исследования системы с помощью ее графического модельного представления, которое начинается с общего обзора и затем детализируется, приобретая иерархическую структуру со все большим числом уровней. Для таких методов характерно: разбиение на уровни абстракции с ограничением числа элементов на каждом из уровней (обычно от 3 до 9); ограниченный контекст, включающий лишь существенные на каждом уровне детали; дуальность данных и операций над ними; использование строгих формальных правил записи; последовательное приближение к конечному результату.

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

Выделение двух базовых принципов инженерии информационных систем не означает, что остальные принципы являются второстепенными. Отметим основные из них.

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

2.Принцип полноты - заключается в контроле на присутствие лишних элементов.

3. Принцип непротиворечивости заключается в обоснованности и согласованности элементов системы.

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

5. Принцип упрятывания - заключается в упрятывании несущественной на конкретном этапе информации: каждая часть «знает» только необходимую ей информацию.

6. Принцип логической независимости заключается в концентрации внимания на логическом описании системы, обеспечении независимости от ее физической реализации.

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

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