Главная Учебники - Разные Лекции (разные) - часть 33
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ ГОУ ВПО «Иркутский Государственный Университет» ФИЛИАЛ В Г.БРАТСКЕ КАФЕДРА ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ по высокоуровневым методам информатики и программирования Информационная система «Библиотека» Пояснительная записка Руководитель: к.т.н., доцент кафедры ИТ Н. Н. Люблинская Исполнитель: студент группы ПИ-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); - связывает управление блоками дополнительной информации и редактирования записей БД с управлением таблицы всех записей 4) Блок средств выполнения выборки из базы данных по автору, заглавию и по названию области литературы, сведениям, относящимся к заглавию, заглавию издания, жанру, примечаниям 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 |