Создание программного продукта 'Книжный магазин'

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    585,65 Кб
  • Опубликовано:
    2013-03-12
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Создание программного продукта 'Книжный магазин'

Введение

Создание программ для ведения баз данных объектов является актуальной со времён появления этой возможности. На сегодняшний день существует много методов и средств решения этой проблемы, которые постоянно усовершенствуются, появляются новые. Компьютеры позволяют организовать очень удобную, мощную и скоростную обработку целого архива данных, полезность и выгода в чём очевидна.

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

В рамках курсового проекта предусматривалась реализация задачи по созданию программного продукта «Книжный магазин». Актуальность постановки и реализации задачи заключается в том, что на данный момент существует небольшое количество программ такого назначения.

Пояснительная записка к данному курсовому проекту разделена на разделы. Каждый раздел посвящен определенному аспекту процесса изучения поставленной задачи и разработки приложения.

В разделе «Постановка задачи» описана постановка задачи, приведены входные и выходные данные, постоянная информация, а так же описаны инструменты разработки.

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

В разделе «Физическая модель данных» обосновывается выбор конкретной СУБД, а так же компонентов базы данных.

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

В разделе «Тестирование» отражен ход тестирования приложения, основные ошибки, которые возникли при разработке, а так же методы их устранения и обработки ошибочных ситуаций.

Раздел «Применение» содержит описание процесса взаимодействия пользователя с приложениями, указываются основные состояния в которых может находиться система, как и в какие директории устанавливается приложение.

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

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

1. Постановка задачи

Программное средство должно быть разработано для функционирования в среде операционной системы Windows. Оно должно обладать интуитивно-понятным интерфейсом и интерактивным руководством, помогающим пользователю разобраться с управлением в процессе выполнения программы, так же требует наличие специальной поисковой системы СУБД для быстрого и эффективного поиска необходимой информации.

В связи с тем, что для ведения такой картотеки необходимы сотрудники и определённое помещение, то целесообразно реализовать такую задачу с применением ПЭВМ.

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

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

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

Внедрение данной системы позволит:

резко повысить производительность труда;

повысить качество и достоверность учёта товара;

перейти от учета к анализу;

снизить количество ошибок пользователей за счет того, что функции контроля возлагаются на программу;

повысить обоснованность принимаемых руководством решений на основе отчетов, так как повысится достоверность и полнота учёта.

Программа также должна предоставлять пользователю следующий набор операций по обработке информации:

вводить, удалять и редактировать информацию;

.1 Входная информация

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

Таблица «Книги»:

Код книги;

Название;

Код жанра;

Автор;

Год издания;

Цена;

Количество.

Таблица «Жанр»:

Код жанра;

Название.

Таблица «Покупатели»:

Код покупателя;

Фамилия;

Имя;

Отчество;

Адрес;

Телефон.

Таблица «Продано»:

Код покупателя;

Код продажи;

Сумма.

Таблица «Продажи»:

Код продажи;

Код книги.

В программе должны быть предусмотрены процедуры добавления с помощью контекстного меню.

.2 Выходная информация

Выходной информацией является отчет о продажах, в него входит:

)        Фамилия покупателя;

)        Сумма покупки;

)        Дата покупки;

Данная информация выводится на экран, также имеется возможность представления информации в виде отчета и вывода его на печать.

.3 Постоянная информация

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

.4 Инструмент разработки

Для решения поставленной задачи предоставлена среда разработки СУБД- InterBase и язык программирования Delphi, с помощью которого можно настроить работу БД и оптимизировать ее основные компоненты.

2. Логическая модель данных

.1 Описание предметной области

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

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

Базы данных в настоящее время пользуются широкой популярностью. С появлением компьютеров проблема управления данными начала решатся - начали разрабатываться СУБД (системы управления базами данных). СУБД находит применение во всех отраслях. В настоящее время любая уважающая себя организация использует СУБД. Существует много веских причин перевода существующей информации на компьютерную основу, т.к. более быстрая обработка данных и централизация их хранения с использованием клиент/серверных технологий позволяют сберечь значительные средства, а главное и время для получения необходимой информации, а также упрощает доступ и ведение.

