Разработка приложения 'Программное средство автоматизации книг в библиотеке школы'

Тип:
Добавлен:

Введение

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

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

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

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

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

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

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

Средства автоматизации деятельности школьного библиотекаря позволяют достигать нескольких целей сразу:

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

-повышению культуры обслуживания;

-сокращению затрат физического труда, связанных с доставкой заказанных документов в библиотеку;

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

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

Такая автоматизация работы библиотекаря позволит решить следующие проблемы:

-исключить ошибки при неправильном вводе;

-исключить ошибки при формировании статистических отчетов по работе библиотеки;

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

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

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

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

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

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

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

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

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

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

В седьмом разделе «Охрана труда и окружающей среды» описываются следующие пункты:

-правовые, нормативные, социально-экономические и организационные вопросы охраны труда;

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

-пожарная безопасность;

-охрана окружающей среды.

В экономическом разделе описываются следующие пункты:

-технико-экономическое обоснование разработки;

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

-определение цены научно-технического продукта;

-экономическая эффективность разработки.

В заключении описывается выполнение поставленной задачи, степень соответствия проектных решений задания, причины несоответствия, если таковые имеются.

В приложении А приведен текст исходной программы.

В приложении Б формы выходных документов.

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

1. Объектно-ориентированный анализ и проектирование системы

1.1Сущность задачи

Основной задачей рассматриваемой предметной области является автоматизация учета книг в школьной библиотеке.

Рассмотрим предметную область задачи.

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

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

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

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

-контроль состояния книг. В него входит ремонт и подклеивание порванных или поврежденных изданий.

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

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

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

Таким образом, для автоматизации работы библиотекаря выделены следующие функции:

-учет имеющихся в библиотеке книг;

-учет записанных в библиотеку читателей школьной библиотеки;

-поиск имеющихся в библиотеке книг по заданным пользователем критериям;

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

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

Исходя из исследования предметной области требуется создать систему учета для школьной библиотеки, которая позволит выдавать книги <#"justify">-выдача книг ученикам из библиотеки на определенный срок;

-продление книги;

-возврат книги <#"justify">Правила работы библиотеки следующие.

Ученик (или учитель) может взять в библиотеке только определенное количество книг. Читатель берет книги обычно на месяц, но может сразу взять книгу на больший срок. При просрочке возврата книги, читатель получает предупреждение. Когда предупреждений у читателя накапливается больше определенного предела, он лишается правом пользования библиотекой <#"justify">1.2Проектирование модели

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

Функциональная модель данных разрабатываемого программного средства представлена в виде диаграммы вариантов использования, смоделированной на унифицированном языке моделирования UML средствами Rational Rose Enterprise Edition, которая предназначена для определения общих границ и контекста моделируемой предметной области на начальных этапах проектирования программы. Другими словами, суть диаграммы состоит в следующем: проектируемая система представляется в виде множества сущностей, взаимодействующих с системой с помощью вариантов использования.[3]

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

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

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

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

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

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

Для сущности «Книга» атрибутами будут являться код книги, автор, название, год издания, дата регистрации в школьной библиотеке. Для сущности «Экземпляр книги» атрибутами будут код экземпляра, название книги, дата поступления в библиотеку, номер в бумажном реестре. Для сущности «Читатель» атрибутами будут код читателя, ФИО читателя, информация о читателе (признак ученик/учитель). Для сущности «Жанр» атрибутами будут код жанра, название жанра книги. Для сущности «Автор» атрибутами будут код автора, ФИО автора. Для сущности «Выдача книги» атрибутами будут номер выдачи, ФИО читателя, дата выдачи книги, экземпляр книги, дата возврата книги, атрибут «возврат книги», атрибут «продление книги», атрибут «утеря книги».

Информационная модель базы данных представлена на диаграмме «Сущность-связь». Данная диаграмма представлена на рисунке 1.1 в нотации Баркера.

Рисунок 1.1

В рамках языка UML все представления о модели сложной системы фиксируются в виде специальных графических конструкций - диаграмм. В терминах языка UML определены следующие виды диаграмм: диаграмма вариантов использования, диаграмма классов, диаграмма деятельности, диаграмма последовательности, диаграмма компонентов.[5]

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

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

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

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

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

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

-регистрировать новую книгу, все экземпляры новой книги;

-оформить выдачу экземпляров книг;

