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

  • Вид работы:
    Дипломная (ВКР)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    1,97 Мб
  • Опубликовано:
    2017-06-16
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

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

Введение

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Исходя из исследования предметной области требуется создать систему учета для школьной библиотеки, которая позволит выдавать книги <#"897600.files/image001.jpg">

Рисунок 1.1

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Имя класса

Имя поля

Методы

Form1

public 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 <#"897600.files/image002.gif">

Рисунок 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_read

uniqueidentifier

16

Идентификационный номер читателя

Fio

nchar(50)

50

ФИО читателя

Teacher

bool

1

Признак ученик/учитель

Inf

nchar(60)

60

Информация о читателе


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

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

Имя поля

Тип данных

Размер, байт

Описание

Id_book

uniqueidentifier

16

Идентификационный номер книги

Kodautor

uniqueidentifier

16

Идентификационный номер автора

Kodizd

uniqueidentifier

16

Идентификационный номер издательства

Kodgenre

uniqueidentifier

16

Идентификационный номер жанра

Name

nchar(30)

30

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

Year

int

4

Год издания

Datereg

date

8

Дата регистрации в базе

Kol

int

4

Количество

Foto

nchar(100)

100

Путь к файлу изображения


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

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

Имя поля

Тип данных

Размер, байт

Описание

Id_ekz

uniqueidentifier

16

Идентификационный номер экземпляра книги

Kodbook

uniqueidentifier

16

Идентификационный номер книги

nekz

int

4

Номер в бумажном реестре

exist

bool

1

Признак наличия в библиотеке

lost

bool

1

Признак потери книги


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

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

Имя поля

Тип данных

Размер, байт

Описание

Id_categ

uniqueidentifier

16

Идентификационный номер жанра

name

nchar(20)

20

Название жанра

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

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

Имя поля

Тип данных

Размер, байт

Описание

Id_author

uniqueidentifier

16

Идентификационный номер автора

fio

nchar(50)

50

Фамилия, имя, отчество автора


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

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

Имя поля

Тип данных

Размер, байт

Описание

Id_izd

uniqueidentifier

16

Идентификационный номер издательства

name

nchar(20)

20

Название издательства

city

nchar(20)

20

Город


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

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

Имя поля

Тип данных

Размер, байт

Описание

Id_zak

uniqueidentifier

16

Идентификационный номер выдачи экземпляра книги

Kodread

uniqueidentifier

16

Идентификационный номер читателя

Kodekz

uniqueidentifier

16

Идентификационный номер экземпляра книги

datevyd

date

8

Дата выдачи экземпляра

datevozv

date

8

Дата возврата экземпляра

vozvr

bool

1

Признак возврата экземпляра

datefactvozv

date

8

Дата фактического возврата экземпляра


.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 <#"897600.files/image006.gif">

Рисунок 4.1

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Имя поля

Тип поля

Размер, байт

Описание поля

Fio_autor

string

255

Фамилия, имя, отчество автора книги

Name_publ

string

255

Название издательства

Name_genre

string

255

Название жанра

Name

string

255

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

Year

int

4

Год издания

Date

DateTime

8

Дата регистрации в базе

Location

string

255

Путь к изображению обложки книги


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

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

Имя поля

Тип поля

Размер, байт

Описание поля

N_ekz

int

4

Номер экземпляра

Name_izd

string

255

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

Exist

bool

1

Признак наличия в библиотеке (по умолчанию есть в наличие)

Lost

bool

1

Признак потери книги (по умолчанию книга не потеряна)


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

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

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

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

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

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

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

В качестве критериев для построения отчетов необходимо выбрать раздел:

- «Формуляр читателя»;

-   «Нет в библиотеке»;

-   «История выдачи книг».

Для каждого указанного раздела необходимо указать параметры построения отчета. Например, для построения отчета для просмотра формуляра читателя «Гладышева Наталья Петровна» необходимо перейти на вкладку «Отчетность», в разделе для построения отчетов выбрать «Формуляр читателя», выбрать соответствующего читателя в выпадающем списке и нажать кнопку «Создать отчет». Сформированный отчет по заданным критериям представлен в приложении Б на рисунке Б.1.

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

5. Методика испытаний

.1 Технические требования

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

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

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

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

Таблица 5.1 - Минимальные системные требования

Элементы конфигурации

Описание характеристик

Процессор

Частота 1.6 ГГц

Оперативная память

1024 Мбайт

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

60 Мбайт

Операционная система

Windows 7

Библиотека .Net Framework

Версия 3.5


5.2 Порядок проведения испытаний

.2.1 Функциональное тестирование

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

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

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

Рисунок 5.1