Необходимо организовать и автоматизировать систему информации о книгах. Наиболее рационально такую деятельность осуществлять при помощи СУБД, где в таблицах будет фиксироваться динамика изменения информации.

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

.2 Модель предметной области

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

Рисунок 2.1 - Схема работы алгоритма

Для более ясного представления процесса функционирования приложения опишем схему его работы по этапам (Рисунок 2.1):

) Вывод на экран формы приложения содержащей закладки с таблицами.

) Выбор пользователем определённой закладки.

) Выполнение действий указанных для данной таблицы

) Возврат к шагу 1, либо выход из программы.

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

Рисунок 2.2 - Структура меню

Для реализации шагов 2 и 3 нужно реализовать программную обработку нажатия закладки, для чего требуется написать обработчик. На шаге 4 в случае нажатия кнопки завершения программы происходит закрытие приложения, в противном случае выполняется переход к шагу 1.

В случае возникновения затруднений при работе с приложением пользователь должен иметь возможность обратиться к справочной системе приложения. Кроме этого пользователь должен иметь возможность обратиться к справочной системе приложения. Файл справки должен содержать ответы на вопросы, которые могут возникнуть у пользователя в процессе работы программы.

Следующим этапом разработки является поисковая система. Чтобы пользователь мог быстро найти необходимую информацию необходимо предусмотреть фильтрацию данных во всех таблицах по критерию. Для этого разработаем необходимые компоненты для удобства поиска данных по базе.

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

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

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

О нормализации таблиц в базе данных нужно заботится на раннем этапе проектирования приложения, так как при «живых» данных довольно трудно менять структуру базы. Иногда процесс нормализации порождает добавочные таблицы, которые были не включены в первоначальный проект. Узнав об этом как можно раньше, не придется зря тратить силы на их разработку.

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

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

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

Вторая нормальная форма - все поля таблицы должны зависеть от первичного ключа.

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

Таблица «Книги» - содержит информацию о книгах.

Таблица «Жанры» - содержит информацию о жанрах.

Таблица «Покупатели» - содержит информацию о покупателях.

Таблица «Продано» - содержит информацию о проданных книгах и покупателях.

Таблица «Продажи» - содержит информацию о продажах .

.3 Описание отношений

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

организация структуры данных для хранения информации о книгах, покупателях, продажах.

организация информационной части, включающей в себя вывод на экран конечных данных, отчётов по всем классам.

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

При разработке программы использовались следующие стандартные классы Delphi:

-       TForm - класс форм, на его базе создаются формы;

-       TButton - класс стандартной кнопки;

-       TEdit - класс стандартного поля для редактирования;

-       TImage класс - класс служит для отображения изображений различных форматов включая gif и jpeg;

-       TDBGrid - класс служит для отображения содержимого набора данных в виде таблицы, в которой столбцы соответствуют полям набора данных, а строки - записям;

-       TDBText - класс служит для отображения текстовых представлений различных полей набора данных в том виде, в котором эти поля отображаются в сетке TDBGrid;

-       TDBEdit - класс позволяет редактировать значение поля текущей записи набора данных;

-       TMainMenu - класс служит для формирования систему пользовательского меню;

-       TDateTimePickerl - класс служит для работы с датой;

-       ТТаblе - класс позволяет получить доступ к одной таблице базы данных;

-       TDataSource- представляет базовые события, свойства, методы для работы с данными и связи между таблицами.

-       RaveReports - позволяет подготовить произвольное число виртуальных страниц отчетов в простом визуальном редакторе.

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

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

3. Физическая модель данных

.1 Выбор и обоснование средств разработки

Данная программа написана на языке Borland Delphi 7.0.

Его часто называют языком высокого уровня. Новейшая система объектно-ориентированного программирования Delphi производства корпорации Borland предназначена для операционных систем Windows. Интегрированная среда Borland Delphi обеспечивает скорость визуальной разработки, продуктивность повторно используемых компонент в сочетании с мощью языковых средств Delphi, усовершенствованными инструментами и разномасштабными средствами доступа к базам данных.