-сформировать список книг на руках;

-сформировать статистические отчеты по различным критериям пользователя.

К вспомогательным функциям программы относятся:

-предоставить список читателей, отфильтровать список по критерию «учитель/ученик»;

-предоставить справочную информацию об авторе;

-предоставить справочную информацию о программе;

-предоставить данные о формулярах книг;

-предоставить справочную систему приложения.

Диаграмма вариантов использования представлена на листе 1 графической части.

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

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

С этой точки зрения диаграмма классов является дальнейшим развитием концептуальной модели проектируемой системы.[3]

Диаграмма классов для основных классов разрабатываемого приложения представлена на листе 2 графической части. В таблице 1.1 представлены только собственно разработанные члены класса (данные и методы). Стандартные члены класса представлены в тексте программных модулей приложения А.

Таблица 1.1 - Состав основных классов проекта

Имя классаИмя поляМетодыForm1public bool gr1, gr2, gr3, gr4 (признак переключения между вкладками)ShowAuth() показать таблицу авторов книг ShowIzd() показать таблицу издательств ShowGenre() показать жанры книг ShowRead() показать таблицу читателей книг ShowEkz() показать таблицу экземпляров книг RegIzd() регистрация книги SearchBookAuthor() поиск книги по автору SearchBookRead() поиск выданных книг по читателю SearchZadVyd поиск всех выданных книг

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

Для моделирования процесса выполнения операций в языке UML используются так называемые диаграммы деятельности. Каждое состояние на диаграмме деятельности соответствует выполнению некоторой элементарной операции, переход в следующее состояние срабатывает только при завершении этой операции. Графически диаграмма деятельности представляется в форме графа, вершинами которого являются состояния действия, а дугами - переходы от одного состояния действия к другому.[3]

Диаграммы деятельности - частный случай диаграмм состояний. Основная цель использования таких диаграмм - визуализация особенностей реализации операций классов, когда необходимо представить алгоритмы их выполнения. Диаграмма деятельности для функции работы с вкладкой «Каталог книг» представлена на листе 3 графической части.

Для моделирования взаимодействия объектов в UML используется диаграмма последовательности. Диаграмма последовательности для функции поиска данных (поиск по авторам книг) представлена на листе 4 графической части.

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

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

Диаграмма компонентов представлена на листе 5 графической части и содержит следующие компоненты:

-программные компоненты, созданные в среде Visual Studio 2010 Ultimate (файл проекта, файлы ресурсов, файлы программного кода, файлы отчетов);

-файлы классов «*.cs»;

-файлы форм «*.resx»;

-файл проекта Visual Studio «Library.sln»;

-файл базы данных «DataBase1.mdf»;

-файл справочной системы «Help.chm»;

-файлы изображений для формуляров книг *.jpg, *.png, *bmp».

-отчетные документы, сформированные в процессе работы программы «*.rdlc».

2. Вычислительная система

2.1 Требования к аппаратным и операционным ресурсам

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

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

Для работы с приложением необходим компьютер со следующими минимальными программно-техническими требованиями:

-операционная система семейства Windows;

-процессор с частотой 1.8 ГГц;

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

-150 МБайт памяти на жестком диске для программного средства;

-наличие платформы .NET Framework 3.5.

2.2 Инструменты разработки

Инструменты разработки:

-операционная система Microsoft Windows 7;

-среда разработки Microsoft Visual Studio 2010 Professional Edition;

-язык программирования C#;

-CASE-среда Rational Rose Enterprise Edition v 7.0;

-Microsoft SQL Server 2005;

-Help & Manual Professional 7.2.0 <#"justify">Для разработки данного проекта была использована операционная система Microsoft Windows 7.

Операционная система Windows 7 является наилучшей операционной системой для разработки в среде .NET, так как в ней по умолчанию добавлена поддержка .NET Framework 3.5, что позволяет не ставить данный пакет для запуска приложения. Также в данной операционной системе имеется обновлённый набор классов, функций, структур и констант, предоставляемых WinAPI, который позволяет программистам использовать новейшие возможности системы такие, как использование нескольких ядер процессора для повышения продуктивности.[13]

Основными функциями операционной системы Windows 7 являются:

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

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

Что касается среды разработки, то был выбран так же продукт компании Microsoft. Microsoft Visual Studio - линейка бесплатных интегрированных сред разработки, облегчённая версия Microsoft Visual Studio.[15]

