Ім'я файлу: ООП_Курсова робота_ПРИКЛАД _(ІПЗ).docx
Розширення: docx
Розмір: 306кб.
Дата: 28.05.2023
скачати

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ

НАЦІОНАЛЬНИЙ ТРАНСПОРТНИЙ УНІВЕРСИТЕТ

Факультет транспортних та інформаційних технологій

Кафедра інформаційних систем і технології

КУРСОВА РОБОТА

(Пояснювальна записка)

з дисципліни «Об’єктно-орієнтоване програмування»

на тему: Розроблення застосунку «Облік співробітників» з використанням методології об’єктно-орієнтованого програмування

Студент _____ курсу __________ групи

спеціальності_______________________

__________________________________

(прізвище та ініціали)

Керівник ___________________________

____________________________________

(посада, вчене звання, науковий ступінь, прізвище та ініціали)

Національна шкала ________________

Кількість балів: __________Оцінка: ECTS ____

Київ – 20 р.

Затверджено:

Завідувач кафедри «Інформаційні

системи і технології»

________________ В.В. Гавриленко

«___»______________20 р.

Кафедра «Інформаційні системи і технології»

Дисципліна «Об’єктно-орієнтоване програмування»

Спеціальність «Інженерія програмного забезпечення»

Курс ІІ Група ______ Семестр 4

ЗАВДАННЯ

на курсову роботу

студента

1. Тема проекту: Розроблення застосунку «Облік співробітників» з використанням методології об’єктно-орієнтованого програмування.

2. Термін здачі студентом закінченого проекту «___»________________ 20 р. 3. Вхідні дані до проекту: _______________________________________________________________ ______________________________________________________________________________________ 4. Зміст розрахунково-пояснювальної записки:

Вступ.

Перелік скорочень, умовних позначень, символів, одиниць і термінів.

Розділ 1. Аналіз предметної області та постановка задачі.

Розділ 2. Побудова алгоритму та вибір технологій рішення задачі.

Розділ 3. Реалізація програмного продукту.

Висновки.

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

Додатки.

5. Перелік графічного матеріалу: схеми алгоритму рішення задачі, результати роботи програмного продукту.

6. Дата видачі завдання_______________________

Завдання прийняв до виконання студент___________________ ___________________ (підпис) (ПІБ)

Керівник__________________ ___________________

(підпис) (ПІБ)

КАЛЕНДАРНИЙ ПЛАН



п/п

Найменування етапів виконання роботи

Строк виконання

Примітки

1.

Аналіз предметної області та постановка задачі

02-08.04.2019




2.

Розроблення алгоритмів розв'язання задачі. Визначення вимог до програмного забезпечення. Вибір технологій

09-15.04.2019




3.

Програмна реалізація

16-29.04.2019




4.

Захист програмного продукту

03.05.2019




5.

Оформлення пояснювальної записки

05-10.05.2019




6.

Захист

___.05.2019






Студент___________________ ________________

(підпис) (ПІБ)

2

Керівник__________________ ________________

(підпис) (ПІБ)

ЗМІСТ ТРЕБА РОБИТИ ЧЕРЕЗ ССЫЛКИ – Оглавление - ….

ЗМІСТ

ПЕРЕЛІК СИМВОЛІВ, СКОРОЧЕНЬ, ТЕРМІНІВ ....................................................4 ВСТУП...............................................................................................................................5 РОЗДІЛ 1. АНАЛІЗ ПРЕДМЕТНОЇ ОБЛАСТІ ТА ПОСТАНОВКА ЗАДАЧІ ........6

1.1. Аналіз предметної області ..................................................................................6 1.2 Аналіз існуючих аналогів-розробок......................................................................7 1.3. Мета роботи та постановка задачі......................................................................7

РОЗДІЛ 2. ПОБУДОВА АЛГОРИТМУ ТА ВИБІР ТЕХНОЛОГІЙ РІШЕННЯ ЗАДАЧІ..............................................................................................................................8