Borland Delphi может быть использован везде, где требуется дополнить существующие приложения расширенным стандартом языка Delphi, повысить быстродействие и придать пользовательскому интерфейсу качества профессионального уровня. Borland Delphi предоставляет свою мощность и широкие возможности языка C++ всему семейству систем объектно-ориентированного программирования. Borland Delphi может быть использован везде, где требуется дополнить существующие приложения расширенным промышленным стандартом языка C++, повысить быстродействие и придать пользовательскому интерфейсу профессиональный облик.

Выбор языка программирования основывается на следующем: он даёт полномасштабное средство разработки для почти всех известных СУБД, совместимое со стандартами ODBC, IDAPI и к тому же генерируют компактные и легко переносимые исполнимые файлы. По большому счету можно ничего не знать о Windows и программировании для Windows и при этом создавать вполне работоспособные и современно выглядящие задачи. Основные характеристики выбранного языка программирования:

-       Высокопроизводительный компилятор в машинный код;

-       Объектно-ориентированная модель компонент;

-       Визуальное (а, следовательно, и скоростное) построение приложений из программных прототипов;

-       Масштабируемые средства для построения баз данных;

Интегрированная среда разработки IDE Borland Delphi предоставляет всевозможные средства для создания, тестирования и редактирования проекта.

Программа проста в использовании, не требует специальных навыков, кроме знаний основ работы с интерфейсом MicrosoftÒ Windowsä. Программа широко использует стандартные элементы управления, что обеспечивает единство интерфейса системы и программного средства, а, следовательно, и удобство использования. Так как программа написана «под Windows», она работает в защищенном режиме, при котором почти полностью исключается возможности влияния на запущенные параллельно приложения.

.2 Компоненты базы данных

автоматизация программный аппаратный интерфейс

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

Каждая из представленных в логической модели данных сущностей должна быть отражена базовой таблицей. Все проектируемые таблицы впоследствии связываются в единую базу данных «Книжный магазин». Ниже описывается каждая таблица.

Таблица «Покупатели». Структура таблицы приведена на рисунке 3.1.

Рис.3.1


Рис. 3.2

Таблица «Жанры». Структура таблицы приведена на рисунке 3.3.

Рис.3.3

Таблица «Продано». Структура таблицы приведена на рисунке 3.4.

Рис. 3.4

Таблица «Продажи». Структура таблицы приведена на рисунке 3.5.








Рис.3.5

4. Описание программы

.1 Выбор и обоснование среды разработки

Для разработки приложения базы данных был выбран язык программирования Delphi 7.0. Выбор языка программирования основывается на следующем: он даёт полномасштабное средство разработки для почти всех известных СУБД, совместимое со стандартами ODBC, IDAPI и к тому же генерируют компактные и легко переносимые исполнимые файлы. По большому счету можно ничего не знать о Windows и программировании для Windows и при этом создавать вполне работоспособные и современно выглядящие задачи. Кроме того, изучив Pascal трудностей с программированием на Delphi быть не должно, т.к. существует 100% совместимость с прежними наработками. Среда визуального программирования Delphi совместима со всеми прикладными алгоритмами, написанными до сих пор на Pascal. Это значит, что для серьезной работы необходимо и серьезное знание языка Паскаль, хотя какую-то часть кода сгенерирует сама Delphi. Не будет лишним знание интерфейса Windows.

Основные характеристики выбранного языка программирования:

-       высокопроизводительный компилятор в машинный код;

-       объектно-ориентированная модель компонент;

-       визуальное (а, следовательно, и скоростное) построение приложений из программных прототипов;

-       масштабируемые средства для построения баз данных.

Ключевые особенности среды Delphi:

. Интегрированная среда разработки приложений позволяет создавать, компилировать, тестировать и редактировать проект или группу проектов в единой среде программирования.

. Визуальная технология разработки программ позволяет быстро создавать приложения путём размещения в форме стандартных компонентов. При этом соответствующий код команды автоматически генерируется Delphi. Такая технология освобождает разработчика от рутинной работы по созданию пользовательского интерфейса.