Для работы с Microsoft Visual Studio 2010 потребуется современный компьютер под управлением ОС Windows 2003/XP/Vista/2008/7/8/8.1, обновленных до самых последних версий. Полная установка пакета требует порядка 7,5 Гбайт свободного дискового пространства, наличия браузера Internet Explorer 8, библиотеки .NET Framework и офисного пакета MS Office 2013 или MS Office 2012.

Интерфейс приложения отвечает существующей тенденции построения пользовательских оболочек приложений от Microsoft (мультитач-управление, графические эффекты оболочки Aero, ленточный интерфейс и так далее). Среда заметно упростилась и улучшилась в плане пользовательского интерфейса - это заметно по инструментам визуализации кода: программные архитекторы и программисты видят привычный для себя интерфейс, который выполнен с использованием технологий Windows Presentation Foundation и Silverlight, в котором для повышения удобства восприятия убраны некоторые линии и градиенты и оставлена возможность переключения между режимами. Также стоит отметить поддержку мультимониторных систем - это удобно для отладки кода.[15]# - объектно-ориентированный язык программирования. Разработан в 1998-2001 годах группой инженеров под руководством Андерса Хейлсберга в компании Microsoft как основной язык разработки приложений для платформы Microsoft .NET. Компилятор с C# входит в стандартную установку самой .NET, поэтому программы на нём можно создавать и компилировать даже без инструментальных средств, вроде Visual Studio.[17]# относится к семье языков с C-подобным синтаксисом, из них его синтаксис наиболее близок к C++ и Java. Язык имеет статическую типизацию, поддерживает полиморфизм, перегрузку операторов, делегаты, атрибуты, события, свойства, обобщённые типы и методы, итераторы, анонимные функции с поддержкой замыканий, LINQ, исключения, комментарии в формате XML.[17]# разрабатывался как язык программирования прикладного уровня для CLR и, как таковой, зависит, прежде всего, от возможностей самой CLR. Это касается, прежде всего, системы типов C#, которая отражает BCL. Присутствие или отсутствие тех или иных выразительных особенностей языка диктуется тем, может ли конкретная языковая особенность быть транслирована в соответствующие конструкции CLR. Так, с развитием CLR от версии 1.1 к 2.0 значительно обогатился и сам C#; подобного взаимодействия следует ожидать и в дальнейшем. CLR предоставляет C#, как и всем другим .NET-ориентированным языкам, многие возможности, которых лишены «классические» языки программирования.

Rational Rose - популярное средство визуального моделирования объектно-ориентированных информационных систем компании Rational Software Corp. Работа продукта основана на универсальном языке моделирования UML (Universal Modeling Language). Благодаря уникальному языку моделирования Rational Rose способен решать практически любые задачи в проектировании информационных систем: от анализа бизнес процессов до кодогенерации на определенном языке программирования. Только Rose позволяет разрабатывать как высокоуровневые, так и низкоуровневые модели, осуществляя тем самым либо абстрактное проектирование, либо логическое.[18]

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

Microsoft SQL Server 2005 является всеобъемлющим, интегрированным сквозным решением, которое наделяет пользователей вашей организации безопасной, надежной, и продуктивной платформой для обработки промышленной информации и приложений, касающихся интеллектуальных ресурсов предприятия.

SQL Server 2005 предоставляет мощные, знакомые инструменты для профессионалов информационных технологий так же, как и для работников информационной сферы, уменьшая сложность создания, развёртывания, управления и использования данных предприятия и аналитических приложений на платформах от мобильных устройств до информационных систем предприятия.[16]

Благодаря исчерпывающему набору функций, взаимодействию с существующими системами и автоматизации типовых задач, SQL Server 2005 предоставляет полное решение в области хранения данных для предприятий всех масштабов.[16]

Help & Manual Professional <#"justify">3. Проектирование задачи

3.1 Требования к приложению

операционный программный приложение данные

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

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

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

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

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

Единственный блок представляет всю систему как единое целое, имя, указанное в блоке, является общим. Это верно и для интерфейсных дуг - они также представляют полный набор внешних интерфейсов системы в целом. Диаграмма нулевого уровня представлена на рисунке 3.1.

Рисунок 3.1

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

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

Рисунок 3.2

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

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

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

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

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

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

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

