Смекни!
smekni.com

определение внешних спецификаций уравнений (стр. 1 из 3)

Лабораторная работа №1

ОПРЕДЕЛЕНИЕ ВНЕШНИХ СПЕЦИФИКАЦИЙ ПРОГРАММ

С ПОМОЩЬЮ HIPO-ТЕХНОЛОГИИ

Цель работы: ознакомиться с методикой разработки внешних специфи­ка­ций программ, основанной на использовании HIPO-технологии проектирования программ; приобрести практические навыки определения и оформления внешних спецификаций программ.

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

Контрольные вопросы

1. Что называется спецификациями программы?

2. Кто составляет спецификации программы?

3. В чем отличие спецификации требований и функциональных спецификаций?

4. Какие языки применяются для описания спецификаций?

5. Какие вопросы следует осветить при составлении внешних спецификаций?

6. Назовите методы проверки правильности разработанных спецификаций?

7. Каковы особенности HIPO-технологии проектирования программ?

8. Как составляются IPO-диаграммы и схема состава разложения?


Методические указания

Методика разработки программ на базе структурного подхода состоит из следующих этапов:

– анализ требований и определение внешних спецификаций;

– проектирование алгоритмов;

– кодирование алгоритмов;

– тестирование и документирование программы.

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

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

– язык спецификаций требований (язык технического задания);

– язык функциональных спецификаций.

Языки описания требований к программному продукту почти не формали­зованы. К этому классу относятся, например, языки PSL(США), СИПЛ(СНГ) и соответствующие им транслирующие системы PSA, ADS[ ] и СИПЛ, которые автоматизируют разработку требований на ЭВМ. Анализатор этих систем, обща­ясь с заказчиком в диалоговом режиме "вопрос-ответ", проверяет ответы на не­противоречивость, полноту и в результате формирует листинг спецификаций тре­бований. Однако эти схемы не нашли широкого распространения из-за узкой специализации и необходимости выделения для их работы большого количества машинного времени. В настоящее время разрабатываются новые поколения средств системного анализа.

Языки функциональных спецификаций являются полуформальными и описывают все функции, реализуемые программой на ЭВМ. Для этой цели был разработан универсальный международный язык SDL (США) и аналогичный ему в СНГ язык PLUS. Кроме того, для малых и средних программ очень часто применяются специализированные стандарты, определяющие правила записи спецификаций с учетом специфики решаемых задач и утвердившихся традиций в технологии программирования. В любом случае внешние спецификации каждой функции должны освещать следующие вопросы.

1.Описание исходных данных. Должны быть точно описаны синтаксис (формат) и семантика (назначение, тип, допустимые значения, область изменения) всех исходных данных, которые вводит пользователь в программу.

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

3.Описание функций преобразования информации, выполняемых программой, с точки зрения пользователя.

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

Для проверки правильности внешних спецификаций применяют ряд мето­дов. Например, неполноту и неоднозначность спецификаций можно проверить с помощью таблицы решений [ ]. Также эффективным приемом оценки внешних спецификаций служит сквозной контроль по схеме "вход - интерпретация специ­фи­каций - выход" [ ]. В соответствии с этим методом в начале для каждой функ­ции строятся "тесты на бумаге", а затем имитируется ввод этих данных в систему и прослеживается преобразование их в соответствующие выходные данные, ис­пользуя при этом спецификации как описание поведения системы. Если специфи­кации для какого-нибудь набора входных данных недостаточно полно и правиль­но описывают выходные данные, то это означает, что обнаружена ошибка.

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

- деление обьекта должно осущетвляться последовательно и сверху вниз;

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

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


Исходное описаниеСистемы ДиспетчерСхема СоставаНомер: 0.1 Схемасостава разложения Лист: 2Автор: Иванов А.Отдел: каф. ПОИСДата: 1.09.99


Рис. 1. Схема состава разложения

Схема состава разложения изображается в виде древовидного графа с корнем в верхней части листа (рис.1). Вершинами графа служат прямоугольники, изображающие элементы разложения, в каждый из которых необходимо вписывать короткое функциональное назначение элемента, номер уровня от корня дерева и номер в уровне. При составлении схемы сначала выделяются важнейшие функции системы. Затем каждая из этих функций подразделяется на ряд подфункций нижнего уровня, каждая из которых также описывается и т.д. Каждому прямоугольнику в альбоме документации должна соответствовать схема (IPO-диаграмма) с тем же содержательным названием. Если какая-либо схема еще не составлена, то такой прямоугольник обозначается пунктиром.

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

Описание каждого элемента разложения выполняется в виде IPO-диаграммы, показывающей его как функцию обработки информации.

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

IPO-диаграмму рекомендуется чертить на бланках, применяя линейки - шаблоны. Бланк "по вертикали" делится на три зоны. Верхняя зона служит для идентификации схемы, т.е. содержит сведения о самой схеме и авторе. Во второй зоне размещается сама диаграмма, а в третьей, отводимой в нижней части бланка, помещаются комментарии к элементам схемы. Зона размещения диаграммы "по горизонтали" делится также на три части: входные данные, функции преобразо­вания (обработка) данных, выходные данные. Функции преобразования с входны­ми и выходными данными соединяются стрелками. Применяемые условные обозначения данных, путей их передачи и т.п. должны приводиться в каждом альбоме (рис. 2).

На схеме возле каждого данного пишется его имя. Записи в разделе "обработка" выполняются в формализованном виде. Используются записи двух типов: записи-функции и записи-условия.

Записи-функции - это словесные описания на требуемом в конкретной IPO-диаграмме уровне детализации. Если запись-функция подлежит дальнейшей детализации IPO-диаграммами более низкого уровня, то она заключается в прямоугольник.