. Технология TwoWais Tools делает более эффективной работу с компонентами. При изменении программного кода в окне редактора кода Delphi соответствующим образом изменяются и сами компоненты.

. Библиотека компонентов содержит множество стандартных компонентов, которые можно использовать при создании приложений.

. 32-битовый компилятор Delphi генерирует исполняемые ЕХЕ-файлы. Компилирование приложений занимает весьма незначительное время.

Интегрированная среда разработки IDE Delphi предоставляет всевозможные средства для создания, тестирования и редактирования проекта.

Delphi является одной из наиболее популярных систем разработки приложений. Программа проста в использовании, не требует специальных навыков, кроме знаний основ работы с интерфейсом MicrosoftÒ Windowsä. Программа широко использует стандартные элементы управления, что обеспечивает единство интерфейса системы и программного средства, а, следовательно, и удобство использования.

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

.2      Описание интерфейса

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

К внешнему виду окон в Windows предъявляются определенные требования. Среда разработки приложений Delphi 7.0, в которой разрабатывалось представленное приложение, автоматически обеспечивает стандартный для Windows вид окон приложения. Но программисту необходимо продумать и указать, какие кнопки в полосе системного меню должны быть доступны в том или ином окне, должно ли окно допускать изменение пользователем его размеров, каким должен быть заголовок окна. Все эти характеристики окон обеспечиваются установкой и управлением свойствами формы.

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

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

Важная роль при разработке приложений отводиться системе меню. Главное меню должно обеспечивать доступ к основным формам и функциям, выполняемым информационной системой. Главное меню является основным элементом управления системой.

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

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

Таким образом, графический интерфейс приложения должен совмещать в себе функциональность и эстетику.

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

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

.3 Программно-аппаратные ресурсы ПК

Программное средство, разрабатываемое в рамках курсового проекта реализовано под управлением операционной системы Microsoft Windows 98/Me/2000/XP.

Популярность ОС Windows обеспечили следующие ее свойства:

-       приятный внешний вид пользовательского интерфейса;

-       простота в работе;

-       достаточно высокая производительность;

-       возможности рабочего стола, панели задач и главного меню помогают быстро открывать ярлыки и запускать программы;

-       надежность хранения информации на диске;

-       поддержка широкого спектра нового оборудования;

-       интеграция с Web;

-       устойчивость, надежность работы;

-       многозадачность;

-       удобные в применении средства поиска;

-       поддержка печати.

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

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

-       процессор: Pentium II и выше;

-       объем оперативной памяти: 64 Мбайт и выше;

-       операционная система: Windows 98, Windows Me, Windows 2000, Windows XP;

-       свободного места на жестком диске 250 и выше Мбайт;

-       наличие монитора VGA с разрешением не менее 800x600 точек;

-       наличие манипулятора “мышь”;

-       клавиатура IBM PC любой модификации;

-       принтер.

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

-       процессор: Athlon 1000;

-       объем оперативной памяти: 512 Мбайт;

-       операционная система: Windows XP;

-       свободного места на жестком диске 250 Мбайт;

-       наличие монитора VGA с разрешением не менее 800x600 точек;

-       наличие манипулятора “мышь”;

-       принтер.

5. Тестирование

.1 Анализ надёжности разработанного алгоритма

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

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

Все практически неисчисляемое множество возможных ошибок обычно подразделяют на три группы:

синтаксические ошибки;

ошибки времени выполнения программы;

смысловые (логические) ошибки.

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

Намного больше неприятностей доставляют ошибки времени выполнения. Они дают о себе знать прекращением выполнения программы. Чаще всего ошибка времени выполнения является симптомом смысловой ошибки. Смысловые (логические) ошибки - самые сложные и трудноуловимые. Они проявляются в том, что программа ведет себя не совсем так, как хотелось бы.

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

Отладка программы является итеративным процессом обнаружения и исправления ошибок, который обычно требует последовательного выполнения четырех этапов:

-       выявление ошибки;

-       локализация ошибки в тексте программы;

-       установление причины ошибки;

-       исправление ошибки.

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

