- •Вихідна інформація
- •Зразки документів, облік яких автоматизується
- •Постановка задачі
- •Цілі і призначення системи
- •Функції системи
- •Спеціальний розділ Розробка внутрішніх структур даних
- •Проектування структури програми і взаємодії модулів
- •Специфікація підзадач і способів їх взаємодії
- •Узагальнений алгоритм логічної структури програми
- •Опис засобів програмування
- •Структурне програмування
- •Інструментальне середовище програмування
Проектування структури програми і взаємодії модулів
Специфікація підзадач і способів їх взаємодії
Узагальнений алгоритм логічної структури програми При розробці великих проектів, з програмою дуже незручно працювати, коли увесь її початковий код знаходиться в одному файлі. Тому, для зручності, має сенс розбити увесь проект на декілька файлів з початковим кодом, які називаються модулями. Тим самим полегшується завдання наступного аналізу такого коду і внесення до нього змін. Якщо зміни будуть внесені тільки до одного модуля, то потрібно буде перекомпілювати тільки його, і потім виконати повторну зборку усієї програми компонувальником. В цілому, можна сказати, що перекомпонування об'єктних модулів програми виконується набагато швидше, ніж компіляція великого початкового файлу.
При створенні багатомодульної програми, зазвичай, виконують декілька стандартних дій, описаних нижче :
Створюють основний початковий модуль проекту. В нього поміщають процедуру початкового запуску та ряд інших допоміжних процедур.
Для кожної великої процедури проекту створюють окремий модуль. При використанні невеликих процедур має сенс зібрати їх в одному модулі.
В окремому модулі необхідно описати за допомогою директив препроцесора прототипи усіх функцій.
Визначимо модульний склад нашої програми.
Розподіл функцій між модулями зробимо за таким принципом:
Перший модуль складатиме головна функція. Це відповідає деяким загальноприйнятими підходами до конструювання програм: в такому модулі розміщується програма-монітор, яка управляє порядком виконання функціями програмного продукту.
у другому модулі визначимо ті функції, які забезпечують виконання основних пунктів програми при роботі з базою даних (додавання нових рядків в таблицю; видалення рядка із заданим номером з таблиці; і тому подібне).
У третьому модулі - допоміжні функції (введення номера елементу; перевірку правильності номера елементу; висновок на екран одній або декілька рядків таблиці; висновок на екран лінії, яка підкреслює таблицю, вивід на екран заголовка таблиці).
у заголовному файлі визначимо прототипи функцій і деякі іменовані константи. Це визвано тим, що функції розташовані в різних модулях. Для того, щоб можна було б викликати функцію до того, як вона буде формально визначена, необхідно задати для кожної з них прототипи. Для зручності використання, створимо заголовний файл користувача (h - файли), в якого помістимо опис усіх функцій, які в цьому модулі визначені. Можна сказати, що заголовний файл містить інтерфейс для деякого набору функцій, а початковий файл з розширенням містить реалізацію цього набору.
Опис модулів програми.
Проектування програмної системи вимагає декілька рівнів детальності (рис. 2-1).
Рисунок 2-1. Модульний склад програми.
Модуль 1. Програма - монітор.
У цей модуль входить тільки одна функція – управляюча програма.
На екран необхідно вивести меню - перерахування можливих дій. Для зручності оператора кожній дії можна призначити числовий код. Залежно від вибраного коду викликаються ті або інші функції.
Також необхідно забезпечити вихід з програми. Крім того, необхідно забезпечити обробку помилкових ситуацій: введення оператором якогось непередбаченого коду. В цьому випадку необхідно вивести повідомлення про помилковий код і перейти на наступну ітерацію циклу.
Обробка помилок - одна з найскладніших проблем сучасної інформатики, і до неї не можна відноситися зі зневагою.
Модуль 2. Підсистема доступу до бази даних.
У цьому модулі розташовані функції, які вирішують наступні завдання:
Додавання в базу даних нового запису.
Видалення з бази даних запису із заданим номером.
Сортування записів бази даних по заданому полю.
Запис даних у файл (оновлення файлу бази даних).
Зчитування даних з файлу.
Модуль 3. Підсистема інтерфейсу користувача .
У цьому модулі розташовані функції, які здійснюють уведення-виведення і інші допоміжні дії:
виведення на екран записів бази даних, починаючи з деякого початкового значення до деякого кінцевого значення .
введення з клавіатури номера запису.
виведення на екран заголовка таблиці.
