Автор работы: Пользователь скрыл имя, 26 Мая 2011 в 06:26, дипломная работа
Целью данного дипломного проекта являлось создание базы данных по анкетам детей, оставшихся без попечения родителей для ОГОУ “Центра психолого-медико-социального сопровождения”.
Реализация данной задачи проводится в системе программирования Delphi7.0, располагающей широкими возможностями по созданию приложений баз данных, необходимым набором драйверов для доступа к самым известным форматам баз данных, удобными и развитыми средствами для доступа к информации, расположенной как на локальном диске, так и на удаленном сервере, а также большим коллекцией визуальных компонент для построения отображаемых на экране окон, что необходимо для создания удобного интерфейса между пользователем и исполняемым кодом.
Введение 5
Глава 1. Описание предметной области объекта автоматизации 7
1.1. Постановка задачи 7
1.2. Описание предметной области задачи 9
1.2.1. История ОГОУ ЦПМСС 9
1.2.2. Направление деятельности ОГОУ ЦПМСС 9
1.2.3. Структура ОГОУ ЦПМСС 10
1.2.4. Описание компьютерной сети 12
1.2.5. Декомпозиция бизнес-процессов 13
1.2.6. Построение объектной модели задачи 19
Глава 2. Проектирование базы данных и реализация приложения 24
2.1. Программные средства, используемые при реализации проекта 24
2.2. Базы данных 26
2.2.1. Классификация баз данных 28
2.2.2. Структурные элементы баз данных 29
2.3. Проектирование базы данных 30
2.3.1. Проектирование инфологической модели 31
2.3.2. Проектирование логической и физической модели 34
2.4. Описание серверной части клиент-серверного приложения 37
2.5. Описание клиентской части 38
клиент-серверного приложения 38
2.6. Проектирование тестов и тестирование 40
Глава 3. Организационно-экономическая часть 46
3.1. Оценка затрат на разработку АС 46
3.1.1. Материальные затраты 48
3.1.2. Затраты на оплату труда 48
3.1.3. Дополнительная заработная плата 49
3.1.4. Страховые взносы 49
3.1.5. Затраты на электроэнергию 50
3.1.6. Затраты на содержание и эксплуатацию оборудования 50
3.1.7. Амортизационные отчисления 51
3.1.8. Накладные расходы 51
3.1.9. Cводная таблица затрат на разработку и внедрение проекта 52
3.2. Оценка эффекта от внедрения АС 53
Заключение 55
Список литературы 57
Приложения 58
Под тестированием понимается процесс выполнения программы (или части программы) с намерением (или целью) найти ошибки.
Одним из способов изучения поставленного вопроса является исследование метода тестирования:
Метод «черного ящика», тестирование с управлением по данным или тестирование с управлением по входу – выходу. При использовании этой стратегии программа рассматривается как «черный ящик». Иными словами, такое тестирование имеет целью выяснение обстоятельств, в которых поведение программы не соответствует спецификации. Тестовые же данные используются только в соответствии со спецификацией программы (т. е. без учета знаний о ее внутренней структуре). При таком подходе обнаружение всех ошибок в программе является критерием исчерпывающего входного тестирования. Последнее может быть достигнуто, если в качестве тестовых наборов использовать все возможные наборы входных данных. Если такое испытание представляется сложным, то еще сложнее создать исчерпывающий тест для большой программы. Построение исчерпывающего входного теста невозможно. Это подтверждается двумя аргументами: во-первых, нельзя создать тест, гарантирующий наличие ошибок; во-вторых, разработка таких тестов противоречит экономическим требованиям. Поскольку исчерпывающее тестирование исключается, целью тестирующего должна стать максимизация числа ошибок, обнаруживаемых одним тестом. Для этого можно рассматривать внутреннюю структуру программы и делать достоверные предположения.
Другим способом тестирования является метод «белого ящика», управляемого логикой программы. Данный способ позволяет исследовать внутреннюю структуру программы. В этом случае тестирующий получает тестовые данные путем анализа логики программы (к сожалению, здесь часто не используется спецификация программы). Сравним способ построения тестов при данном методе с исчерпывающим входным тестированием стратегии «черного ящика». Не знающему может показаться, что достаточно построить такой набор тестов, в котором каждый оператор выполняется хотя бы один раз, но это предположение ошибочно. Не вдаваясь в детали, укажем лишь, что исчерпывающему входному тестированию может быть поставлено в соответствие исчерпывающее тестирование маршрутов. Подразумевается, что программа проверена полностью, если с помощью тестов удается осуществить выполнение программы по всем возможным маршрутам ее потока передач управления.
Последнее утверждение имеет два слабых пункта. Первый из них состоит в том, что число не повторяющих друг друга маршрутов в программе очень велико. Второй слабый пункт утверждения заключается в том, что, хотя исчерпывающее тестирование маршрутов является полным тестом, и хотя каждый маршрут программы может быть проверен, сама программа будет содержать ошибки. Это объясняется следующим образом:
Во-первых, исчерпывающее тестирование маршрутов не может дать гарантии того, что программа соответствует описанию. Например, вместо требуемой программы сортировки по возрастанию случайно была написана сортировка по убыванию. В этом случае ценность тестирования маршрутов невелика, поскольку после тестирования в программе окажется одна ошибка, т. е. программа неверна.
Во-вторых, программа
может быть неверной в силу того,
что пропущены некоторые
В-третьих, исчерпывающее тестирование маршрутов не может обнаружить ошибок, появление которых зависит от обрабатываемых данных.
Кроме
вышеперечисленных методов
Монолитный метод – каждый модуль тестируется отдельно, а затем их комбинируют и формируют рабочую программу.
Метод пошагового тестирования – модули тестируются не отдельно друг от друга, а подключаются поочередно для выполнения теста к набору уже ранее оттестированных модулей. Пошаговый процесс продолжается до тех пор, пока к набору оттестированных модулей не будет подключен последний модуль.
Монолитный метод и метод пошагового тестирования являются подходами к комбинированию модулей. Рассмотрим особенности этих методов:
По
вышеперечисленным пунктам
Далее
исследуем две возможные
При «восходящем тестировании» программа собирается и тестируется «снизу - вверх».
Только модули самого нижнего уровня тестируются изолированно, автономно.
Затем тестируются модули более высокого уровня вместе с уже проверенными модулями более низкого уровня. Процесс продолжается до тех пор, пока не буде достигнута вершина.
«Нисходящий метод» имеет как достоинства, так и недостатки по сравнению с «восходящим». Самое значительное достоинство – то, что этот метод совмещает тестирование модуля, тестирование сопряжений и частично тестирование внешних функций. С этим же связано и другое его достоинство: когда модули ввода-вывода уже подключены, тесты можно готовить в удобном виде. Нисходящий подход выгоден также в том случае, когда есть сомнения осуществимости программы в целом или когда в проекте программы могут оказаться серьезные дефекты. Преимуществом нисходящего подхода очень часто считают отсутствие необходимости в драйверах; вместо драйверов просто следует написать «заглушки». Нисходящий метод тестирования имеет некоторые недостатки. Основным из них является то, что модуль редко тестируется досконально сразу после его подключения. Второй недостаток состоит в том, что данный подход может породить веру в возможность начать программирование и тестирование верхнего уровня программы до того, как вся программа будет полностью спроектирована. При использовании метода «большого скачка» каждый модуль тестируется автономно. По окончании тестирования модулей они интегрируются в систему все сразу (имеет много недостатков).
Тестирование методом «сандвича» представляет собой компромисс между восходящим и нисходящим тестированием. Тестирование начинается одновременно сверху и снизу. Точка встречи зависит от конкретной тестируемой программы и должна быть заранее определена при изучении ее структуры.
В данном дипломном проекте приводится тестирование системы по методу «черного» и «белого ящика».
Тестированию подверглись все хранимые процедуры через соответствующие функции клиентского приложения (некорректный ввод, повторяющиеся поля и др.). Также проведена проверка правильности формирования всех выходных документов. Особой проверке подлежал контроль за доступностью некоторых пунктов меню и операций над данными, хранящимися в таблицах.
Тестирование на доступность пунктов меню:
1) администратору доступны все пункты меню, включая таблицу пользователей;
2) сотрудник, заполняющий БД может вводить данные из анкет детей, доступно изменение «Справочников», «Анкет», получение выходных документов. Так же доступна постановка и снятие анкеты с учета;
3) сотрудникам ОГОУ «ЦПМСС» доступно получение выходных документов, поиск анкет в БД, просмотр анкет.
Тестирование на ввод записей, уже имеющейся в таблице БД
Если в таблицу вводится запись, в которой поля повторяются с уже имеющимися (например, вводится в таблице «Гражданство» одно и то же наименование), то выдается сообщение об ошибке.
Тестирование на правильность выходных документов
Данные всех выходных документов должны соответствовать действительности. По результатам тестирования можно сказать, что они совпали с ожидаемыми.
Проведенное
тестирование показывает, что разработанная
система соответствует тем
Оценка затрат на разработку АС предполагает выполнение следующих шагов:
В определении ресурсов наиболее сложным является определение затрат труда. Общей практикой оценки трудозатрат является экспертные оценки исполнителей с выделением резервов от 30 до 50%.
В стоимость программного продукта включаются все затраты, связанные с выполнением работы, независимо от источников финансирования:
Основные виды работ, выполнение которых необходимо для разработки данного программного продукта (см. таблица 1).
График Ганнта для планирования работ (см. приложение 8).
Таблица 1.
Календарный график
Содержание этапа | Квалификация исполнителя | Кол-во исполнителей | Длит-сть
работы
(в днях) |
Трудо-сть этапа (чел./днях) | Используемое оборудование и ПО | Машинное время |
1. Изучение литературы | Информатик-экономист | 1 | 12 | 12 | 15 | |
2. Декомпозиция бизнес-процессов | Информатик-экономист | 1 | 4 | 4 | BPWin 7.1, Windows XP | 10 |
3. Построение объектной модели задачи | Информатик-экономист | 1 | 8 | 8 | Rational Rose 2000, Windows XP | 16 |
4. Проектирование концептуальной модели | Информатик-экономист | 1 | 3 | 3 | MS Word, Windows XP | 8 |
5. Выбор средств программирования и установка ПО | Информатик-экономист | 1 | 1 | 1 | Windows XP | 3 |
6.
Создание логической модели |
Информатик-экономист | 1 | 2 | 2 | ERWin 4.1, Windows XP | 5 |
7.
Создание физической модели |
Информатик-экономист | 1 | 1 | 1 | ERWin4.1, Windows XP | 3 |
8. Создание серверной части приложения | Информатик-экономист | 1 | 11 | 11 | IBExpert, InterBase 6.5, Windows XP | 36 |
9. Разработка клиентской части приложения | Информатик-экономист | 1 | 15 | 15 | Delphi 7.0, Windows XP professional | 60 |
10.
Описание форм и выходных |
Информатик-экономист | 1 | 1 | 1 | Delphi 7.0, MS Word, Windows XP | 2 |
11.
Проведение тестов и их |
Информатик-экономист | 1 | 7 | 7 | Delphi 7.0, MS Word, Windows XP | 24 |
12. Расчет экономической части | Информатик-экономист | 1 | 3 | 3 | MS Excel, MS Word, MS Visio, Windows XP | 6 |
13. Оформление дипломного проекта | Информатик-экономист | 1 | 14 | 14 | MS Word, Windows XP | 26 |
Итого: | 82 | 82 | 214 |