Выявление ошибок иначе называют тестированием. Некоторые ошибки проявляются после первого же запуска программы на выполнение. Они заметны «невооруженным глазом», и для их обнаружения не надо прибегать ни к каким специальным средствам. Некоторые ошибки проявляются в чисто случайные моменты работы программы. С такими ошибками справиться труднее всего. Если вы не можете зафиксировать условия возникновения ошибки, вы не сможете понять причину и устранить ее. Иногда, чтобы добиться устойчивого проявления ошибки, перед каждым стартом программы приходится заново перезагружать компьютер.

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

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

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

.2 Средства обнаружения ошибок

Испытания проводились в соответствии с настоящим документом. Процесс испытания подразделяется на 2 этапа:

-       проверка корректности работы программы;

-       обработка и анализ результатов испытаний.

Проверке подлежат следующие характеристики:

-       корректность запуска БД;

-       достоверность и актуальность отражаемой информации;

-       корректность формирования отчетов;

-       корректность выхода из БД.

В качестве тестовых примеров в программе БД использовались реальные данные, которые должны были вводится в БД при ее эксплуатации. Эти данные вводились в программу в полном объеме. Особое внимание было уделено добавлению и удалению записей из таблиц.

Имели место следующие тесты:

. Добавление данных:

-       запущен исполняемый файл программы;

-       введены данные в базу;

-       завершена работа программы;

-       проверены таблицы базы, новые данные в них присутствовали.

Вывод: данные были успешно сохранены в файле базы данных. Аналогичные тесты были проведены для других форм, через которые осуществляется добавление данных в базу.

. Добавление некорректных данных:

-       совершено добавление некорректных данных;

-       программа выдала сообщение об ошибке;

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

Вывод: некорректные данные не сохраняются, и об этом предупреждается пользователь.

. Удаление данных:

-       некоторые данные были удалены;

-       во время просмотра удалённые записи отсутствовали;

-       был совершен выход из программы и повторный запуск;

-       все ранее внесённые изменения присутствовали.

Вывод: программа успешно удаляет данные.

. Системные и аппаратные сбои:

-       запуск программы;

-       в структуру данных внесены изменения;

-       совершён нестандартный выход;

-       программа вновь загружена.

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

5.3 Анализ ожидаемых и полученных результатов

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

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

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

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

6. Описание применения

.1 Способ установки программы

Данное программное средство предназначено для автоматизации рабочего места сотрудника книжного магазина, оно обеспечивает хранение, накопление, корректировку и предоставление всей информации о книгах, покупателях, жанрах, продажах. Существует одна удобная форма для просмотра, редактирования и удаления всех данных. Для функционирования программы необходимо наличие операционной системы Windows 9x/2000/ME/NT/XP, так как она создавалась специально для работы в этой среде. Сотрудник школы должен иметь навыки работы в среде Windows, так как все формы, разработанные в приложении, используют компоненты Windows для обеспечения диалога между программой и пользователем.

Для установки обучающей программы необходимо 20Мb свободного места на жестком диске и установленную на компьютере операционную систему Windows 9x/2000/ME/NT/XP.

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

.2 Демонстрационный пример работы программы

После успешного запуска программы появляется главная форма «fMain» (Рисунок 6.1).

Рис.6.1

После заполнения таблиц есть возможность просмотреть полный отчет по базе (Рисунок 6.5), используя кнопку «Отчет о проведенных продажах».

Рис.6.5

Для выхода из программы предусмотрена кнопка «Выход».

Заключение

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

Для реализации поставленной задачи, в качестве среды разработки приложения был выбран пакет программ Borland Delphi и входящая в него система управления базами данных Interbase. Система управления базами данных Interbase является одним из популярных приложений в семействе настольных СУБД. Все версии Interbase имеют в своем арсенале средства, значительно упрощающие ввод и обработку данных, поиск данных и представление информации в виде таблиц, графиков и отчетов. В результате проделанной работы по выполнению практического задания по созданию программы, было изучено много литературы по программированию среде Delphi. Система имеет развитые возможности по созданию пользовательского интерфейса, широкий набор функций, методов и свойств для решения многих задач. В системе имеются развитые средства отладки, облегчающие разработку приложений.

