Разработка сложных программных изделий

       

Структурный системный анализ


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

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

Практически процесс анализа распространяется на весь ЖЦПИ, поскольку, по мере создания программного изделия, разработчик и пользователь углубляют свои знания о решаемой проблеме и могут изменять и уточнять свои требования к изделию.

Информация о программной системе (системная спецификация), полученная в результате анализа, должна включать описания:

§

выходных отчетов;

§         структур данных и базы данных;

§         внешних файлов и внутренних массивов;

§         функциональных компонент с разной степенью детализации и связей между ними.

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

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

Существует несколько близких версий структурного анализа, объединенных рядом общих принципов:




1.      Нисходящая иерархическая организация модели системы.

2.      "Разделяй и побеждай".

3.      Графические средства общения и документирования.

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

Структурный системный анализ обеспечивает описание специ­фикаций системы, объединяя:

§         схемы потоков данных;

§         словарь данных;

§         описания процессов обработки данных.

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

§         источников (приемников) данных;

§         процессов обработки данных;

§         потоков данных;

§         хранилищ данных.

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

Словарь данных

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

Словарь данных — каталог всех типов данных системы, органи­зованный в виде специальной словарной базы метаданных, которые используются на всех этапах ЖЦПИ.

Описание процессов — блоков обработки данных, соответству­ет функциям программного изделия, т.е. поясняет, как входные дан­ные преобразуются в выходные.

 


Содержание раздела