2.1. Побудова алгоритму .............................................................................................8 2.2. Проектування бази даних.....................................................................................9 2.3. Вимоги до системи..............................................................................................10 2.4. Вибір технологій .................................................................................................11

РОЗДІЛ 3. РЕАЛІЗАЦІЯ ПРОГРАМНОГО ПРОДУКТУ........................................12 3.1. Опис програмного продукту ..............................................................................12 3.2. Опис інтерфейсу..................................................................................................12 3.3. Програмна структура коду.................................................................................12 3.4. Тестовий приклад................................................................................................12

ВИСНОВКИ....................................................................................................................14 СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ......................................................................15 ДОДАТКИ.......................................................................................................................16 ДОДАТОК А. Настанова користувача.........................................................................17 ДОДАТОК В. Код програми .........................................................................................18

3

ПЕРЕЛІК СИМВОЛІВ, СКОРОЧЕНЬ, ТЕРМІНІВ

БД – база даних.

ПЗ – програмне забезпечення.

Java – об’єктно-орієнтована мова програмування.

MySQL - вільна система керування реляційними базами даних. IDE - інтегроване середовище розробки.

Баг - жаргонізм, що означає помилку, ваду або дефект в програмі або системі, що викликає в ній неправильний або неочікуваний результат або неочікувану поведінку.

JavaFX - платформа та набір інструментів для створення насичених з можливістю підвантаження медіа та змісту.

JDBC - прикладний програмний інтерфейс Java, який визначає методи, з допомогою яких програмне забезпечення на Java здійснює доступ до бази даних. UI – користувацький інтерфейс.

4

ВСТУП

МІНІМУМ 1 СТОРІНКА

Актуальність теми. Використання можливостей системи обліку кадрів як важлива та невід’ємна частина функціоналу інформаційної системи фірми. Використання парадигми ООП у контексті розробки ПЗ.

Мета роботи. Метою є підвищення ефективності роботи системи обліку співробітників фірми, покращення продуктивності та зручності використання. Постановка задачі. Розробити застосунок для системи обліку співробітників фірми з використанням методології об’єктно-орієнтованого програмування.

Для досягнення поставленої мети в курсовій роботі сформульовані та вирішені наступні задачі дослідження:

1. Аналіз предметної області.

2. Побудова алгоритму та вибір технологій рішення задачі.

3. Реалізація програмного продукту.

Методи дослідження: Теоретичною базою для вирішення сформульованого завдання є роботи ООП, теорії алгоритмів. Практичною – навички та знання у використанні мови програмування Java та вільної системи керування реляційними базами даних MySQL.

5

РОЗДІЛ 1. АНАЛІЗ ПРЕДМЕТНОЇ ОБЛАСТІ ТА ПОСТАНОВКА ЗАДАЧІ

ОБСЯГ РОЗДІЛУ хоча б 7 сторінок

1.1. Аналіз предметної області

МІНІМУМ 1 СТОРІНКА

Блок задач з обліку і контролю праці та заробітної плати є одним з найважчих, складних та трудомістких ділянок облікової роботи, що потребує точних і оперативних даних. Даний облік повинен забезпечити в організації точний контроль за наявністю та рухом кадрiв.

Об’єктом дослідження у роботі є інформаційні процеси, пов’язані з обліком наявності та руху кадрів.

Предметною областю даної курсової роботи є використання об’єктно орієнтованого підходу для розроблення програмного забезпечення обліку співробітників фірми.

На досліджуваному об’єкті найбільш прийнятний варіант розв’язання задачі “Облік наявності та руху кадрiв за допомогою програм спеціального призначення, тобто шляхом автоматизації робочого місця працівника відділу кадрів, який описаний у попередньому підрозділі.

Система обліку співробітників повинна включати в себе дані про відділи, персонал, та належність робітників до відділів. ПЗ має забезпечувати можливість маніпулювати даними всіх пунктів, тобто додавати нові, змінювати/видаляти старі.