СУБД Interbase имеет все необходимые средства для перечисленных выше функций. Достоинством Interbase является то, что она имеет достаточно простой графический интерфейс и достаточно высокую скорость обработки данных. Самым важным правилом, которое нужно соблюдать, является то, что в базе данных нужно хранить только необходимую информацию, и при этом все данные должны храниться один раз. К тому же Interbase предлагает большое количество Мастеров и Построителей, которые могут быстро научить работать с данными и добиваться желаемых результатов, а также избежать ненужных действий и ошибок.

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

Программа отлажена, протестирована и готова для демонстрации и практического использования. Данное программное средство выполнено в соответствие с ГОСТами и требованиями, предъявляемыми к технической документации.

Список использованных источников

Основная

         Бобровский, С.И. Delphi 7. Учебный курс / С.И. Бобровский. - СПб.: Питер, 2005. - 736 с.: ил.

         Буч, Г. Язык UML : руководство пользователя / Г.Буч, Д.Рамбо, А.Джекобсон. - М. : ДМК-Пресс, 2001.

         Культин, Н.Б. Основы программирования в Delphi 7 / Н.Б. Культин.-СПб.: БХВ-Петербург, 2003. - 608с. : ил.

         Оформление курсовых и дипломных проектов: метод, указания/ сост. И. М. Снежкова.- Мн.: МГВРК, 2003. - 32 с.

         Скляр, А.Я. Введение в InterBase/ А.Я. Скляр.- М.: Горячая линия- Телеком,2002.

         Стив Тейксейра, Ксавье Пачеко. Delphi 5. Руководство разработчика, том 1.Основные методы и технологии программирования: Пер. с англ. - М.: Издательский дом "Вильяме", 2001. - 832 с: ил. - Парал. тит. англ.

         Хомоненко, А. Д. и др. Delphi 7 / Под общ. ред. А.Д. Хомоненко. - СПб.: БХВ - Петербург 2003. -1216 с: ил.

         Хомоненко А.Д., Цыганков В.М., Мальцев М.Г. Базы данных: учебник для высших учебных заведений. - СПб.: КОРОНА- принт, 2000.

Приложения

Приложение А. Листинг программы

unit Unit1;

interface, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, jpeg, ExtCtrls, Menus, XPMan, Shellapi;= class(TForm): TMainMenu;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TImage;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TXPManifest;N2Click(Sender: TObject);N7Click(Sender: TObject);N8Click(Sender: TObject);N9Click(Sender: TObject);N10Click(Sender: TObject);N6Click(Sender: TObject);N11Click(Sender: TObject);N4Click(Sender: TObject);N5Click(Sender: TObject);

{ Private declarations }

{ Public declarations };: TForm1;Unit2, Unit3, Unit6, Unit7, Unit8, Unit9, Unit10;

{$R *.dfm}TForm1.N2Click(Sender: TObject);.Left:=Form1.Left+Form1.Width div 2-Form3.Width div 2;.Top:=Form1.Top+Form1.Height div 2-Form3.Height div 2;.showmodal;;TForm1.N7Click(Sender: TObject);.Left:=Form1.Left+Form1.Width div 2-Form6.Width div 2;.Top:=Form1.Top+Form1.Height div 2-Form6.Height div 2;.showmodal;;TForm1.N8Click(Sender: TObject);.Left:=Form1.Left+Form1.Width div 2-Form7.Width div 2;.Top:=Form1.Top+Form1.Height div 2-Form7.Height div 2;.showmodal;;TForm1.N9Click(Sender: TObject);.Left:=Form1.Left+Form1.Width div 2-Form8.Width div 2;.Top:=Form1.Top+Form1.Height div 2-Form8.Height div 2;.showmodal;;TForm1.N10Click(Sender: TObject);.Left:=Form1.Left+Form1.Width div 2-Form9.Width div 2;.Top:=Form1.Top+Form1.Height div 2-Form9.Height div 2;.showmodal;;TForm1.N6Click(Sender: TObject);;;TForm1.N11Click(Sender: TObject);.Left:=Form1.Left+Form1.Width div 2-Form10.Width div 2;.Top:=Form1.Top+Form1.Height div 2-Form10.Height div 2;.showmodal;;TForm1.N4Click(Sender: TObject);