Средства защиты, разграничения доступа к данным не предусмотрены.

3.2 Концептуальный прототип

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

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

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

Приложение будет иметь интерфейс в виде вкладок на главной форме. За переходом с вкладки на вкладку будет закреплено определенное действие. Вкладки реализуются стандартным компонентом TabControl, TabPages.

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

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

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

Таблица 3.1 - Вкладки приложения

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

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

Для выбора критериев поиска будет служить стандартный компонент RadioButton.

Выбор различных параметров, например, выбор жанра книги, читателя, экземпляра книги будет закреплен за элементом управления - компонентом ComboBox. Данный компонент будет предназначен для выбора одного из вариантов.

Стандартный элемент управления TextBox будет использован для ввода и вывода разнообразных данных и для отображения текста на формах.

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

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

Например, для регистрации новой книги в базе данных библиотеки на вкладке «Регистрация книг» будет разработан интерфейс - проект формы для добавления новой книги, представленный на рисунке 3.3.

Рисунок 3.3

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

3.3 Организация данных

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

Все данные проекта будут храниться в базе данных «DataBase1.mdf».

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

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

На рисунке 3.4 представлена схема базы данных разрабатываемого приложения.

Рисунок 3.4

Таблица «Readers (Читатели)» хранит информацию о читателях, зарегистрированных в библиотеке. Структура данных о читателях приведена в таблице 3.2

Таблица 3.2 - Структура таблицы «Readers»

Имя поляТип данныхРазмер, байтОписаниеId_readuniqueidentifier16Идентификационный номер читателяFionchar(50)50ФИО читателяTeacherbool1Признак ученик/учительInfnchar(60)60Информация о читателе

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

Таблица 3.3- Структура таблицы «Book»

Имя поляТип данныхРазмер, байтОписаниеId_bookuniqueidentifier16Идентификационный номер книгиKodautoruniqueidentifier16Идентификационный номер автораKodizduniqueidentifier16Идентификационный номер издательстваKodgenreuniqueidentifier16Идентификационный номер жанраNamenchar(30)30Название книгиYearint4Год изданияDateregdate8Дата регистрации в базеKolint4КоличествоFotonchar(100)100Путь к файлу изображения

Таблица «Ekz (Экземпляр)» хранит информацию обо всех экземплярах указанной книги, хранящихся в библиотеке, структура данных приведена в таблице 3.4.

Таблица 3.4- Структура таблицы «Ekz»

Имя поляТип данныхРазмер, байтОписаниеId_ekzuniqueidentifier16Идентификационный номер экземпляра книгиKodbookuniqueidentifier16Идентификационный номер книгиnekzint4Номер в бумажном реестреexistbool1Признак наличия в библиотекеlostbool1Признак потери книги

Таблица «Genre(Жанры)» хранит информацию о жанрах книг, хранящихся в библиотеке, структура данных для категорий изданий приведена в таблице 3.5.

Таблица 3.5- Структура таблицы «Genre»

Имя поляТип данныхРазмер, байтОписаниеId_categuniqueidentifier16Идентификационный номер жанраnamenchar(20)20Название жанраТаблица «Author (Автор)» хранит информацию об авторах книг, хранящихся в библиотеке, структура данных для авторов изданий приведена в таблице 3.6.

Таблица 3.6- Структура таблицы «Author»

Имя поляТип данныхРазмер, байтОписаниеId_authoruniqueidentifier16Идентификационный номер автораfionchar(50)50Фамилия, имя, отчество автора

Таблица «Izd (Издательства)» хранит информацию об издательствах книг, хранящихся в библиотеке, структура данных для издательств приведена в таблице 3.7.

Таблица 3.7- Структура таблицы «Izd»

Имя поляТип данныхРазмер, байтОписаниеId_izduniqueidentifier16Идентификационный номер издательстваnamenchar(20)20Название издательстваcitynchar(20)20Город

Таблица «Zakaz (Выдача книг)» хранит информацию о выдаче экземпляров книг на руки читателям, структура данных для выдачи книг приведена в таблице 3.8.

Таблица 3.8- Структура таблицы «Zakaz»

