Состав спецификации КП. (Спецификация задачи, функций, диалога, входных и выходных данных).




Спецификации компьютерной программы состоят обычно из нескольких частей. Важнейшими из них являются:

Ø Спецификация задачи, которую нужно решить с помощью КП. Сюда относятся формальная (математическая) постановка класса решаемых задач (см. п.3) и описание метода решения этой задачи. Метод решения задачи – это описание того, какую последовательность шагов на пути преобразования значений исходных данных в значения выходных данных (результатов решения поставленной задачи) нужно выполнить, если на каждом шаге будет решена некоторая подзадача исходной задачи (более простая, чем исходная задача!), описанная своей формальной постановкой. Например, метод Крамера для решения системы линейных алгебраических уравнений состоит в том, чтобы выполнить такую последовательность шагов:

3. Вычислить значение детерминанта матрицы исходной системы.

4. Проанализировать полученное значение:

· если оно равно нулю, констатировать, что исходная система не имеет ни одного решения;

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

Ø спецификация функций, которые должна выполнять КП (конечно, решать задачу, но ещё и вводить исходные данные задачи, выводить результаты её решения, контролировать вводимые данных, выводить диагностические сообщения и т.п.);

Ø спецификация входных данных КП (как исходных данных задачи, так и прочих входных данных КП): необходимо все их перечислить и для каждого указать область допустимых значений, вид носителя (клавиатура, диск и т.п.) и форму, в которой данное представлено на носителе;

Ø спецификация выходных данных КП (как результатов решения задачи, так и всех прочих выходных данных, в том числе - сообщений): необходимо все их перечислить и для каждого указать область возможных значений, носитель и форму представления на носителе, а также описать функциональную связь всех выходных данных с входными;

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

Рис. 1. Пример графа сценария с макетами экранов.

 

Средства и способы специфицирования КП. (Таблица решения, формы, конечные функции, n-местные отношения).

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

Функция F(X1, …, Xn) называется конечной, если конечны область её определения и область её значения. Она описывается таблицей, столбцы которой соответствуют n аргументам и значению функции, а каждая строка a1, …, an, an+1 состоит из значений аргументов a1, …, an и соответствующего значения функции an+1 = F(a1, …, an). В табл. 8.1 приведён пример описания логической функции двух аргументов.

X Y F(X,Y)
истина истина истина
истина ложь ложь
ложь истина ложь
ложь ложь истина

Таблица 8.1.

Описание конечной функции в виде таблицы решений предполагает, что ее аргументы – условия, а значения – решения или действия. Описание конечной функции с помощью таблицы решений очень удобно в тех ситуациях, когда функциональную связь между значениями аргументов (входными данными задачи) и значением функции (выходным данным задачи) трудно описать с помощью формулы или алгоритма. Примером может служить таблица решений (см. рис. 3.) в задаче о начислении доплат зависимости от некоторых условий (табл.8.2), в которой n = 3. 8

 

 

Стаж > 10 лет Пол = мужской Возраст > 50 лет Доплата
Да Да Да 900 руб.
Да Да Нет 700 руб.
Да Нет Да 800 руб.
Да Нет Нет 600 руб.
Нет Да Да 100 руб.
Нет Да Нет 0 руб.
Нет Нет Да 100 руб.
Нет Нет Нет 0 руб.

Таблица 8.2.

 

Начало условия Тело условия
A, B, C A£B£C A£C£B B£A£C B£C£A C£A£B C£B£A
MAX:= A       X   X
MAX:= B   X     X  
MAX:= C X   X      
Начало действия Тело действия

Рис. 8.3. Таблица решений для задачи о выборе максимального из трёх заданных чисел.

Для описания связи между входными и выходными данными можно использовать также таблицы конечных n-местных отношений. Конечное n -местное отношение R – этоконечное множество n -элементных кортежей. В табличном описании n-местного отношения строкой таблицы является кортеж элементов <a1, …, an > Î R. Столбцы таблицы соответствуют аргументам отношения, а имена столбцов называются атрибутами этого отношения. Например, в таб. 8.3. описана связь между именами сотрудников некоторого учреждения, видами выполненных ими работ и количеством времени, затраченного ими на выполнение этих работ (здесь n = 3).



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2017-03-31 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: