Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Диплом.docx
Скачиваний:
35
Добавлен:
22.03.2016
Размер:
1.07 Mб
Скачать

Министерство образования и науки Российской Федерации

Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования

Ивановский государственный химико-технологический университет

Кафедра информационных технологий

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА

К ДИПЛОМНОМУ ПРОЕКТУ НА ТЕМУ:

Студент:

___________________

Станкова Н.М.

(подпись)

Руководитель:

__________________________

Ястребцев О.Н.

(подпись)

Консультант:

(подпись)

(Фамилия И.О.)

Зав.кафедрой:

Бобков С.П.

(подпись)

Иваново 2014

Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования

ИВАНОВСКИЙ ГОСУДАРСТВЕННЫЙ ХИМИКО-ТЕХНОЛОГИЧЕСКИЙ УНИВЕРСИТЕТ

Факультет

ХТиК

Кафедра

ИТ

Направление

230200 Информационные системы

УТВЕРЖДАЮ:

Зав. кафедрой _____________

«_____» ____________ 2014 г.

З А Д А Н И Е

на квалификационную работу студента

Станковой Натальи Михайловны

Курс

5

группа

42

1. Тема проекта (работы)

утверждена приказом по университету от «

»

2014 г. №

2. Срок сдачи студентом законченного проекта (работы)

3. Исходные данные к проекту (работе)

Сведения о деятельности складского хозяйства предприятия производящего керамогранит

Требования и пожелания сотрудников предприятия

Руководство по использованию системы ELMA

4. Содержание расчетно-пояснительной записки (перечень подлежащих разработке вопросов)

Содержание расчетно-пояснительной записки должно соответствовать требованиям

Методического указания «Требования к содержанию квалификационных работ» для

студентов по направлению 230200 «Информационные системы»

5. Перечень графического материала (с точным указанием обязательных чертежей)

Модель рабочих процессов до автоматизации и после автоматизации

Модель использования системы

Структурная модель решения

Функциональная модель системы

6. Консультанты по проекту (работе, с указанием относящихся к ним разделов проекта)

Раздел

Консультант

Подпись, дата

Задание выдал

Задание принял

7. Дата выдачи задания

03.02.2014

Руководитель

подпись

Задание принял к исполнению

подпись

Календарный план

№ п/п

Наименование этапов дипломного проекта (работы)

Срок выполнения этапов проекта

(работы)

1.

Выбор темы проекта. Выработка целей и задач проекта. Определение основных результатов проекта

10.02.2014

2.

Формирование требований к системе. Разработка концепции системы.

20.02.2014

3.

Разработка технического задания

10.03.2014

4.

Проектирование архитектуры решения.

10.04.2014

5.

Разработка алгоритмов. Проектирование пользовательского графического интерфейса.

01.05.2014

6.

Разработка структуры программных классов.

10.05.2014

7.

Завершение разработки проекта. Тестирование и приемосдаточные испытания решения. Оформление работы. Разработка демонстрационных материалов

26.06.2014

8.

Предзащита проекта

По приказу

9.

Защита проекта

По приказу

Студент

Руководитель проекта

РЕФЕРАТ

Пояснительная записка 48 с., 24 рис., 9 табл., 5 частей, 11 источников.

Перечень ключевых слов: автоматизированная проходная, ранний уход, опоздание, фонд рабочего времени.

Целью работы являлась разработка ИС, предоставляющая отделу кадров предприятия данных о фонде рабочего времени (за счет которого будет рассчитываться заработная плата сотрудников), а также об опозданиях или ранних уходах сотрудников (за счет которых должен повыситься уровень трудовой дисциплины предприятия).

Процесс разработки описан с помощью методологии UML объектно-ориентированного подхода.

В качестве исходных материалов были использованы данные с предприятия с измененными именами сотрудников.

Приложение реализовано в среде программирования Microsoft Visual Studio 2010 на языке C#, база данных – с помощью СУБД Microsoft SQL Server 2008R2.

Содержание

1.1Обследование объекта автоматизации 14

1.2Формирование требований пользователя к ИС 15

3.1 Общие положения 18

3.1.1 Полное наименование системы и ее условное обозначение 18

3.1.2 Наименование организации заказчика и участников работ 18

3.1.3 Перечень документов, на основании которых создается система 18

3.1.4 Плановые сроки начала и окончания работы по созданию системы 18

3.1.5 Источники и порядок финансирования работ 19

3.1.6 Порядок оформления и предъявления заказчику результатов работ по созданию системы 19

