Разработка информационной системы "Библиотека"
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ
ГОУ ВПО «Иркутский Государственный Университет»
ФИЛИАЛ В Г.БРАТСКЕ
КАФЕДРА ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ
КУРСОВАЯ РАБОТА
по высокоуровневым методам информатики и программирования
Информационная система «Библиотека»
Пояснительная записка
Руководитель:
к.т.н., доцент кафедры ИТ Н. Н. Люблинская
Исполнитель:
студент группы ПИ-08-1 П. С. Соломахин
Братск 2009
Содержание
Введение
1. Анализ предметной области
1.1 Постановка задачи
1.1.1 Основное назначение программного средства
1.1.2 Основание для разработки
1.1.3 Назначение разработки
1.1.4 Требования к программному средству
1.2 Выбор подхода и модели разработки ПС
2. Анализ требований и разработка спецификаций
2.1 Определение вариантов использования
2.2
3. Проектирование
3.1 Декомпозиция поставленной задачи
3.2 Разработка алгоритма решения задачи
3.3 Реализация функционального назначения программного средства
3.4 Разработка интерфейса ПС
4. Кодирование
4.1 Выбор среды разработки
4.2 Характеристика языка программирования
4.3 Структура программы
5. Тестирование и отладка
5.1 Тестирование
5.2 Отладка
Заключение
Список использованной литературы
программа система библиотека
Введение
Delphi — это среда быстрой разработки, в которой в качестве языка программирования используется язык Delphi. Язык Delphi — строго типизированный объектно-ориентированный язык, в основе которого лежит хорошо знакомый программистам Object Pascal. Delphi — мощная система разработки прикладных программ для Windows. Несколько лет назад рядовому программисту оставалось только мечтать о создании собственных программ, работающих в среде Windows, т. к. единственным средством разработки был Borland C++ for Windows, явно ориентированный на профессионалов, обладающих серьезными знаниями и опытом.
Разработка средства управления базой данных для учета библиотечного фонда в среде программирования Delphi позволит достаточно хорошо показать её возможности.
Электронный каталог – машиночитаемый библиотечный каталог, работающий в реальном режиме времени и предоставленный в распоряжение читателей. Будучи одним из основных проявлений информатизации библиотек ЭК несет ряд важнейших элементов развития современного научно-технического и социального прогресса: обеспечивается не только своевременный и быстрый доступ пользователей к информации и первоисточникам, но и создаются условия для реализации одного из главных принципов открытого общества - принципа всеобщей доступности информации и публикаций. ЭК приносит целый спектр новых, ранее недоступных библиотекарю или информационному работнику возможностей, одновременно устраняя многие рутинные операции.
Принцип комплексной автоматизации рассматривает библиотеку как информационную систему с собственными библиотечными функциями и как учреждение с административно-хозяйственным управленческим механизмом. При этом обеспечивается системное единство информационных, программных, лингвистических и технических средств, а отдельные внутрибиблиотечные процессы и операции реализуются в едином технологическом комплексе. В системе на основе принципа однократного ввода и многократного многоцелевого ее использования создается единая информационная база для всех технологических библиотечных процессов.
1. Анализ предметной области
1.1 Постановка задачи.
1.1.1 Основное назначение программного средства
Приложение разработано в программной среде разработки Borland Delphi 7. Программа «Библиотека» в большей степени предназначена для читального зала или частной библиотеки, не подразумевающей выдачи книг читателю. Программа должна обеспечивать добавление, редактирование, удаление новых записей в базу данных, выборку из базы данных по запросам пользователя. При выполнении данного задания должны быть использованы стандартные объекты.
1.1.2 Основание для разработки
Основанием для разработки данной программы является учебный план по специальности «Прикладная информатика в экономике» филиала ГОУ ВПО «Иркутский Государственный университет» в г. Братске. Целью разработки является усвоение студентом дисциплины ВМИиП.
Руководителем разработки является к.т.н., доцент кафедры ИТ Люблинская Н.Н. Тему для разработки условно можно назвать «Библиотека».
1.1.3 Назначение разработки
Книгоиздание в последнее десятилетие получило большое развитие, регулярно появляются новые, редактируются и переиздаются старые издания. У любителей провести время за чтением книги появилась возможность иметь собственную библиотеку, лично заниматься её формированием. Для любой библиотеки, имеющей тенденции увеличения фонда законна проблема систематизации и учета имеющихся изданий.
Возникла необходимость в таком программном средстве как «Библиотека», которое должно облегчить управление библиотекой.
1.1.4 Требования к программному средству
Программное средство должно обеспечить следующее:
Хранение сведений в базе данных ПС обо всех изданиях в библиотеке;
Поиск нужного издания в базе данных ПС и фонде библиотеки;
Добавление, редактирование и удаление записей базы данных.
1.2 Выбор подхода и модели разработки ПС
Для разработки данного программного средства использован объектно-ориентированый подход к программированию. Программа представлена в виде совокупности объектов, каждый из которых является экземпляром определенного типа, а классы образуют иерархию с наследованием свойств. Основные достоинства этого подхода:
Естественная композиция программного обеспечения, которая облегчает его разработку;
Данные локализованы и интегрированы с подпрограммами обработки данных;
Возможность вести независимую разработку отдельных частей программы;
Разработчик сам выбирает способы организации программ;
Возможность конструирования сложных объектов из сравнительно простых.
В данной работе использована каскадная модель разработки ПС, переход на следующую стадию разработки осуществлялся после того, как полностью были завершены все проектные операции текущей стадии и получены все исходные данные для следующей стадии. Каждый стадия завершается выпуском полного комплекта документации, достаточной для того, чтобы разработка могла быть продолжена другой командой разработчиков.
Положительные стороны применения каскадного подхода:
на каждом этапе формируется законченный набор проектной документации, отвечающий критериям полноты и согласованности;
выполняемые в логичной последовательности этапы работ позволяют планировать сроки завершения всех работ и соответствующие затраты.
Каскадный подход используется при построении ПС, для которых в самом начале разработки можно достаточно точно и полно сформулировать все требования, с тем чтобы предоставить разработчикам свободу реализовать их как можно лучше с технической точки зрения.
Основным недостатком каскадного подхода является существенное запаздывание с получением результатов. Согласование результатов с пользователями производится только в точках, планируемых после завершения каждого этапа работ, требования к ПС «заморожены» в виде технического задания на все время ее создания. Таким образом, пользователи могут внести свои замечания только после того, как работа над системой будет полностью завершена. В случае неточного изложения требований или их изменения в течение длительного периода создания ПО, пользователи получают систему, не удовлетворяющую их потребностям. Модели автоматизируемого объекта могут устареть одновременно с их утверждением.
2. Анализ требований и разработка спецификаций
2.1 Определение вариантов использования
Типичный ход событий представляет диалог между пользователем и системой с последовательно нумеруемыми событиями. Также отдельно приводятся альтернативы, связанные с нарушением типичного хода событий.
Варианты использования ПС
Типичный ход событий
Действия пользователя
Отклик системы
1. Инициирует программное средство
2. Предоставляет посредством элементов интерфейса возможность инициировать имеющиеся средства для работы с БД и отображает таблицу её записей, позволяет пролистывать записи БД с помощью навигатора, переходит в режим ожидания
3. а) Просматривает записи всей БД в таблице
4. а) Запоминает последнюю выделенную пользователем строку таблицы, переходит в режим ожидания
3. б) Инициирует средства просмотра дополнительных сведений об издании нажатием на кнопку
4. б) Выводит на рабочую область средства просмотра дополнительных сведений об издании, переходит в режим ожидания
3. в) Инициирует средства редактирования записей БД нажатием на кнопку
4. в) Выводит на рабочую область средства редактирования записи БД выделенной в действии (4.а)), (навигатор, возможность создания, удаления, редактирования), позволяет открыть область выдачи/возврата изданий, переходит в режим ожидания
5. в) Выбирает нужное действие (удаление, редактирование, создание записи), инициирует его при помощи навигатора
5. в) Предоставляет возможность вносить изменения в БД и работать с выделенной записью, переходит в режим ожидания
6. в) Вносит изменения в БД
7. в) Нажимает кнопку навигатора для сохранения внесенных изменений
8. в) Сохраняет изменения, переходит в режим ожидания
5. г) Инициирует нажатием на кнопку средство обозначения наличия издания
6. г) Предоставляет возможность выбрать состояние записи БД
7. г) Выбирает состояние издания
8. г) Сохраняет изменения, переходит в режим ожидания
3. д) Инициирует нажатием на кнопку средства выполнения выбора записей из БД по запросу
4. д) Выводит на рабочую область средства выбора записей по запросу (поле ввода, список, кнопки), переходит в режим ожидания
5. д) а) Выбирает из списка первую букву искомого слова
6. д) а) Инициирует нажатием кнопки запрос на выбор записей по первой букве фамилии автора или заглавия искомого издания
7. д) а) Формирует запрос на выбор записей по первой букве фамилии автора или заглавия искомого издания, указанных пользователем
8. д) а) Производит выбор записей БД
9. д) а) Выводит результаты выборки в таблице, переходит в режим ожидания
5. д) б) Заполняет поле ввода фрагментом сведений об искомом издании
6. д) б) Инициирует нажатием кнопки запрос на выбор записей по фрагменту сведений об искомом издании
7. д) б) Формирует запрос на выбор записей по фрагменту сведений об искомом издании
8. д) б) Производит выбор записей БД
9. д) б) Выводит результаты выборки в таблице, переходит в режим ожидания
Альтернативный ход событий
Все действия с использованием кнопочного управления дублируются в меню программы. Возможна любая комбинация применения средств программы. Допустим любой порядок их использования.
Дополнительно
Возможность выйти из программы на любом этапе работы программы
2.2. Описание объектов, свойств и методов
Первая форма
1) Главная форма программы «Библиотека»
object
Form1: TForm1
Left
263
Top
59
Width
1010
Height
716
Caption
Библиотека
Color
clBtnFace
Menu
MainMenu1
Position
poScreenCenter
ShowHint
True
procedure FormShow(Sender: Tobject); - отображает главную форму одновременно со стартовой формой
2) Таблица, отображающая все записи базы данных по столбцам: «УДК», «Автор», «Заглавие издания», «Год», «Количество», «Наличие»
object
DBGrid1: TDBGrid
Left
0
Top
8
Width
993
Height
169
Align
alCustom
DataSource
DataSource1
Enabled
False
Columns
item
Expanded
False
FieldName
'UDK'
Title.Caption
УДК
Title.Color
clWhite
Width
106
Visible
True
item
Expanded
False
FieldName
'Author'
Title.Caption
Автор
Title.Color
clWhite
Width
176
Visible
True
item
Expanded
False
FieldName
'NameBook'
Title.Caption
Заглавие издания
Title.Color
clWhite
Width
549
Visible
True
item
Expanded
False
FieldName
'Year'
Title.Caption
Год
Title.Color
clWhite
Width
29
Visible
True
item
Expanded
False
FieldName
'Amount'
Title.Caption
Количество
Title.Color
clWhite
Width
34
Visible
True
item
Expanded
False
FieldName
'Here and Now'
PickList.Strings
(В наличии/Выдано)
Title.Caption
Наличие
Title.Color
clWhite
Width
55
Visible
True
3) Навигатор для управления таблицей, отображающей записи базы данных
object
DBNavigator1: TDBNavigator
Left
8
Top
184
Width
160
Height
33
Cursor
crHandPoint
DataSource
DataSource1
VisibleButtons
[nbFirst, nbPrior, nbNext, nbLast, nbRefresh]
TabOrder
1
procedure DBNavigator1Click(Sender: TObject; Button: TnavigateBtn); - связывает управление блоками дополнительной информации и редактирования записей БД с управлением таблицы всех записей
Блок средств выполнения выборки из базы данных по автору, заглавию и по названию области литературы, сведениям, относящимся к заглавию, заглавию издания, жанру, примечаниям
object
GroupBox3: TGroupBox
Left
8
Top
224
Width
161
Height
257
Caption
Выбор записей по запросу
TabOrder
9
Visible
False
5) Панель для зрительного выделения кнопки «Готово»
object
Panel3: TPanel
Left
8
Top
16
Width
95
Height
32
TabOrder
0
6) Кнопка «Готово», скрывающая блок средств выполнения выборки
object
Button17: TButton
Left
6
Top
3
Width
83
Height
25
Caption
Готово
procedure Button17Click(Sender: Tobject); - делает невидимым блок средств выполнения выборки
7) Панель зрительного выделения средств выборки по автору и заглавию
object
Panel1: TPanel
Left
8
Top
56
Width
145
Height
97
8) Элемент, позволяющий выбрать первую букву заглавия или фамилии автора издания для выборки из БД
object
ComboBox2: TComboBox
Left
16
Top
4
Width
113
Height
21
Items.Strings
( А, Б, В, Г, Д, Е, Ё, Ж, З, И, К, Л, М, Н, О, П, Р, С, Т, У, Ф, Х, Ц, Ч, Ш, Щ, Ы, Э, Ю, Я.)
9) Кнопка «По автору» для начала выборки из БД по первой букве фамилии, выбранной в ComboBox2
object
Button16: TButton
Left
8
Top
32
Width
129
Height
25
Caption
По автору издания
procedure Button16Click(Sender: Tobject); - запускает SQL-запрос на выбор записей поля «Автор» БД по выбранной в списке первой букве фамилии автора
10) Кнопка «По заглавию издания» для начала выборки из БД по первой букве заглавия издания, выбранной в ComboBox2
object
Button18: TButton
Left
8
Top
64
Width
129
Height
25
Caption
По заглавию издания
procedure Button18Click(Sender: Tobject); - запускает SQL-запрос на выбор записей поля «Заглавие издания» БД по выбранной в ComboBox2 первой букве заглавия издания
11) Панель для зрительного выделения средств выборки записей БД по фрагменту названия области литературы, сведений, относящимся к заглавию, заглавия издания, жанра, примечаний
object
Panel5: TPanel
Left
8
Top
160
Width
145
Height
89
TabOrder
2
12) Поле ввода фрагмента, по которому будет производиться выборка из БД
object
Edit1: TEdit
Left
16
Top
8
Width
113
Height
21
TabOrder
0
13) Кнопка «По фрагменту» для начала выборки из БД по фрагменту введенному в Edit1
object
Button5: TButton
Left
16
Top
40
Width
113
Height
25
Caption
По фрагменту
TabOrder
1
procedure Button5Click(Sender: Tobject); - запускает SQL-запрос на выбор записей вышеуказанных полей БД по фрагменту введенному в Edit1
14) Таблица, отображающая результаты выборки
object
DBGrid2: TDBGrid
Left
0
Top
528
Width
993
Height
121
Align
alCustom
DataSource
DataSource2
Enabled
False
Visible
False
Columns
item
FieldName
'UDK'
Title.Caption
УДК
Width
103
Visible
True
item
FieldName
'Author'
Title.Caption
Автор
Width
177
Visible
True
item
FieldName
'NameBook'
Title.Caption
Заглавие издания
Width
551
Visible
True
item
FieldName
'Year'
Title.Caption
Год
Width
29
Visible
True
item
FieldName
'Amount'
Title.Caption
Количество
Width
34
Visible
True
item
FieldName
'Here and Now'
PickList.Strings
(В наличии/Выдано)
Title.Caption
Наличие
Width
53
Visible
True
15) Кнопка «Выборка», делающая видимым блок средств выборки
object
Button19: TButton
Left
200
Top
184
Width
113
Height
33
Caption
Выборка
procedure Button19Click(Sender: Tobject); - делает видимым блок средств выполнения выборки
16) Навигатор для управления таблицей, отображающей результаты выборки
object
DBNavigator2: TDBNavigator
Left
8
Top
488
Width
160
Height
33
DataSource
DataSource2
VisibleButtons
[nbFirst, nbPrior, nbNext, nbLast, nbRefresh]
Enabled
False
Visible
False
procedure DBNavigator2BeforeAction(Sender: TObject;Button: TnavigateBtn); - позволяет редактировать запись БД
procedure DBNavigator2Click(Sender: TObject; Button: TNavigateBtn); - связывает управление блоками дополнительной информации и редактирования записей БД с управлением таблицы, отображающей результаты выборки
17) Кнопка для выхода из программы «Выход»
Object
Button20: TButton
Left
680
Top
184
Width
105
Height
33
Hint
Завершает работу программы
Caption
Выход
TabOrder
6
procedure Button20Click(Sender: Tobject); - закрывает все формы программы
18) Блок средств для редактирования записей в БД
Object
GroupBox1: TGroupBox
Left
176
Top
224
Width
393
Height
297
Caption
Редактирование записи БД
TabOrder
7
Visible
False
20) Подпись к элементу для редактирования записи БД «УДК»
Object
Label1: TLabel
Left
120
Top
22
Width
27
Height
13
Caption
УДК
21) Подпись к элементу для редактирования записи БД «Заглавие издания»
Object
Label3: TLabel
Left
8
Top
56
Width
96
Height
13
Caption
Заглавие издания
22) Подпись к элементу для редактирования записи БД «Год издания»
object
Label4: TLabel
Left
8
Top
119
Width
66
Height
13
Caption
Год издания
23) Подпись к элементу для редактирования записи БД «Количество»
object
Label5: TLabel
Left
76
Top
119
Width
62
Height
13
Caption
Количество
24) Подпись к элементу для редактирования записи БД «Издательство»
object
Label7: TLabel
Left
8
Top
87
Width
75
Height
13
Caption
Издательство
19) Подпись к элементу для редактирования записи БД «Автор»
Object
Label2: TLabel
Left
112
Top
40
Width
33
Height
13
Caption
Автор
25) Подпись к элементу для редактирования записи БД «Сведения, относящиеся к заглавию»
object
Label8: TLabel
Left
192
Top
87
Width
187
Height
13
Caption
Сведения, относящиеся к заглавию
26) Подпись к элементу для редактирования записи БД «Жанр»
object
Label9: TLabel
Left
88
Top
151
Width
32
Height
13
Caption
Жанр
27) Подпись к элементу для редактирования записи БД «Номер тома»
object
Label10: TLabel
Left
8
Top
151
Width
65
Height
13
Caption
Номер тома
28) Подпись к элементу для редактирования записи БД «Полка»
object
Label11: TLabel
Left
352
Top
119
Width
35
Height
13
Caption
Полка
29) Подпись к элементу для редактирования записи БД «Область литературы»
object
Label12: TLabel
Left
208
Top
119
Width
108
Height
13
Caption
Область литературы
30) Подпись к элементу для редактирования записи БД «Страницы»
object
Label13: TLabel
Left
144
Top
119
Width
53
Height
13
Caption
Страницы
31) Подпись к элементу для редактирования записи БД «Примечания»
object
Label26: TLabel
Left
8
Top
188
Width
66
Height
13
Caption
Примечания
32) Панель для зрительного выделения кнопки «Готово»
object
Panel2: TPanel
Left
8
Top
16
Width
97
Height
32
TabOrder
0
33) Кнопка «Готово», скрывающая блок редактирования записей БД
object
Button1: TButton
Left
6
Top
3
Width
83
Height
25
Caption
Готово
TabOrder
0
procedure Button1Click(Sender: Tobject); - скрывает блок редактирования записей БД
34) Навигатор для управления элементами отображения БД в блоках редактирования записей БД и отображения дополнительной информации
object
DBNavigator3: TDBNavigator
Left
8
Top
264
Width
380
Height
25
Cursor
crHandPoint
DataSource
DataSource1
35) Элемент для редактирования записи БД «УДК»
object
DBEdit1: TDBEdit
Left
160
Top
17
Width
145
Height
21
DataField
'UDK'
DataSource
DataSource1
36) Элемент для редактирования записи БД «Автор»
object
DBEdit2: TDBEdit
Left
160
Top
38
Width
225
Height
21
DataField
'Author'
DataSource
DataSource1
37) Элемент для редактирования записи БД «Заглавие издания»
object
DBEdit3: TDBEdit
Left
8
Top
68
Width
377
DataField
'NameBook'
DataSource
DataSource1
38) Элемент для редактирования записи БД «Год издания»
object
DBEdit4: TDBEdit
Left
8
Top
132
Width
65
Height
21
DataField
'Year'
DataSource
DataSource1
procedure DBEdit4KeyPress(Sender: TObject; var Key: Char); - не позволяет вводить в поле нечисловые значения
39) Элемент для редактирования записи БД «Количество»
object
DBEdit5: TDBEdit
Left
76
Top
132
Width
65
Height
21
DataField
'Amount'
DataSource
DataSource1
procedure DBEdit4KeyPress(Sender: TObject; var Key: Char); - не позволяет вводить в поле нечисловые значения
40) Элемент для редактирования записи БД «Сведения, относящиеся к заглавию»
object
DBEdit6: TDBEdit
Left
192
Top
100
Width
193
Height
21
DataField
'ExplanatoryToTitle'
DataSource
DataSource1
41) Элемент для редактирования записи БД «Издательство»
object
DBEdit7: TDBEdit
Left
8
Top
100
Width
177
Height
21
DataField
'PublishingHouse'
DataSource
DataSource1
42) Элемент для редактирования записи БД «Жанр»
object
DBEdit9: TDBEdit
Left
88
Top
164
Width
185
Height
21
DataField
'Genre'
DataSource
DataSource1
43) Элемент для редактирования записи БД «Номер тома»
Object
DBEdit10: TDBEdit
Left
8
Top
164
Width
73
Height
21
DataField
'Volume'
DataSource
DataSource1
procedure DBEdit4KeyPress(Sender: TObject; var Key: Char);
44) Элемент для редактирования записи БД «Примечания»
Object
DBMemo1: TDBMemo
Left
8
Top
200
Width
265
Height
41
DataField
'Notes'
DataSource
DataSource1
45) Элемент для редактирования записи БД «Полка»
Object
DBEdit14: TDBEdit
Left
352
Top
132
Width
41
Height
21
DataField
'PlaceIndex'
DataSource
DataSource1
46) Элемент для редактирования записи БД «Страницы»
Object
DBEdit8: TDBEdit
Left
144
Top
132
Width
57
Height
21
DataField
'KeyWord1'
DataSource
DataSource1
procedure DBEdit4KeyPress(Sender: TObject; var Key: Char); - не позволяет вводить в поле нечисловые значения
47) Элемент для редактирования записи БД «Область литературы»
Object
DBEdit15: TDBEdit
Left
204
Top
132
Width
145
Height
21
DataField
'Type'
DataSource
DataSource1
48) Блок «Библиотека», производящий выдачу/возврат изданий в БД
Object
GroupBox4: TGroupBox
Left
280
Top
160
Width
105
Height
97
Caption
Библиотека
Visible
False
49) Панель для зрительного выделения кнопки «Готово»
Object
Panel6: TPanel
Left
4
Top
16
Width
95
Height
32
50) Кнопка «Библиотека», скрывающая блок «Библиотека»
Object
Button7: TButton
Left
6
Top
3
Width
83
Height
25
Caption
Готово
procedure Button7Click(Sender: Tobject); - скрывает блок «Библиотека»
51) Элемент для обозначения в БД факта выдачи/возврата издания
Object
DBComboBox1: TDBComboBox
Left
16
Top
56
Width
81
Height
21
DataField
'Here and Now'
DataSource
DataSource1
ItemHeight
13
Items.Strings
(В наличии/Выдано)
52) Кнопка «Редактирование БД», делающая видимым блок редактирования записей БД
Object
Button2: TButton
Left
320
Top
184
Width
113
Height
33
Hint
Позволяет внести изменения в базу данных
Caption
Рерактирование БД
procedure Button2Click(Sender: Tobject); - делает видимым блок редактирования записей БД
53) Блок «Дополнительная информация об издании», отображающий дополнительные сведения об издании
Object
GroupBox2: TGroupBox
Left
576
Top
224
Width
417
Height
297
Caption
Дополнительная информация об издании
Visible
False
54) Элемент для отображения записи БД «УДК»
Object
DBText1: TDBText
Left
144
Top
27
Width
185
Height
17
DataField
'UDK'
DataSource
DataSource1
55) Элемент для отображения записи БД «Автор»
Object
DBText2: TDBText
Left
144
Top
49
Width
297
Height
17
DataField
'Author'
DataSource
DataSource1
56) Элемент для отображения записи БД «Заглавие издания»
Object
DBText3: TDBText
Left
8
Top
88
Width
433
DataField
'NameBook'
DataSource
DataSource1
57) Элемент для отображения записи БД «Год издания»
Object
DBText4: TDBText
Left
96
Top
160
Width
33
Height
17
DataField
'Year'
DataSource
DataSource1
58) Элемент для отображения записи БД «Количество»
Object
DBText5: TDBText
Left
144
Top
184
Width
49
Height
17
DataField
'Amount'
DataSource
DataSource1
59) Элемент для отображения записи БД «Наличие»
Object
DBText6: TDBText
Left
344
Top
24
Width
65
DataField
'Here and Now'
DataSource
DataSource1
60) Элемент, отображающий поле «Сведения, относящиеся к заглавию»
Object
DBText7: TDBText
Left
200
Top
135
Width
241
Height
17
DataField
'ExplanatoryToTitle'
DataSource
DataSource1
61) Элемент для отображения записи БД «Издательство»
Object
DBText8: TDBText
Left
112
Top
112
Width
329
Height
17
DataField
'PublishingHouse'
DataSource
DataSource1
62) Элемент для отображения записи БД «Область литературы»
object
DBText9: TDBText
Left
24
Top
160
Width
65
Height
17
DataField
'Type'
DataSource
DataSource1
63) Подпись к элементу, отображающему запись БД «УДК»
object
Label14: TLabel
Left
104
Top
26
Width
27
Height
13
Caption
УДК
64) Подпись к элементу, отображающему запись БД «Автор»
object
Label15: TLabel
Left
104
Top
48
Width
33
Height
13
Caption
Автор
65) Подпись к элементу, отображающему запись БД «Заглавие издания»
object
Label16: TLabel
Left
8
Top
72
Width
96
Height
13
Caption
Заглавие издания
66) Подпись к элементу, отображающему запись БД «Издательство»
object
Label17: TLabel
Left
24
Top
111
Width
75
Height
13
Caption
Издательство
67) Подпись к элементу, отображающему запись БД «Сведения, относящиеся к заглавию»
object
Label18: TLabel
Left
6
Top
135
Width
187
Height
13
Caption
Сведения, относящиеся к заглавию
68) Подпись к элементу, отображающему запись БД «Количество страниц»
object
Label19: TLabel
Left
176
Top
159
Width
106
Height
13
Caption
Количество страниц
69) Подпись к элементу, отображающему запись БД «Область литературы»
object
Label20: TLabel
Left
8
Top
207
Width
108
Height
13
Caption
Область литературы
70) Подпись к элементу, отображающему запись БД «Количество экземпляров»
object
Label21: TLabel
Left
6
Top
183
Width
133
Height
13
Caption
Количество экземпляров
71) Подпись к элементу, отображающему запись БД «Год издания»
object
Label22:TLabel
Left
24
Top
159
Width
66
Height
13
Caption
Год издания
72) Подпись к элементу, отображающему запись БД «Номер тома»
object
Label23: TLabel
Left
336
Top
158
Width
65
Height
13
Caption
Номер тома
73) Подпись к элементу, отображающему запись БД «Полка»
object
Label24: TLabel
Left
176
Top
183
Width
35
Height
13
Caption
Полка
74) Подпись к элементу, отображающему запись БД «Жанр»
object
Label25: TLabel
Left
8
Top
231
Width
32
Height
13
Caption
Жанр
75) Элемент для отображения записи БД «Количество страниц»
object
DBText10: TDBText
Left
288
Top
160
Width
49
Height
17
DataField
'KeyWord1'
DataSource
DataSource1
76) Элемент для отображения записи БД «Номер тома»
object
DBText11: TDBText
Left
408
Top
157
Width
25
Height
17
DataField
'Volume'
DataSource
DataSource1
77) Элемент для отображения записи БД «Полка»
object
DBText12: TDBText
Left
224
Top
184
Width
65
Height
17
DataField
'PlaceIndex'
DataSource
DataSource1
78) Элемент для отображения записи БД «Жанр»
object
DBText14: TDBText
Left
48
Top
232
Width
65
Height
17
DataField
'Genre'
DataSource
DataSource1
79) Элемент для отображения записи БД «Примечания»
object
DBText15: TDBText
Left
80
Top
248
Width
361
Height
41
DataField
'Notes'
DataSource
DataSource1
80) Подпись к элементу, отображающему запись БД «Примечания»
object
Label27: TLabel
Left
8
Top
252
Width
66
Height
13
Caption
Примечания
81) Панель для зрительного выделения кнопки «Готово»
object
Panel4: TPanel
Left
8
Top
16
Width
95
Height
32
TabOrder
0
82) Кнопка «Готово», скрывающая блок дополнительной информации об издании
object
Button3: TButton
Left
6
Top
3
Width
83
Height
25
Caption
Готово
TabOrder
0
procedure Button3Click(Sender: Tobject); - скрывает блок дополнительной информации об издании
83) Кнопка «Дополнительно», делающая видимым блок дополнительной информации об издании
object
Button4: TButton
Left
560
Top
184
Width
113
Height
33
Hint
Позволяет просмотреть имеющуюся дополнительную информацию об издании
Caption
Дополнительно
TabOrder
5
procedure Button4Click(Sender: Tobject); - делает видимым блок дополнительной информации об издании
84) Кнопка «Библиотека», делающая видимым блок выдачи/возврата издания
object
Button6: TButton
Left
440
Top
184
Width
115
Height
33
Hint
Позволяет обозначить факт выдачи или возврата издания в базе данных
Caption
Библиотека
Enabled
False
TabOrder
4
procedure Button6Click(Sender: Tobject); - делает видимым блок выдачи/возврата издания
85) Элемент для связывания самой БД и элементов отображения её записей
object
DataSource1: TDataSource
DataSet
Table1
Left
792
Top
184
86) Главное меню
object
MainMenu1: TMainMenu
Left
960
Top
168
object
N1: TMenuItem
Caption
Меню
object
N2: TMenuItem
Caption
Выборка
OnClick
Button19Click
object
N3: TMenuItem
Caption
Редактирование БД
OnClick
Button2Click
object
N4: TMenuItem
Caption
Библиотека
Enabled
False
OnClick
Button6Click
object
N5: TMenuItem
Caption
Дополнительные сведения
OnClick
Button4Click
object
N8: TMenuItem
Caption
'-'
object
N9: TMenuItem
Caption
Выход
OnClick
Button20Click
procedure N7Click(Sender: Tobject); - выводит форму «О прграмме»
87) Элемент, позволяющий работать с SQL-запросом на выбор записей из БД по автору
object
Query1: TQuery
Active
True
AutoRefresh
True
DatabaseName
'BOOK'
RequestLive
True
SQL.Strings
('SELECT D.*'
'FROM "..Библиотека\Books.db"D'
'WHERE (D. Author Like :FirstChar.)')
Left
816
Top
184
ParamData = <
item
DataType
ftString
Name
'FirstChar.'
ParamType
ptUnknown
Value
''
88) Элемент для связывания результатов работы SQL-запроса и элементов отображения записей БД
object
DataSource2: TDataSource
DataSet
Query1
Left
840
Top
184
89) Элемент, позволяющий работать с SQL-запросом на выбор записей из БД по заглавию издания
object
Query2: TQuery
Active
True
AutoRefresh
True
DatabaseName =
'BOOK'
RequestLive
True
SQL.Strings = (
'SELECT F.*'
'FROM "..Библиотека\Books.db"F'
'WHERE (F. NameBook Like :FirstChar.)')
Left
864
Top
184
ParamData = <
item
DataType
ftString
Name
'FirstChar.'
ParamType
ptUnknown
Value
''
90) Элемент для связывания результатов работы SQL-запроса и элементов отображения записей БД
object
DataSource3: TDataSource
DataSet
Query2
Left
888
Top
184
91) Элемент, позволяющий работать с SQL-запросом на выбор записей из БД по вышеуказанным фрагментам
object
Query3: TQuery
Active
True
AutoRefresh
True
DatabaseName
'BOOK'
RequestLive
True
SQL.Strings = (
'SELECT F.*'
'FROM "..Библиотека\Books.db"F'
'WHERE F. Type Like :FirstChar. OR'
'F. KeyWord2 Like :FirstChar. OR'
'F. KeyWord3 Like :FirstChar. OR '
'F. KeyWord4 Like :FirstChar. OR'
'F. NameBook Like :FirstChar. OR '
'F. ExplanatoryToTitle Like :FirstChar. OR'
'F. Type Like :FirstChar. OR'
'F. Genre Like :FirstChar. OR'
'F. Notes Like :FirstChar.'')
Left
912
Top
184
ParamData = <
item
DataType
ftString
Name
'FirstChar.'
ParamType
ptUnknown
item
DataType
ftString
Name
'FirstChar.'
ParamType
ptUnknown
item
DataType
ftString
Name
'FirstChar.'
ParamType
ptUnknown
item
DataType
ftString
Name
'FirstChar.'
ParamType
ptUnknown
item
DataType
ftString
Name
'FirstChar.'
ParamType
ptUnknown
item
DataType
ftString
Name
'FirstChar.'
ParamType
ptUnknown
item
DataType
ftString
Name
'FirstChar.'
ParamType
ptUnknown
item
DataType
ftString
Name
'FirstChar.'
ParamType
ptUnknown
item
DataType
ftString
Name
'FirstChar.'
ParamType
ptUnknown
92) Элемент для связывания результатов работы SQL-запроса и элементов отображения записей БД
object
DataSource4: TDataSource
DataSet
Query3
Left
976
Top
184
93) Элемент позволяющий программе работать с указанной БД «Books.DB»
object
Table1: TTable
Active
True
ObjectView
True
AutoRefresh
True
StoreDefs
True
TableName
'Books.DB'
Left
1000
Top
184
FieldDefs = <
item
Name
'UDK'
DataType
ftString
Size
30
item
Name
'Author'
DataType
ftString
Size
50
item
Name
'NameBook'
DataType
ftString
Size
150
item
Name
'Year'
DataType
ftString
Size
4
item
Name
'Amount'
DataType
ftInteger
item
Name
'Here and Now'
DataType
ftString
Size
10
item
Name
'PlaceIndex'
DataType
ftString
Size
3
item
Name
'Volume'
DataType
ftSmallint
item
Name
'Genre'
DataType
ftString
Size
40
item
Name
'Type'
DataType
ftString
Size
40
item
Name
'ExplanatoryToTitle'
DataType
ftString
Size
40
item
Name
'PublishingHouse'
DataType
ftString
Size
40
item
Name
'KeyWord1'
DataType
ftString
Size
20
item
Name
'KeyWord2'
DataType
ftString
Size
20
item
Name
'KeyWord3'
DataType
ftString
Size
20
item
Name
'KeyWord4'
DataType
ftString
Size
20
item
Name
'Notes'
DataType
ftString
Size
255
Вторая форма
1) Стартовая форма
object
Form2: Tform2
Left
319
Top
183
BorderStyle
bsNone
ClientHeight
434
ClientWidth
623
Color
clBtnFace
Position
poScreenCenter
2) Фоновое изображение стартовой формы
object
Image1: TImage
Left
0
Top
0
Width
623
Height
434
Align
alClient
Center
True
Stretch
True
OnClick
Image1Click
procedure Image1Click(Sender: Tobject); - скрывает стартовую форму при нажатии кнопкой мыши по фоновому изображению
3) Элемент отображающий текст на стартовой форме «БИБЛИОТЕКА»
object
Label1: TLabel
Left
168
Top
104
Width
295
Height
45
Caption
БИБЛИОТЕКА
Font.Charset
DEFAULT_CHARSET
Font.Color
clYellow
Font.Height
-32
Font.Name
'Arial Black'
Font.Style
[fsBold]
ParentFont
False
Transparent
True
4) Элемент отображающий текст на стартовой форме «ВЫПОЛНИЛ:»
object
Label2: TLabel
Left
32
Top
200
Width
238
Height
52
Caption
ВЫПОЛНИЛ:
Font.Charset
RUSSIAN_CHARSET
Font.Color
clYellow
Font.Height
-37
Font.Name
'Arial Black'
Font.Style
[fsBold]
ParentFont
False
Transparent
True
5) Элемент отображающий текст на стартовой форме «СТУДЕНТ ГРУППЫ ПИ-08-1»
object
Label3: TLabel
Left
64
Top
248
Width
524
Height
52
Caption
СТУДЕНТ ГРУППЫ ПИ-08-1
Font.Charset
RUSSIAN_CHARSET
Font.Color
clYellow
Font.Height
-37
Font.Name
'Arial Black'
Font.Style
[fsBold]
ParentFont
False
Transparent
True
6) Элемент отображающий текст на стартовой форме «СОЛОМАХИН П.С.»
object
Label4: TLabel
Left
232
Top
296
Width
361
Height
52
Caption
СОЛОМАХИН П.С.
Font.Charset
RUSSIAN_CHARSET
Font.Color
clYellow
Font.Height
-37
Font.Name
'Arial Black'
Font.Style
[fsBold]
ParentFont
False
Transparent
True
7) Элемент отображающий текст на стартовой форме «ИНФОРМАЦИОННАЯ СИСТЕМА»
object
Label5: TLabel
Left
32
Top
40
Width
586
Height
45
Caption
ИНФОРМАЦИОННАЯ СИСТЕМА
Font.Charset
DEFAULT_CHARSET
Font.Color
clYellow
Font.Height
-32
Font.Name
'Arial Black'
Font.Style
[fsBold]
ParentFont
False
Transparent
True
8) Элемент, позволяющий по истечении времени закрывать стартовую форму
object
Timer1: TTimer
Interval
4000
OnTimer
Timer1Timer
Left
592
Top
8
procedure Timer1Timer(Sender: Tobject); - скрывает по истечении времени стартовую форму
Третья форма
1) Форма «О программе»
object
Form3: TForm3
Left
151
Top
90
Width
473
Height
190
Align
alCustom
Caption
'О программе'
Color
clBtnFace
2) Панель для зрительного выделения объектов
object
Panel1: TPanel
Left
8
Top
8
Width
441
Height
139
TabOrder
0
3) Теметическое изображение на форме
object
Image1: TImage
Left
1
Top
3
Width
153
Height
134
Stretch
True
4) Элемент отображающий текст на форме «Библиотека»
object
Label1: TLabel
Left
256
Top
16
Width
98
Height
21
Caption
Библиотека
Font.Charset
RUSSIAN_CHARSET
Font.Color
clWindowText
Font.Height
-19
Font.Name
'Times New Roman'
Font.Style
[fsItalic]
ParentFont
False
5) Элемент отображающий текст на форме «Курсовая работа по дисциплине ВМИиП»
object
Label2: TLabel
Left
200
Top
48
Width
205
Height
13
Caption
Курсовая работа по дисциплине ВМИиП
6) Элемент отображающий текст на форме «Разработал студент группы ПИ-08-1: Соломахин П.С.»
object
Label3: TLabel
Left
160
Top
72
Width
273
Caption
Разработал студент группы ПИ-08-1: Соломахин П.С.
7) Элемент отображающий текст на форме «2009»
object
Label4: TLabel
Left
288
Top
100
Width
24
Height
13
Caption
'2009'
8) Кнопка для закрытия формы «О программе»
object
BitBtn1: TBitBtn
Left
336
Top
104
Width
89
Height
25
TabOrder
0
Kind
bkOK
procedure BitBtn1Click(Sender: Tobject); - закрывает форму «О программе»
3. Проектирование
3.1 Декомпозиция поставленной задачи
Основная задача: разработка программы, обеспечивающей учет библиотечного фонда.
Подзадачи:
В средстве Database Desktop 7 создать базу данных, соответствующую поставленной задаче.
В среде Delphi создать средство управления базой данных под Windows.
В проектируемой программе предусмотреть возможность редактирования базы данных.
Добавить возможность выборки из базы данных по запросам пользователя.
Создать уникальный значок приложения и включить в проект.
3.2 Разработка алгоритма решения задачи
Создание модуля системы управления базой данных;
Вся работа с программой сводится к работе с главной формой и соответствует функциональному назначению программного средства.
Создание модуля стартовой заставки;
Заставка запускается одновременно с главной формой, по истечении времени отображения (4 секунды) или при нажатии на неё кнопкой мыши скрывается. Возможно также перейти к работе с главной формой, кликнув на её рабочей области.
Создание модуля информации о программе;
При нажатии на главной форме меню «О программе» открывается форма с содержанием модуля. Кнопка «Ок» закрывает форму.
Создание процедур, требуемых для взаимодействия модулей;
Все созданные процедуры осуществляют работу с базой данных в соответствии с требованиями к программному средству.
3.3 Реализация функционального назначения программного средства
При запуске программного средства «Библиотека» вывод на дисплей монитора главной формы происходит параллельно с выводом стартовой формы, содержащей краткие сведения о названии информационной системы, фамилию и инициалы автора.
На главной форме отображаются элементы, позволяющие просматривать записи БД, производить выборку из БД по указанному признаку, редактировать записи БД, получать дополнительные сведения по выбранной записи, сведения о программе.
При нажатии на кнопку «Выборка» или выборе соответствующего пункта меню становится видимым блок выборки из БД и невидимой — кнопка «Выборка». В этом блоке отображаются элементы, позволяющие при выборе первой буквы и нажатии на соответствующую кнопку выполнить выборку из БД по автору или заглавию издания. Также при вводе фрагмента заглавия издания, сведений, относящихся к заглавию, области литературы, жанра в поле ввода и нажатии на кнопку «По фрагменту» - произвести выборку записей, содержащих этот фрагмент. При нажатии на кнопку «Готово» блок выборки скрывается, становится видимой кнопка «Выборка».
При нажатии на кнопку «Редактирование БД» или выборе соответствующего пункта меню становится видимым блок редактирования БД, невидимой — кнопка «Редактирование БД» и включается кнопка «Библиотека». В этом блоке отображаются элементы, позволяющие добавлять, редактировать удалять записи БД. Управление БД производится с помощью навигатора. Поля «УДК», «Автор» и «Заглавие» являются обязательными к заполнению при добавлении записи. При нажатии на кнопку «Готово» блок редактирования скрывается, становится видимой кнопка «Редактирование БД», кнопка «Библиотека» выключается.
При нажатии на кнопку «Библиотека» или выборе соответствующего пункта меню в блоке «Редактирование БД» становится видимым блок управления библиотекой, кнопка «Библиотека» становится невидимой. В этом блоке отображается элемент, позволяющий обозначить факт выдачи/возврата выбранного издания в фонд библиотеки. При нажатии на кнопку «Готово» блок скрывается, становится видимой кнопка «Библиотека».
При нажатии на кнопку «Дополнительно» или выборе соответствующего пункта меню становится видимым блок «Дополнительная информация об издании», кнопка «Дополнительно» становится невидимой. В этом блоке отображаются все имеющиеся в БД сведения для выбранного издания.
При просмотре записей таблиц БД используются как навигаторы этих таблиц, так и навигатор в блоке редактирования БД.
При выборе меню «О программе» запускается форма «О программе», содержащая название программы, сведения о разработчике и руководителе разработки. При нажатии кнопки «ОК» форма закрывается.
При нажатии на кнопку «Выход» или выборе соответствующего пункта меню происходит выход из программы.
Схема работы программы «Библиотека»
Просмотр сведений о программе
Удаление
Записи из БД
По фрагменту
По автору
По заглавию
Выборка записей из БД
Добавление
Данных в БД
Отображение БД
В виде таблицы
Внесение изменений в БД
Выход
Запуск программы
Выдача
Возврат
издания
3.4 Разработка интерфейса ПС
Интерфейс определяет набор функций и процедур, которые могут быть использованы для взаимодействия программы с объектом.
В данной разработке создан процедурно-ориентированный интерфейс со свободной навигацией, с меню на главной форме. Пользовательский интерфейс представляет средство взаимодействия пользователя с программой. При разработке пользовательского интерфейса следует учитывать потребности, опыт и способности пользователя. В силу большого разнообразия пользователей и видов программных средств существует множество различных стилей пользовательских интерфейсов, при разработке которых могут использоваться разные принципы и подходы. Основные принципы:
пользовательский интерфейс должен базироваться на терминах и понятиях, знакомых пользователю;
пользовательский интерфейс должен быть единообразным;
пользовательский интерфейс должен позволять пользователю исправлять собственные ошибки.
4. Кодирование
4.1 Выбор среды разработки
Delphi – это объектно-ориентированная среда для визуального проектирования Windows-приложений с развитыми механизмами повторного использования программного кода.
Существенной чертой Delphi является компонентная модель разработки программных продуктов. Суть модели заключается в поддержке системой постоянно расширяемого набора объектных компонентов, из которых и строится программа. Компоненты в Delphi просты для использования и развития, как результат сокрытия значительной части той структуры программы, которая близка к взаимодействию с операционной системой.
Для создания в Delphi несложных программных продуктов совершенно необязательно понимать внутреннюю структуру Windows-приложения, получаемого после разработки в Delphi. Достаточно просто уметь работать с некоторыми компонентами, поставляемыми вместе со средой разработчика. При этом начать работу со средой можно практически без предварительного ознакомления, а написание первого приложения не потребует углубления в особенности системы. Этому отчасти способствует удобный интерфейс среды разработчика, не перегруженный излишними вопросами к разработчику.
Программирование в Delphi состоит из двух основных этапов:
1. Визуальное построение программы на основе объектных компонентов и настройка их свойств, в результате чего можно быстро сформировать пользовательский интерфейс и обеспечить значительную долю функциональности приложения.
2. Написание программного кода на языке Object Pascal для обеспечения особой функциональности приложения, которую невозможно достичь использованием визуального построения.
4.2 Характеристика языка программирования
Object Pascal — полностью объектно-ориентированный диалект языка Pascal, разработанный фирмой Borland. Начиная с Delphi 7 фирма Borland начала официально называть свой язык Delphi. Однако Object Pascal поддерживается и развивается другими разработчиками. Наиболее серьёзные реализации Object Pascal, кроме Delphi — это TMT Pascal, Virtual Pascal и Free Pascal.
Многие современные языки специально созданы для облегчения объектно-ориентированного программирования. Однако следует отметить, что можно применять техники ООП и для не-объектно-ориентированного языка и наоборот, применение объектно-ориентированного языка вовсе не означает, что код автоматически становится объектно-ориентированным.
Современный объектно-ориентированный язык предлагает, как правило, следующий обязательный набор синтаксических средств:
Объявление классов с полями (данными — членами класса) и методами (функциями — членами класса).
Механизм расширения класса (наследования) — порождение нового класса от существующего с автоматическим включением всех особенностей реализации класса-предка в состав класса-потомка. Большинство ООП-языков поддерживают только единичное наследование.
Средства защиты внутренней структуры классов от несанкционированного использования извне. Обычно это модификаторы доступа к полям и методам, типа public, private, обычно также protected, иногда некоторые другие.
Полиморфные переменные и параметры функций (методов), позволяющие присваивать одной и той же переменной экземпляры различных классов.
Полиморфное поведение экземпляров классов за счёт использования виртуальных методов. В некоторых ООП-языках все методы классов являются виртуальными.
Видимо, минимальным традиционным объектно-ориентированным языком можно считать язык Оберон, который не содержит никаких других объектных средств, кроме вышеперечисленных (в исходном Обероне даже нет отдельного ключевого слова для объявления класса, а также отсутствуют явно описываемые методы, их заменяют поля процедурного типа). Но большинство языков добавляют к указанному минимальному набору те или иные дополнительные средства. В их числе:
Конструкторы, деструкторы, финализаторы.
Свойства.
Индексаторы.
Интерфейсы — как альтернатива множественному наследованию.
Переопределение операторов для классов.
Часть языков (иногда называемых «чисто объектными») целиком построена вокруг объектных средств — в них любые данные (возможно, за небольшим числом исключений в виде встроенных скалярных типов данных) являются объектами, любой код — методом какого-либо класса и невозможно написать программу, в которой не использовались бы объекты. Примеры подобных языков — Java или Ruby. Другие языки (иногда используется термин «гибридные») включают ООП-подсистему в исходно процедурный язык. В них существует возможность программировать, не обращаясь к объектным средствам. Классические примеры — C++ и Delphi Pascal.
4.3 Структура программы
.dpr – файл проекта создается во время работы над проектом. Этот файл содержит исходный текст главной программы приложения. (ProjectBWI.dpr)
.pas – файлы модулей проекта представляют собой файлы с исходными текстами программ на языке Pascal. (UnitBWI.pas, UnitStart.pas, UnitAboutProg.pas).
.DB – файл базы данных. (Books.DB).
.ico – изображение, являющееся значком запускного файла. (IconBook.ico.).
.jpg – изображения, используемые на формах. (LibraryAbout.jpg, LibraryPic.jpg).
.dfm – файлы форм содержат двоичное представление форм. (UnitBWI.dfm, UnitStart.dfm, UnitAboutProg.dfm).
.res – файлы ресурсов содержат двоичные данные, называемые также ресурсами, которые связаны с выполняемым файлом приложения. (ProjectBWI .res).
.dof – файлы опций проекта хранят установки, определенные во вкладках окна Project Options. Такой файл создается при первом же сохранении проекта и обновляется при каждом последующем (ProjectBWI . Dof).
.dcu – файлы скомпилированных модулей (UnitBWI.dcu, UnitStart.dcu, UnitAboutProg.dcu).
5. Тестирование и отладка
5.1 Тестирование
Стартовая форма программы
Главная форма программы
Главная форма программы с отображением имеющихся средств
Форма, содержащая информацию о программе
5.2 Отладка
1. Во время тестирования программного средства было обнаружено, что при нажатии на кнопку «Закрыть» формы программы перестают отображаться, а выполнение процесса программы продолжается .
Решением этой проблемы может служить изменение методов отображения форм с использования свойства Visible на обработчик OnShow (Hide/Show) форм. В программе предусмотрена кнопка для корректного завершения «Выход».
2. В программном средстве предусмотрено хранение данных о количестве экземпляров издания в библиотеке, а также выдача/возврат издания, но не предусмотрена возможность отображения фактического количества экземпляров при выдаче/возврате. Необходимо добавить в БД поле для отображения фактического количества экземпляров издания.
3. При внесении изменений в запись БД при работе с таблицей результатов выборки изменения не произойдут в таблице, отображающей все записи БД, но при выходе из программы и повторном её запуске изменения произойдут. Для решения этой проблемы можно установить связь между БД и результатом работы SQL-запроса, это может привести к усложнению программы.
Дальнейшие поиск и устранение ошибок, а также оптимизация будут происходить на этапе сопровождения программного средства.
Заключение
В данной курсовой работе была рассмотрена разработка программы для учета библиотечного фонда в среде Delphi. Внедрение новых информационных технологий позволяет решить прежние задачи с большей эффективностью.
Поставленные цели:
В среде Delphi создать приложение под Windows с базой данных.
В проектируемой программе предусмотреть возможность редактирования базы данных.
Добавить возможность выборки из базы данных по запросам пользователя.
Создать уникальный значок приложения и включить в проект.
Решение поставленных задач:
изучены элементы управления базами данных среды программирования Borland Delphi 7;
проанализирован теоретический материал, предназначенный для студентов 1 курса специальности «Прикладная информатика в экономике»;
Выводы:
1. Изучена технология визуального проектирования.
2. Создано программное средство для управления библиотекой.
3. Интерфейс ПС прост, удобен и понятен для пользователей.
Список использованной литературы
1. Архангельский, А.Я. Программирование в Delphi 7/А.Я. Архангельский.- М.: Бином-Пресс, 2003.- 1152 с.: ил.
2. Канту, М. Delphi7: Для профессионалов/М. Канту.- СПб.: Питер, 2004.-1101с.: ил.
3. Пестриков, В.М. Delphi на примерах/В.М. Пестриков, А.Н. Маслобоев.-СПб.:БХВ-Петерберг, 2005.- 596 с.: ил.
4. Стивене, Р. Delphi. Готовые алгоритмы/Р. Стивене: Пер. с англ. Мерещука П.А. -2-е изд., стер. –М.:ДМК Пресс; СПб.:Питенр, 2004. -384 с.:ил.
5. Работа с базами данных в Delphi:Метод. указ./Сост. А.В. Степанов, Ю.А. Степанов.- Новокузнецк.:ГОУВПО СибГИУ, 2003.- 24 c.
6. Конспект лекций по дисциплине “Библиография”.
7. Конспект лекций по дисциплине “Высокоуровневые методы информатики и программирования”.

Нравится материал? Поддержи автора!
Ещё документы из категории информатика:
Чтобы скачать документ, порекомендуйте, пожалуйста, его своим друзьям в любой соц. сети.
После чего кнопка «СКАЧАТЬ» станет доступной!
Кнопочки находятся чуть ниже. Спасибо!
Кнопки:
Скачать документ