Имя поляТип данныхРазмер, байтОписаниеId_zakuniqueidentifier16Идентификационный номер выдачи экземпляра книгиKodreaduniqueidentifier16Идентификационный номер читателяKodekzuniqueidentifier16Идентификационный номер экземпляра книгиdatevyddate8Дата выдачи экземпляраdatevozvdate8Дата возврата экземпляраvozvrbool1Признак возврата экземпляраdatefactvozvdate8Дата фактического возврата экземпляра

.4 Функции: логическая и физическая организация

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

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

-регистрация в библиотеке новой книги и/или экземпляра книги;

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

-оформление выдачи экземпляров книг;

-формирование списков экземпляров книг на руках;

-формирование отчетов по выбранным критериям пользователя.

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

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

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

Рассмотрим основные функции проекта.

Функция «Регистрация книги» обрабатывается событием OnClick(), закрепленным за элементом управления Button. Код функции представлен ниже.void Button2_Click(object sender, EventArgs e)

{s1 = textBox1.Text;//считывание данных(s1 == "")

{.Show("Ошибка, не все поля заполнены", "", MessageBoxButtons.OK, MessageBoxIcon.Warning);

}{.Visible = false;connectionString = @"Data //подключение к БДSource=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database1.mdf;Integrated Security=True;User Instance=True";conn = new SqlConnection(connectionString);(var cmd = conn.CreateCommand())

{myReader = null;

//SQL-запрос вывод авторов книгmyCommand = new SqlCommand("SELECT id_author, fio FROM Author WHERE fio=@fio", conn);.Parameters.Clear();.Parameters.AddWithValue("fio", comboBox1.Text);.Open();= myCommand.ExecuteReader();kodaut = "";(myReader.Read())

{= myReader["id_author"].ToString();

}.Close();.Close();

//SQL-запрос вывод жанров изданий.CommandText = "SELECT id_categ, name FROM Categ WHERE name=@name";.Parameters.Clear();.Parameters.AddWithValue("name", comboBox3.Text);.Open();= myCommand.ExecuteReader();kodcateg = "";(myReader.Read())

{= myReader["id_categ"].ToString();

}.Close();.Close();

//считывание фото книгиfoto=pictureBox4.ImageLocation;

if (foto == null) foto = Application.StartupPath.ToString()+"\\Picters\\3.jpg";

//SQL-запрос на добавление новой информации в базу данных

cmd.CommandText = "INSERT INTO Book(kodauthor, kodpubl, kodcateg, name, year, datereg, kol, foto) VALUES(@kodauthor, @kodpubl, @kodcateg, @name, @year, @datereg, @kol, @foto)";.Parameters.Clear();.Parameters.AddWithValue("kodauthor", kodaut);.Parameters.AddWithValue("kodpubl", kodpubl);.Parameters.AddWithValue("kodcateg", kodcateg);.Parameters.AddWithValue("name", textBox1.Text);.Parameters.AddWithValue("year", numericUpDown1.Value);.Parameters.AddWithValue("datereg", dateTimePicker1.Value.Date.ToString("MM.dd.yyyy"));.Parameters.AddWithValue("kol",0);.Parameters.AddWithValue("foto", foto);.Open();.ExecuteNonQuery();.Close();.Text = "";.Image = null;.Show("Книга зарегистрирована", "", MessageBoxButtons.OK, MessageBoxIcon.Information);

}

}

}

Функция «Поиск книг по критериям» закреплена за элементом управления Button «Применить». Функция поиска для разных таблиц реализована по одному принципу с изменением лишь параметров поиска. Обработка функции поиска осуществляется обработкой события OnClick() - нажатия на кнопку «Применить». Код функции представлен ниже.void Buton28_Click(object sender, EventArgs e)

