Автор работы: Пользователь скрыл имя, 03 Марта 2013 в 11:56, курсовая работа
Цель курсовой работы - выработать умение выбирать рациональные структуры данных и языковых конструкций, обеспечивающих построение эффективных алгоритмов программ обработки данных применительно к задачам со сложной организацией данных, т.е. задач невычислительного характера, где сложность данных превышает сложность алгоритмов их обработки.
ВВЕДЕНИЕ 4
1. СОДЕРЖАТЕЛЬНАЯ ПОСТАНОВКА ЗАДАЧИ 5
1.1. Характеристика задачи 5
1.2. Входные данные 5
1.3. Выходные данные 5
2. ФОРМАЛИЗОВАННАЯ ПОСТАНОВКА ЗАДАЧИ 6
2.1. Разработка модели предметной области (МПО) 6
2.1.1. Определение объектов 6
2.1.2. Анализ процессов (запросов к информационной базе) 8
2.1.3. Установление функциональных связей и задание их характеристик 8
2.1.4. Установление структурных связей и задание их характеристик 11
2.2. Оптимизация и проверка корректности инфологической схемы МПО 13
3. АБСТРАКТНЫЙ АНАЛИЗ И СИНТЕЗ МПО ЗАДАЧИ 15
3.1. Представление МПО при помощи абстрактных структур данных (АСД) 15
3.2. Предварительное преобразование структуры данных 15
3.3. Декомпозиция структуры данных на более простые АСД 16
4. РАЗРАБОТКА ВНЕШНИХ СПЕЦИФИКАЦИЙ ПРОГРАММЫ 18
4.1. Разработка представления данных при помощи логических структур данных (ЛСД) 18
4.2. Интерфейс программы. Разработка макетов ввода/вывода 20
4.3. Разработка функций программы 21
4.4. Разработка функций программы по обработке ошибок 21
5. РАЗРАБОТКА ВНУТРЕННИХ СПЕЦИФИКАЦИЙ ПРОГРАММЫ 22
5.1. Разработка структуры программы 22
5.2. Разработка представления данных на уровне модели памяти 23
6. ОПИСАНИЕ ПРОГРАММЫ TOURISTAGENCY 24
6.1. Вводная часть 24
6.2. Функциональное назначение 24
6 . Описание информации 2
6.4. Описание логики программы 25
7. ОПИСАНИЕ ПОДПРОГРАММЫ TFORM1.FORMCREATE 26
8. ОПИСАНИЕ ПОДПРОГРАММЫ TFORM1.BUTTON10CLICK 27
9. ОПИСАНИЕ ПОДПРОГРАММЫ ZAPR1 28
10. ОПИСАНИЕ ПОДПРОГРАММЫ ZAPR2 29
11. ОПИСАНИЕ ПОДПРОГРАММЫ ZAPR3 30
12. ОПИСАНИЕ ПОДПРОГРАММЫ ZAPR4 31
13. ОПИСАНИЕ ПОДПРОГРАММЫ ZAPR5 32
14. ОПИСАНИЕ ПОДПРОГРАММЫ ZAPR6 33
15. ОПИСАНИЕ ПОДПРОГРАММЫ ZAPR7 34
16. ОПИСАНИЕ ПОДПРОГРАММЫ ZAPR8 35
17. ТЕСТИРОВАНИЕ ПРОГРАММЫ 36
17.1. Разработка плана тестирования и набора тестов 36
17.2. Результаты тестирования 37
ЗАКЛЮЧЕНИЕ 42
Список литературы 43
Приложение 1 ТЕКСТ ПРОГРАММЫ TOURISTAGENCY 44
Приложение 2 СОДЕРЖИМОЕ ВХОДНЫХ ФАЙЛОВ 53
Приложение 3 РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ 55
Приложение 4 РУКОВОДСТВО ПРОГРАММИСТА 57
В результате анализа процессов обработки информации выделен следующий перечень запросов:
1) для данного ГОРОДА(п) выдать список ПРОИЗВОДИТЕЛЕЙ, поставляющих товар на данную ОПТОВУЮ БАЗУ данного ГОРОДА(б) и продающихся в данном МАГАЗИНЕ;
2) для данного ПРОИЗВОДИТЕЛЯ выдать список ПОСТАВЩИКОВ совершающих поставки из данного ГОРОДА(п) в данный ГОРОД(б);
3) выдать список МАГАЗИНОВ, снабжаемых данной ОПТОВОЙ БАЗОЙ, получающей товар от данного ПРОИЗВОДИТЕЛЯ;
4) выдать список ОПТОВЫХ БАЗ в ГОРОДЕ(б);
5) выдать список ПОСТАВЩИКОВ совершающих поставки из данного ГОРОДА(п);
6) для данной ОПТОВОЙ БАЗЫ выдать список снабжаемых МАГАЗИНОВ;
7) для данного ГОРОДА(п) выдать список ПРОИЗВОДИТЕЛЕЙ;
8) выдать список ПОСТАВЩИКОВ поставляющих товар из данного ГОРОДА(п) на данную ОПТОВУЮ БАЗУ .
Выделим функциональные связи (ФС) по каждому из запросов (см. п. 2.1.2.):
Таблица 2.11
Перечень функциональных связей
Номер ФС |
Исходные объекты |
Конечные объекты |
Тип со- ответствия |
Параметры выборки |
Частота |
Огр. на время |
Огр. на право |
1.1 |
МАГАЗИН |
ОПТОВАЯ БАЗА |
М:1 |
Исходный: К(Название) |
- |
- |
- |
1.2 |
ОПТОВАЯ БАЗА |
ПРОИЗВОДИТЕЛЬ |
М:М |
Конечный: М |
- |
- |
- |
1.3 |
ПРОИЗВОДИТЕЛЬ |
ГОРОД |
М:1 |
- |
- |
- |
- |
2.1 |
ГОРОД |
ПРОИЗВОДИТЕЛЬ |
1:М |
Исходный: К(Название) Конечный: М |
- |
- |
- |
2.2 |
ПРОИЗВОДИТЕЛЬ |
ПОСТАВЩИК |
М:М |
Конечный: М |
- |
- |
- |
2.3 |
ПОСТАВЩИК |
ГОРОД(б) |
М:1 |
- |
- |
- |
- |
3.1 |
ПРОИЗВОДИТЕЛЬ |
ОПТОВАЯ БАЗА |
М:М |
Исходный: К(Название) Конечный: М |
- |
- |
- |
3.2 |
ОПТОВАЯ БАЗА |
МАГАЗИН |
1:М |
- |
- |
- |
- |
4.1 |
ГОРОД(б) |
ОПТОВАЯ БАЗА |
1:М |
Исходный: К(Название) Конечный: М |
- |
- |
- |
5.1 |
ГОРОД |
ПОСТАВЩИК |
1:М |
Исходный: К(Название) Конечный: М |
- |
- |
- |
5.2 |
ПОСТАВЩИК |
ОПТОВАЯ БАЗА |
М:1 |
Исходный: К(Название) |
- |
- |
- |
На основе перечня ФС (см. табл.2.8) построим структурные связи (CC). Для этого будем последовательно анализировать ФС из перечня.
Анализируем ФС 1.1
Функциональная связь имеет тип соответствия: Т(М:1), По правилу 2 устанавливается СС S1.1 со значением характеристики С1=ПВ. Объект ОПТОВАЯ БАЗА – владелец
Анализируем ФС 1.2.
Функциональная связь имеет тип соответствия: Т(М:М). по правилу 3 устанавливается СС S1.2 со значением характеристики С1=ВП и С6=ОБ (обязательный).Объявляется новый объект, который назовём объектом-связкой ОС1. Объект ОПТОВАЯ БАЗА и ПРОИЗВОДИТЕЛЬ– владельцы ОС1.
Анализируем ФС 1.3.
Функциональная связь имеет тип соответствия: Т(М:1). По правилу 2 устанавливается СС S1.1 со значением характеристики С1=ПВ. Объект ГОРОД – владелец
Анализируем ФС 2.1.
Функциональная связь имеет тип соответствия: Т(1:М). Объект ГОРОД объявляется владельцем СС. К ней применимо преобразование 1. Отображение этой ФС корректирует значение С1 для ранее установленной СС S1.3. Теперь для S1.3 С1=ВПВ.
Анализируем ФС 2.2.
Функциональная связь имеет тип соответствия: Т(М:М), по правилу 3 устанавливается СС S2.2 со значением характеристики С1=ВП и С6=ОБ (обязательный).Объявляется новый объект, который назовём объектом-связкой ОС2. Объект ПРОИЗВОДИТЕЛЬ и ПОСТАВЩИК– владельцы ОС1.
Анализируем ФС 2.3.
Функциональная связь имеет тип соответствия: Т(М:1), по правилу 2 устанавливается СС S2.3 со значением характеристики С1=ПВ. Объект ГОРОД(б) – владелец.
Анализируем ФС 3.1.
Функциональная связь имеет тип соответствия: Т(М:М), по правилу 3 устанавливается СС S3.1 со значением характеристики С1=ВП и С6=ОБ (обязательный). Объект ПРОИЗВОДИТЕЛЬ и ПОСТАВЩИК– владельцы ОС1.
Анализируем ФС 3.2.
Функциональная связь имеет тип соответствия: Т(1:М). Объект ОПТОВАЯ БАЗА объявляется владельцем СС. К ней применимо преобразование 1. Отображение этой ФС корректирует значение С1 для ранее установленной СС S1.1. Теперь для S1.1 С1=ВПВ.
Анализируем ФС 4.1.
Функциональная связь имеет тип соответствия: Т(1:М), по правилу 1 устанавливается СС S4.1 со значением характеристики С1=ВП. Объект ГОРОД(б) объявляется владельцем СС.
Анализируем ФС 5.1.
Функциональная связь имеет тип соответствия: Т(1:М), по правилу 1 устанавливается СС S5.1 со значением характеристики С1=ВП. Объект ГОРОД объявляется владельцем СС.
Анализируем ФС 5.2.
Функциональная связь имеет тип соответствия: Т(М:1), по правилу 2 устанавливается СС S5.2 со значением характеристики С1=ПВ. Объект ОПТОВАЯ БАЗА – владелец.
Опишем характеристики объектов (табл. 2.9), значение характеристик приведены в табл.2.10.
Схема структурных связей
Рис.2.1
О.С.1 – путёвка, выданная турагентством (ПУТЁВКА).
О.С.2 – ведомость авиарейсов производителя (ВЕДОМОСТЬ).
Таблица 2.12
Описание объекта ПУТЁВКА
Имя атрибута |
А1 |
А2 |
А3 |
А4 |
А5 |
А6 |
А7 |
Роль атрибута |
Номер |
9(4) |
100 |
- |
- |
- |
Да |
Нет |
Номер путёвки |
Курорт |
А(15) |
100 |
- |
- |
- |
Да |
Да |
Место назначения путёвки |
Турагентство |
А(20) |
100 |
- |
- |
- |
Да |
Да |
Турагентство, выдавшее путёвку |
Таблица 2.13
Описание объекта ВЕДОМОСТЬ
Имя атрибута |
А1 |
А2 |
А3 |
А4 |
А5 |
А6 |
А7 |
Роль атрибута |
Номер |
Х(6) |
100 |
- |
- |
- |
Да |
Нет |
Номер ведомости |
Номер поставщика |
9(3) |
100 |
- |
- |
- |
Да |
Да |
Номер поставщика |
Турагентство |
А(20) |
100 |
- |
- |
- |
Да |
Да |
Турагентство, выдавшее путёвку |
Таблица 2.14
Имя объекта |
B1 |
B2 |
B3 |
B4 |
B5 |
B6 |
ПУТЁВКА |
К(НОМЕР) |
- |
- |
- |
- |
- |
ВЕДОМОСТЬ |
К(НОМЕР) |
- |
- |
- |
- |
- |
Произведем некоторые
- обозначим СС S1.1 как S1;
- объединяем объекты ПРОИЗВОДИТЕ
- объединим СС S1.2 и S3.1, обозначив СС как S2;
- обозначим СС S1.3 как S3;
- обозначим СС S5.1 как S4;
- устраним избыточную СС S5.2 потому, что результаты обхода S5.2 и по цепочке S4, S3, S2 совпадают для любого экземпляра объекта ПОСТАВЩИК;
- обозначим СС S2.3 как S5;
- обозначим СС S4.1 как S6.
После преобразований схема МПО примет вид, показанный на рис. 2.2.
Оптимизированная схема МПО
Рис. 2.2
Опишем характеристики установленных СС (см. табл. 2.15). Значение характеристик приведено в табл. 2.10.
Таблица 2.15
Характеристики структурных связей
Код характеристики |
Название характеристики |
С1 |
Направление движения по СС |
С2 |
Способ упорядочения экземпляров подчиненного объекта |
С3 |
Ограничения на право движения по СС |
С4 |
Частота использования |
С5 |
Количество экземпляров |
С6 |
Класс членства подчиненного объекта |
С7 |
Перемещаемость экземпляров |
С8 |
Ограничения на время движения по СС |
Таблица 2.16
Структурные связи
Название |
С1 |
С2 |
С3 |
С4 |
С5 |
С6 |
С7 |
С8 |
S1 |
ВПВ |
- |
- |
- |
ПЕР |
ОБ |
- |
- |
S2 |
ВПВ |
- |
- |
- |
ПЕР |
ОБ |
- |
- |
S3 |
ВПВ |
- |
- |
- |
ПЕР |
ОБ |
- |
- |
S4 |
ВП |
- |
- |
- |
ПЕР |
ОБ |
- |
- |
S5 |
ПВ |
- |
- |
- |
ПЕР |
ОБ |
- |
- |
S6 |
ВП |
- |
- |
- |
ПЕР |
ОБ |
- |
- |