Professional Documents
Culture Documents
Udalova LangSchool
Udalova LangSchool
ФАКУЛЬТЕТ ІНФОРМАТИКИ
Кафедра інформатики
студентки
групи № 3
3-курсу
Програмна Інженерія
Удалової Марії Сергіївни
Викладач:
к.ф.-м.н. Ющенко Ю.О.
Київ – 2017
Зміст
РОЗДІЛ 1. ТЕХНІЧНЕ ЗАВДАННЯ............................................................................................5
1.1. Призначення автоматизованої інформаційної системи......................................................5
1.1.1. Опис організації...................................................................................................................5
1.1.2. Опис задач організації.........................................................................................................7
1.1.3. Основні функції системи.....................................................................................................8
1.1.4. Призначення АІС.................................................................................................................8
1.2. Опис даних предметної області.............................................................................................9
1.2.1. Загальна інформація (опис, наданий генеральним директором організації).................9
1.2.2. Збір фактів..........................................................................................................................10
1.2.2.1. Вивчення документації...................................................................................................10
1.2.2.2. Дослідження....................................................................................................................11
1.2.2.3. Спостереження................................................................................................................12
1.2.2.4. Співбесіди........................................................................................................................12
1.2.2.5. Анкетування....................................................................................................................13
РОЗДІЛ 2. ТЕХНІЧНИЙ ПРОЕКТ.............................................................................................14
2.1. Інфологічне та датологічне проектування..........................................................................14
2.1.1. Концептуальна модель даних...........................................................................................14
2.1.1.1. Схема ER – моделі..........................................................................................................14
2.1.1.2. Опис сутностей...............................................................................................................15
2.1.1.3. Опис зв’язків...................................................................................................................16
2.1.1.3.1. Зв’язок Клієнти – Замовлення....................................................................................16
2.1.1.3.1.1. Позначення................................................................................................................16
2.1.1.3.1.2. Призначення..............................................................................................................16
2.1.1.3.1.3. Назва в АІС................................................................................................................16
2.1.1.3.1.4. Потужність................................................................................................................16
2.1.1.3.1.5. Типи відповідності....................................................................................................16
2.1.1.3.2. Зв’язок Замовлення – Цільові електронні перепустки.............................................16
2.1.1.3.2.1. Позначення................................................................................................................16
2.1.1.3.2.2. Призначення..............................................................................................................16
2.1.1.3.2.3. Назва в АІС................................................................................................................16
2.1.1.3.2.4. Потужність................................................................................................................17
2.1.1.3.2.5. Типи відповідності....................................................................................................17
2.1.1.3.3. Зв’язок Цільові електронні перепустки – Заняття....................................................17
2.1.1.3.3.1. Позначення................................................................................................................17
2.1.1.3.3.2. Призначення..............................................................................................................17
2.1.1.3.3.3. Назва в АІС................................................................................................................17
2.1.1.3.3.4. Потужність................................................................................................................17
2.1.1.3.3.5. Типи відповідності....................................................................................................17
2
2.1.1.3.4. Зв’язок Заняття – Мови...............................................................................................17
2.1.1.3.4.1. Позначення................................................................................................................17
2.1.1.3.4.2. Призначення..............................................................................................................17
2.1.1.3.4.3. Назва в АІС................................................................................................................17
2.1.1.3.4.4. Потужність................................................................................................................18
2.1.1.3.4.5. Типи відповідності....................................................................................................18
2.1.1.3.5. Зв’язок Заняття – Вчителі...........................................................................................18
2.1.1.3.5.1. Позначення................................................................................................................18
2.1.1.3.5.2. Призначення..............................................................................................................18
2.1.1.3.5.3. Назва в АІС................................................................................................................18
2.1.1.3.5.4. Потужність................................................................................................................18
2.1.1.3.5.5. Типи відповідності....................................................................................................18
2.1.1.3.6. Зв’язок Вчителі – Оголошення...................................................................................18
2.1.1.3.6.1. Позначення................................................................................................................18
2.1.1.3.6.2. Призначення..............................................................................................................18
2.1.1.3.6.3. Назва в АІС................................................................................................................18
2.1.1.3.6.4. Потужність................................................................................................................18
2.1.1.3.6.5. Типи відповідності....................................................................................................19
2.1.1.3.7. Зв’язок Заняття – Категорії.........................................................................................19
2.1.1.3.7.1. Позначення................................................................................................................19
2.1.1.3.7.2. Призначення..............................................................................................................19
2.1.1.3.7.3. Назва в АІС................................................................................................................19
2.1.1.3.7.4. Потужність................................................................................................................19
2.1.1.3.7.5. Типи відповідності....................................................................................................19
2.1.1.3.8. Зв’язок Вчителі – Телефони........................................................................................19
2.1.1.3.8.1. Позначення................................................................................................................19
2.1.1.3.8.2. Призначення..............................................................................................................19
2.1.1.3.8.3. Назва в АІС................................................................................................................19
2.1.1.3.8.4. Потужність................................................................................................................19
2.1.1.3.8.5. Типи відповідності....................................................................................................19
2.1.1.4. Перелік корпоративних обмежень цілісності........................................................20
2.1.2. Реляційна модель даних....................................................................................................20
2.1.2.1. Таблиця № 1 «BUYERS»+«Клієнти»......................................................................20
2.1.2.2. Таблиця № 2 «ORDERS»+«Замовлення»................................................................20
2.1.2.3. Таблиця № 3 «EPASS»+«Цільові електронні перепустки»...................................21
2.1.2.4. Таблиця № 4 «LESSONS»+«Заняття».....................................................................22
2.1.2.5. Таблиця № 5 «LANGUAGES»+«Мови».................................................................23
2.1.2.6. Таблиця № 6 «TEACHERS»+«Вчителі».................................................................24
2.1.2.7. Таблиця № 7 «TEACH_USE_WORKPHONE»+ ««Вчителі» - «Телефони»»......24
3
2.1.2.8. Таблиця № 8 «АNNOUNCEMENTS»+«Оголошення»..........................................25
2.1.2.9. Таблиця № 9 «CATEGORIES»+«Категорії»...........................................................25
2.1.2.10. Таблиця № 10 «PHONE_NUMBERS»+«Teлефони»..............................................26
2.1.2.3. Обмеження цілісності...............................................................................................26
2.1.2.3.1. Обмеження домену................................................................................................26
2.1.2.3.2. Цілісність посилань...............................................................................................26
2.1.2.3.3. Корпоративні (семантичні) обмеження цілісності.............................................27
РОЗДІЛ 3. ВИСНОВКИ..............................................................................................................28
РОЗДІЛ 4. ДОДАТКИ.................................................................................................................29
РОЗДІЛ 5. ПЕРЕЛІК ВИКОРИСТАНИХ ДЖЕРЕЛ.................................................................30
4
РОЗДІЛ 1. ТЕХНІЧНЕ ЗАВДАННЯ
1.1. Призначення автоматизованої інформаційної системи
300
Вартість одного заняття
250
200
150
100
(грн)
50
0
Green Speak up American English Буде Talk JUST.Go Flash
Forest English Prime Languages
Center
5
Рис.2. Середня ціна за одне заняття у різних мовних школах м. Києва згідно
рейтингу https://enguide.ua
Отже, через швидкий ріст кількості клієнтів було схвалено пропозицію відділу
інформаційних технологій щодо впровадження автоматизованої інформаційної системи
(далі АІС).
До того ж, із введенням АІС планується одночасне розширення послуг, а саме:
додати можливість вивчення німецької та французької мов. Згідно з бізнес-планом
співвідношення кількості занять з кожної мови на наступні півроку продемонстроване на
рис.3:
60
Англійська
Німецька
180
Французька
90
Рис.3. Запланована кількість занять з кожної мови на період січень-липень 2018 після
введення АІС
Посада Кількість
Голова ради директорів, Президент школи 1
Генеральний директор, Фінансовий директор 1
Бухгалтер 1
Директор з кадрових питань, відповідальний за навчальний
1
процес
Генеральний директор з розвитку 2
Бізнес-аналітики 4
Начальник відділу інформаційних технологій 1
Співробітники відділу інформаційних технологій 3
Адміністратор з наповнення груп 1
Касир 1
Молодший обслуговуючий персонал 37
Охоронці 2
Навчально-допоміжний персонал 18
Вчителі 204
Таблиця 1. Співробітники мовної школи «JUST.Go Languages»
6
планує повністю відмовитись від паперових підтверджень та провести реструктуризацію.
Також з введенням АІС фінансовий директор для прискорення процесу оплати утвердив
порядок укладання угод з банками щодо проводження транзакцій оплати саме у
банківських відділеннях, а також безпосередньо через веб-застосунок.
9
CELTA № 1556484 (від 10.10.2016)
Банківські реквізити (bank
1234-4321-5678-8765
card number)
Електронна пошта (якщо є teachdfmail@gmail.com
декілька – вказати 2 основні) sectecghmail@gmail.com
Таблиця 3. Шаблон анкети для заповнення претендентів на посаду «вчитель»
Інформація про заняття, яку може побачити зареєстрований клієнт (див. Таблиця 4):
ЗАТВЕРДЖУЮ:
10
А. О.Рябченко
Голова ради директорів
«10» жовтня 2017 р.
Акт № 9
склала цей акт про те, що нею в період з 01.10.2017 по 09.10.2017 була здійснена
інвентаризація шляхом звірки фактичної наявності із записами документів з обліку.
Перевірені наступні документи:
1. Акт попередньої інвентаризації фонду технічного обладнання №8 від
10.08.2016
2. Обладнання сумарного обліку.
3. Супровідні документи (накладні,акти, описи тощо на приймання-передавання
технічного обладнання).
4. Акти на вилучення обладнання між попередньою та цією інвентаризаціями: акт
№18п від 25.10.2017; №19п від 08.10.2011; №19п(вн) від 08.08.2017.
У ході інвентаризації встановлено:
1.За обліковими документами налічується 452 одиниці технічного обладнання на
суму 264 280 грн. (Двісті шістдесят чотири тисячі двісті вісімдесят грн.)
2.В наявності 452 примірників книг на суму 264 280 грн. (Двісті шістдесят чотири
тисячі двісті вісімдесят грн.)
3.Висновки комісії з інвентаризації: записи в облікових документах ведуться
своєчасно та охайно, було перевірено та проаналізовано якісний та кількісний стан
обладнання, замінено деталі, де це було необхідно.
Голова комісії:
Голова ради директорів А.О. Рябченко
1.2.2.2. Дослідження
Оскільки кількість організацій, що проводять навчальні курси/тренінги
найрізноманітніших напрямків, лише зростають, тому аналогічні АІС існують.
Було проаналізовані такі АІС:
А) https://greenforest.com.ua/
11
Б) https://my.p12.com.ua/auth
В) https://englishprime.ua/
Але вони суттєво відрізняються від розробленої АІС, оскільки більшість таких
установ реєструє клієнтів лише після повної оплати за курс. Тобто, дані установи
автоматично позбавляють клієнта платити зручним для нього способом (одразу перед
заняттям або за декілька).
1.2.2.3. Спостереження
В процесі спостереження за роботою організації було виявлено, що робота
підприємства була достатньо точно відображена у наданому керівництвом описі. В
автоматизованій інформаційній системі відчувається гостра потреба, оскільки зростає
масштаб роботи школи і людських ресурсів просто не вистачає для комфортного
обслуговування великої кількості клієнтів.
1.2.2.4. Співбесіди
Було проведено співбесіди з представниками таких категорій користувачів:
- Співбесіда 1. Вчитель
Я: Доброго дня!
Вчитель: Добридень.
Я: Мені дуже сподобалися Ваші заняття англійської і я хочу взяти коротке інтерв'ю
про вашу роботу, якщо Ви не проти.
Вчитель: Будь ласка, починайте.
Я: Як давно Ви працюєте вчителем англійської мови?
Вчитель: Вже 5 років.
Я: Вам подобається Ваша робота, організація праці?
Вчитель: Робота подобається, адже мені завжди подобалося вчити людей, а от
організація праці не дуже.
Я: А що саме вам не подобається в вашій роботі? У чому проблеми, на Ваш погляд,
організації?
Вчитель: Багато паперової волокіти, до того ж часто виникають непорозуміння зі
списками груп (клієнта або записали в іншу групу, або взагалі не записали). До того ж
інформування клієнтів – це просто жах, ці оголошення на дошці як в моєму дитинстві…
Я: Не хвилюйтеся, я впевнена у найближчий час вам облегшать роботу за паперами,
і нададуть програмний застосунок зі зручним та легко засвоюваним інтерфейсом.
Вчитель: Було б дуже "в тему".
Я: Дякую за інтерв'ю, всього вам найкращого!
Вчитель: Нема за що.
Я: До побачення.
- Співбесіда 3. Клієнт
Я: Доброго вечора, ви чи не перший клієнт школи. Що привело Вас до «JUST.Go
Languages»?
Клієнт: Добрий! Я мала підтягнути знання з англійської для презентації продукту
для іноземних партнерів, але мені дуже сподобалось на заняттях. Тепер я ходжу при будь-
якій зручній нагоді. Навіть чоловік двічі на тиждень ходить зі мною.
Я: Це показує школу як ту, що дає дійсно цікаві та потрібні знання. Можна задати
Вам декілька запитань щодо школи?
Клієнт: Звісно. Я буду рада відповісти на запитання.
Я: Чи подобається Вам як проходить реєстрація на заняття?
Клієнт: Коли вперше я прийшла до школи, я була дуже здивована, що подібним
чином десь у світі проходить запис на заняття (у світі розвитку нейромереж і загалом IT)..
Я: Так, повністю з Вами згодна. А що щодо оплати?
Клієнт: Мене приваблює, що можна платити за деякі заняття, адже не завжди є гроші
хоча б на 2 заняття (оскільки і у мене, і у чоловіка робота з нефіксованою заробітною
платою). Але звісно, такі великі черги наштовхують на думку заплатити одразу за якомога
більше завдань.
Я: Кхмм.. Дійсно, але із реструктуризацією школи кількість касирів збільшиться.
Клієнт: Так, буде чудово!
Я: А ви будете користуватись особистим кабінетом та чи хотіли б Ви його?
Клієнт: Так, звісно. Я постійно з ноутбуком. Тому, для мене це було б дуже зручно.
Я: Дякую вам за відповіді. Хорошого вам дня! До побачення.
Клієнт: Рада була поспілкуватись. Бажаю Вам натхнення у Вашій роботі! На все
добре!
1.2.2.5. Анкетування
Було розроблено анкету для клієнтів:
14
2.1.1.2. Опис сутностей
У моделі визначено наступні сутності:
Оголошення:
код (первинний ключ, автонумерація);
текст (обов’язковий, текст);
дата публікації (обов’язковий, дата);
час публікації (обов’язковий, час).
Вчителі:
код (первинний ключ, автонумерація);
персональний телефон (обов’язковий, текст) – потенційний ключ;
ПІБ (складений):
o прізвище (обов’язковий, текст);
o ім’я (обов’язковий, текст);
o по-батькові (обов’язковий, текст);
освіта (обов’язковий, текст (зазначаються усі ступені навчання (середня, вища
+ курси/дипломи/відзнаки) – приклад значення атрибуту наведено у
Таблиці 3);
електронна пошта (обов’язковий, багатозначний). Пошта є потенційним
ключем;
банківські реквізити (обов’язковий, текст).
Телефони:
код (первинний ключ, автонумерація);
номер (обов’язковий, текст);
Заняття:
код (первинний ключ, автонумерація);
тема (обов’язковий, текст) – оскільки заняття може проводитись декілька
разів, атрибут «тема» не може бути потенційним ключем;
загальна кількість місць (обов’язковий, точні числа);
дата проведення (обов’язковий, дата);
початок (обов’язковий, час);
кінець (обов’язковий, час, похідний, рахується шляхом додавання початку
заняття (значення атрибуту «початок») та тривалості заняття (значення
атрибуту «тривалість» сутності «Категорії», до екземпляру якої належить
заняття));
кількість вільних місць (обов’язковий, точні числа, похідний, рахується як
різниця між загальною кількістю місць на занятті (атрибут у сутності
«Заняття») та кількості цільових електронних перепусток на це заняття).
Мови:
код (первинний ключ, автонумерація);
назва (обов’язковий, текст).
Категорії:
код (первинний ключ, автонумерація);
найменування (обов’язковий, текст).
ціна (обов’язковий, грошова одиниця);
тривалість (обов’язковий, час).
Цільові електронні перепустки:
код (первинний ключ, автонумерація);
посадочний номер (обов’язковий, точні числа);
номер аудиторії (обов’язковий, точні числа);
присутність (обов’язковий, логічне значення).
Замовлення:
15
код (первинний ключ, автонумерація);
дата оформлення (обов’язковий, дата);
час оформлення(обов’язковий, час);
стан (обов’язковий, текст, приймає одне з трьох значень: зарезервований,
знятий (стан встановлюється, коли пройшло 2 години та замовлення не
придбали) та сплачено);
сума до сплати (обов’язковий, похідний, рахується як сума цін за усі заняття
у замовленні).
Клієнти:
код (первинний ключ, автонумерація);
номер телефону (обов’язковий, текст);
ПІБ (обов’язковий, складений):
o Прізвище (обов’язковий, текст);
o Ім’я (обов’язковий, текст);
o По батькові (обов’язковий, текст);
електрона пошта (необов’язковий, текст).
2.1.1.3.1.1. Позначення
Мнемонічне подання зі стислим визначенням: |Клієнти|-О-1---------n-|-|Замовлення|
2.1.1.3.1.2. Призначення
Клієнт може зробити замовлення, до якого будуть входити обрані ним заняття, які
він хоче відвідати.
2.1.1.3.1.4. Потужність
Потужність один до багатьох, адже одне замовлення належить одному клієнту, але
одному клієнту належить багато різних замовлень.
2.1.1.3.2.1. Позначення
Мнемонічне подання зі стислим визначенням: |Замовлення |-О-1---------m-О-| Цільові
електронні перепустки|
2.1.1.3.2.2. Призначення
До замовлення можуть входити цільові електронні перепустки, кожна з яких
визначає місце в аудиторії.
2.1.1.3.3.1. Позначення
Мнемонічне подання зі стислим визначенням: | Цільові електронні перепустки |-|-
n-------1-|-| Заняття|
2.1.1.3.3.2. Призначення
Одне заняття може відвідати скінчена кількість клієнтів, оскільки кількість місць в
аудиторії обмежена. Сутність «Цільові електронні перепустки» також дозволяє зручним
способом контролювати відвідуваність клієнтів на занятті.
2.1.1.3.3.4. Потужність
Потужність один до багатьох, адже одна цільова електронна перепустка дає дозвіл
пройти лише на одне заняття на конкретний посадочний номер, але на одне заняття
можуть пройти багато клієнтів за цільовими електронними перепустками.
2.1.1.3.4.1. Позначення
Мнемонічне подання зі стислим визначенням: | Заняття |-|-n---------1-|-| Мови|
2.1.1.3.4.2. Призначення
Кожне заняття проходить з якоїсь мови.
17
2.1.1.3.4.4. Потужність
Потужність один до багатьох, адже одна мова викладається на багатьох заняттях, у
той час як одне заняття викладається з однієї мови (одне заняття присвячено одній мові).
2.1.1.3.5.1. Позначення
Мнемонічне подання зі стислим визначенням: | Заняття |-|-k---------O-|-| Вчителі|
2.1.1.3.5.2. Призначення
Інформацію про вчителя додає директор з кадрових питань, за сумісництвом
відповідальний за навчальний процес. Він і назначає проводити заняття вчителів. Заняття
проводить один вчитель.
2.1.1.3.5.4. Потужність
Потужність один до багатьох, адже одне заняття проводить один вчитель, але один
вчитель проводить багато занять.
2.1.1.3.6.1. Позначення
Мнемонічне подання зі стислим визначенням: | Вчителі |-О-1---------n-|-|Оголошення |
2.1.1.3.6.2. Призначення
Вчитель може розміщувати оголошення на головній сторінці за стосунку.
2.1.1.3.6.4. Потужність
Потужність один до багатьох, адже один вчитель може опублікувати багато
оголошень, але конкретне оголошення публікує один вчитель.
18
2.1.1.3.6.5. Типи відповідності
a. прямий напрям: необов’язковий від «Вчителі» до «Оголошення», оскільки
вчитель може ще не розмістити оголошення;
b. зворотній напрям: обов’язковий від «Оголошення» до «Вчителі», оскільки
оголошення обов’язково має свого автора (вчителя, який опублікував дане
оголошення).
2.1.1.3.7.1. Позначення
Мнемонічне подання зі стислим визначенням: | Заняття |-|-m---------1-|-|Категорії |
2.1.1.3.7.2. Призначення
Заняття класифікуються за категоріями, що визначають ціну та тривалість заняття.
2.1.1.3.7.4. Потужність
Потужність один до багатьох, адже одне заняття належить одній категорії, але до
однієї категорії належать багато занять.
2.1.1.3.8.1. Позначення
Мнемонічне подання зі стислим визначенням: | Вчителі |-О-m---------n-О-| Телефони |
2.1.1.3.8.2. Призначення
У кожній аудиторії є стаціонарний телефон, яким може при необхідності
користуватись вчитель.
2.1.1.3.8.4. Потужність
Потужність багато до багатьох, адже одним телефоном може користуватись багато
вчителів, і кожен вчитель може користуватись багатьма телефонами у аудиторіях.
19
2) зберігається цілісність посилань (має бути наявна можливість видалити
вчителя, навіть якщо він був єдиним, хто користувався певним телефоном, у
якого після цього не буде прив'язаних до нього вчителів).
23
2.1.2.6. Таблиця № 6 «TEACHERS»+«Вчителі»
TEACHERS <-> сутність «Вчителі»
NULL / Пояснення (перехід
№ Ключ Ім’я атрибуту Тип ON DELETE ON UPDATE
NOT NULL від ER-моделі)
Autoinc
1 PK Teach_id NOT NULL «Код»
rement
Varchar
2 Teacher_name NOT NULL «Ім’я» з «ПІБ»
(20)
Teacher_surnam Varchar
3 NOT NULL «Прізвище» з «ПІБ»
e (20)
Teacher_fathna Varchar «По-батькові» з
4 NULL
me (20) «ПІБ»
Varchar
5 Education NOT NULL «Освіта»
(20)
Varchar «Банківські
6 Card_Number NOT NULL
(16) реквізити»
Компонент
Varchar
7 E_mail_one NOT NULL багатозначного
(20)
атрибуту «E-mail»
Компонент
Varchar
8 E_mail_sec NOT NULL багатозначного
(20)
атрибуту «E-mail»
Teach_pers_nu Char «Персональний
9 NOT NULL
mber (10) телефон»
Багатозначний атрибут «E_mail» розклався у два обов’язкових атрибути:
«E_mail_one» та «E_mail_sec». Є базовою сутністю для «Оголошення» та «Заняття», тому
первинний ключ стане зовнішнім ключем для «Оголошення» та «Заняття».
TEACH_USE_WORKPHONE
Допоміжна сутність
NULL /
№ Ключ Ім’я атрибуту Тип ON DELETE ON UPDATE Пояснення
NOT NULL
1 FK Phone_id Integer NOT NULL CASCADE CASCADE При видаленні
телефону видаляти
відповідні записи
про стаціонарний
телефон, що ним
можуть
користуються.
Автоматично
оновлювати номер
телефону у записах
PK вчителів, що ним
користуються.
24
При видаленні
вчителя, видаляти і
всі його зв'язки з
телефонами, до яких
він був раніше
прив'язаний
FK Teach_id Integer NOT NULL CASCADE CASCADE
Автоматично
оновлювати код
вчителя в записі
телефону, якщо
змінився код
вчителя.
Зв’язок сутностей «Вчитель» та «Заняття»
Autoinc
1 PK Announ_id NOT NULL «Код»
rement
Varchar
2 Announ_text NOT NULL «Текст»
(300)
3 Announ_data Date NOT NULL «Дата публікації»
4 Announ_time Time NOT NULL «Час публікації»
Зв’язок між
сутностями
«Вчителі» та
«Оголошення».
При видаленні
вчителя вказувати
SET
значення автора за
5 FK Teach_id Integer NOT NULL DEFAULT CASCADE
замовчуванням.
Автоматично
оновлювати номер
вчителя для даного
оголошення, якщо
змінився номер
вчителя.
25
Category Varchar NOT
2 «Найменування»
_name (20) NULL
Category NOT
3 Currency «Ціна»
_price NULL
NOT
4 Durability Time «Тривалість»
NULL
Ця сутність є базовою для сутності «Заняття». Тому первинний ключ стане
зовнішнім ключем для «Заняття».
27
РОЗДІЛ 3. ВИСНОВКИ
28
РОЗДІЛ 4. ДОДАТКИ
29
РОЗДІЛ 5. ПЕРЕЛІК ВИКОРИСТАНИХ ДЖЕРЕЛ
30