Showmessage('Выполнил Перов Дмитрий ');

end;TForm1.N5Click(Sender: TObject);(0,'open','help.chm','','',sw_show);;.Unit2;, Classes, DB, IBCustomDataSet, IBTable, IBDatabase;= class(TDataModule): TIBDatabase;: TIBTransaction;: TIBTable;: TIBTable;: TIBTable;: TIBTable;: TIBTable;: TDataSource;: TDataSource;: TDataSource;: TDataSource;: TDataSource;_pokupatelya: TIntegerField;: TIBStringField;: TIBStringField;: TIBStringField;: TIBStringField;: TIntegerField;_knigi: TIntegerField;: TIBStringField;_janra: TIntegerField;: TIBStringField;_izdaniya: TIntegerField;: TIntegerField;: TIntegerField;: TStringField;_pokupatelya: TIntegerField;_prodaji: TIntegerField;: TDateField;: TIntegerField;: TStringField;_prodaji: TIntegerField;_knigi: TIntegerField;: TStringField;

{ Private declarations }

{ Public declarations };: TDM;

{$R *.dfm}.Unit3;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, StdCtrls, Buttons, Grids, DBGrids, ExtCtrls, ComCtrls, Menus,;= class(TForm): TMainMenu;: TMenuItem;: TMenuItem;: TMenuItem;: TPageControl;: TTabSheet;: TTabSheet;: TTabSheet;: TTabSheet;: TTabSheet;: TPanel;: TDBGrid;: TDBGrid;: TDBGrid;: TDBGrid;: TDBGrid;: TBitBtn;: TMenuItem;: TMenuItem;: TDBNavigator;: TDBNavigator;: TDBNavigator;: TDBNavigator;: TDBNavigator;N4Click(Sender: TObject);N5Click(Sender: TObject);N2Click(Sender: TObject);N3Click(Sender: TObject);

{ Private declarations }

{ Public declarations };: TForm3;Unit1, Unit2, Unit4, Unit5;

{$R *.dfm}TForm3.N4Click(Sender: TObject);.Left:=Form3.Left+Form3.Width div 2-Form4.Width div 2;.Top:=Form3.Top+Form3.Height div 2-Form4.Height div 2;.showmodal;;TForm3.N5Click(Sender: TObject);.Left:=Form3.Left+Form3.Width div 2-Form5.Width div 2;.Top:=Form3.Top+Form3.Height div 2-Form5.Height div 2;.showmodal;;TForm3.N2Click(Sender: TObject);('Выполнил Перов Дмитрий');;TForm3.N3Click(Sender: TObject);;;.Unit4;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, StdCtrls;= class(TForm): TGroupBox;: TEdit;: TGroupBox;: TEdit;: TButton;: TButton;: TButton;Button1Click(Sender: TObject);Button3Click(Sender: TObject);Button2Click(Sender: TObject);

{ Private declarations }

{ Public declarations };: TForm4;Unit1, Unit2, Unit3;

{$R *.dfm}TForm4.Button1Click(Sender: TObject);.janr.Insert;.janr.Fields[0].AsInteger:=strtoint(edit1.Text);.janr.Fields[1].AsString:=edit2.Text;.janr.Post;.Close;;TForm4.Button3Click(Sender: TObject);.janr.Edit;.janr.Fields[0].AsInteger:=strtoint(edit1.Text);.janr.Fields[1].AsString:=edit2.Text;.janr.Post;.Close;;TForm4.Button2Click(Sender: TObject);;;.Unit5;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, StdCtrls, Buttons;= class(TForm): TGroupBox;: TEdit;: TGroupBox;: TEdit;: TGroupBox;: TEdit;: TGroupBox;: TEdit;: TGroupBox;: TEdit;: TGroupBox;: TEdit;: TButton;: TBitBtn;Button1Click(Sender: TObject);BitBtn1Click(Sender: TObject);

