АВТОМАТИЗАЦИЯ УЧЁТА ПРИЁМА и ВЫДАЧИ КНИГ В БИБЛИОТЕКЕ

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

профессионального образования

Кафедра «Информационные технологии и системы»

КУРСОВАЯ РАБОТА ПО ДИСЦИПЛИНЕ:

«Объектно-ориентированное программирование»

ТЕМА:«АВТОМАТИЗАЦИЯ УЧЁТА ПРИЁМА и ВЫДАЧИ КНИГ В БИБЛИОТЕКЕ»

Выполнил:

Хабаровск

2013г

ОГЛАВЛЕНИЕ.

ВВЕДЕНИЕ.

ОБЩИЕ ТРЕБОВАНИЯ К ПРОЦЕССУ АВТОМАТИЗАЦИИ.

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

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

Процесс автоматизации деятельности библиотеки должен позволить и обеспечить:

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

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

СЦЕНАРИИ.

1.Оформление заказа на книгу.

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

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

2.Обработка заказов читателей.

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

3 Выдача книги

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

4.Прием книг.

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

СЛОВАРИ.

1.СЛОВАРЬ СУЩНОСТЕЙ

СУЩНОСТЬ

ОПРЕДЕЛЕНИЕ СУЩНОСТИ

Читатель

Постоянный пользователь книгами библиотеки

Библиотека

Учреждение, организующее общественное пользование книгами

Книга

Печатное или электронное издание библиотеки

Карта поиска книг

Форма, содержащая критерии поиска книги, предназначена для поиска книг в каталоге книг

Критерии поиска книг

Параметры объекта, по которым его можно найти.

Тип книги

Один из критериев поиска книг, представляющий выбор печатной или электронной книги

Автор книги

Человек, написавший книгу

Название книги

Имя, присвоенное печатному изданию

Год издания

Год выхода тиража в пользование читателей

Шифр книги

Уникальный номер, присвоенный каждой книге и идентифицирующий ее

Издательство

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

Общее количество книг

Число конкретной книги в фонде.

Количество выданных книг

Число конкретной книги, которое на данный момент выдано читателям

Количество возвращаемых книг

Число конкретной книги, которое на данный момент возвращено читателем в фонд библиотеки

Каталог книг

Объект для хранения списка книг и информации о них

Список всех книг библиотеки

Перечень всех книг библиотеки

Фонд библиотеки

Ресурс библиотеки, хранящий список книг с информацией о них

Информация о книгах

Данные о всех книгах фонда библиотеки

Список найденной литературы

Перечень найденных по критериям поиска книг в каталоге книг

Требовательский лист

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

Информация о книге

Данные о книге, которая вносится в формуляр либо в требовательский лист читателя

Номер читательского билета

Номер, идентифицирующий читательский билет читателя

Текущая дата

Дата, когда читателем был отправлен требовательский лист в каталог заказов читателей

Количество книг

Число книг, указываемое в требовательском листе читателем

Каталог заказов читателей

Объект, хранящий заказы читателей на книги

Список требовательских листов читателей

Перечень, всех, хранимых в каталоге заказов читателей требовательских листов

Библиотекарь

Сотрудник библиотеки, обслуживающий читателя

Карта поиска данных читателя

Форма, содержащая критерии для поиска карты или формуляра читателя

Журнал карт читателей

Объект, хранящий данные о читателях

Список карт читателей

Перечень всех читательских карт, хранимых в журнале карт читателей

Карта читателя

Форма, содержащая данные о конкретном читателе

Данные о читателе

Информация, идентифицирующая читателя (ФИО, номер чит. билета,задолженность по книгам)

Фамилия

Параметр имени, определяющий читателя

Имя

Параметр имени, определяющий читателя

Отчество

Параметр имени, определяющий читателя

Задолженность по книгам

Запись в карте читателя, содержащая информацию о том, задолжник читатель или нет

Журнал формуляров

Объект, содержащий данные формуляров читателей

Список формуляров читателей

Перечень всех формуляров, хранимых в журнале формуляров

Формуляр читателя