Інформативність повинна задовольняти потреби користувача але не бути надлишковою. Відділи повинні мати назву та голову, персонал – особисті дані та контактну інформацію, а робітники – об’єднання інформації попередніх пунктів та зарплатню.

6

1.2 Аналіз існуючих аналогів-розробок

Перелічити декілька – назви , функції, скріншот за наявності, переваги та недоліки

1.3. Мета роботи та постановка задачі

Метою курсової роботи є підвищення ефективності роботи системи обліку співробітників фірми, покращення продуктивності та зручності використання. Для досягнення цієї мети поставлено таку задачу - розробка застосунку для системи обліку співробітників фірми з використанням методології об’єктно орієнтованого програмування. Тобто розробити систему обліку, яка буде використовувати базу даних (MySQL) та візуалізований інтерфейс для доступу до неї (форма, створена за допомогою Java).

Розв’язання задачі за допомогою комплексу програм спеціального призначення і вирішує задачу “Облік навності та руху кадрiв”. Пропонується автоматизувати робоче місце працівника відділу кадрів. На цьому АРМі працівник ВК сам вводить інформацію на основі первинних документів і отримує в оперативному порядку вихідні документи.

АРМ працівника відділу кадрів спеціального призначення – це програмно технічний комплекс індивідуального використання, призначений для автоматизації розв’язання задач з обліку наявності та руху кадрiв безпосередньо на робочому місці працівника відділу кадрів за допомогою ПЕОМ. Виокремимо пункти дослідження та роботи в цілому:

1. Аналіз предметної області.

2. Побудова алгоритму та вибір технологій рішення задачі.

3. Реалізація програмного продукту.

7

РОЗДІЛ 2. ПОБУДОВА АЛГОРИТМУ ТА ВИБІР ТЕХНОЛОГІЙ РІШЕННЯ ЗАДАЧІ

2.1. Побудова алгоритму

ПРИКЛАД:

Після визначення теми та головної мети, приступаємо до побудови деякого алгоритму виконання поставленої цілі.

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

По-друге, продумуємо подальші дії. Перевіряємо наявність потрібного ПЗ та джерел інформації. Приступаємо до роботи з MySQL.

Наступним кроком буде створити БД за поставленою умовою. Використовуючи запит мови SQL, створюємо таблиці та налаштовуємо під наші цілі.

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

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

Відобразити схему ПЗ на рисунку:

User -> javaFX (GUI client) -> data access layer (DAO) -> JDBC -> database Рисунок 2.1 – Схема ПЗ

8

2.2. Проектування бази даних

Так як ми заздалегідь підготувались до виконання роботи, перевірили наявність потрібних елементів та чітко визначили мету, можемо одразу приступати до проектування БД.

Для цього я буду використовувати декілька компонентів MySQL, а саме MySQL WorkBench, MySQL Server. Створивши запит мови SQL, запускаємо його за допомогою MySQL WorkBench. Після створення таблиць з необхідними полями, ключами та відносинами, ми можемо також створити схему:

Рисунок 2.2 – Схема БД

Опис таблиць:

Перша таблиця – «Відділи»

Містить поле «ID» для ідентифікації номером; поле «назва» зі строковими даними щодо назви відділу; поле «голова» із іменем та ініціалами начальника відділу.

Друга – «Персонал»

9

Містить поле «ID» для ідентифікації номером; три поля із строками ПІБ особи; поля з номером, датою народження, паспортними даними та адресою строкового типу.

Третя – «Робітники»

Містить поле «ID» для ідентифікації номером; поле із посиланням на прив’язаний відділ (тобто місце реєстрації робітника); поле із посиланням на особисту інформацію з таблиці «Персонал».

Можна відобразити дані в таблиці

Наприклад

Рисунок 2.3 – Таблиця …