3.2 Назначение и цели создания системы 19

3.2.1 Назначение системы 19

3.2.2 Цели системы 20

3.3 Характеристика объекта автоматизации 21

3.4 Требования к системе 22

3.4.1 Требования к системе в целом 22

3.5 Состав и содержание работ по созданию системы 34

3.6 Порядок контроля и приемки системы 35

ТЕХНИЧЕСКИЙ ПРОЕКТ 36

1.3Общесистемные решения 36

1.3.1Схема функциональной структуры 36

1.3.2Описание автоматизируемых функций 37

1.3.3Программа и методика испытаний 41

1.4Решения по организационному обеспечению 47

1.4.1Схема организационной структуры 47

1.4.2Организация информационного обеспечения 48

1.4.3Организация сбора и передачи информации 49

1.4.4Описание организационной структуры 49

1.5Решения по техническому обеспечению 49

1.6Решения по информационному обеспечению 49

1.6.1Описание информационного обеспечения системы 49

1.6.2Описание организации информационной базы 50

1.7Решения по программному обеспечению 53

1.7.1Структура программного обеспечения 53

1.7.2Методы и средства разработки программного обеспечения 54

1.7.3Операционная система 54

1.8Решения по математическому обеспечению 54

РАБОЧИЙ ПРОЕКТ 55

1.9Руководство администратора 55

1.9.1Назначение и условия применения 55

1.9.2Подготовка к работе 55

1.9.3Авторизация 56

1.9.4Интеграция файла с данными в базу данных системы 57

1.10Руководство пользователя 58

1.10.1Назначение и условия применения 58

1.10.2Подготовка к работе 59

1.10.3Авторизация 60

1.10.4Просмотр данных 60

1.10.5Создание отчета 61

ЗАКЛЮЧЕНИЕ 64

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 65

ПРИЛОЖЕНИЕ А 66

ОПРЕДЕЛЕНИЯ

В настоящем отчете применяют следующие термины с соответствующими определениями:

Отказоустойчивость — это свойство технической системы сохранять свою работоспособность после отказа одного или нескольких составных компонентов. Отказоустойчивость определяется количеством любых последовательных единичных отказов компонентов, после которого сохраняется работоспособность системы в целом. Базовый уровень отказоустойчивости подразумевает защиту от отказа одного любого элемента - исключение единой точки отказа.[6]

Профилирование — сбор характеристик работы программы, таких как время выполнения отдельных фрагментов (обычно подпрограмм), число верно предсказанных условных переходов, число кэш промахов и т. д. [4]

Репликация (англ. replication) — механизм синхронизации содержимого нескольких копий объекта (например, содержимого базы данных). Репликация — это процесс, под которым понимается копирование данных из одного источника на другой (или на множество других) и наоборот.[5]

Тести́рование програ́ммного обеспе́че́ния — процесс исследования, испытания программного продукта, имеющий две различные цели:

  • продемонстрировать разработчикам и заказчикам, что программа соответствует требованиям;

  • выявить ситуации, в которых поведение программы является неправильным, нежелательным или не соответствующим спецификации[9].

Тестовый случай (Test Case) - это артефакт, описывающий совокупность шагов, конкретных условий и параметров, необходимых для проверки реализации тестируемой функции или её части[10].

План Тестирования (Test Plan) - это документ, описывающий весь объем работ по тестированию, начиная с описания объекта, стратегии, расписания, критериев начала и окончания тестирования, до необходимого в процессе работы оборудования, специальных знаний, а также оценки рисков с вариантами их разрешения[10].

Утилита (англ. utility или tool) — вспомогательная компьютерная программа в составе общего программного обеспечения для выполнения специализированных типовых задач, связанных с работой оборудования и операционной системы (ОС)[11].

ОБОЗНАЧЕНИЯ И СОКРАЩЕНИЯ

ПО – программное обеспечение.

КИС – корпоративная информационная система

JSON–JSON(JavaScriptObjectNotation) - простой формат обмена данными, удобный для чтения и написания как человеком, так и компьютером. [7]

BSON– (англ. Binary JavaScript Object Notation) это компьютерный формат обмена данными. Это бинарная форма представления простых структур данных и ассоциативных массивов (которые называют объектами или документами). Имя «BSON» основано на определении JSON и значит «Binary JSON» (бинарный JSON). Формат является надмножеством JSON, включая дополнительно регулярные выражения, двоичные данные и даты[8].

АИП–автоматизированная информационная подсистема.