Форма , в которой библиотекарем фиксируется информация о взятых читателем книгах

Список записей книг

Перечень всех книг, указанных в формуляре

Дата выдачи книги/дата возврата книги

Дата, когда была выдана книга читателю/дата, когда читатель должен вернуть ее фонду библиотеки

Факт выдачи (книги)

Отметка библиотекарем в каталоге книг фонда библиотеки о выдачи книги читателю

Факт возврата книги

Отметка библиотекарем в каталоге книг фонда библиотеки о возврате книги читателем

Из словаря сущностей были выделены следующие синонимы:

Сотрудник библиотеки - Библиотекарь

2.СЛОВАРЬ ДЕЙСТВИЙ.

ДЕЙСТВИЕ

ОПИСАНИЕ ДЕЙСТВИЯ

Открывает

Действие для открытия выбранного электронного ресурса библиотеки

Указывает

Действие для выбора каких-то конкретных параметров

Ищет

Действие, направленное на поиск ч-л в системе

Выбирает

Действие на выбор данных из представленного списка

Фиксирует

Действие занесения данных в систему

Вносит

Действие, направленное на занесение новых данных систему

Удаляет

Действие удаления найденной записи

Из словаря действий можно выделить следующие синонимы:

Фиксирует-Вносит

Выбирает-Указывает

ИЕРАРХИЯ.

Библиотека

Фонд библиотеки

Каталог книг

Каталог книг

Список всех книг библиотеки

Факт выдачи/Факт возврата книги

Список найденных книг

Информация о книге

Книга

Название книги

Автор книги

Издательство

Год издания

Шифр книги

Общее количество книг

Количество выданных книг

Количество возвращаемых книг

Дата выдачи книги

Дата возврата книги

Каталог заказов читателей

Список требовательских листов читателей

Требовательский лист

Номер читательского билета

Информация о книге

Текущая дата

Количество книг

Журнал карт читателей

Список карт читателей

Карта читателя

Данные о читателе

Задолженность по книгам

Данные о читателе

Фамилия

Имя

Отчество

Номер читательского билета

Журнал формуляров

Список формуляров читателей

Формуляр читателя

Список записей книг

Информация о книге

Данные о читателе

Карта поиска книг

Критерии поиска

Критерии поиска

Тип книги

Автор книги

Название книги

Год издания

Шифр книги

Карта поиска данных читателя

Номер читательского билета

Библиотекарь

Читатель

Аннотация классов.

Класс «Book» - класс «книга»

Область ответственности:

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

Поля:

string NameBook- название книги

string AuthorBook- автор книги

int YearMade- год издания

string CodeBook- шифр книги

string publish- издательство

int count_out-количество выдаваемых книг

int count_int-количество возвращаемых книг

int count-общее количество книг

DateTime dateget-дата выдачи

DateTime dategive-дата возврата;

Методы:

void Info()-ввод информации о книге

void Publisher()-ввод издательства и общего количества книг

void Count()-ввод количества возвращенных книг

void Count_Int()-ввод количества выданных книг

void Data()-ввод даты выдачи и даты возврата книги

Класс «ReaderCard:InfoReader»-карта читателя

Область ответственности:

Хранит данные о читателе, как о пользователе книгами библиотеки

Переменные:

InfoReader inf-данные о читателе

bool fl-задолженность по книгам

Методы:

void Info()-ввод данных

void Show()-вывод информации о читателе

string Dolg()-метод для определения задолженности за читателем

Класс «ListRequest»- «каталог заказов читателей»

Область ответственности:

Содержит список всех требовательских листов читателей на книги

Переменные:

List<Request> list-список требовательских листов

Методы:

void AddNewRequest()- добавление нового требовательского листа в каталог

Request SearchRequest()-поиск требовательского листа

Класс «Request»-требовательский лист

Область ответственности:

Содержит временную информацию о книгах, заказываемых читателем

Переменные:

InfoReader n -данные о читателе(номер читательского билета);

Book b-инфомация о книге

int count- количество книг

DateTime Date-текущая дата

int number-номер читательского билета