Зв’язки (один до багатьох) між таблицями відбуваються за допомогою ключів, створених разом з БД.

2.3. Вимоги до системи

Система обліку співробітників повинна включати в себе:

1) Сторона БД: дані про відділи, персонал, та належність робітників до відділів. Каскадне додавання, оновлення та видалення рядків. Незмінні поля. Ключі задані для пов’язання таблиці Workers (надалі «Робітники») з таблицями Person Reader (надалі «Персонал») та Department (надалі «Відділ»). Для кожного поля задані потрібні типи даних з відповідним форматуванням.

10

2) Сторона ПЗ має забезпечувати можливість маніпулювати даними всіх таблиць, тобто додавати нові, змінювати/видаляти старі записи, оновлювати їх. Доступ до зміни структури БД зачинений. Також інтерфейс отримає оформлення з можливістю користуватися всіма можливостями, закладеними вище.

3) Сторона ПК: персональний комп’ютер деякої потужності, для використання системи обліку. Сервер – опціональний, так як наша БД є локальною і цього достатньо для прикладу розробки відповідного ПЗ.

4) Цілісна система повинна забезпечити користувача всіма потрібними можливостями. Також потрібно досягнути швидкої та точної обробки інформації без збоїв, невідповідності даних і т. п.

2.4. Вибір технологій

Для виконання поставлених задач я буду використовувати ноутбук, на якому встановлені відповідні програмні засоби, а саме MySQL з раніше вказаними елементами, IDE Eclipse для програмування на мові Java, потрібні бібліотеки імпортовані до середовища (такі як JavaFX, JDBC).

Обгрунтувати вибір технологій, чому саме java, mysql, які переваги, функціональні можливості

11

РОЗДІЛ 3. РЕАЛІЗАЦІЯ ПРОГРАМНОГО ПРОДУКТУ

3.1. Опис програмного продукту

ПРИКЛАД:

Railway Station Registration v0.0.0.1” – система, створена з метою продажу залізничних квитків. Дана система може виконувати такі функції: Додавати інформацію про рейси;

Змінювати інформацію про рейси;

Видаляти рейси;

Реєструвати пасажира;

Змінювати інформацію про пасажира;

Видаляти інформацію про пасажира;

Позначати інформацію про повернення квитка;

Виводити інформацію про пасажирів, у яких наявний квиток; Виводити інформацію про пасажирів, які повернули квиток; Виводити інформацію про пасажирів за обраним рейсом.

3.2. Опис інтерфейсу

Програма складається з … робочих вікон. У першому вікні реалізована обробка інформації про .. (рисунок 3.1), а у другому – обробка інформації про реєстрацію (рисунок 3.2)….

3.3. Програмна структура коду

Додайте опис класів, які класи java використовували для тих чи інших цілей, наведіть частини коду з описом, згадайте про DAO паттерн, продивіться 9 та 10 лаб.роб., https://www.swtestacademy.com/database-operations-javafx/ (приклад опису на англ., але структура непогана)

3.4. Тестовий приклад

Після перевірки коду на помилки, винятки і т. п. ми можемо запустити ПЗ у вигляді форми, розглянутої раніше і приступати до роботи.

12

Для тестування працездатності виконаємо задачу:

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

Задача поставлена, можемо приступати до виконання, першим кроком буде запуск форми та створення нового відділу:

Навести відповідні прінтскріни на рисунках

13

ВИСНОВКИ

Згадайте про мету роботи, чи її досягнуто

Обсяг – не менше 1 сторінки