БД – база данных.

ПК – персональный компьютер.

СУБД – система управления базой данных.

ТЗ – техническое задание.

ОС – операционная система

ВВЕДЕНИЕ

Тестирование программного обеспечения - проверка соответствия между реальным и ожидаемым поведением программы, осуществляемая на конечном наборе тестов, выбранном определенным образом. В более широком смысле, тестирование - это одна из техник контроля качества, включающая в себя активности по планированию работ проектированию тестов, выполнению тестирования и анализу полученных результатов.

Все виды тестирования программного обеспечения, в зависимости от преследуемых целей, можно условно разделить на следующие группы:

  • Функциональные

  • Нефункциональные

  • Связанные с изменениями

Регрессионное тестирование - это вид тестирования, направленный на проверку изменений, сделанных в приложении или окружающей среде (починка дефекта, слияние кода, миграция на другую операционную систему, базу данных, веб сервер или сервер приложения), для подтверждения того факта, что существующая ранее функциональность работает как и прежде. Регрессионными могут быть как функциональные, так и нефункциональные тесты.

Как правило, для регрессионного тестирования используются тест кейсы, написанные на ранних стадиях разработки и тестирования. Это дает гарантию того, что изменения в новой версии приложения не повредили уже существующую функциональность. Рекомендуется делать автоматизацию регрессионных тестов, для ускорения последующего процесса тестирования и обнаружения дефектов на ранних стадиях разработки программного обеспечения.

Автоматизированное тестирование программного обеспечения (Software Automation Testing) - это процесс верификации программного обеспечения, при котором основные функции и шаги теста, такие как запуск, инициализация, выполнение, анализ и выдача результата, выполняются автоматически при помощи инструментов для автоматизированного тестирования.

Преимущества автоматизации тестирования:

  • Повторяемость – все написанные тесты всегда будут выполняться однообразно, то есть исключен «человеческий фактор». Тестировщик не пропустит тест по неосторожности и ничего не напутает в результатах.

  • Быстрое выполнение – автоматизированному скрипту не нужно сверяться с инструкциями и документациями, это сильно экономит время выполнения.

  • Меньшие затраты на поддержку – когда автоматические скрипты уже написаны, на их поддержку и анализ результатов требуется, как правило, меньшее время чем на проведение того же объема тестирования вручную.

  • Отчеты – автоматически рассылаемые и сохраняемые отчеты о результатах тестирования.

  • Выполнение без вмешательства – во время выполнения тестов инженер-тестировщик может заниматься другими полезными делами, или тесты могут выполняться в нерабочее время (этот метод предпочтительнее, так как нагрузка на локальные сети ночью снижена).

Недостатки автоматизации тестирования:

  • Повторяемость – все написанные тесты всегда будут выполняться однообразно. Это одновременно является и недостатком, так как тестировщик, выполняя тест вручную, может обратить внимание на некоторые детали и, проведя несколько дополнительных операций, найти дефект. Скрипт этого сделать не может.

  • Затраты на поддержку – несмотря на то, что в случае автоматизированных тестов они меньше, чем затраты на ручное тестирование того же функционала – они все же есть. Чем чаще изменяется приложение, тем они выше.

  • Большие затраты на разработку – разработка автоматизированных тестов это сложный процесс, так как фактически идет разработка приложения, которое тестирует другое приложение. В сложных автоматизированных тестах также есть фреймворки, утилиты, библиотеки и прочее. Естественно, все это нужно тестировать и отлаживать, а это требует времени.

  • Стоимость инструмента для автоматизации – в случае если используется лицензионное ПО, его стоимость может быть достаточно высока. Свободно распространяемые инструменты, как правило, отличаются более скромным функционалом и меньшим удобством работы.

  • Пропуск мелких ошибок - автоматический скрипт может пропускать мелкие ошибки на проверку которых он не запрограммирован. Это могут быть неточности в позиционировании окон, ошибки в надписях, которые не проверяются, ошибки контролов и форм с которыми не осуществляется взаимодействие во время выполнения скрипта.

Автоматизированное тестирование подразумевает большой объем покрытия (тестирования функционала), а значит – большое количество информации. Результаты тестирования затем обрабатываются специалистами по автоматизированному тестированию программного обеспечения и передаются руководству. Автоматизация процесса обработки результатов тестирования необходима для того, чтобы уменьшить затраты времени сотрудников на анализ результатов каждого теста, а так же для обеспечения быстрого и удобного доступа руководства к наглядным результатам тестирования.