|
||||||||||||
|
||||||||||||
|
|||||||||
МЕНЮ
|
БОЛЬШАЯ ЛЕНИНГРАДСКАЯ БИБЛИОТЕКА - РЕФЕРАТЫ - определение внешних спецификаций уравненийопределение внешних спецификаций уравненийЛабораторная работа №1 ОПРЕДЕЛЕНИЕ ВНЕШНИХ СПЕЦИФИКАЦИЙ ПРОГРАММ С ПОМОЩЬЮ HIPO-ТЕХНОЛОГИИ Цель работы: ознакомиться с методикой разработки внешних специфи-ка-ций программ, основанной на использовании HIPO-технологии проектирования программ; приобрести практические навыки определения и оформления внешних спецификаций программ. При подготовке к занятию прежде всего необходимо усвоить назначение внешних спецификаций при проектировании программ. Затем необходимо изучить правила и языковые средства, применяемые для составления спецификаций требований и функционнальных спецификаций. Особое внимание следует обратить на использование стандартов из HIPO-технологии для определения и документирования внешних спецификаций программ. Контрольные вопросы1. Что называется спецификациями программы?2. Кто составляет спецификации программы?3. В чем отличие спецификации требований и функциональных спецификаций?4. Какие языки применяются для описания спецификаций?5. Какие вопросы следует осветить при составлении внешних спецификаций?6. Назовите методы проверки правильности разработанных спецификаций?7. Каковы особенности HIPO-технологии проектирования программ?8. Как составляются IPO-диаграммы и схема состава разложения?Методические указанияМетодика разработки программ на базе структурного подхода состоит из следующих этапов:анализ требований и определение внешних спецификаций;проектирование алгоритмов;кодирование алгоритмов;тестирование и документирование программы.Подготовка полных и правильных спецификаций считается одним из ответственнейших этапов в разработке больших программных комплексов. Благодаря составлению внешних спецификаций уточняется исходная постановка задачи и устраняются противоречия, которые обусловлены неоднозначностью понятий естественного языка, применяемого для описания условия задачи и функций программы. Внешние спецификации - важнейший документ для каждой программы, описывающий внешнее взаимодействие программы с пользователем без конкретизации внутренней структуры самой программы.Составление спецификаций - это функция не заказчика, а специалистов особого рода, обладающих знаниями в области системного анализа, проектиро-вания и тестирования программ, психологии общения человека с машиной, тео-рии программирования и т.п. Спецификации больших программных комплексов записываются на специальных языках. Применяются два класса языков спецификаций:язык спецификаций требований (язык технического задания);язык функциональных спецификаций.Языки описания требований к программному продукту почти не формали-зованы. К этому классу относятся, например, языки PSL(США), СИПЛ(СНГ) и соответствующие им транслирующие системы PSA, ADS[ ] и СИПЛ, которые автоматизируют разработку требований на ЭВМ. Анализатор этих систем, обща-ясь с заказчиком в диалоговом режиме "вопрос-ответ", проверяет ответы на не-противоречивость, полноту и в результате формирует листинг спецификаций тре-бований. Однако эти схемы не нашли широкого распространения из-за узкой специализации и необходимости выделения для их работы большого количества машинного времени. В настоящее время разрабатываются новые поколения средств системного анализа.Языки функциональных спецификаций являются полуформальными и описывают все функции, реализуемые программой на ЭВМ. Для этой цели был разработан универсальный международный язык SDL (США) и аналогичный ему в СНГ язык PLUS. Кроме того, для малых и средних программ очень часто применяются специализированные стандарты, определяющие правила записи спецификаций с учетом специфики решаемых задач и утвердившихся традиций в технологии программирования. В любом случае внешние спецификации каждой функции должны освещать следующие вопросы.Описание исходных данных. Должны быть точно описаны синтаксис (формат) и семантика (назначение, тип, допустимые значения, область изменения) всех исходных данных, которые вводит пользователь в программу.Описание выходных данных. Дается точное описание семантики и син-таксиса всех результатов, формируемых программой, а также сообщений оператору об ошибках, о ходе вычислительного процесса, о запросах и т.д. Указывается реакция программы на некорректность исходных данных.Описание функций преобразования информации, выполняемых программой, с точки зрения пользователя.Дополнительные сведения о программе: ограничения на используемую память, длину программы, время ее работы; идеи относительно внут-рен-него проектирования функций (если это необходимо).Для проверки правильности внешних спецификаций применяют ряд мето-дов. Например, неполноту и неоднозначность спецификаций можно проверить с помощью таблицы решений [ ]. Также эффективным приемом оценки внешних спецификаций служит сквозной контроль по схеме "вход - интерпретация специ-фи-каций - выход" [ ]. В соответствии с этим методом в начале для каждой функ-ции строятся "тесты на бумаге", а затем имитируется ввод этих данных в систему и прослеживается преобразование их в соответствующие выходные данные, ис-пользуя при этом спецификации как описание поведения системы. Если специфи-кации для какого-нибудь набора входных данных недостаточно полно и правиль-но описывают выходные данные, то это означает, что обнаружена ошибка.Одним из эффективных средств составления внешних спецификаций по принципу "сверху-вниз" является HIPO-технология [ ].Внешние спецификации, полученные по этой технологии, еще называют исходным описанием программы. Оно представляет собой альбом связных между собой схем, каждая из которых описывает какую-либо часть задачи или системы, подлежащей разработке. При составлении исходного описания необходимо разделить рассматриваемую задачу на части. При этом следует соблюдать следующие рекомендации:деление обьекта должно осущетвляться последовательно и сверху вниз;каждая выделяемая часть должна описывать какую-либо законченную со-держательную функцию, а методы и особенности реализации не должны учитываться при разложении.В результате разработчик получает коплект документации: схема состава разложения и схемы (IPO-диаграммы) каждого из элементов разложения.
Задание к лабораторной работе С помощью HIPO-технологии составить внешние спецификации для комплекса программ решения одной из следующих задач. 1.Численное решение задачи Коши для дифференциального уравнения ме-тодом Рунге-Кутта и Адамса с автоматическим выбором шага и заданным шагом. 2.Интерполирование табличной функции. 3.Численное решение системы линейных алгебраических уравнений мето-дами простой итерации, Зейделя и верхней релаксации. 4.Сглаживание функции кубическими сплайнами и многочленами средне-квадратичного приближения. 5.Численное решение однократных интегралов для таблично и аналити-чески заданных функций с заданной точностью. 6.Вычисление обратной матрицы и определителей по схеме Гауса. 7.Численное решение нелинейного уравнения методами дихотамии, каса-тельных, хорд, итерации и комбинированным. 8.Численное решение системы нелинейных алгебраических уравнений ме-тодами Ньютона, простых итераций и Зейделя. 9.Численное решение задачи Коши для обыкновенного дифференциального уравнения методами Эйлера, Эйлера-Коши и усовершенствованным. 10.Численное решение краевой задачи для обыкновенного дифференциаль-ного уравнения методами сеток, коллокаций и наименьших квадратов. 11.Численное решение краевой задачи для дифференциального ураннения в частных производных эллиптического вида методом сеток и с применением мето-дов простой итерации, Зейделя и верхней релаксации. 12.Численное решение краевой задачи для дифференциального уравнения теплопроводности с одной и двумя пространственными переменными с исполь-зованием явной и неявной разностных схем. 13.Численное решение краевой задачи для дифференциального уравнения гиперболического типа с одной и двумя пространственными переменными с исполь-зованием явной и неявной разностных схем. 14.Нахождение экстремумов одномерных функций методами дихотомии, "золотого" сечения и Фибоначчи. 15.Решение задачи линейного программирования симплекс-методом. 16.Безусловная оптимизация функции многих переменных градиентными методами наискорейшего спуска, Ньютона и сопряженных градиентов. 17.Определение оптимума в задаче квадратичного программирования на основе сведения ее к задаче линейного программирования. 18.Решение транспортной задачи с возможностью нахождения опорного плана по методу северо-западного угла, минимального элемента или аппрокси-мации Фогеля. 19.Целочисленное решение задачи линейного программирования методом Гомори. 20.Построение кратшайшего остова графа методами Краскала и Прима. 21.Решение задачи о минимальном маршруте в транспортной сети (графе) методами Дейкстры и Форда. 22.Нахождение кратчайших путей между всеми вершинами графа по алгоритму Флойда. 23.Построение Эйлерова цикла в связном неориентированном мультиграфе. 24.Решение задачи о коммивояжере методом Литтла. 25.Решение задачи о максимальном потоке в сети с одним источником и одним стоком методом Форда-Фолкерсона. 26.Подсчитать меру структурированости S=(1-G/С)*100% и меру документированности D=K/C*100% произвольной программы на языке Паскаль, где С-число строк в программе, G-число операторов GOTO в ней, К-число комментариев. 27.Имеется файл с записями Z1,Z2,...,ZN. Каждая запись имеет ключ К. Построить программу сортировки записей как по убыванию, так и по возрастанию их ключей. 28.Нахождение аналитического решения квадратного уравнения. В качестве исходной информации служит символьное представление уравнения вида Ф(Х,Х**2,А,В,С)=0. 29.Анализ вида уравнения (Ф) и приведение его к каноническому виду (ФК). 30.Проверка принадлежности (ФК) к полному квадратному уравнению и формирование формы аналитического решения. 31.Проверка принадлежности (ФК) к приведенному уравнению иформирование формы аналитического решения. 32.Проверка принадлежности (ФК) к неполным уравнениям вида АХ**2+ВХ=0, АХ**2+С=0, ВХ+С=0 и формирование аналитического решения. Порядок выполнения работы 1.Уяснить исходную постановку задачи и вспомнить суть методов ее решения. 2.На основе системного анализа и декомпозиции разбить исходную задачу на ряд более простых подзадач (расщепление выполнять последовательно и свер-ху вниз). Составить иерархическую схему состава разложения, применяя HIPO-технологию. 3.Выполнить описание каждого элемента разложения в виде IPO-диаграммы. 4.Проверить правильность разработанных внешних спецификаций по таблице решений или по схеме "вход-интерпретация спецификаций - выход". 5.Оформить внешние спецификации программ как альбом связных схем (чертежей). Содержание отчета1.Постановка задачи. 2.Внешние спецификации программы в виде альбома связных схем, составленного по HIPO-технологии и влючающего: -оглавление альбома документации и условные обозначения; -схему состава разложения; -набор IPO-диаграмм, реализующих элементы структуры. |
РЕКЛАМА
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
БОЛЬШАЯ ЛЕНИНГРАДСКАЯ БИБЛИОТЕКА | ||
© 2010 |