{ Private declarations }

{ Public declarations };: TForm5;Unit1, Unit2, Unit3, Unit4;

{$R *.dfm}TForm5.Button1Click(Sender: TObject);.POKUPATELI.Insert;.POKUPATELI.Fields[0].AsInteger:=strtoint(edit1.Text);.POKUPATELI.Fields[1].AsString:=edit2.Text;.POKUPATELI.Fields[2].AsString:=edit3.Text;.POKUPATELI.Fields[3].AsString:=edit4.Text;.POKUPATELI.Fields[4].AsString:=edit5.Text;.POKUPATELI.Fields[5].AsInteger:=strtoint(edit6.Text);.POKUPATELI.Post;.Close;;TForm5.BitBtn1Click(Sender: TObject);;;.Unit6;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, StdCtrls, Buttons, ExtCtrls, Grids, DBGrids;= class(TForm): TDBGrid;: TPanel;: TBitBtn;: TGroupBox;: TButton;: TEdit;: TLabel;: TLabel;Button1Click(Sender: TObject);

{ Private declarations }

{ Public declarations };: TForm6;Unit1, Unit2, Unit3;

{$R *.dfm}TForm6.Button1Click(Sender: TObject);LookupResult:variant;:= dm.knigi.Lookup ('nazvanie', Edit1.Text,'avtor;god_izdaniya');VarType (LookupResult) = varNull then('В базе нет книги с названием ' + Edit1.Text)if VarType (LookupResult) = varEmpty then('Поиск не произведен')if VarIsArray (LookupResult) then.Caption:= LookupResult[0];.Caption:= LookupResult[1];;;.Unit7;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, StdCtrls, Buttons, Grids, DBGrids, ExtCtrls;= class(TForm): TPanel;: TDBGrid;: TBitBtn;

{ Private declarations }

{ Public declarations };: TForm7;Unit1, Unit2, Unit3;

{$R *.dfm}.Unit8;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, StdCtrls, Buttons, Grids, DBGrids, ExtCtrls;= class(TForm): TPanel;: TDBGrid;: TBitBtn;: TGroupBox;: TButton;: TButton;: TButton;: TButton;: TButton;Button1Click(Sender: TObject);Button2Click(Sender: TObject);Button3Click(Sender: TObject);Button4Click(Sender: TObject);Button5Click(Sender: TObject);

{ Private declarations }

{ Public declarations };: TForm8;Unit1, Unit2, Unit3, Unit4;

{$R *.dfm}TForm8.Button1Click(Sender: TObject);.POKUPATELI.IndexFieldNames:='surname';;TForm8.Button2Click(Sender: TObject);.POKUPATELI.IndexFieldNames:='name';;TForm8.Button3Click(Sender: TObject);.POKUPATELI.IndexFieldNames:='otchestvo';;TForm8.Button4Click(Sender: TObject);.POKUPATELI.IndexFieldNames:='adres';;TForm8.Button5Click(Sender: TObject);.POKUPATELI.IndexFieldNames:='telefon';;.Unit9;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, RpCon, RpConDS, RpDefine, RpRave, StdCtrls, Buttons, Grids,, ExtCtrls;= class(TForm): TPanel;: TDBGrid;: TBitBtn;: TButton;: TRvProject;: TRvDataSetConnection;Button1Click(Sender: TObject);

{ Private declarations }

{ Public declarations };: TForm9;Unit1, Unit2, Unit3, Unit4;

{$R *.dfm}TForm9.Button1Click(Sender: TObject);.ExecuteReport('Report10');;.Unit10;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, StdCtrls, Buttons, Grids, DBGrids, ExtCtrls;= class(TForm): TPanel;: TDBGrid;: TBitBtn;

{ Private declarations }

{ Public declarations };: TForm10;Unit1, Unit2, Unit3, Unit4, Unit5;

{$R *.dfm}

end.

Приложение Б

Диаграмма «сущность-связь»












Приложение В

Диаграмма вариантов использования

Похожие работы на - Создание программного продукта 'Книжный магазин'

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!