Система, яка розроблялась у рамках курсової роботи, спрямована на використання у невеликих фірмах задля того, щоб підвищити ефективність і якість обліку співробітників. При розробці додатку значну увагу було приділено користувацькому інтерфейсу. Важливим завданням було створити його якомога простим у використанні і в той самий час багатофункціональним і зручним, адже ним користуватимуться кожного дня. Основні функції системи винесено в рядок меню, інші згруповано в списки. Всі графічні елементи і кольорові гами було використано відповідно до загальноприйнятих, і тепер навіть тому, хто вперше користується сервісом, буде інтуїтивно зрозуміло, як виконати бажану дію. Десктопний додаток складається з окремих форм – Головна, Персонал та Відділи. Призначення кожної форми та опис застосованих алгоритмів описано в наступних підрозділах, а лістинг вихідного коду моделей, з яких формуються таблиці БД, знаходиться в Додатках.

У процесі виконання курсової роботи, було розроблене програмне забезпечення для системи обліку співробітників фірми згідно об’єктно орієнтованого підходу.

Був проведений аналіз предметної області зі сторони користувача та розробника.

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

Реалізація програмного продукту пройшла успішно, роботу ПЗ та БД було перевірено.

Як результат я ознайомився з всіма елементами, які були застосовані в процесі розробки, тобто Java, JDBC, JavaFx та MySQL; отримав навички їх використання та потрібні знання для виконання подібних цілей.

14

СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ

Має бути мінімум 5 – можна по предметній області, проектуванню, по БД та й по Java (дивіться у лаб. роботах списки літ-ри)

1. Електронне джерело - https://docs.oracle.com/javase/8/javase clienttechnologies.htm

2. Електронне джерело - https://docs.oracle.com/javase/8/javafx/get-started tutorial/jfx-overview.htm#JFXST784

3. Електронне джерело - https://docs.oracle.com/javafx/2/ui_controls/table-view.htm 4. Jeanne Boyarsky OCA: Oracle Certified Associate Java SE 8 Programmer I Study Guide: Exam 1Z0-808 1st Edition / Jeanne Boyarsky, Scott Selikoff. – NY: John Wiley & Sons, Inc., 2014 – 432 с.

5. Эккель Б. Философия Java: пер. с англ. / Б. Єккель. – СПб : Питер, 2015. – 1168c. 6. Шилдт Г. Java8 Полное руководство : пер. с англ. / Г. Шилдт. – К.: Диалектика, 2015. – 1376 c.

15

ДОДАТКИ

16

ДОДАТОК А. Настанова користувача

КРОКИ ВИКОРИСТАННЯ ПЗ

17

ДОДАТОК В. Код програми

Код запиту SQL для створення БД та її налаштування, а саме створення БД, під’єднання до неї, створення у ній таблиць з відповідними полями потрібних типів, створення ключів.:

CREATE DATABASE dbntu;

USE dbntu;

CREATE TABLE dbntu.Book(

ID bigint NOT NULL AUTO_INCREMENT PRIMARY KEY,

title varchar (255) NOT NULL,

author varchar (255) NOT NULL,

printyear int (30) NOT NULL,

countofpages int (30)

);

CREATE TABLE dbntu.PersonReader (

ID bigint NOT NULL AUTO_INCREMENT PRIMARY KEY,

firstName varchar (255) NOT NULL,

middleName varchar (255),

lastName varchar (255) NOT NULL,

phone varchar (255) NOT NULL,

birthDt date,

serialOfPassport varchar (30),

numOfPassport int (30),

address varchar (255)

);

CREATE TABLE dbntu.BookRegister (

ID bigint NOT NULL AUTO_INCREMENT PRIMARY KEY,

bookId bigint NOT NULL,

vydanoDt date NOT NULL,

personReaderId bigint NOT NULL,

povernenoDt date,

CONSTRAINT `fk_book`

FOREIGN KEY (`BOOKID`)

REFERENCES `dbntu`.`BOOK` (`ID`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `fk_personreader`

FOREIGN KEY (`PERSONREADERID`)

REFERENCES `dbntu`.`PERSONREADER` (`ID`)

ON DELETE NO ACTION

ON UPDATE NO ACTION

);

Код застосунку: вказати класи, які використовувались в роботі (по тексту курсової наводити фрагменти класів)

18
скачати

© Усі права захищені
написати до нас