{.Enabled = true;(radioButton24.Checked)

//параметры поиска представлены единичным выбором компонента radioButton

{TableAdapter.Connection.Close();TableAdapter.Connection.Open();

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

//формируется соответствующий SQL запрос

dataTable6TableAdapter.Adapter.SelectCommand.CommandText = "SELECT CardTmp.kodekz, CardTmp.kodcard, Ekz.id_ekz, CardTmp.id, Ekz.kodizd, Ekz.nreestr, Book.kodauthor, " +

"Book.name, Book.id_izd, Author.id_author, Author.fio, Card.kodpers, Pers.id_pers, Pers.fio AS Expr1, " +

"Card.id_card, Card.datevyd, Card.datevozv, CardTmp.datefactvozv FROM CardTmp, Ekz, Book, Author, Card, Pers " +

"WHERE Pers.id_pers = Card.kodpers AND Card.id_card = CardTmp.kodcard AND CardTmp.kodekz = Ekz.id_ekz AND " +

"Author.id_author = Book.kodauthor AND Ekz.kodizd = Book.id_izd AND Book.name LIKE '" + textBox13.Text + "%'";TableAdapter.Adapter.SelectCommand.Parameters.Clear();TableAdapter.Adapter.SelectCommand.ExecuteReader();TableAdapter.Connection.Close();DataSet.DataTable6.Clear();TableAdapter.Adapter.Fill(database1DataSet.DataTable6);(database1DataSet.DataTable6.Count == 0)

{();.Enabled = false;.Show("Ничего не найдено", "", MessageBoxButtons.OK, MessageBoxIcon.Information);

} }

if (radioButton23.Checked)//другой критерий поиска

{TableAdapter.Connection.Close();TableAdapter.Connection.Open();TableAdapter.Adapter.SelectCommand.CommandText = "SELECT CardTmp.kodekz, CardTmp.kodcard, Ekz.id_ekz, CardTmp.id, Ekz.kodizd, Ekz.nreestr, Book.kodauthor, " +

"Book.name, Book.id_izd, Author.id_author, Author.fio, Card.kodpers, Pers.id_pers, Pers.fio AS Expr1, " +"Card.id_card, Card.datevyd, Card.datevozv, CardTmp.datefactvozv FROM CardTmp, Ekz, Book, Author, Card, Pers " +

"WHERE Pers.id_pers = Card.kodpers AND Card.id_card = CardTmp.kodcard AND CardTmp.kodekz = Ekz.id_ekz AND " +

"Author.id_author = Book.kodauthor AND Ekz.kodizd = Book.id_izd AND Pers.fio LIKE '" + textBox13.Text + "%'";TableAdapter.Adapter.SelectCommand.Parameters.Clear();TableAdapter.Adapter.SelectCommand.ExecuteReader();TableAdapter.Connection.Close();DataSet.DataTable6.Clear();TableAdapter.Adapter.Fill(database1DataSet.DataTable6);(database1DataSet.DataTable6.Count == 0)

{();.Enabled = false;.Show("Ничего не найдено", "", MessageBoxButtons.OK, MessageBoxIcon.Information);

} } } }

Функция «Просмотр книг» закреплена за элементом управления Button «Просмотреть каталог книг» во вкладке «Регистрация книг», обрабатывается событием OnClick(). Код функции представлен ниже.void Button3_Click(object sender, EventArgs e)

{.Enabled = false;connectionString = @"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database1.mdf;Integrated Security=True;User Instance=True";conn = new SqlConnection(connectionString);(var cmd = conn.CreateCommand())

{

SqlDataReader myReader = null;

//формирование SQL запроса на вывод данных о читателях

SqlCommand myCommand = new SqlCommand("SELECT id_pers, fio FROM Pers WHERE fio=@fio", conn);

myCommand.Parameters.Clear();.Parameters.AddWithValue("fio", comboBox6.Text);.Open();= myCommand.ExecuteReader(); kdp = "";

while (myReader.Read())//считывание данных из БД

{

kdp = myReader["id_pers"].ToString(); //считывание кода читателя

}

myReader.Close();

conn.Close();

//формирование SQL запроса на вывод данных об авторах

authorTableAdapter.Connection.Close();.Connection.Open();.Adapter.SelectCommand.CommandText = "SELECT id_author, fio FROM dbo.Author";.Adapter.SelectCommand.Parameters.Clear();.Adapter.SelectCommand.ExecuteReader();.Connection.Close();DataSet.Author.Clear();.Adapter.Fill(database1DataSet.Author);

//формирование SQL запроса на вывод данных о категориях

categTableAdapter.Connection.Close();.Connection.Open();.Adapter.SelectCommand.CommandText = "SELECT id_categ, name, inf FROM dbo.Categ";.Adapter.SelectCommand.Parameters.Clear();.Adapter.SelectCommand.ExecuteReader();.Connection.Close();DataSet.Categ.Clear();.Adapter.Fill(database1DataSet.Categ);

// формирование SQL запроса на вывод данных об экземплярах книги

String kodizd = ""; ;connectionString = @"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database1.mdf;Integrated Security=True;User Instance=True";conn = new SqlConnection(connectionString);(var cmd = conn.CreateCommand())

{myReader = null;myCommand = new SqlCommand("SELECT Book.id_izd, Book.kodauthor, Book.kodpubl, Book.kodcateg, Book.name, Book.year, Book.datereg, " +

"Book.kol, Book.foto, Author.fio, Author.id_author, Publ.id_publ, Publ.name AS Expr1, Publ.city, Publ.inf," +

" Categ.id_categ, Categ.name AS Expr2, Categ.inf AS Expr3 FROM Book, Author, Publ, Categ WHERE " +

"Book.kodauthor=Author.id_author AND Book.kodpubl=Publ.id_publ AND Book.kodcateg = Categ.id_categ AND " +

"Book.name=@Name", conn);.Parameters.Clear();.Parameters.AddWithValue("Name", comboBox4.Text);.Open();= myCommand.ExecuteReader();(myReader.Read())

{= myReader["id_izd"].ToString(); //считывание кода издательства

}.Close();.Close();

}.Connection.Open();.Adapter.SelectCommand.CommandText = "SELECT id_ekz, kodizd, datepost, nreestr, exist FROM dbo.Ekz WHERE kodizd=@kodizd";.Adapter.SelectCommand.Parameters.Clear();.Adapter.SelectCommand.Parameters.AddWithValue("kodizd", kodizd);.Adapter.SelectCommand.ExecuteReader();.Connection.Close();DataSet.Ekz.Clear();.Adapter.Fill(database1DataSet.Ekz);

}

}