Методы:

void addus()-добавление данныхо читателе

void dat(DateTime d)-ввод даты

void AddBook()-добавление информации о книге

void Show()-вывод информации

Класс «ListCard»- «журнал карт читателей»

Область ответственности:

Содержит список всех читательских карт читателей библиотеки

Переменные:

List<ReaderCard> RC-список карт читателей

Методы:

ReaderCard Search()-поиск карты

void Show()-просмотр карты

Класс «ListForms»- «журнал формуляров»

Область ответственности:

Содержит список всех формуляров читателей библиотеки

Переменные:

List<Form> RF-список формуляров читателей

Методы:

Form Search()-поиск формуляра

void Show()-просмотр формуляра

Класс «Form»- «формуляр читателя»

Область ответственности:

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

Переменные:

List<Book> write-список записей книг

Book a-информация о книге

InfoReader us-данные о читателе

Методы:

void AddNewRecord()-добавление новой записи

void DeleteRecord()-удаление записи

void ShowForm()-вывод данных формуляра

Класс «InfoReader»- «данные о читателе»

Область ответственности:

Содержит личные данные читателя.

Переменные:

string Family-фамилия

string Name-имя

string Second-отчество

int num-номер читательского билета

Методы:

void Show()-ввод данных о читателе

Класс «Fond»- фонд библиотеки

Область ответственности:

Содержит каталог книг библиотеки и информацию о ней.

Поля:

Сatalog cat - каталог книг

Методы:

void Getting()-выдача книги

void Giving()-возврат книги

Класс «CatalogSearchBook»- список найденных книг

Область ответственности:

Содержит список книг, найденных по критериям поиска

Поля:

List<Book> List- список найденных книг

Методы:

void Change()- выбор книги

Класс «SBook»-класс «карта поиска книг»

Область ответственности:

Содержит критерии поиска для нахождения книги в фонде

Переменные:

Сriteria spisok-критерии поиска

Методы:

void ChangeCriterias ()-выбор критерия

Класс «Criteria»-класс «критерии поиска»

Область ответственности:

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

Переменные:

string typebook-тип книги

string author-автор книги

string name-название книги

int year-год издания

string code-шифр книги

Методы:

void Show ()-просмотр критериев

Класс «SReader»-класс «карта поиска данных читателя»

Область ответственности:

Содержит параметры для поиска данных читателя

Переменные:

int num-номер читательского билета

Методы:

void Change()-выбор параметра поиска

Класс «Catalog»-класс «каталог книг»

Область ответственности:

Содержит информацию о всех книгах фонда библиотеки

Переменные:

bool fact-факт выдачи/факт возврата книги

List<Book> ListBook-cписок всех книг библиотеки

Методы:

Book Search()-поиск книги

Класс «Library»-класс «библиотека»

Область ответственности:

Содержит все ресурсы для обслуживания читателей, а также учета выдачи и приема книг в библиотеке

Переменные:

Book b

ReaderCard RC- экземпляр класса карта читателя

ListRequest LR- экземпляр класса каталог заказов читателей

Request R- экземпляр класса требовательский лист

ListCard LC- экземпляр класса журнал карт читателей

ListForms LF- экземпляр класса журнал формуляров

Form F - экземпляр класса формуляр читателя

InfoReader IR- экземпляр класса данные о читателе

Fond f- экземпляр класса фонд библиотеки

CatalogSearchBook CSB- экземпляр класса список найденных книг

SBook SB- экземпляр класса карта поиска книг

Criteria C- экземпляр класса критерии поиска

SReader SR- экземпляр класса карта поиска данных читателя

Методы:

void Main()-вызов методов классов


ДИАГРАММЫ ПОСЛЕДОВАТЕЛЬНОСТЕЙ.

1.Формирование электронного заказа на книгу читателями.

1

2

4

5

6

7

1-выбор критериев поиска

2-поиск литературы

3-формирование списка найденных книг

4-результаты поиска

5-выбор книг

6- заполнение требовательского листа

7-отправление требовательского листа в журнал заказов читателей


