Назначение
|
Имя
|
Тип
|
Код проверки
|
Kodprov
|
Integer
|
Код сварочной работы
|
Kodsvrab
|
Integer
|
Количество брака
|
Kolbraka
|
Integer
|
Дата
|
Date
|
TDate
|
Связь между двумя файлами осуществляется с помощью поля код сварочной
работы и показана на рисунке 1.
Рисунок 1 - Связь между файлами сварщиков и проверок
3. Описание логической структуры
3.1 Выбор технологии и языка программирования
Выбор среды программирования Delphi обусловливается тем, что язык Pascal, составляющий основу Delphi,
наиболее удобен для создания баз данных и программы, написанные на нем очень
просты для понимания.
Delphi
представляет собой систему программирования и относится к классу
инструментальных средств ускоренной разработки программ RAD. Это ускорение достигается за счет
двух характерных свойств Delphi:
визуального конструирования форм и широкого использования библиотеки визуальных
компонентов (Visual Component Library, VCL).
Визуальное конструирование форм избавляет программиста от многих аспектов
разработки интерфейса программы. Библиотека визуальных компонентов
предоставляет программисту огромное разнообразие созданных разработчиками Delphi программных заготовок, которые
немедленно или после несложной настройки готовы к работе в рамках программы.
Компоненты характеризуются важным свойством: они включают в себя программный
код и все необходимые для его работы данные. Как уже говорилось, с Delphi поставляется великое множество
компонентов, рассчитанных на самые разные аспекты применения - от простеньких
компонентов, создающих поясняющие надписи, до сложных текстовых процессоров или
инструментов принятия решений [2].
Использование компонентов не только во много раз уменьшает
сроки разработки программ, но и существенно снижает вероятность случайных
программных ошибок, от которых не защищен ни один крупный программный проект
[4].
Бесспорным плюсом среды программирования Delphi является то,
что она предоставляет удобные средства для тестирования и отладки программы.
4. Состав и логическая структура
программы
Структура
программы
В состав структуры программы информационно - справочной системы
регистрации сварщиков с учетом проверки их работы входят следующие программные
модули:
· Главный модуль, который выполняется сразу после запуска программы;
Форма главного модуля представлена на рисунке 2.
Рисунок 2 - Форма главного модуля
· Модуль добавления или редактирования записей о сварщиках;
· Модуль добавления или редактирования записей о проверке
сварщиков;
Формы модулей добавления или редактирования записей о сварщиках и
проверках показаны на рисунках 3 и 4 соответственно.
Рисунок 3 - Форма модуля добавления или редактирования записей о
сварщиках
Рисунок 4 - Форма модуля добавления или редактирования записей о
проверках
· Модуль, реализующий процедуру поиска записей в файле сварщиков для того
что бы вывести список фамилий сварщиков, которым необходимо пройти
переаттестацию.
Форма модуля переаттестации показана на рисунке 5.
Рисунок 5 - Форма модуля переаттестации
Главный модуль содержит процедуры вывода на экран данных из файлов, а
также процедуры сортировки, поиска, добавления и изменения записей.
Модули, реализующие процедуры добавления и редактирования записей
информации о сварщиках и проверках, содержат процедуры добавления и
редактирования записей с учетом всех необходимых условий.
Модуль, реализующий поиск записей в файле сварщиков для переаттестации
содержит процедуру поиска записей в файле сварщиков, при условии, реализованном
в файле проверок, а так же этот модуль содержит процедуру просмотра записей
найденных в результате поиска.
Рисунок 6 - Структура программы
Описание алгоритмов
Алгоритм добавления
Если мы выберем пункт меню Действия/Добавить, то в программе откроется
диалоговое окно ввода данных для добавления или редактирования записи в файл
сварщиков или файл проверок. От того какая вкладка выбрана “Сварщики” или
“Проверка”, зависит какое диалоговое окно появится на экране монитора, и
соответственно в какой из файлов сохранится запись. Кнопка “Ok” на диалоговом окне, сохраняющая
введенный данные, не станет активной до тех пор, пока все поля не будут
заполнены, но если все поля заполнены, то кнопка активируется, и пользователь
сможет сохранить запись в один из файлов. Запись сохраниться в конец файла.
Структурограмма алгоритма добавления записи показана на рисунке 2.
Рисунок 7 - Структурограмма алгоритма добавления записи
Алгоритм изменения записи
Если мы выберем пункт меню Действия/Изменить, то на экран будет выведено
окно в которое можно будет ввести код сварочной работы или проверки, это будет
зависеть от того в каком файле мы хотим изменить запись. После этого происходит
поиск записи с указанным кодом, и если запись существует, то ее поля будут
выведены на форму ввода данных, где уже будет возможно их изменение и
сохранение в файл.
Структурограмма алгоритма изменения записи показана на рисунке 3.
Рисунок 8 - Структурограмма алгоритма изменения записи
Алгоритм удаления
Если мы выберем пункт меню Действия/Удалить, то на экран будет выведено
окно в которое можно будет ввести код сварочной работы или проверки, это будет
зависеть от того из какого файла мы хотим удалить запись. После этого
происходит поиск записи с указанным кодом, и если запись существует, то эта
запись после подтверждения пользователем безвозвратно удалится.
Структурограмма алгоритма удаления показана на рисунке 9
Рисунок 9 - Структурограмма алгоритма удаления записи
Алгоритм сортировки
Сортировка записей в файле необходима для того что бы пользователю было
удобно просматривать информацию, а так же для того что бы использовать
ускоренный поиск записей, который работает только по отсортированному списку.
В данном проекте используется метод сортировки - Шелла (вставки).
Сущность этого метода состоит в том, что все элементы списка выбираются с
шагом, равным наименьшему целому половины количества элементов списка, и
разбиваются на группы, при этом их позиции в общем списке сохраняются. После
этого элементы в группах сортируются методом простой вставки, и далее они
сохраняются в общий список на ранее занимаемые позиции уже в отсортированном
виде. Шаг в последующем уменьшается до тех пор, пока не станет равным нулю, то
есть кода элементы списка будут отсортированы полностью [1]. Алгоритм сортировки - Шелла
(вставки) приведен на рисунке 10.
Рисунок 10 - Структурограмма процедуры сортировки записей методом Шелла
(вставки)
Алгоритм поиска
Метод поиска, который использовался в данном курсовом проекте это
бинарный метод. Это метод поиска относится к наиболее эффективным.
Он заключается в том, что вначале искомый элемент сравнивается с ключом
средней записи списка. Результат позволяет определить в какой половине
последовательности продолжить поиск, применив к ней ту же процедуру, до тех
пор, пока не будет найден искомый элемент. Структурограмма алгоритма бинарного
поиска представлена на рисунке 11.
Рисунок 11 - Структурограмма алгоритма бинарного поиска
5. Разработка интерфейса пользователя
5.1 Разработка форм ввода - вывода информации
В данной информационно - справочной системе были разработаны следующие
формы: главная форма, две формы ввода данных, форма переаттестации.
Главная форма включает в себя меню, предназначенное для выполнения
различных действий, таблицы для вывода в них информации из файлов для ее
удобного просмотра.
Формы ввода данных для двух файлов были разработаны для того что бы было
удобно добавлять или редактировать записи. На них расположены поля для ввода
данных, выпадающие списки, кнопки сохранения информации в файлы и закрытия этих
форм.
Форма переаттестации это окно для вывода списка сварщиков, которым
необходимо пройти переаттестацию. В таблице на этой форме будут отображаться
данные о фамилии, имени, отчестве сварщиков и количестве произведенного ими
брака.
5.2 Построение графа диалога
Диалог - это процесс обмена информацией между пользователем и программной
системой. Каждый диалог состоит из отдельных процессов ввода-вывода, которые
физически обеспечивают связь пользователя и компьютера. Граф диалога -
ориентированный взвешенный граф, каждой вершине которого сопоставлена
конкретная картинка на экране (кадр) или определенное состояние диалога,
характеризующееся набором доступных пользователю действий. Дуги, исходящие из
вершин, показывают возможные изменения состояний при выполнении пользователем
указанных действий. В качестве весов дуг указывают условия переходов из
состояния в состояние и операции, выполняемые во время перехода.
Таким образом, каждый маршрут на графе соответствует возможному варианту
диалога. Причём представление диалога в виде графа в зависимости от стадии
разработки может выполняться с разной степенью детализации. Пример такого графа
можно увидеть на рисунке 12.
Рисунок 12 - Граф диалога
Требования к
аппаратным и программным средствам компьютера
Разработанная программа не требовательна к аппаратному обеспечению
компьютера. Программа работает под управлением операционных систем Windows
98/ME/2000/XP и выше. Минимальные системные требования для работы программы:
· компьютер, c процессором не
хуже класса Pentium 100;
· оперативная память не менее 32Mбайта (Windows
98), 64 Мбайта (Windows
ME и Windows 2000), 128 Мбайт (Windows ХР);
· ~4Mb свободного
места на жестком диске;
· ОС не ниже Windows
98.
На жестком диске программа занимает около 1 Мбайта. Для сохранения новых
данных в файлах требуется дополнительная память на жестком диске.
Описание
входных и выходных данных
Разработанная программа предусматривает следующие режимы запуска:
· Запуск программы в первый раз. В этом режиме используемые для
хранения информации файлы создадутся и будут пустыми.
· Последующие запуски. В этом режиме к входным данным относятся
файлы сварщиков и проверок.
Файл сварщиков состоит из записей, которые включают в себя следующие
поля: код сварочной работы, обеспечивающий связь с файлом проверок, категория,
отметка о проверке, фамилия, имя, отчество. Файл проверок является совокупностью
записей, которые состоят из следующих полей: код проверки, код сварочной
работы, количество брака, дата.
К входным данным относится аргумент поиска, передаваемый в функцию
поиска, а так же аргумент, передаваемый в процедуры изменения и удаления
записей.
Выходными данными являются файлы с информацией о сварщиках и проверках, а
так же информация, найденная в результате поиска.
Выбор стратегии тестирования и разработка тестов
Тестирование программного обеспечения - процесс исследования, испытания
программного продукта, имеющий две различные цели:
· продемонстрировать разработчикам и
заказчикам, что программа соответствует требованиям;
· выявить ситуации, в которых поведение
программы является неправильным, нежелательным или не соответствующим спецификации.
Тестирование делится на статическое и динамическое.
Статическое тестирование - тестирование, при котором
код программы не выполняется.
Проверяется не работа программы, а сам код. Он
вычитывается либо вручную, либо с помощью программ, которые анализируют код. На
этом этапе можно найти неверные конструкции, неверные отношения объектов
программы.
Когда говорят «тестирование», то это термин обычно
употребляют применимо к динамическому тестированию.
Динамическое тестирование - это тестирование, при котором
выполняется код программы.
Оно делится на несколько подтипов. Например,
тестирование «ящиков»: тестирование белого ящика, тестирование черного ящика.
Во-первых, тестирование черного ящика (black -box testing) - тестирование, при котором тестировщик имеет доступ
к программе только через интерфейс.
Тестировщик глазами пользователя смотрит на программу,
не имея при этом доступа к коду. Но так как он всё-таки тестировщик, то
проверяет программу не как пользователь, а с помощью своих стратегий и методов:
либо вручную, либо с помощью инструментов тестирования. Он может что-то
автоматизировать, либо применять какие-либо инструменты.
Преимущество такого вида тестирования в том, что оно
не требует знания языков программирования. Но даже если тестировщик знает язык,
на котором написана программа, но не видит код программы, тогда он не
зацикливается на коде.
Цель этого способа тестирования в том, чтобы проверить
расхождение поведения программы с документацией
Тестирование белого ящика - тестирование, при котором
тестировщик имеет доступ к коду. Его еще называют тестированием стеклянного
ящика или тестированием прозрачного ящика.
Кроме того, что тестировщик может просматривать код,
он еще и сам может писать код, который использует библиотеки существующего
программного продукта.
Цель этого вида тестирования в том, чтобы проверить
каждую ветвь кода, каждый путь, каждый оператор, проверить сам код [3].
Тест на отсутствие данных в полях при добавлении или редактировании
записи
На рисунке 13 видно, что кнопка сохранения записи в файл “Ok” не активируется до тех пор, пока
все поля на форме не будут заполнены.
Рисунок 13 - Ситуация при заполнении полей
Тест на связывание файлов
Протестируем, как система реагирует на удаление записи из файла сварщиков
с первичным ключом «Код сварочной работы», который используется как внешний
ключ в файле проверки. На рисунке 14 выбираем
запись, которую хотим удалить (пусть это будет запись с кодом сварочной
работы 22), а на рисунке 15 показываем, что запись с таким же кодом сварочной
работы присутствует и в файле проверок. На рисунке 16 покажем результат наших
действий.
Рисунок 14 - Запись в файле сварщиков
Рисунок 15 - Запись с идентичным кодом сварочных работ в файле проверок
Рисунок 16 - Сообщение об ошибке
Инструкция
пользователя
Информационно-справочная система «Регистрации сварщиков с учетом проверки
их работы» предназначена для ведения журнала сварочных работ. В этой системе
можно совершать разные манипуляции над информацией, такие как: добавление новых
записей, редактирование и удаление уже существующих. В этой системе предусмотрены
сортировки по разным полям, для отображения информации в удобном для
пользователя виде. Так же в системе присутствует поиск записи для быстроты
выполнения различных действий. В данной системе можно просматривать сварщиков,
которым необходимо пройти переаттестацию в связи с превышением нормы количества
брака.
Что бы установить программу необходимо копировать файл приложения ‘Svarshik.exe’ на жесткий диск компьютера, а файлы для хранения
информации о сварщиках и проверках создадутся при первом выполнении программы.
Инструкция по применению
Главное окно «Информация о сварщиках»
При запуске программы на экране монитора открывается главное окно. Оно
показано на рисунке 17.
Рисунок 17 - Главное окно программы
Рассмотрим меню на главном окне. Оно состоит из пунктов меню “Действия”,
“Переаттестация”, “Сортировка”, “О программе”. Меню программы показано на
рисунке 18.
Рисунок 18 - Меню программы
На пункте меню “Действия” отображены следующие подпункты: “Добавить”,
“Изменить”, “Удалить”, с помощью которых можно добавить, редактировать и
удалить запись. Эти пункты работаю для разных файлов в зависимости от выбранной
вкладки. На рисунке 19 показан этот пункт меню “Действия” и его подпункты.
Рисунок 19 - Пункт меню “Действия”
С помощью пункта меню “Переаттестация” можно просмотреть список
сварщиков, которым необходимо пройти переаттестацию. На рисунке 20 показан этот
пункт меню, а на рисунке 21 показано действие этого пункта при нажатии на него.
Рисунок 20 - Пункт меню “Переаттестация”
Рисунок 21 - Действие пункта меню “Переаттестация”
Правее пункта меню “Переаттестация” располагается пункт “Сортировка”,
который содержит два подпункта: и эти подпункты меняются в зависимости от
выбранной вкладки на стартовом окне. В зависимости от выбранного подпункта,
производится сортировка записей файла по конкретному полю. На рисунках 22 и 23
показан пункт главного меню “Сортировка” со своими подпунктами в зависимости от
выбранной вкладки.
Рисунок 22 -Пункт меню “Сортировка” на вкладке “Сварщики”
Рисунок 23 -Пункт меню “Сортировка” на вкладке “проверка”
Пункт меню “О программе”, содержит два подпункта: “Автор” и “Инструкции”.
При нажатии на подпункт “Автор” выводится сообщение на экран с информацией о
разработчике данной информационно - справочной системы, а при нажатии на второй
подпункт выводится сообщение на экран с минимальным количеством инструкций
необходимых пользователю данной программы. На рисунке 24 показан пункт главного
меню “О программе” со своими подпунктами.
Рисунок 24 -Пункт меню “О программе”
Ко всему этому на главном окне в левом нижнем углу также находится поле
для ввода значения, и кнопка “Найти” для поиска этого значения. В зависимости
от того какая вкладка выбрана, в том файле и будет осуществляться поиск записи
по указанному коду. На рисунке 25 заметим, что кнопка “Найти” не активируется
до тех пор, пока не введено значение в поле для ввода кода.
Рисунок 25 -Кнопка “Найти”
И наконец, в правом нижнем углу главного окна расположена кнопка “Выход”,
это кнопка выхода из программы. Она показана на рисунке 26.
Рисунок 26 -Кнопка “Выход”
Заключение
Задача, поставленная в данном курсовом проекте на разработку
информационно-справочной системы, позволяющей вести регистрацию сварщиков с
учетом проверки их работы, выполнена. В данной системе реализованы возможности:
· добавления информации о сварщиках и о проверках их работы;
· редактирования ранее введенной информации;
· удаления данных;
· поиска информации;
· сортировки информации по различным полям.
Так же в программе реализована бизнес задача, позволяющая просматривать
фамилии сварщиков, которым необходимо пройти переаттестацию.
Программа имеет простой и удобный интерфейс. Для использования
разработанной системы не требуется специальная подготовка.
Программа не требовательна к аппаратному обеспечению компьютера.
Минимальные системные требования для работы программы:
· процессор класса Pentium,
· 32Mb оперативной
памяти,
· 2Mb свободного
места на жестком диске,
· ОС не ниже Windows
98.
Возможно усовершенствование алгоритма поиска к нахождению информации по
фамилии сварщиков и по дате проверок.
Разработанную информационно-справочную систему можно использовать при
регистрации сварочных работ на предприятии, чтобы сэкономить время и средства,
на заполнение и хранение различных бланков, журналов учёта сварочных работ.
Список
используемых источников
1 Маркин А.В. Технология программирования:
Методические указания к лабораторным работам / Рязан. гос. радиотехн. акад.
Рязань, 2005. 48 c.
2 Бобровский С. Delphi 7, учебный курс. Питер, 2006.
Интернет:
http://software-tester.livejournal.com/64360.html - тестирование программных
продуктов