Информационная система для библиотеки университета
Untitled
ВСТУП
В наш час майже всі види діяльності автоматизуються, тобто створюються умови для зручного виконання роботи, а також для економії коштів та часу на виконання тої чи іншої роботи. І однією із сфер, яка є досить автоматизованою в наш час це є надання освіти студентам, адже як надання інформації так і оцінювання знань студентів в електронному виді є досить зручнішим, а ніж в паперовому. Одним з пунктів для отримання студентами освіти, потрібно багато інформації опрацьовувати самостійно, тобто відвідувати бібліотеку. І для того, щоб студенти мали змогу швидко дізнатися інформацію стосовного того яка саме література присутня в бібліотеці, а бібліотекар мав змогу швидко надати інформацію стосовно необхідної літератури, швидко видати книжку відмітивши лише в програмі, кому саме видано книгу, а не записувати, що займає досить багато часу. Також за допомогою програми досить легше вести журнал відвідувань бібліотеки.
Темою дипломного проекту є «Інформаційна система для бібліотеки університету (на прикладі бібліотеки Криворізької філії Європейського університету)».
Метою даного проекту є створення досконалого програмного продукту, із зручним інтерфейсом та добре відпрацьованим функціоналом інформаційної системи бібліотеки, яка б слугувала для більш швидкої роботи, як бібліотекаря так і читача.
Предмет дослідження дипломного проекту - робота бібліотечної системи університету.
Об'єкт дослідження - бібліотека Криворізької філії Європейського університету.
Отже за мету було поставлено створити програмний продукт для автоматизації роботи бібліотеки. Дана програма має мати змогу зберігати всю інформацію про літературу, яка є в бібліотеці, а також періодичні видання, тобто ведення, як каталогу так і картотеки. Ще одним з пунктів є ведення обліку методичного кабінету.
Окрім того, що в програмі будуть всі книги, вони мають бути розділені по дисциплінам, а також має бути указано, який саме це посібник теоретичний чи практичний, на якій мові та інші відомості про книги. Але це лише зі сторони ведення обліку книг, а програма ще має використовуватися бібліотекарем при видачі книг та повернені їх назад до бібліотеки, а також ведення статистики відвідування бібліотеки.
Ефективність даної програми полягає в тому, що бібліотекар має змогу надати потрібну інформацію більшій кількості студентів, адже не всі хочуть стояти в черзі, хоча й потрібна якась інформація, а за допомогою програми можна буде швидко переглянути інформацію стосовно необхідної літератури, і про її наявність і навіть можливість переглянути де саме вона знаходиться.
1. ОПИС ОБ'ЄКТУ ІНФОРМАТИЗАЦІЇ
Опис існуючої бібліотечної системи
Створення та використання електронних ресурсів в сучасній бібліотечній практиці пов'язані, передусім, з неперервним збільшення об'єму різної інформації і зростанням необхідності користувачів оперативно, повно та ефективно отримувати інформацію.
В наш час бібліотекар має пам'ятати дуже велику кількість інформації, а саме які є книги, чи є вони в наявності в бібліотеці чи ні, інформацію про періодичні видання, але все пам'ятати не можливо і для цього створенні каталоги та картотеки, для більш швидкого пошуку літератури. Але для того, щоб найти необхідну книгу потрібно переглянути велику кількість карточок, сказати бібліотекареві, який надасть інформацію про наявність даної книги, але ж в свою чергу бібліотекар надасть інформацію стосовно книги лише після того як подивиться на поличку де вона завжди стоїть, а якщо бібліотекар працює не досить довгий період часу, то може взагалі не надати вам необхідну інформацію, адже можливо працюючий попередньо розставив книги так, як саме йому зручно.
Облік книг ведеться також в письмовому виді, тобто записується в журналі. Але з часом журнали старіють, тобто при постійному перегляді книг їх вигляд псується, витираються, шарпаються сторінки і для того щоб було все зрозуміло необхідно їх переписувати. Пошук книги в такому журналі займає велику кількість часу, також при перевірці бібліотечного фонду книги, які прийшли разом, тобто мають всі одинакові характеристики, лише різні номери можуть бути розташовані в різних частинах журналу, що є досить не зручним при пошуку.
Ще одним з пунктів з роботи бібліотекаря це облік книг, які видані та які книги були повернені. Адже при видачі книги бібліотекар багато часу.
тратить на те, щоб знайти необхідний формуляр, потім записує книгу і вже лише після цього видає книгу. При написанні контрольних, курсових та дипломних робіт необхідно писати велику кількість інформації тому, деякі книги є можливість дати книгу на ніч, тобто вкінці робочого дня взяти і вранці по відкриттю бібліотеки повернути назад, але навіть цей пункт без програми досить не зручно виконувати, адже бібліотекар має знову потратити час на те, щоб переглянути про кількість книг і вже після цього надати інформацію стосовно того чи можна взяти книгу з собою, взагалі здається, що це займає не дуже багато часу, але коли читачів багато і для того, щоб кожному надати необхідну інформацію тратиться велика кількість часу, що веде за собою до утворення черги.
Що стосується періодичних видань, тобто ведення картотеки, то для економії часу, як студентів так і бібліотекаря набагато зручніше вести облік періодичних видань в електронному виді, адже ввести в програмі необхідну статтю набагато простіше, а ніж переглядати досить велику кількість карток.
1.2. Опис існуючих інформаційних систем
Перед тим як приступити до створення програмного продукту необхідно проаналізувати вже існуючі інформаційні системи в області інформатизації роботи бібліотеки.
Однією з інформаційних систем, яка використовується в навчальних закладах є програма «ИРБИС». Система автоматизації бібліотек «ИРБИС» представляє собою типові інтегровані рішення в області автоматизації бібліотечних технологій, вона може бути використана для бібліотек будь якого типу.
Система орієнтована на роботу в локальних мережах. А також пропонує технологію автоматичного формування словників, на основі яких реалізується швидкий пошук по будь-яким елементам опису.
Система складається з п'яти автоматизованих робочих місць, а саме:
«Комплектатор».
«Каталогізатор».
«Читач».
«Книговидача».
«Адміністратор».
«Комплектатор» - представляє собою робоче місце бібліотечного робітника, що виконує функції по комплектуванню і обліку фонду бібліотеки на основі ведення спеціальної бази даних.
«Каталогізатор» - представляє собою робоче місце бібліотечного робітника, що виконує всі функції по формуванню (поповнення та зміни) бази даних електронного каталогу.
«Читач» - представляє собою робоче місце кінцевого користувача електронного каталогу і призначений для всезагального пошуку в електронному каталозі, перегляду знайденої інформації і формування замовлення на видачу знайденої літератури.
«Книговидача» - представляє собою робоче місце бібліотечного працівника, який виконує функції по видачі літератури у відповідності з формуванням замовлення та її повернення.
«Адміністратор» - представляє собою робоче місце спеціаліста, який виконує системні операції над базами даних в цілому, направленні на підтримку їх актуальному стані.
І так розглянемо який же вид має дана програма, а саме форма «Читатель» показано на рис. 1.1.
На даній формі читач може як переглянути всю літературу по визначеній дисципліни, або ж знаючи автора чи назву книги організувати пошук по визначеному автору, чи взагалі організувати пошук по ключовим слова необхідної літератури, а саме вибравши в «Словарь» автора чи книгу натиснути на кнопку «Выполнить» після чого буде видно чи була знайдена необхідна література, яку можна переглянути перейшовши на «Просмотр», як це показано на рис. 1.2.
<>
Рис. 1.1. Форма «Читатель» на робочій площині «Поиск»
<>
Рис. 1.2. Форма «Читатель» на робочій площині «Просмотр»
Та перед тим, щоб мати можливість переглядати літературу, читач має бути зареєстрованим, тобто перед читачем виводиться форма в якій потрібно ввести своє прізвище та ім'я, як це показано на рис. 1.3.
<>
Рис. 1.3. Форма реєстрації читача
Після того як читач ввів своє прізвище та ім'я, воно перевіряється, якщо дане ім'я було занесене до бази даних, тобто читач був зареєстрований, то він може переглядати всю літературу, користуватися пошуком та деякими іншими функціями, якщо ж користувач не зареєстрований то програма закриється.
Наступним пунктом розглянемо ведення електронного каталогу, тобто додавання та редагування фонду бібліотеки. Перед тим як почати заносити дані до бази даних її потрібно створити, краще всього бази даних, особливо якщо це бібліотека університету, називати по назвам дисциплін. Створення нової бази даних показано на рис. 1.4.
<>
Рис. 1.4. Створення нової бази даних
Після того як буде правильно введено ім'я та повну назву бази даних і натиснувши на кнопку «Создать» буде створена нова база даних куди вже можна заносити необхідну літературу.
Створивши базу даних переходимо до каталогу введення літератури, як це показано на рис. 1.5.
<>
Рис. 1.5. Каталогізатор
Де показані всі функції каталогізатора, а саме:
перегляд всіх існуючих баз даних, та даних по літературі, що в них знаходиться;
організація пошуку в тому виді, який є самим зручним для користувача, а саме по імені автору, по тематиці, ключовим словам, назві книг чи іншому виді, що буде розглянуто далі;
перегляд літератури в каталозі, яка є відміченою;
робота з базою даних, а саме додавання, видалення, експорт даних, а також робота з даними тобто можливості збереження відміни виконаних функцій щодо даних.
Перед тим як вносити зміни потрібно вибрати необхідну базу даних в яку саме потрібно вносити зміни чи додавати нову літературу. У вкладці «Ввод» вводиться вся необхідна інформація про книгу, яку вкінці потрібно зберегти натиснувши на кнопку «Сохранить», або ж якщо було введене не так як потрібно то натиснути кнопку «Отменить», для того щоб занести дані про нову книгу необхідно натиснути на кнопку «Новий». Якщо ж так сталося, що інформація про книгу була занесена не до тої бази даних що потрібно, то її можна скопіювати в необхідну базу даних натиснувши на кнопку показану на рис. 1.6.
<>
Рис. 1.6. Копіювання даних до другої бази даних
Натиснувши на кнопку що показано на рис. 1.6. на екранні з'являється форма наступного виду рис. 1.7.
<>
Рис. 1.7. Копіювання документів
На формі копіювання даних потрібно указати що саме копіювати і куди, після чого натиснувши на кнопку «Выполнить» все буде виконано.
Під час того як вносити літературу можна переглянути яка саме література вже була введена, а саме перейшовши на вкладку «Просмотр», як це показано на рис. 1.8. Літературу можна переглядати як з бази даних в яку саме вносяться зміни, так і ті що були створенні раніше. Здійснювати пошук є можливість за різними типами:
по автору;
по дисципліні;
по назві книги;
по ключовим словам.
<>
Рис. 1.8. Перегляд літератури в базі даних
Також в «Каталогизаторе» можна організувати пошук необхідної літератури, яка вже занесена бо бази даних, це показано на рис. 1.9.
Пошук можна організувати різних видів, як це показано на рис. 1.10.
<>
Рис. 1.9. Пошук необхідної літератури
<>
Рис. 1.10. Види пошуку
Наступним пунктом розглянемо модуль «Книговидача», вона має наступний вигляд рис. 1.11.
Його функціональний інтерфейс складається з трьох робочих площин, саме:
Закази;
Читачі;
Контроль/статистика.
Закази - включає компоненти, які реалізують роботу з чергою замовлень на видачу.
Читач - включає компоненти, що реалізують роботу з документами (карточками) читачів, з цілю оформлення повернення літератури і видачі без попереднього замовлення.
Контроль/статистика - слугує для отримання статистичних даних і контролю системи книговидачі.
<>
Рис. 1.11. Оформлення замовлення книговидачі
Після того як читач знайшов необхідну літературу оформляється замовлення і читач стає в чергу, як це показано на рис. 1.12.
<>
Рис. 1.12. Параметри черги замовлень
Коли дійшла черга оформлюється замовлення - це показано на рис. 1.13.
<>
Рис. 1.13. Виконання замовлення
Для того щоб дізнатися про заборгованість читача необхідно натиснути на вкладку «Читатель», дані які там зберігаються показано на рис. 1.14.
Модуль адміністратор - представляє собою робоче місце спеціаліста, який виконує системні операції над базами даних в цілому, направленні на підтримку їх актуальному стані, головна форма адміністратора показана на рис. 1.15.
Адміністратор має всі права змінювати дані, адже для того, щоб контролювати вірність роботи, внесення нової літератури чи зміну введеної раніше потрібно використовувати всі можливості програмного продукту, який саме використовується для автоматизації роботи.
<>
Рис. 1.14. Інформація про читача
<>
Рис. 1.15. Головна форма адміністратора
Автоматизоване робоче місце «Комплектатор» представляє собою робоче місце бібліотечного робітника, який на основі ведення спеціальної бази даних виконує функції по комплектуванню і врахуванню фондів бібліотеки.
Загальний вид користувацького інтерфейсу АРМ «Комплектатор» показано на рис. 1.16. Комплектатор складається з таких вкладок:
Заказ;
Поступление;
Выбытие;
Подписка.
<>
Рис. 1.16. Загальний вид форми «Комплектатор»
АРМ «Комплектатор» представляє собою автоматизоване робоче місце бібліотечного робітника, який на основі ведення спеціальної бази даних виконує функції по комплектуванню та урахуванню фонду бібліотеки, а саме:
введення коротких бібліографічних даних;
контроль за виконанням замовлень;
контроль надходжень до бібліотеки;
списування книг.
1.3. Постановка задачі
В результаті того, як було розглянуто проблеми існуючих бібліотечних систем, а також проаналізовано існуючі програмні продукти інформатизації роботи бібліотеки, було зроблено висновки і поставлено за мету створити інформаційну систему для бібліотеки, яка буде відповідати таким пунктам:
буде зручною та зрозумілою у використанні для бібліотекаря;
зручність використання для користувача, тобто для студента чи викладача;
злагодженість роботи системи.
Недоліком розглянутого попередньо прикладу являється досить заплутаний,складний дизайн програми, що призводить до неповного та не раціонального використання програми, тобто програма не використовується з усіма з своїми функціями, адже є досить складною в освоєнні.
Створена інформаційна система для бібліотеки має володіти такими функціональними можливостями:
перегляд всієї літератури бібліотеки, що особливо потрібно при перевірці (ведення каталогу всієї літератури, що є в наявності в бібліотеці);
перегляд літератури по дисциплінам;
перегляд всіх періодичних видань (ведення картотеки всіх періодичних видань, які надійшли і зберігаються в бібліотеці);
перегляд періодичних видань по дисциплінам;
ведення обліку читачів, тобто збереження про читачів всю необхідну інформацію;
ведення обліку видачі та повернення книг;
ведення статистики відвідувань бібліотеки;
ведення статистики по літературі, яка особливо користується попитом;
відмітки стосовно літератури, яка є необхідною, але її немає у наявності;
відмітки про затримання книги;
відмітки стосовно того де саме знаходиться книга;
відмітки стосовно того чи є можливість надати книгу читачеві на ніч.
Для того, щоб програмний продукт мав досить високу планку у використанні, він має бути окрім того, що достовірним і правильно працювати, він має бути зрозуміли і зручним у використанні, адже навіть в наш час коли майже всі сфери діяльності автоматизовані велика кількість людей не мала можливості працювати з комп'ютером і перед ним стоїть страх, що вони зроблять, щось не так і все, вже нічого не виправиш, а якщо інтерфейс системи буде складним, то взагалі звикнути до системи буде досить складно, тому при створенні інформаційної системи для бібліотеки необхідно, необхідно належну увагу виділяти для зручності його використання.
Отже перед тим як приступити до створення інформаційного продукту необхідно визначитися за допомогою яких саме програм буде виконуватися завдання. І так перед тим як створити програму необхідно проаналізувати діяльність програми, що буде виконано за допомогою Visual Paradigm for UML 6.0 Enterprise Edition. Програмний продукт буде розроблятися за допомогою мови С#, а у якості СКБД буде використано SQL.
2. ПРОЕКТУВАННЯ ІНФОРМАЦІЙНОЇ СИСТЕМИ
2.1. Алгоритм функціонування інформаційної системи
Існують такі етапи життєвого циклу процесу розробки інформаційної управляючої системи:
етап встановлення вимог до системи;
етап специфікації вимог системи;
етап проектування архітектури системи;
етап деталізованого проектування системи;
етап реалізації системи;
етап інтеграції системи;
етап супроводження системи.
Отже перейдемо до характеристики кожного етапу та дій які виконуються на кожному етапі.
На етапі встановлення вимог до системи мають бути спільно визначені з замовником та тим хто саме буде створювати систему вимоги яких при побудові системи потрібно буде дотримуватися, щоб в подальшому не було не порозумінь вже після створення системи, та й взагалі для розуміння розробником, що він має розробити.
На етапі специфікації вимог системи визначається загальна модель системи, всі існуючі актори та зв'язки між ними тобто будується діаграма варіантів використовування. Дана діаграм - це початкове концептуальне представлення чи концептуальна модель системи в процесі її проектування та розробки. Взагалі діаграма варіантів використовування - це діаграма, на якій показуються відносини між акторами та варіантами використовування. Тобто побудувавши діаграму варіантів використовування вже буде зрозуміло як має виглядати модель опрацьовуваної системи, які мають бути присутні актори і які дії вони виконують між собою.
Наступний етап який розглядається - це етап проектування архітектури системи. На даному етапі будується діаграма компонентів, а також діаграма розгортання, тобто діаграми на яких показані складові самої системи.
На етапі деталізованого проектування системи потрібно детально розглянути процеси як працює система, її класи, послідовність виконання різних етапів роботи системи. На цьому етапі мають бути створені такі діаграми:
діаграма класів;
діаграма кооперацій;
діаграма послідовності;
діаграма станів;
діаграма діяльності.
Діаграма класів (class diagram) - це діаграма на якій представлений збір декларативних чи статистичних елементів моделі, таких як класи з атрибутами та операціями, а також зв'язуючи їх відносини. За допомогою цієї діаграми показується статистична структурна модель системи що проектується, графічне представлення таких структурних взаємозв'язків логічної моделі системи, яка не залежить від часу. Тобто на даному етапі мають бути точно визначені всі необхідні класи їх атрибути, операції, типи даних та зв'язки між класами, адже в подальшому на основі діаграми класів буде будуватися діаграма EntityRelationshipDiagram, на якій мають бути уточненими всі ключові поля.
Діаграма кооперацій (collaboration diagram) - це діаграма потрібна для опису системи на рівні окремих елементів, які обмінюються між собою інформацією, для того, щоб досягти своєї цілі чи варіанту використання.
Діаграма послідовності (sequence diagram) - це діаграма на якій показані об'єкти, у порядку з часом їх прояву. За допомогою даної діаграми можна представити взаємодії елементів моделі, як часовий графік «життя» всіх об'єктів, зв'язаних між собою для варіанту використання програмної системи. Тобто вже на цьому етапі буде зрозуміло, що за чим буде виконуватися.
Діаграма станів (statechart diagram) - це діаграма, яка показує кінцевий автомат. Кінцевий автомат - це модель специфікації поведінки об'єкту у формі послідовності його станів, які описують реакцію об'єкта на зовнішні дії, виконання об'єктом дій, а також зміна його окремих можливостей. Головне призначення діаграми станів - це опис можливих послідовностей станів та переходів, які разам характеризують поведінку системи, що моделюється на протязі всього її життєвого циклу.
Діаграма діяльності (Activity diagram) - це частковий випадок діаграми станів. Вона дозволяє реалізувати особливості синхронного та процедурного управління, обумовленого закінченням внутрішніх дій та діяльності. Дана діаграма - це опис реакцій на внутрішні дії системи. На даній діаграмі має бути показано діяльність системи, так сказати всередині.
На етапі реалізації системи моделі, вже на основі сформованих раніше діаграмі, а саме діаграми EntityRelationshipDiagram, переводиться у вихідний програмний код і на основі вже якого формується база даних.
На наступному етапі, тобто на етапі інтеграції системи закінчується робота над системою, яка представляється замовнику та донесення до замовника всієї необхідної інформації, що стосується використання створеної системи.
І вже на останньому етапі, а саме на етапі супроводження системи досліджується якість створеної системи при використані, при виникненні помилок їх усунення, подальше удосконалення системи.
Вище було описано життєвий цикл системи створеної за допомогою мови UML. Що ж стосовно створення програмного продукту використовуючи діаграми, тобто проаналізувавши всі необхідні потреби системи і що саме має виконувати система можна перейти до етапу реалізації системи. Створюємо всі необхідні форми, і використовуючи створену базу даних можемо створювати програмний продукт, а для перевірки використовувати дані з бази даних.
Наступним етапом є тестування програми, в результаті тестування перевірка програми на помилки, якщо помилки були виявлені то необхідно їх виправити.
Після тестування, перевірки та виправлення помилок програма може бути використана на підприємстві для якого даний програмний продукт створювався, тобто запроваджена у використання.
Отже перед тим як приступити до створення програми потрібно побудувати модель її функціонування. Одним з найголовніших пунктів при створені моделі інформаційної системи бібліотеки являється побудова діаграми класів, рис. 2.1.
<>
Рис. 2.1. Діаграма класів
В даному випадку діаграма класів складається з таких шістнадцяти класів:
Інформаційна система роботи бібліотеки;
Книга;
Бібліографія;
Розміщення книг;
Автор_книга;
Автор;
Видача книг;
Читач;
Група;
Відділення;
Користувач;
Документ;
Періодичне видання;
Дисципліна;
Видання;
Екземпляри.
Також на даній програмі показуються всі зв'язки між класами, як це показано на рис. 2.1.
Далі детальніше будемо розглядати кожен клас окремо, звертаючи увагу, на їх склад, а саме операції та атрибути.
Отже першим розглянемо клас «Інформаційна система роботи бібліотеки», який має такі атрибути:
Номер: int;
Назва: varchar;
А також операції класу «Інформаційна система роботи бібліотеки»:
Вхід в систему (Вхід: varchar) : varchar;
Вихід з системи (Вихід: varchar) : varchar;
Додавання книги до каталогу (Додавання книги: varchar) : varchar;
Видалення книги з каталогу (Видалення книги: varchar) : varchar;
Зміна даних по книгах, що знаходяться в каталозі (Зміна : varchar) : varchar;
Додавання періодичних видань до картотеки (Додавання: varchar) : varchar;
Видалення періодичних видань (Видалення: varchar) : varchar;
Внесення змін до картотеки (внесення змін: varchar) : varchar;
Перегляд каталогу (Перегляд каталогу: varchar) : varchar;
Перегляд картотеки (Перегляд картотеки: varchar) : varchar;
Видача книг (Видача книг: varchar) : varchar;
Повернення книг (Повернення книг: varchar) : varchar;
Видача періодичних видань (Видача періодичних видань: varchar) : varchar;
Повернення періодичних видань (Повернення періодичних видань: varchar) : varchar;
Ведення статистики(): varchar.
Наступний клас розглянемо «Читач», він володіє наступними атрибутами:
Номер: int;
Прізвище та ініціали: varchar;
Група: varchar;
Курс: int;
Адреса: varchar;
Телефон: int;
Місце роботи: varchar;
Серія та номер паспорту: varchar;
Операції класу «Читач»:
Повернення книги (Повернення книги: varchar) : varchar;
Отримання книги (Отримання книги: varchar) : varchar;
Отримання інформації стосовно літератури (Отримання інформації: varchar) : varchar;
Атрибути класу «Книга»:
Номер: int;
Назва: varchar;
УДК: varchar;
Авторський знак: varchar;
Частина : int;
Номер видання: int;
Місце видання: varchar;
Рік видання: date;
Номер бібліографії: int;
Кількість сторінок: int;
Номер дисципліни: int;
Номер стелажа: int;
Номер полки: int;
Операції класу «Книга»:
Бути в наявності() : varchar;
Видана читачеві() : varchar;
Надійшла до бібліотечного фонду() : varchar;
Вибалена() : varchar.
Атрибути класу «Періодичне видання»:
Номер: int;
Назва: varchar;
Номер видавництва: int;
Місяць видання: date;
Місто видання: varchar;
Рік видання date;
Головний редактор: varchar;
Номер дисципліни : int.
Операції класу «Періодичне видання»:
Присутнє(): Boolean;
Відсутнє(): Boolean;
Замовлене(): Boolean;
У читача(): Boolean.
Атрибути класу «Автор»:
Номер: int;
Назва: varchar;
Прізвище: varchar;
Ім'я: varchar;
По батькові: varchar;
Атрибути класу «Автор - Книга»:
Номер: int;
Номер автора: int;
Номер книги: int;
Атрибути класу «Розміщення книги»:
Номер стілажа: int;
Номер полки: int;
Атрибути класу «Бібліографія»:
Номер: int;
Назва: varchar;
Атрибути класу «Видача книг»:
Номер: int;
Номер книги: int;
Номер періодичного видання: int;
Номер автора: int;
Номер читача: int;
Дата повернення: date;
Дата коли повернули: date;
Номер залогу: int;
Атрибути класу «Група»:
Номер: int;
Назва: varchar;
Курс: int;
Номер відділення.
Атрибути класу «Відділення»:
Номер: int;
Назва: varchar.
Атрибути класу «Користувач»:
Номер: int;
Логін: varchar;
Пароль: varchar:
Права: varchar.
Атрибути класу «Документ»:
Номер: int;
Назва: varchar.
Атрибути класу «Екземпляри»:
Номер: int;
Номер книги: int;
Видано: bool.
Атрибути класу «Документ»:
Номер: int;
Назва: varchar;
Місце видання: varchar;
Рік видання: date;
Місто видання: varchar.
Атрибути класу «Документ»:
Номер: int;
Назва: varchar;
Кафедра: varchar.
Наступною діаграму, яку розглянемо - це діаграма послідовності. Яка слугуватиме для того, щоб було зрозуміло, як саме, послідовно, має функціонуватиме програмний продукт інформаційної системи бібліотеки, а саме крок за кроком, побудуємо діаграму послідовності, як це показано на рис. 2.2.
<>
Рис. 2.2. Діаграма послідовності
На діаграмі послідовності показані такі класи:
Користувач;
Інформаційна система бібліотеки;
Користувач;
Книга;
Періодичне видання;
Читач;
Видача книг.
А саме на даній діаграмі, діаграмі послідовності показано, що користувач звертається до системи, тобто вводить логін та пароль, після чого йому надаються відповідні права на перегляд, чи на перегляд та зміну даних. Якщо користувач знає логін та пароль то він як переглядає всі дані, так і має змогу змінювати необхідні дані.
Якщо ж користувач заходить в програму як читач, то він має змогу лише переглядати:
дані каталогу книг;
картотеки періодичних видань;
читачів в кого книги;
читачів, які затримали книгу.
На основі діаграми послідовності будується діаграма кооперацій. На даній діаграмі показуються дії між об'єктами, вірніше обмін між ними інформацією, а також показано, що є можливість змінювати необхідні дані, наприклад може добавитися або ж навпаки видалитися книгу, чи періодичне видання. Діаграма кооперацій показана на рис. 2.3.
Будь-яка система, яка має функціонувати, може знаходитися в різних станах, наприклад в стані очікування, переходу, функціонування чи іншому. Все це показується за допомогою діаграми станів. Головне призначення якої - опис можливих послідовностей станів та переходів, які в сукупності характеризують поведінку системи, що моделюється, на протязі всього її життєвого циклу. Дана діаграма показана на рис. 2.4.
<>
Рис. 2.3. Діаграма кооперацій
На діаграмі станів показані такі стани:
Перший стан - це стан «Очікування», тобто система очікує коли клієнт ввійде до системи та введе запит.
Наступний стан - це стан «Отримання запиту», на даному етапі система отримує запит, який потім перевіряє і якщо все введено вірно посилає запит для обробки до бази даних.
Стан «обробка запиту» - це той стан коли дані надходять до бази даних, обробляються там, та повертається отриманий результат по запиту.
Останній стан - це стан «Повернення результату запиту», тобто результат повертається до інформаційної системи бібліотеки та відображається клієнтові.
<>
Рис. 2.4. Діаграма станів
Діаграма, яка буде розглянута наступною - це діаграма активності, яка конкретизує та деталізує всі дії та операції, які виконуються системою, а також відображає послідовність переходів від виконання однієї дії чи діяльності до виконання наступної. Дана діаграма для бібліотекаря показана на рис. 2.5.
Діаграм активності показує діяльність інформатизованної роботи бібліотеки, яка функціонує наступним шляхом:
спочатку клієнт звертається до системи;
введення паролю;
перевірка введеного паролю;
якщо пароль введено вірно виконуються наступні дії:
<>
Рис. 2.5. Діаграма активності при вході в систему бібліотекаря
зміна даних;
обробка даних в базі даних;
відображення результату;
якщо пароль не вірний:
виведення повідомлення про помилку.
Діаграма активності для користувача має наступний вигляд рис. 2.6.
На діаграмі активності при вході до програми читача показано такі функції системи:
спочатку клієнт звертається до системи;
вибирає дані, які потрібно переглянути;
обробка даних в базі даних;
відображення результату.
<>
Рис. 2.6. Діаграма активності при вході в систему читача
Наступні дві діаграми, в сукупності називаються діаграмами реалізації. Першою розглянуто діаграму компонентів - це діаграма, що описує фізичне представлення системи. Діаграма компонентів дозволяє визначити архітектуру системи, що розробляється, встановивши залежності між програмними компонентами. Діаграма компонентів показана на рис. 2.7.
Дана діаграма, а саме діаграма компонентів складається з сімнадцяти компонентів, кожен з яких має свій стереотип. Так компонент «Програма для бібліотекаря» має стереотип «executable», тобто виконуюча таблиця. Наступний компонент - це компонент «БД «Бібліотека»», яка має найбільш загальний тип компонентів стереотип «file», в свою чергу донний компонент включає в себе наступні компоненти, а саме компоненти: «Дисципліна», «Читач», «Екземпляри», «Автор книги», «Автор», «Розміщення книг», «Книга», «Видача книг», «Група», «Користувач», «Відділення», «Документ», «Періодичне видання», «Видання», які мають стереотип «table», тобто таблиці.
<>
Рис. 2.7. Діаграма компонентів
Дана діаграма складається з сімнадцяти компонентів, кожен з яких має свій стереотип. Так компонент «Бібліотека» має стереотип «executable», тобто виконуюча таблиця. Наступний компонент - це компонент «БД «Бібліотека»», яка має найбільш загальний тип компонентів стереотип «file», в свою чергу донний компонент включає в себе наступні компоненти, а саме компоненти: «Дисципліна», «Читач», «Екземпляри», «Автор книги», «Автор», «Розміщення книг», «Книга», «Видача книг», «Група», «Користувач», «Відділення», «Документ», «Періодичне видання», «Видання»,які мають стереотип «table», тобто таблиці.
Наступна діаграма реалізацій - це діаграма розгортання на якій відображаються вузли на яких виконуються програмні компоненти. Діаграма розгортання показана на рис. 2.8. На даній діаграмі показані вузли та компоненти, а саме вузол - це клієнт.
А «Бібліотека» та «БД Бібліотека» - це компоненти, які зберігають дані навіть після закриття системи.
«Бібліотека.ехе» - це програма, а «БД Бібліотека» - це відповідно база даних до якої користувач звертається при використанні програми.
<>
Рис. 2.8. Діаграма розгортання
2.2. Проектування бази даних
Для того, щоб в подальшому згенерувати вихідний текст програми для створення бази даних, потрібно побудувати на основі діаграми класів діаграму EntityRelationshipDiagram, як це показано на рис. 2.9.
<>
Рис. 2.9. EntityRelationshipDiagram
На даній діаграмі, EntityRelationshipDiagram, показані всі необхідні таблиці в базі даних.
Наступним етапом є створення таблиць бази даних та зв'язків між ними, що можна побачити на схемі бази даних рис. 2.10.
Існує велика кількість різних видів баз даних, та для написання даної програми було обрано використовувати SQL Server, для того щоб зміни в базі мали змогу бачити всі, адже одним з основних здобутків мови SQL полягає в підтримці архітектури клієнт/сервер. При цьому SQL слугує зв'язуючи компонентом між клієнтською системою, що взаємодіє з користувачем та серверною системою, що управляє базою даних, дозволяючи кожній з них сконцентруватися на виконанні свої обов'язків.
Схема бази даних «Бібліотека» показана на рис. 2.10.
<>
Рис. 2.10. Структура бази даних «Бібліотека»
3. РОЗРОБКА, ТЕСТУВАННЯ ТА ІНСТАЛЯЦІЯ ІНФОРМАЦІЙНОЇ СИСТЕМИ БІБЛІОТЕКИ
3.1. Вибір програмних засобів розробки
Для реалізації дипломного проекту алгоритмічно та програмно було вирішено користуватися такими програмними засобами:
Мова програмування С#.
База даних SQL Server 2005.
Мова графічного опису для об'єктного моделювання UML.
Далі розглянемо інформацію стосовно перерахованих вище програмних засобів.
Мова програмування С#, яка включає в себе об'єктна-орієнтовані та аспектно-орієнтовані концепції. Створена в 1998-2001 роках групою інженерів під керівництвом Андерса Хейлсберга в компанії Microsoft як основна мова розробки прикладень до платформи Microsoft .NET. Компілятор з С# входить в стандартну установку самої .NET, тому програми на ньому можна створювати і компілювати навіть без інструментальних середовищ типу Visual Studio.
С# відноситься до сім”ї мов з С - подібним синтаксисом. Мова має строго статистичну типізацію, підтримує поліморфізм, пере завантаження операторів, показники на функції - члени класів, атрибути, події, властивості, виключення, коментарії в форматі XML. Перейнявши багато від своїх попередників - мов С++, Java, Delphi, Модула и Smalltalk - С#, спираючись на практику їх використання, виключає деякі моделі, які зарекомендували себе як проблематичні при розробці програмних систем: так, С# не підтримує множинне наслідування класів.
База даних - це система спеціальним чином організованих даних (баз даних), програмних, технічних, мовних, організаційно-методичних засобів , які необхідно для забезпечення централізованого нагромадження та колективного багатоцільного використання даних.
Основними складовими компонентами автоматизованого банку даних є база даних і система управління базою даних.
SQL (Structured Query Language) - це скорочена назва структурованої мови запитів, яка представляє можливості створення та обробки даних в реляційних базах даних.
Мова SQL орієнтована на операції з даними, представлених у виді логічно взаємопов'язаної сукупності таблиць - відносин.
Одним з головних плюсів SQL є його архітектура клієнт/сервер. В цій ролі SQL слугує частиною, яка пов'язує між собою клієнтську систему, яка взаємодіє з користувачем, та серверною системою, що керує базою даних, дозволяючи кожній системі направити свою увагу на виконання своїх конкретних функцій. Окрім того SQL дозволяє персональним комп'ютерам функціонувати в якості клієнтів по відношенню до мережевих серверів чи більш здоровим базам даних, що встановленні на здорових ЕВМ, що надає можливість отримувати доступ до корпоративних даних.
UML (скор. від англ. Unified Modeling Language — уніфікована мова моделювання) - мова графічного опису для об'єктного моделювання в області розробки програмного забезпечення. UML являється мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, що називається UML моделлю. UML був створений визначення, візуалізації, проектування і документування в основному програмних систем.
3.2. Розробка програмних модулів
Перед тим як приступити до розробки програмних модулів, та переглянувши подібні вже створенні програмні продукти, було поставлено за мету, що програма окрім того що має достовірно працювати, виконувати всі необхідні функції, але й мати зручний та зрозумілий інтерфейс програми, щоб користувач міг легко користуватися всіма функціями системи.
Розглянувши систему інформатизації бібліотеки детальніше, після чого побудувавши її модель та створивши базу даних було розпочато створення програмного продукту інформатизації роботи бібліотеки. Створення програми було вирішено розпочати з створення дизайну програми, тобто багато уваги було звернуто, щоб користувач програми міг зручно, не користуючись довідкою легко розібратися у можливостях функціонування програми.
Наступним етапом було підключення бази даних до програми, а саме створивши DataSet, та використання його при подальшому створенні програми.
3.3. Вихідні форми та вивід даних
Отже розглянемо, що саме користувач програми отримає на екрані після запуску створеної програми. Першою формою яка зявиться на екрані має наступний вигляд рис. 3.1. Текст програми, до форми, що зображена на рис. 3.1, можна переглянути в додатку А.
<>
Рис. 3.1. Вхідна форма в програму
На даній формі користувач має змогу виконати наступні функції:
зайти в систему як бібліотекар;
зайти в систему як читач;
отримати довідку по програмі;
вийти з системи.
Натиснувши на кнопочку «Бібліотекар» на екрані з'явиться наступне вікно рис. 3.2. Текст програми, до форми, що зображена на рис. 3.2, можна переглянути в додатку Б. В даному вікні, користувач має ввести логін і пароль, якщо ж дані було введено не вірно, то виведеться повідомлення про помилку рис 3.3. Якщо ж всі дані було введено вірно то на екрані з'явиться меню бібліотекаря, яке має наступний вигляд рис. 3.4. Текст програми, до форми, що зображена на рис. 3.4, можна переглянути в додатку В.
<>
Рис. 3.2. Форма «Введення паролю»
<>
Рис. 3.3. Повідомлення про помилку
<>
Рис. 3.4. Форма «Меню бібліотекаря»
На формі «Меню бібліотекаря» користувач має змогу виконати такі функції:
переглянути дані, не вносячи в базу даних ніяких змін;
внести зміни до бази даних, які саме потрібно, тобто додати видалити чи змінити запис в БД.
здійснювати видачу книжок;
переглянути статистику;
отримати довідку по програмі;
вийти з програми.
Якщо користувач, з меню бібліотекаря вибере «Перегляд даних» на екрані з'явиться наступна форма, що має такий вид рис. 3.5. Текст програми, до форми, що зображена на рис. 3.5, можна переглянути в додатку Г.
На формі «Перегляд даних» користувач має змогу переглядати дані стосовно:
наявних книг;
наявних періодичних видань;
читачів бібліотеки;
перегляд читачів, що заборгували книгу.
<>
Рис. 3.5. Форма «Перегляд даних»
Переглянути дані стосовно наявних періодичних видань можна натиснувши на вкладку «Періодичні видання». На екрані з'явиться наступне вікно рис. 3.6, де користувач має змогу лише переглядати, але не змінювати дані стосовно періодичних видань, які присутні в базі даних.
А саме користувач отримує таку інформацію, що до періодичного видання:
номер;
назву;
видавництво;
місяць видання;
рік видання;
місто видання ;
редактор;
дисципліна;
здано, тобто періодичне видання в бібліотеці чи в читача.
<>
Рис. 3.6. Перегляд періодичних видань
Переглянути дані стосовно того хто з читачів має здати книгу можна натиснувши на вкладку «Кому потрібно здати книгу». На екрані з'явиться наступне вікно рис. 3.7, де користувач має змогу лише переглядати, але не змінювати дані.
А саме користувач отримує таку інформацію про тих хто має здати книгу:
прізвище та ініціали читача;
назва взятої книги;
назва взятого періодичного видання;
автор;
число видачі;
місяць видачі;
рік видачі;
число коли потрібно повернуть;
залог.
<>
Рис. 3.7. Перегляд даних «Кому потрібно здати книгу»
Для того щоб швидко знайти, чи є студент чи викладач читачем бібліотеки достатньо переглянути вкладку «Читач», рис. 3.8. На екрані користувач має змогу переглянути такі дані про читача:
прізвище та ініціали;
група;
адреса;
телефон;
місце роботи.
На даній формі користувач має змогу лише переглядати дані, але не змінювати їх.
<>
Рис. 3.8. Перегляд даних про читача
Також в даному модулі програми користувач має змогу організувати пошук по назві книги, періодичному виданню та по прізвищу відповідно.
Якщо ж користувач на формі «Меню бібліотекаря» вибере кнопку «Внесення змін» то на екрані з'явиться наступна форма рис. 3.9. Текст програми, до форми, що зображена на рис. 3.9, можна переглянути в додатку Д.
На вкладці «Користувач» бібліотекар має змогу виконати такі дії:
переглянути дані таблиці «Користувач»;
видалити дані з бази даних, а саме з таблиці «Користувач»;
додати дані до бази даних, а саме в таблицю «Користувач»;
змінити дані в базі даних, а саме в таблиці «Користувач»;
отримати довідку по програмі;
вийти з програми.
Зайшовши на вкладку «Відділення» на екрані з'явиться форма, що має наступний вигляд рис. 3.10.
<>
Рис. 3.9. Внесення змін до таблиці «Користувач»
<>
Рис. 3.10. Зміна даних в таблиці «Відділення»
На вкладці «Відділення» бібліотекар має змогу виконати такі дії:
переглянути дані таблиці «Відділення»;
видалити дані з бази даних, а саме з таблиці «Відділення»;
додати дані до бази даних, а саме в таблицю «Відділення»;
змінити дані в базі даних, а саме в таблиці «Відділення»;
отримати довідку по програмі;
вийти з програми.
Зайшовши на вкладку «Група» на екрані з'явиться форма, що має наступний вигляд рис. 3.11.
<>
Рис. 3.11. Внесення змін до таблиці «Група»
На вкладці «Група» бібліотекар має змогу виконати такі дії:
переглянути дані таблиці «Група»;
видалити дані з бази даних, а саме з таблиці «Група»;
додати дані до бази даних, а саме в таблицю «Група»;
змінити дані в базі даних, а саме в таблиці «Група»;
отримати довідку по програмі;
вийти з програми.
Зайшовши на вкладку «Читач» на екрані з'явиться форма, що має наступний вигляд рис. 3.12.
<>
Рис. 3.12. Внесення змін до таблиці «Читач»
На вкладці «Читач» бібліотекар має змогу виконати такі дії:
переглянути дані таблиці «Читач»;
видалити дані з бази даних, а саме з таблиці «Читач»;
додати дані до бази даних, а саме в таблицю «Читач»;
змінити дані в базі даних, а саме в таблиці «Читач»;
отримати довідку по програмі;
вийти з програми.
Зайшовши на вкладку «Автор» на екрані з'явиться форма, що має наступний вигляд рис. 3.13.
На вкладці «Автор» бібліотекар має змогу виконати такі дії:
переглянути дані таблиці «Автор»;
видалити дані з бази даних, а саме з таблиці «Автор»;
додати дані до бази даних, а саме в таблицю «Автор»;
змінити дані в базі даних, а саме в таблиці «Автор»;
отримати довідку по програмі;
вийти з програми.
<>
Рис. 3.13. Внесення змін до таблиці «Автор»
Зайшовши на вкладку «Бібліографія» на екрані з'явиться форма, що має наступний вигляд рис. 3.14.
<>
Рис. 3.14. Внесення змін до таблиці «Бібліографія»
На вкладці «Бібліографія» бібліотекар має змогу виконати такі дії:
переглянути дані таблиці «Бібліографія»;
видалити дані з бази даних, а саме з таблиці «Бібліографія»;
додати дані до бази даних, а саме в таблицю «Бібліографія»;
змінити дані в базі даних, а саме в таблиці «Бібліографія»;
отримати довідку по програмі;
вийти з програми.
На даній формі вводяться всі можливі види бібліографії, а саме це може бути наприклад:
рекомендована література;
література, що використовувалася;
перелік термінів;
предметний покажчик;
алфавітний покажчик;
предметно-алфавітний покажчик;
бібліографія в кінці розділу;
бібліографія в кінці параграфу;
словник і т.д.
Зайшовши на вкладку «Розміщення книг» на екрані з'явиться форма, що має наступний вигляд рис. 3.15.
На вкладці «Розміщення книг» бібліотекар має змогу виконати такі дії:
переглянути дані таблиці «Розміщення книг»;
видалити дані з бази даних, а саме з таблиці «Розміщення книг»;
додати дані до бази даних, а саме в таблицю «Розміщення книг»;
змінити дані в базі даних, а саме в таблиці «Розміщення книг»;
отримати довідку по програмі;
вийти з програми.
<>
Рис. 3.15. Внесення змін до таблиці «Розміщення книг»
На вкладці «Розміщення книг» указуються всі можливі стелажі та полички, що при подальшому використанні системи слугуватиме, як одним з головних пунктів по пошуку необхідної літератури, а вірніше її розташуванню.
Зайшовши на вкладку «Видання» на екрані з'явиться форма, що має наступний вигляд рис. 3.16.
На вкладці «Видання» бібліотекар має змогу виконати такі дії:
переглянути дані таблиці «Видання»;
видалити дані з бази даних, а саме з таблиці «Видання»;
додати дані до бази даних, а саме в таблицю «Видання»;
змінити дані в базі даних, а саме в таблиці «Видання»;
отримати довідку по програмі;
вийти з програми.
Дана таблиця слугуватиме при заповненні таблиці «Книга» та «Періодичне видання», адже набагато зручніше буде в подальшому просто вибрати із списку потрібне видання, а ніж вводити кожен раз заново, так як видання досить часто повторюються.
<>
Рис. 3.16. Внесення змін до таблиці «Видання»
Зайшовши на вкладку «Дисципліна» на екрані з'явиться форма, що має наступний вигляд рис. 3.17.
<>
Рис. 3.17. Внесення змін до таблиці «Дисципліна»
На вкладці «Дисципліна» бібліотекар має змогу виконати такі дії:
переглянути дані таблиці «Дисципліна»;
видалити дані з бази даних, а саме з таблиці «Дисципліна»;
додати дані до бази даних, а саме в таблицю «Дисципліна»;
змінити дані в базі даних, а саме в таблиці «Дисципліна»;
вийти з програми.
В університеті книги замовляються в залежності від того, які читаються дисципліни, тобто кожна книга прив'язана до якоїсь дисципліни. Всі ці дані знаходяться в таблиці «Дисципліна».
Зайшовши на вкладку «Книга» на екрані з'явиться форма, що має наступний вигляд рис. 3.18.
<>
Рис. 3.18. Внесення змін до таблиці «Книга»
На вкладці «Книга» бібліотекар має змогу виконати такі дії:
переглянути дані таблиці «Книга»;
видалити дані з бази даних, а саме з таблиці «Книга»;
додати дані до бази даних, а саме в таблицю «Книга»;
змінити дані в базі даних, а саме в таблиці «Книга»;
вийти з програми.
У вкладці «Книга» зберігаються всі дані, що стосується книги, тобто, номер, назва, автор та інші атрибути, як це показано на рис. 3.18.
Зайшовши на вкладку «Періодичне видання» на екрані з'явиться форма, що має наступний вигляд рис. 3.19.
<>
Рис. 3.19. Внесення змін до таблиці «Періодичне видання»
На вкладці «Періодичне видання» бібліотекар має змогу виконати такі дії:
переглянути дані таблиці «Періодичне видання»;
видалити дані з бази даних, а саме з таблиці «Періодичне видання»;
додати дані до бази даних, а саме в таблицю «Періодичне видання»;
змінити дані в базі даних, а саме в таблиці «Періодичне видання»;
вийти з програми.
У вкладці «Періодичне видання» зберігаються всі дані, що стосується періодичного видання, тобто, номер, назва, автор та інші атрибути, як це показано на рис. 3.19.
Зайшовши на вкладку «Екземпляр» на екрані з'явиться форма, що має наступний вигляд рис. 3.20.
<>
Рис. 3.20. Внесення змін до таблиці «Екземпляр»
На вкладці «Екземпляр» бібліотекар має змогу виконати такі дії:
переглянути дані таблиці «Екземпляр»;
видалити дані з бази даних, а саме з таблиці «Екземпляр»;
додати дані до бази даних, а саме в таблицю «Екземпляр»;
змінити дані в базі даних, а саме в таблиці «Екземпляр»;
вийти з програми.
Так як книги приходять не в одному екземплярі, щоб не повторювати всі назви по декілька разів в таблиці «Книга», було створено таблицю «Екземпляр» де зберігаються дані про всі екземпляри книг.
Зайшовши на вкладку «Документ» на екрані з'явиться форма, що має наступний вигляд рис. 3.21.
На вкладці «Документ» бібліотекар має змогу виконати такі дії:
переглянути дані таблиці «Документ»;
видалити дані з бази даних, а саме з таблиці «Документ»;
додати дані до бази даних, а саме в таблицю «Документ»;
змінити дані в базі даних, а саме в таблиці «Документ»;
вийти з програми.
<>
Рис. 3.21. Внесення змін до таблиці «Документ»
Так як деякі книги надаються студентам, на короткий час додому, наприклад при написанні курсової чи дипломної роботи, коли потрібно детально опрацювати велику кількість літератури, вони в залог мають залишити документ, перелік яких ведеться в таблиці «Документ».
Зайшовши на вкладку «Автор-Книга» на екрані з'явиться форма, що має наступний вигляд рис. 3.22.
На вкладці «Автор-Книга» бібліотекар має змогу виконати такі дії:
переглянути дані таблиці «Автор-Книга»;
видалити дані з бази даних, а саме з таблиці «Автор-Книга»;
додати дані до бази даних, а саме в таблицю «Автор-Книга»;
змінити дані в базі даних, а саме в таблиці «Автор-Книга»;
вийти з програми.
Таблиця «Автор-Книга» необхідна для зв'язку між собою таблиць «Автор» і «Книга».
<>
Рис. 3.22. Внесення змін до таблиці «Автор-Книга»
Перейдемо до наступного пункту меню бібліотекаря - це «Видача книг». Форма видача книг показана на рис. 3.23. Текст програми до форми «Видача книг» показано в додатку Е. За допомогою даної форми бібліотекар може швидко видавати книги, не записуючи у паперовий формуляр і відповідно уникаючи великих черг в бібліотеці.
На даній формі користувач має змогу виконати такі дії:
переглянути дані таблиці «Видача книг»;
видалити дані з бази даних, а саме з таблиці «Видача книг»;
додати дані до бази даних, а саме в таблицю «Видача книг»;
змінити дані в базі даних, а саме в таблиці «Видача книг»;
переглянути хто має здати книгу;
отримати довідку по програмі;
вийти з програми.
Якщо ж користувачеві системи потрібно переглянути лише тих студентів, хто взяв книгу додому, тобто тих хто має здати книгу, для цього необхідно натиснути на формі «Видача книг» на кнопку «Кому потрібно здать».
<>
Рис. 3.23. Внесення змін до таблиці «Видача книг»
Форма на якій представлені всі студенти, які мають здати книгу чи періодичне видання показано на рис. 3.24.
<>
Рис. 3.24. Перегляд даних про читачів кому потрібно здати книгу чи періодичне видання
Ще одним з пунктів меню бібліотекаря є «Статистика», яка показана на рис. 3.25.
<>
Рис. 3.25. Форма «Статистика»
На формі «Статистика» бібліотекар переглядає ведення статистики, яке формується з таблиці «Видача книг», за конкретне число, місяць і рік, тобто враховуються всі відвідування бібліотеки за день, та література, яка була взята по конкретній дисципліні.
Текст програми до форми «Статистика» показано в додатку З.
Якщо користувач на формі «Статистика» натисне на кнопку «Загрузити дані за визначену дату» то екрані з'явиться форма, на якій відображенні дані стосовно відвідування та видачі книг лише за ту дату, яку вибрав користувач, це показано на рис. 3.26.
Тобто на формі «Статистика», рис. 3.26, бібліотекар легко може сформувати, для перегляду, всю кількість відвідувань, кількість книг, які саме брали, по яким дисциплінам, тобто своєрідне ведення електронного щоденника бібліотеки.
<>
Рис. 3.26. Статистика за визначений місяць
Якщо ж користувач натисне на формі «Статистика», рис. 3.25, на кнопку «Підрахунок», то на екрані з'явиться наступна форма рис. 3.27.
<>
Рис. 3.27. Підрахунок відвідувань
На формі «Підрахунок» ведеться підрахунок всієї кількості:
відвідувань бібліотеки;
кількості взятих книг;
кількості взятих періодичних видань.
Текст до форми «Підрахунок», рис. 3.27, показано в додатку К.
Якщо ж зайти в систему як читач, а не бібліотекар на екрані зявиться наступна форма рис. 3.28.
<>
Рис. 3.28. Перегляд даних читачем
Читач має змогу лише переглядати дані, а саме:
книги, які є в бібліотеці;
періодичні видання;
кому потрібно здати книги;
читачі.
Але в таблиці «Перегляд даних» не може змінювати ніякі дані, а лише їх переглядати.
3.4. Тестування програми
Для того, щоб оцінити роботоспособність прогрми потрібно, щоб її було протестовано, адже коли системою користується людина, яка створювала програму, то їй здається все зрозумілим, а коли за використання системи береться інша людина, то досить часто виникає ряд питань та помилок.
Отже до тестування програми було задіяно студентів п'ятого курсу Європейського університету, групи ДІ-04, а саме: Меєровича В.А., Шабаліну М.Ю., Іванченко К.Ю.
В результаті тестування було виявлено, незначні помилки та недоліки програми, які в подальшому було виправлено.
3.5. Інсталяція інформаційної системи
Існує багато різних програмних засобів для створення файлів інсталяції, вони бувають як платними так і безкоштовними, так як програма є безкоштовною то і для встановлення програми логічно обрати безкоштовний інсталяційний пакет. Проаналізувавши багато програм, була обрана програма «Inno Setup», дана програма має зручний інтерфейс у стилі Windows 2000/XP, також може створювати пакети для 64-розрядних і змінювати файли реєстру.
Далі розглянемо покрокове створення інсталяції створеного програмного продукту. Першим кроком є створення скрипту, за допомогою майстру створення скрипту, це показано на рис. 3.29. На формі створення скрипту потрібно ввести такі дані:
ім'я;
ім'я, включаючи версію;
розробника;
домашню сторінку.
На наступному кроці указуємо шлях до головного виконуючого файлу, файлу який має виконуватися, це показано на рис 3.30. Також на рис. 3.30, користувач програми має змогу указати два такі параметри:
чи дозволяти користувачеві запускати програму після установки;
що немає головного виконуючого файлу.
<>
Рис. 3.29. Створення скрипта
<>
Рис. 3.30. Вибір файлу для виконання
На наступному кроці указується вид та права в меню «Пуск» програми, це показано на рис. 3.31.
<>
Рис. 3.31. Вид програми в меню «Пуск»
Останнім кроком при створенні скрипта є уточнення мови установки, це показано на рис. 3.32.
<>
Рис. 3.32. Вибір мови установки
Після вибору мови установки на екрані з'явиться наступне повідомлення із запитанням, рис. 3.33.
<>
Рис. 3.33.
Якщо на формі 3.33. натиснути на кнопку «Да», то на екрані з'явиться наступна форма, вірніше зібраний скрипт, рис. 3.34.
<>
Рис. 3.34. Сформований скрипт
Якщо виконати скрипт, то запуститься майстер установки, першим кроком, який потрібно виконати - це вибрати папку, куди саме буде установлено програму, назву програми в меню «Пуск», указати чи потрібно створювати ярлик програми на робочому столі, все це показано на формі, яка повідомляє про готовність до установки, рис. 3.35.
<>
Рис. 3.35. Інформація про програму, що установлюється
Після натиснення на кнопку «Установить», на попередній формі, розпочнеться установка програми, як це показано на рис. 3.36.
<>
Рис. 3.36. Установка програми
3.6. Довідкова система для користувачів
Для того, щоб користувач міг легко орієнтуватися в програмі і використовувати всі її можливі функції, було створено довідкову систему, за допомогою програмного продукту Adobe RoboHelp, який є інструментом для створення довідкових матеріалів і документації.
Довідкову систему створеної програми, на тему «Інформаційна система для роботи бібліотеки (на прикладі бібліотеки Криворізької філії Європейського університету)», показано на рис. 3.37.
<>
Рис. 3.37. Довідкова система
4. Економічне обґрунтування дипломного проекту
Програмний продукт має мати економічний ефект, тобто свою позитивну сторону стосовно економії матеріальних благ.
Спочатку визначимо витрати, понесені на створення програмного продукту. Для цього необхідно розрахувати:
витрати по оплаті праці розробників програми;
витрати по оплаті машинного часу при розробці програми й відрахування на соціальні нестатки.
Витрати по оплаті праці розробників програми визначаються, як множення трудомісткості створення програми, вираженої в годинах, на середню годинну оплату програміста:
Зрозр. = t розр.* С розр., (4.1)
де t розр - трудомісткість створення програми,
С розр - середня годинна оплата програміста.
Трудомісткість створення програми, містить у собі витрати праці на наступні дії:
аналіз задачі, виділення структури системи, основних задач та шляхів їх вирішення;
функціональний аналіз;
програмна реалізація системи;
налагодження роботи програми на ПК;
підготовка документації по задачі.
Для визначення трудомісткості використовується реально витрачений час на розробку програми.
Реально витрачений час розрахуємо згідно календарного плану виконання робіт, табл. 4.1.
Календарний план виконання робіт по створенню інформаційної системи складений керівником дипломного проекту.
Таблиця 4.1.
Календарний план виконання робіт по створенню програми
Найменування етапів виконання робіт |
Початок/кінець |
Тривалість виконання, годин |
Аналіз задачі |
23.02.09-06.03.09 |
80 |
Функціональний аналіз |
09.03.09-31.03.09 |
136 |
Програмна реалізація системи |
01.04.09-24.04.09 |
144 |
Налагодження роботи програми на ПК |
27.04.09- 08.05.09 |
80 |
Підготовка документації по задачі |
11.05.09-15.05.09 |
40 |
Календарний план виконання робіт по створенню інформаційної системи складений керівником дипломного проекту.
Таким чином, користаючись календарним планом виконання робіт можемо розрахувати сумарну трудомісткість
tрозр.= tпробл.+tфун.+tпрогр.+tнал.+ttдок, (4.2)
де tпробл. - час на знайомство із проблемою й визначення шляхів її вирішення,
tфун. - час на функціональний аналіз системи,
tпрогр. - час на розробку програмного продукту - системи для одержання статистичної інформації про мережений трафік комп`ютерної мережі.
tнал.. - час, необхідний для налагодження роботи програми на ПК,
ttдок. - час на підготовку документації по задачі,
tрозр. = 80+136+144+80+40 = 480 [чол./годин].
Розрахуємо середню годинну оплату програміста. Для цього необхідно спочатку визначити його річний фонд грошового забезпечення (мається на увазі, що програміст університету). Це можна зробити, знаючи місячне грошове забезпечення програміста. Воно складає приблизно 1500,00 гривень. Таким чином, річний фонд грошового забезпечення 18000 гривень. Визначимо число робочих годин у році за наступною формулою:
n(p) = (N - N(п) - N(в)) * 8, (4.3)
де N - загальне число днів у році,
N(п) - число святкових днів у році,
N(в) - число вихідних днів у році.
Число святкових днів у році - 10, а вихідних - 104. Отже, число робочих годин у році дорівнює:
n(p) = ( 365 - 10 - 104 ) * 8 = 2008 [години].
Середня годинна оплата програміста визначається співвідношенням:
Срозр. = ФЗРсн / n(p), (4.4)
де ФЗРсн - річний фонд грошового забезпечення.
Срозр. = 20000/2008 = 9,96 [гривень].
Отже, витрати по оплаті праці (Зрозр.) розробників програми складають:
Зрозр. = 480*9,96 = 4780,8 [гривень].
Визначимо витрати, пов'язані з розробкою програми на ПК. Вони розраховуються як добуток часу використання ПК для розробки програми на собівартість машинного часу обчислювальної техніки. Собівартість ( СПК ) однієї години роботи ПК дорівнює відношенню річних поточних витрат на експлуатацію ПК ( ЗгПК ) до річного фонду часу ( ТгПК ) корисної роботи ПК.
СПК = ЗгПК / ТгПК, (4.5)
Розрахуємо річний фонд часу роботи ПК.
Визначивши дійсний річний фонд часу ЕОМ у годинах, одержимо можливість оцінити собівартість годин машинного часу. Дійсний річний фонд часу ЕОМ дорівнює числу робочих годин у році для оператора, за винятком часу на профілактику й ремонт ЕОМ. Час профілактики: щомісячно - 5 годин; щорічно - 6 діб.
ТгПК = 2008 - (6*8 + 5*12) = 1840 [години].
Річні поточні витрати на експлуатацію визначаються по формулі:
ЗгПК = ЗгАМ + ЗгЭЛ + ЗгРЕМ + ЗгМАТ + ЗгДР, (4.6)
де ЗгАМ - річні відрахування на амортизацію,
ЗгЭЛ - річні витрати на електроенергію для ПК,
ЗгРЕМ - річні витрати на ремонт ПК,
ЗгМАТ - річні витрати на додаткові комплектуючі ПК,
ЗгДР - інші витрати.
Сума річних амортизаційних відрахувань визначається за наступною формулою:
ЗгАМ = ЦПК * НА, (4.7)
де ЦПК - балансова вартість ПК,
НА - норма амортизаційних відрахувань, дорівнює 15% (у квартал).
Балансова вартість ПК:
Цпк = Цр * ( 1+ Кун ), (4.8)
де Цр - ринкова вартість ПК,
сКун - коефіцієнт, що враховує витрати на установку й налагодження, рівний 12%.
Цпк = 5500 * ( 1 + 0,12 ) = 6160 [гривень].
ЗгАМ = 6160 * 0,15*4 = 3696 [гривень].
Витрати на електроенергію, споживану ПК, визначаються за наступною формулою:
ЗгЭЛ = РчПК * ТгПК * ЦЭЛ * А, (4.9)
де PчПК - настановна потужність ПК ( PчПК = 0,3 [квт] ),
ТгПК - річний фонд корисного часу роботи машини,
ЦЭЛ - вартість 1 квт/година електроенергії (ЦЭЛ = 0,58 [грн.]),
А - коефіцієнт інтенсивного використання ПК ( 0,9 - 1 ).
Таким чином, розрахункове значення витрат на електроенергію, споживану ПК, складає:
ЗгЭЛ = 0,3 * 1840 * 0,58 * 1,0 = 320,16 [гривень].
Витрати на поточний і профілактичний ремонт приймаються рівними 6% від вартості ПК:
ЗгРЕМ = ЦПК * 0,06 , (4.10)
ЗгРЕМ = 6160 * 0,06 = 369,6 [гривень].
Витрати на матеріали - витрати необхідні для забезпечення експлуатації ПК приймаються рівними 2% від вартості ПК.
ЗгМАТ = ЦПК * 2%, (4.11)
ЗгМАТ = 6160 * 0,02 = 123,2 [гривень].
Непрямі витрати, тобто витрати пов'язані з експлуатацією ПК приймаються рівними 5-10% вартості ПК.
ЗгДР = ЦПК * 5%, (4.12)
ЗгДР = 6160* 0,05 = 308 [гривень].
Повні витрати на експлуатацію ПК впродовж року складають:
ЗгПК= 3696+320,16+369,6+123,2+308=4816,96 [гривень].
Собівартість машинного часу ( CПК ) складає:
СПК = 4816,96/1840 = 2,62[гривень].
У ході розробки програмного комплексу машина використовувалася на етапах програмування:
написання програми за готовою схемою алгоритму;
налагодження програми на ПК;
підготовки документації по задачі.
Таким чином, витрати машинного часу склали ( tмаш ):
tмаш = tпрог.+ tотл. + tдок., (4.13)
tмаш = 144 + 80 + 40 = 264 [чол./годин].
Витрати на оплату машинного часу можна розрахувати по формулі:
Змаш = tмаш * СПК, (4.14)
Змаш = 264 * 2,62 = 691,68 [гривень].
Загальні витрати на створення програмного комплексу складають:
Зразом = З розр. + З маш, (4.15)
Зразом = 4780+691,68 =5471,68 [гривень].
Економічним обґрунтуванням інформаційної системи бібліотеки є те, що за допомогою програми бібліотекар має змогу швидко та достовірно надати всю необхідну інформацію більшій кількості читачів, а ніж використовуючи паперовий метод ведення каталогу, картотеки та обліку повернення та видачі книг читачам.
Інформаційна система роботи бібліотеки планується бути запровадженою в бібліотеці «Європейського університету». А саме зараз бібліотекар в середньому обслуговує за день 140 читачів, при цьому отримуючи заробітну плату в розмірі 1000 грн. за місяць, при використанні бібліотекар за ту ж саму заробітну плату буде обслуговувати в середньому 210 читачі, отже об'єм роботи розрахуємо, як співвідношення кількості людей які були обслужені за день:
Ороботи = (Кз.сис.-Кбез.сис)/ Кз.сис , (4.16)
де Ороботи - об'єм роботи,
Кбез.сис. - кількість відвідувачів бібліотеки, які були обслужені без системи,
Кбез.сис.- кількість відвідувачів бібліотеки, які були обслужені з системою.
Ороботи = (210-140)/210=0,3=30% .
Отже об'єм роботи, за допомогою програми, буде збільшено на 30%, враховуючи заробітну платню бібліотекаря знайдемо умовний економічний ефект (УЕ) від програми:
УЕмісяць = О роботи. * Зароб.плата, (4.17)
УЕмісяць = 0,3 * 1000=300(грн),
УЕрік = Змісяць * 12, (4.18)
УЕрік = 300 * 12=3600(грн).
Після того коли знайшли умовний ефект, тобто оцінивши труд бібліотекаря в гривневому виразі знайдемо через який час програма себе окупить:
Опрограми = З разом / УЕрік, (4.19)
де Опрограми - час за який програма себе окупить.
Опрограми = 5471,68 / 3600=1,5(роки)
Отже ми знайшли, що програма окупиться за 1,5 роки, після чого округлюємо наш час до ближнього більшого цілого числа, тобто отримуємо 2 роки, і вже після цього розраховуємо ефект за 2 роки:
Е n роки = n* УЕрік, (4.20)
де Е n роки - ефективність за n років.
Е 2 роки = 2*3600=7200(грн).
Прибуток за два роки буде складати:
П n роки = Е n роки - З разом, (4.21)
де П n роки - прибуток за n років.
П 2 роки = 7200-5461,12=1738,88(грн).
Ефективність за два роки буде складати:
Еф n роки = (П n роки / З разом) * 100%, (4.22)
де Еф n роки - ефективність за n років.
Еф 2 роки = (1738,88/5461,12)*100%=32%.
Отже можна зробити висновок, що програма буде окуплена за 1,5 роки. За два роки її експлуатації вона принесе прибуток в розмірі 1738,88 гривень, а економічна ефективність програми за два роки складе 32%.
ВИСНОВКИ
В результаті виконання дипломного проекту, на тему «Інформаційна система для бібліотеки (на прикладі бібліотеки Криворізької філії Європейського університету», можна зробити висновок, що було виконано наступні завдання:
розглянуто існуючу систему функціонування роботи бібліотеки;
проаналізовано існуючі інформаційні системи, які створені для автоматизації роботи бібліотеки;
побудовано модель функціонування системи;
створено програмний продукт;
вирахувано економічний ефект проекту, тобто саме в чому полягає вигода використання створеної інформаційної системи.
Створена програма виконує наступні функції:
розділення прав користувачів, тобто в програму можуть зайти, як бібліотекар, так і читачі, але з різними правами;
заборона зміни даних читачем;
можливість зміни даних бібліотекарем;
організація роботи по видачі книг;
ведення статистики бібліотеки;
ведення обліку тих хто заборгував книгу.
Для реалізації дипломного проекту алгоритмічно та програмно було використано такі програмні засоби:
мова програмування С#;
база даних SQL Server;
мова графічного опису для об'єктного моделювання UML.
Мета, яку було поставлено на початку досягнуто, інформаційна система створена і може бути використана в бібліотеках університетів, адже вона і створювалася в даних цілях.