Протестируем функцию регистрацию новой книги. Для этого на главной форме необходимо перейти на вкладку «Регистрация книг» и нажать кнопку «Регистрация книги».

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

Рисунок 5.2

Для регистрации новой книги необходимо в разделе «Автор» выбрать из списка зарегистрированных авторов ФИО автора книги, в разделе «Жанр» - жанр новой книги, в разделе «Издательство» - название издательства.

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

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

Рисунок 5.3

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

Рисунок 5.4

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

Рисунок 5.5

Функция регистрации нового издания отработана корректно, без выдачи сообщений об ошибках.

Протестируем функцию поиска книг по критериям пользователя.

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

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

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

Рисунок 5.6

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

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

Если поиск не дал результатов, приложение сгенерирует сообщение, представленное на рисунке 5.8.

Рисунок 5.7

Рисунок 5.8

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

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

Рисунок 5.9

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

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

Рисунок 5.10

При просмотре формуляра читателя для каждой книги отмечено наличие книги (на руках, возврат книги, утеря книги).

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

5.2.2 Полное тестирование

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

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

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

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

Для регистрации нового экземпляра книги в базе данных библиотеки должна быть зарегистрирована книга, для которой будет добавлен экземпляр. В пункте 5.2.1 описана регистрация новой книги с названием «Уральские сказы» автора «Бажов Павел». Добавим экземпляр данной книги в библиотеку со следующими тестовыми данными:

- название: Уральские сказы;

-   номер экземпляра: 112.

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

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

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

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

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

Рисунок 5.11

Рисунок 5.12

Рисунок 5.13

Рисунок 5.14

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

- читатель: Гладышева Наталья Петровна;

-   книга: Уральские сказы;

-   экземпляр: 113;

-   дата выдачи 01.06.2017;

-   дата возврата:07.06.2016.

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

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

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

Рисунок 5.15

Рисунок 5.16

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

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

Рисунок 5.17

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

В нижней части формы, представленной на рисунке 5.18 в списке «Формуляр читателя» будет отображен выданный экземпляр.

Рисунок 5.18

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

Рисунок 5.19

Так как экземпляр был возвращен в библиотеку, у читателя «Гладышева Наталья Петровна» в карточке выдачи книг (формуляре читателя) данный экземпляр будет помечен как «Книга возвращена».

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

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

Рисунок 5.20

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

Для формирования данного отчета необходимо перейти на вкладку «Отчетность», выбрать раздел «История выдачи книг» и задать критерии построения отчета: «по дате выдачи» на дату «1.06.2017». Сформированный отчет представлен на рисунке 5.21.

Рисунок 5.21

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

6. Применение

.1 Назначение программы

Главным назначением программы «Программа автоматизации книг в библиотеке школы» является учет экземпляров зарегистрированных книг в библиотеке.

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

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

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

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

Данные из сформированных отчетов можно экспортировать MS Office - в текстовый редактор MS Word, а также в MS Excel.

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

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

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

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

6.2 Условия применения

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

Для работы с приложением требуется установка дополнительных компонентов, таких как библиотека .NET Framework версии 3.5., а также наличие установленного пакета MS Office (MS Word и MS Excel).

6.3 Справочная система

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

Файл справки предоставлен в папке с программой, он имеет имя «Help.chm». Для вызова справочной системы необходимо выбрать в меню пункт «Справка». Структура справочной системы представлена на рисунке 6.1, раздел справки «Работа с вкладками - Регистрация книг» представлен на рисунке 6.2.

Рисунок 6.1

Рисунок 6.2

7. Охрана труда и окружающей среды

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

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

Наиболее важные функции в системе управления охраной труда в Государственном учреждении образования «Средняя школа №109» (ГУО СШ №109) является четкое распределение функций, обязанностей, прав и ответственности в области охраны труда, которые возлагаются на руководителей, специалистов структурных подразделений.

Общее руководство и ответственность за организацию работы по охране труда в ГУО СШ №109 возлагается на директора. Непосредственная организация работы и контроль за выполнением мероприятий по охране труда возлагается на инженера по охране труда.

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

В ГУО СШ №109 организация и контроль обучения сотрудников по вопросам охраны труда возлагается на инженера по охране труда.

Согласно Инструкции о порядке подготовке (обучения), переподготовке, стажировке, инструктажа, повышение квалификации и проверки знаний, работающих по вопросам охраны труда, утвержденной постановлением Министерства труда и социальной защиты Республики Беларусь от 28 ноября 2008г. №175, проводится обучение работников.

Согласно Постановлению Совета Министров Республики, Беларусь 15.01.2004 №30 «Правила расследования и учёта несчастных случаев на производстве и профессиональных заболеваний» проводятся расследования несчастных случаев и профессиональных заболеваний на производстве.

