Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
конспект 1 модуль СР 2012.doc
Скачиваний:
78
Добавлен:
19.02.2016
Размер:
3.1 Mб
Скачать

3.1.3. Специфікування. Процес

Специфікування – це процес виявлення в опису розв’язуваної задачі (деталізація згідно з вибраним методом) усіх перетворювальних і управляючих дій і опис задачі у вигляді специфікації (наприклад, блок-схеми) за допомогою мови з таким ступенем деталізації якого достатньо для виконання деталізованої специфікації деяким виконавцем, зазвичай комп’ютером.

Процес розв’язування задачі не піддається формалізації тому для його реалізації не можна дати вичерпної методики. Проте варто зазначити, що сутність специфікування полягає у вивченні розв’язання задачі, сформульованого у вигляді вихідної специфікації, та встановлення відповідності між тими частинами розв’язування, які відповідають перетворенням і перетворювальними діями, а також між тими частинами розв’язання, які відповідають поєднанню, чергуванню та повторенню, і відповідними управляючими діями. Установлені відповідності фіксуються у формі специфікації за допомогою мови.

Загалом розглядуваний процес проектування характеризується такими особливостями:

  • деталізація відбувається лише за допомогою зазначених дій і спрямована „згори-вниз”, від загального до окремого;

  • деталізація частин специфікації має приводити до розв’язування задачі;

  • на будь-якому кроці деталізації, якщо вона виконується правильно, вибір порядку деталізації (деталізовіваної дії) неістотний.

У процесі деталізації доти, доки не досягнуто деякого рівня (його досягнення слід відсувати якомога далі, до кінця проектування), не має значення:

  • вибір конкретного варіанта чергування – важливо лише, щоб його можна було вибрати правильно;

  • кількість повторень для ітерації – важливо лише, щоб ця кількість була правильною.

Деталізація має вести до отримання специфікації, якомога ближчої до програми. Процес деталізації слід якомога частіше супроводжувати перевіркою прийманих рішень (наприклад, за допомогою тестування).

3.2. Мови специфікації

Для записування специфікацій можуть використовуватись різні мови. Ми рекомендуємо використовувати:

  • підмножини природної мови, які називають псевдокодами;

  • графічні форми, які називаються блок-схемами.

3.2.1. Псевдокод

У псевдокоді для подання дій використовуються слова (дієслова), змішані зі словами природної мови. Зазвичай для подання дій у псевдокодах використовуються такі слова:

  • ПРИСВОЇТИ, УСТАНОВИТИ, ОБЧИСЛИТИ, УВЕСТИ і т.д. – для перетворювальних дій;

  • ЯКЩО-ТО-ІНАКШЕ, ЯКЩО–ТО – для управляючої дії чергування;

  • ПОВТОРЮВАТИ – для управляючої дії повторення.

Управляюча дія поєднання не має спеціального слова і подається низкою речень, що йдуть одне за одним і описують відповідні дії.

Зазвичай специфікація у псевдокоді записується між словами ПОЧАТОК і КІНЕЦЬ. Слова, що описують дію, деталізовувану на наступному кроці, на даному кроці підкреслюються.

Наведемо приклад специфікації записаної за допомогою псевдокоду.

Задано два значення А та В. Поміняти місцями А та В.

1. Визначимо основні дії:

початок

обмін А з В

кінець

2. Деталізуємо дію обміну:

початок

зберегти значення А

помістити значення B в А

відновити значення А в В

кінець

3. Деталізуємо дію обміну:

початок

Temp := A

A:= B

B:= Temp

Кінець,

де Temp, не позначення місця де тимчасово зберігається значення А.