Полный код функций представлен в приложении А.

3.5 Проектирование справочной системы приложения

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

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

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

Данная справочная информационная система будет разработана с помощью программы Help & Manual Professional 7.2.0 <#"justify">4. Описание программного средства

4.1 Общие сведения

Программное приложение имеет название «Library.exe», разработано в визуальной среде разработки Microsoft Visual Studio 2010 на языке программирования C#. Программный продукт может работать в средах операционных систем семейства Microsoft Windows, начиная с Windows XP.

Для того чтобы начать работу с программой, нужно запустить файл «Library.exe». Его объем составляет 500 килобайт. Для функционирования программы необходимо установить библиотеку .NET Framework 3.5.

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

Файл базы данных имеет название «DataBase1.mdf» и хранится в папке с приложением. Файлы изображения фотографий обложек книг должны храниться в папке «Picters», находящейся в корне директории с приложением.

Файлы «Report1-4.rdlc» хранят сформированные в процессе работы приложения отчеты по выбранным критериям пользователя.

На рисунке 4.1 представлена структура проекта приложения.

Рисунок 4.1

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

4.2 Функциональное назначение

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

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

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

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

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

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

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

Для получения быстрого доступа к книгам, выданным на руки, служит вкладка «Формуляр читателей», в которой представлен полный список экземпляров книг, выданных выбранному читателю (так называемая история выдачи книг для читателя).

В приложении реализовано формирование отчетов по различным критериям пользователя. Например, имеется возможность формирования списка всех утерянных экземпляров книг, всех книг, выданных на заданную дату и так далее. Из сформированного отчета пользователь имеет возможность экспортировать данные в MS Office (Word, Excel), а также распечатать сформированный отчет.

Средства защиты, разграничения доступа к данным и сетевая поддержка не предусмотрены.

4.3 Входные данные

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

Таблица 4.1 - Структура входных данных для регистрации новой книги

Имя поляТип поляРазмер, байтОписание поляFio_autorstring255Фамилия, имя, отчество автора книгиName_publstring255Название издательстваName_genrestring255Название жанраNamestring255Название книгиYearint4Год изданияDateDateTime8Дата регистрации в базеLocationstring255Путь к изображению обложки книги

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

Таблица 4.2 - Структура входных данных для добавления нового экземпляра зарегистрированной книги

Имя поляТип поляРазмер, байтОписание поляN_ekzint4Номер экземпляраName_izdstring255Название книгиExistbool1Признак наличия в библиотеке (по умолчанию есть в наличие)Lostbool1Признак потери книги (по умолчанию книга не потеряна)

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

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

4.4 Выходные данные

Выходные данные разнообразны и зависят от режима работы с программой.

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

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

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

В качестве кр

Copyright © 2018 WorldReferat.ru All rights reserved.