Целью расследования несчастных случаев на производстве является:

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

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

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

Основными видами контроля в организации являются:

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

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

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

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

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

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

Выявленные недостатки в процессе проведения ежемесячного контроля заносятся в журнал ежемесячного контроля за состоянием охраны труда <#"897600.files/image030.gif">

Подготовительный

техник-программист

1

3

Выбор методов и средств

техник- программист

1

4

Разработка алгоритмов и программ

техник- программист

1

18

Отладка программ и анализ результатов

техник- программист

1

10

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

техник- программист

1

5

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

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

Расчет осуществляется по формуле

 (8.1)

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

 от 1,05 до 1,1;

 - норма расхода i-го вида материалов на макет или опытный образец (пач., шт.);

 - действующая отпускная цена за единицу i-го вида материала, руб.;

 - возвратные отходы i-го вида материала (пач., шт. и тому подобное.);

 - цена за единицу возвращенных отходов i-го вида материала, руб.;

n - количество применяемых видов материалов.

Расчет целесообразно представить в таблице 8.2.

Таблица 8.2 - Расчет затрат на материалы, покупные полуфабрикаты и комплектующие изделия

Наименование материалов покупных полуфабрикатов и комплектующих изделий

Единица измерения

Коли-чество

Цена за единицу, руб.

Сумма, руб.

Бумага

пачка

1

6,00

6,00

Ручка

штук

2

0,80

1,60

Скоросшиватель

пачка

2

1,50

3,00

CD-диск

штук

1

1,20

1,20

Всего расходов

11,80

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

12,98


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

К этой статье относятся основная заработная плата работников, а также премии, входящие в фонд заработной платы. Среднее количество рабочих дней в месяце равно 21, а средняя продолжительность рабочего дня составляет 8 часов. Следовательно, часовая заработная плата определяется делением размера оклада на количество рабочих часов в месяце (то есть на 168 часов).

Тарифная ставка на предприятии составляет 50,00 руб. Трудоемкость определяется исходя из данных, представленных в таблице 8.2.

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

 (8.2)

где  - тарифная ставка за день (месячный оклад) i-й категорий работников;

 - количество работников i-й категории;

 - время фактической работы работника i-й категории по теме, дн. или мес.;

 - коэффициент премий по премиальным системам,  1,40.

Расчет основной заработной платы по теме приведен в таблице 8.3.

Таблица 8.3 - Расчет затрат на основную заработную плату научно-производственного персонала

Наименование этапов работ

Исполнитель

Разряд

Тарифный коэффициент

Часовая тарифная ставка, руб.

Трудоемкость, (чел/час)

Затраты по заработной плате, руб.

Подготовительный

техник-программист

8

2,17

0,30

24

15,5

Выбор методов и средств

техник- программист

8

2,17

0,30

32

20,67

Разработка алгоритмов и программ

техник- программист

8

2,17

0,30

144

108,5

Отладка программ и анализ результатов

техник- программист

8

2,17

0,30

80

51,67

Оформление документации

техник- программист

8

2,17

0,30

40

25,83

Всего

222,17

Всего с коэффициентом премий (1.1)

288,82


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

 (8.3)

где  - норматив дополнительной заработной платы, 20%.

Рдз=288,82 × 0,2 = 57 руб. 76 коп.

Рассчитываются отчисления органам социальной защиты по формуле

 (8.4)

где  - норма отчислений в фонд социальной защиты, =34%.

Рос=(288,82+57,76) × 0,34 = 117 руб. 84 коп.

Также рассчитываются отчисления на страхование от несчастных случаев на производстве и профессиональных заболеваний (Остр) по ставке действующего законодательства (Нбгс = 0,3% - 0,9%). Для расчетов среднее значение Нбгс принимается равным 0,6%.

Остр =  (8.5)

Остр=(288,82+57,76) × 0,006 = 2 руб. 8 коп.

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

         (8.6)

где - норматив прямых расходов, ≈ 15%.

Рпр=288,82 × 0,15 = 43 руб. 32 коп.

Исчисляются косвенные (накладные) расходы по формуле

       (8.7)

где  - норматив косвенных расходов, 80%.

Ркос=288,82 × 0,5 = 144 руб. 41 коп.

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

 (8.8)

Сп=12,98 + 288,82 + 57,76 + 117,84 + 2,08 + 43,32 + 144,41 = 667 руб. 21 коп.

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

 (8.9)

где  - средний уровень рентабельности, 30%.

П=667,21 × 0,2 = 133 руб. 44 коп.

Определяется приближенная (ориентировочная) отпускная цена научно-технической продукции по формуле

 (8.10)