2.Обработка электронных заказов. Выдача книг.

1

2

4 3

5

7 6

8

9

10

1-выбор параметра поиска

2-поиск карты читателя

3-результат поиска

4-просмотр данных о читателе

5-поиск требовательского листа читателя

6-результат поиска

7-открытие требовательского листа

8-поиск формуляра читателя

9-открытие формуляра читателя

10-заполнение формуляра читателя

3.Выдача книги

1

2

3

4

1- выбор критериев поиска

2-поиск книги

3-результат поиска

4-ввод количества выданных книг

5- выдача книги читателю

4.Прием книг

1

2 3

4

5

6

7

8

1-выбор параметра поиска

2-поиск формуляра читателя

3-результат поиска

4-удаление информации о книге

5-выбор критериев поиска

6-поиск книги

7-результат поиска

8-ввод количества возвращаемых книг

Диаграмма взаимодействия. 1.2

1.7.1 1.1 1.2.1

1.11.1

1.1.1

1.9

1.8

. 1.3

1.5/1.10

1.4

1.6

1.7/1.11


1.1-поиск книги

1.1.1-выбор книг из списка найденных книг

1.2- заполнение требовательского листа на книгу

1.2-1.2.1-отправка требовательского листа в каталог заказов читателей

1.3-поиск карты читателя(для просмотра данных о читателе)

1.4-поиск требовательсого листа

1.5/1.10-поиск формуляра читателя

1.6/1.11-заполняет формуляр/удаляет запись из формуляра

1.7/1.11- поиск книги

1.7.1/1.11.1-факт выдачи книги/факт возврата книги

1.8-выдача книги

1.9-возврат книги

Диаграмма состояния для класса «Требовательский лист»

Требовательский лист пуст

Требовательский лист заполнен


Диаграмма классов:


Журнал заказов читателей

Требовательский

лист

Список найденных книг

Каталог книг

Карта поиска книг

Reader

3

Формуляр читателя

Журнал формуляров

Требовательский лист

Каталог заказов читателей

Данные о читателе

Карта читателя

Журнал карт читателей

Карта поиска данных читателя

Librarian

Librarian

Reader

Список найденных книг

Карта поиска книг

Каталог книг

Список найденных книг

Карта поиска книг

Librarian

Каталог книг

Фонд библиотеки

Формуляр читателя

Журнал формуляров

Карта поиска данных читателя

Каталог книг

Требовательский лист

Reader

Карта поиска книг

Фонд библиотеки

Карта читателя

Каталог заказов читателей

Список найденных книг

Журнал карт читателей

Формуляр читателя

Журнал формуляров

Карта поиска данных читателя

Librarian

Занесение номера чит.билета

n.num=int.Parse(Console.ReadLine());

Book num-null;

int count- 0;

DateTime Date;

Открытие требовательского листа

InfoReader n-null;

Book num-null;

int count- 0;

DateTime Date;

Занесение информации о книге

n.num=int.Parse(Console.ReadLine());

num.NameBook-Console.ReadLine();

num.AuthorBook-Console.ReadLine();

num.YearMade- int.Parse (Console.ReadLine());

num.CodeBook-Console.ReadLine();

count- int.Parse(Console.ReadLine());;

Date-DateTime.Parse(Console.ReadLine());

Занесение

текущей даты

n.num=int.Parse(Console.ReadLine());

num.NameBook-Console.ReadLine();

num.AuthorBook-Console.ReadLine();

num.YearMade- int.Parse (Console.ReadLine());

num.CodeBook-Console.ReadLine();

int count- 0;

DateTime Date;

Занесение кол-ва

книг

n.num=int.Parse(Console.ReadLine());

num.NameBook-Console.ReadLine();

num.AuthorBook-Console.ReadLine();

num.YearMade- int.Parse (Console.ReadLine());

num.CodeBook-Console.ReadLine();

count- int.Parse(Console.ReadLine());;

DateTime Date;

АВТОМАТИЗАЦИЯ УЧЁТА ПРИЁМА и ВЫДАЧИ КНИГ В БИБЛИОТЕКЕ