Цотп=667,21 + 133,44 = 800 руб. 65 коп.

Определяется налог на добавленную стоимость по формуле

 (8.11)

где  - ставка налога (НДС), =20%.

НДС=800,65 × 0,2 = 160 руб. 13 коп.

Определяется цена научно-технической продукции с учетом НДС по формуле

 (8.12)

Цотп=800,65 + 160,13 = 960 руб. 78 коп.

Все приведенные выше расчеты целесообразно объединить в сводную таблицу 8.4

Таблица 8.4- Расчет ориентировочной цены научно-технической продукции

Статьи затрат

Условные обозначения

Сумма, руб.

Материалы, покупные полуфабрикаты и комплектующие изделия

Рм

12,98

Основная заработная плата научно-производственного персонала

Роз

288,82

Дополнительная заработная плата научно-производственного персонала

Рдз

57,76

Отчисления на социальную защиту и на страхование от несчасных случаев

Рос Остр

117,84 2,08

Прочие прямые расходы

Рпр

43,32

Накладные расходы

Ркос

144,41

Полная себестоимость

Сп

667,21

Плановые накопления (прибыль)

П

133,44

Отпускная цена (без НДС)

Ц

800,65

Налог на добавленную стоимость

РНДС

160,13

Отпускная цена с НДС

ЦОТП

960,78


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

В данном разделе представлено экономическое обоснование для дипломного проекта по теме «Программное средство автоматизации книг в библиотеке школы».

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

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

-   расчет стоимости разработки.

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

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

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

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

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

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

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

Заключение

Задание на дипломное проектирование состояло в разработке приложения «Программное средство автоматизации книг в библиотеке школы».

В приложении были реализованы следующие функции:

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

-   поиск по критериям пользователя;

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

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

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

-   контроль читателей, не вернувших книги в библиотеку на назначенную дату;

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

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

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

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

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

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

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

Проект был реализован с использованием языка C# и системы управления базами данных Microsoft SQL Server.

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

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

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

Список информационных источников

1                Багласова, Т.Г. Методические указания по выполнению дипломного проекта для учащихся по специальности 2-40 01 01 «Программное обеспечение технологий» / Т.Г. Багласова. - Минск: КБП, 2017. - 30 c.

2          Багласова, Т.Г. Методические указания по оформлению курсовых и дипломных проектов / Т.Г. Багласова, К.О. Якимович. - Минск: КБП, 2013. - 29 c.

3          Буч, Гради. Объектно-ориентированный анализ и проектирование. / Гради Буч.- 4-е изд. - М. : Бином, 2012

4          Вендров, А.М. Проектирование программного обеспечения экономических информационных систем: Учебник / А.М. Вендров. - 2-е изд., перераб. и доп.- М. : Финансы и статистика, 2006. - 544 с.

5          Леоненков, А.В. Объектно-ориентированный анализ и проектирование с использованием UML и IBM Rational Rose / А. В. Леоненков. - М.: Интернет-университет информационных технологий, 2010

6                 Ласкавнев, В.П. Охрана труда на предприятиях: Практическое пособие / В.П Ласканев, В.В. Король. - Мн.: Библиотека журнала «Ахова працы»,№2, 2007

7          Лобан, Л.Д. Экономика предприятия: учебный комплекс /Л.Д. Лобан, В.Т. Пыко - Минск : Мисанта, 2006

8                Общие требования к тестовым документам: ГОСТ 2.105-95. - Введ. 01.01.1996. - Минск : Межгос. совет по стандартизации, метрологии и сертификации, 1995. - 84 с.

9          Описание программы. Требования к содержанию, оформлению и контролю качества: ГОСТ 19.402-2000. - Введ. 01.09.2001. - Мн.: Межгос. совет по стандартизации, метрологии и сертификации, 2000. - 14 с.

10        Программа и методика испытаний. Требования к содержанию, оформлению и контролю качества: ГОСТ 19.301-2000. - Введ. 01.09.2001. - Мн.: Межгос. совет по стандартизации, метрологии и сертификации, 2000. - 14 с.

11               Тактайкина Т.И., Анфиногенова Н.М. Книга. Читатель. Библиотека: опыт работ библиотек. - Новосибирск.: НГОНБ, 2008

12              Текст программы. Требования к содержанию, оформлению и контролю качества : ГОСТ 19.401-2000. - Введ. 01.09.2001. - Мн.: Межгос. совет по стандартизации, метрологии и сертификации, 2000. - 16 с.

13          Операционная система Windows 7 [Электронный ресурс] / Википедия.- Фонд Викимедия, 2003. - Режим доступа: #"897600.files/image065.gif">

Рисунок Б.1

Рисунок Б.2

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

 

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