3D-навігація для мобільних пристроїв

 

1. Аналіз структури головного корпусу НУК та постановка задачі


1.1 Аналіз структури головного корпусу НУК


Головний корпус НУК має досить великі габарити та складну структуру розташування аудиторій. Корпус поділений на 4 крила (A, B, C, D). Університет складається з декількох інститутів. Кожний з яких складається з багатьох кафедр. Кожне крило кожного поверху як правило займає одна або декілька кафедр. Навіть студентам старших курсів інколи тяжко зорієнтуватись в цій великій будівлі, не кажучи про першокурсників, які тільки що закінчили школи, які є меншими відносно корпусу НУК. Також проблеми з навігацією можуть мати також студенти інших корпусів НУК, які інколи їздять до головного корпусу на пари.

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

Для подолання даної проблеми було прийнято рішення створити програмне забезпечення для навігації щодо головного корпусу НУК. Дане ПЗ має бути зрозумілим не лише студентам початківцям, а й викладачам. Для більшої ефективності ПЗ було прийнято рішення додати у ПЗ алгоритми пошуку найкоротшого шляху до бажаних місць призначення.

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

Для повної інформованості всіх користувачів було б зручно якщо б ПЗ дозволяло показати усі додаткові обєкти.

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

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

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

Граф - це сукупність об'єктів із зв'язками між ними. Об'єкти розглядаються як вершини, або вузли графу, а зв'язки - як дуги, або ребра. Дану методику доцільно буде використати, якщо припустити що кожна аудиторія є вершиною графа. Звідси слідує, що найкоротший шлях є найменшою сумою ребр графу. Для різних областей використання види графів можуть відрізнятися орієнтованістю, обмеженнями на кількість зв'язків і додатковими даними про вершини або ребра.

Звісно слідкувати за всією інформацією має не сам користувач, а віддалено відповідальна особа. Наприклад, диспетчер.

Клієнт для диспетчеру має бути зрозумілим та зручним у використанні. Робота диспетчера також має бути автоматизована. Наприклад, диспетчер має один раз ввести список груп, а потім лише обрати групу зі списку.

·Також було б зручно якщо б застарілі новини видалялися в автоматичному режимі.


1.2 Постановка задачі


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

)відображення 3D-моделі корпусу з врахуванням розташування аудиторій та їх призначення;

)зміна вигляду 3D-моделі корпусу шляхом її повороту та масштабування;

)отримання розкладу занять для певної групи;

)розрахунок найкоротшого шляху між вказаними аудиторіями;

)відображення найкоротшого шляху між вказаними аудиторіями;

)відображення ключових обєктів (ректорат, деканат, канцелярія та інші);

)додання новини для певного інституту;

)відображення новин (заміна занять, перенесення занять та інші);

)додання групи;

)видалення групи;

)додання розкладу для групи;

)редагування розкладу для групи;

)очищення розкладу для групи.

Програмне забезпечення розраховане для роботи на мобільних пристроях під керуванням ОС Android, також має клієнтську частину для ПК для роботи диспетчера. Вхідною інформацією для програми на мобільних пристроях є назва групи, яку користувач обирає зі списків. Вихідна інформація повинна відображатися на дисплеї мобільного пристрою та бути зрозумілою. Зєднання з сервером НУК повинно відбуватися на території корпусу за допомогою Wi-Fi мобільного пристрою.

Клієнт для смартфону повинен виконувати мінімальну кількість розрахунків для меншого енергоспоживання, так як пристрої під керуванням ОС Android мають таку властивість як велику енергозатратність.

Програмний продукт повинен бути розрахований на роботу з користувачем, що має досвід роботи з ПК та сучасними мобільними пристроями.

2. Проект програмного забезпечення


2.1 Ескізний проект програмного забезпечення для 3D-навігації головним корпусом НУК ім. адм. Макарова для мобільних пристроїв під управління ОС Android


2.1.1 Розробка діаграми варіантів використання програмного забезпечення для 3D-навігації головним корпусом НУК ім. адм. Макарова для мобільних пристроїв під управління ОС Android

Виявлення акторів.

На рисунку 1 представлені основні кандидати в актори системи:







Рисунок 1 - Аналіз акторів системи.


Короткий опис акторів системи представлено в таблиці 1.


Таблиця 1. Виявлення акторів системи

АкторКороткий описСтудентПереглядає розклад занять, маршрути між аудиторіями, також новини.ДиспетчерДодає або видаляє групи, редагує розклади занять, додає новини.

Основні вимоги до програмного продукту, що відображені у технічному завданні, використовуючи середовище CASE - засобу Visual Paradigm, можна відобразити на діаграмі варіантів використання, яку наведено на рисунку 2.

Рисунок 2 - Діаграма варіантів використання програмного забезпечення для 3D-навігації головним корпусом НУК ім. адм. Макарова для мобільних пристроїв під управління ОС Android


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

) Вибір групи:

.Основна діюча особа: Користувач

.Інші учасники прецеденту: відсутні

.Звязки з іншими варіантами використання: відсутні

.Короткий опис: Даний варіант використання дозволяє Користувачу обрати групу зі списку.

.Передумови: відсутні

.Стартова точка: Користувач натискає кнопку «Обрати курс»

.Сценарій:

.1.Відображується список з переліком курсів

.2.Користувач обирає потрібний курс зі списку

.3.Відображується список з переліком груп на даному курсі

.4.Користувач обирає потрібну групу зі списку

.5.Користувач обирає кнопку підтвердження

.6.У графу «Розклад» заноситься розклад обраної раніше групи

.7.На моделі відображається виділена аудиторія в якій має бути пара, та аудиторія у якій вже відбулась пара (якщо відбулась).

.Альтернативна процедура: відсутня

.Точка завершення: обрано групу

.Постумова: на моделі зявиться одна або дві виділені іншими кольорами аудиторії

.Обмеження \ виключення: Якщо до поточного часу в обраній групі ще не було занять, буде виділятись лише одна аудиторія, в котрій буде пара

.Коментарі: відсутні

) Перегляд розкладу:

.Основна діюча особа: Користувач

.Інші учасники прецеденту: відсутні

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

.Короткий опис: Даний варіант використання дозволяє користувачу переглянути розклад на поточний день.

.Передумови: має буди обрана група.

.Стартова точка: Користувач натискає кнопку «Розклад»

.Сценарій:

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

.Альтернативна процедура: відсутня

.Точка завершення: обрано будь-який інший елемент меню

.Постумова: порожнє поле заповнюється текстом розкладу

.Обмеження \ виключення: відсутні

.Коментарі: відсутні

) Вибір розкладу для визначеного дня тижня:

.Основна діюча особа: Користувач

.Інші учасники прецеденту: відсутні

.Звязки з іншими варіантами використання: Перегляд розкладу

.Короткий опис: Даний варіант використання дозволяє користувачу обрати день тижня, з відповідним розкладом.

.Передумови: має бути обрана група, та обрано пункт «Розклад»

.Стартова точка: Користувач натискає кнопку «Обрати день»

.Сценарій:

.1.Зявляється календар

.2.Користувач обирає потрібний день

.3.Користувач обирає кнопку підтвердження

.4.Поле з поточним розкладом замінюється на розклад обраного дня

.Альтернативна процедура: відсутня

.Точка завершення: обрано будь-який інший елемент меню, обрано кнопку «Поточний день»

.Постумова: зявляється новий розклад у полі.

.Обмеження \ виключення: Має бути обраний день в котрий є заняття.

.Коментарі: відсутні

) Вибір поточного місцезнаходження:

.Основна діюча особа: Користувач

.Інші учасники прецеденту: відсутні

.Звязки з іншими варіантами використання: відсутні

.Короткий опис: Даний варіант використання дозволяє користувачу обрати аудиторію або ключовий обєкт біля якого він знаходиться.

.Передумови: відсутні

.Стартова точка: Користувач натискає кнопку «Обрати місцезнаходження»

.Сценарій:

.1.Модель корпусу стає повністю вільна для перегляду.

.2.Користувач обирає на аудиторію

.3.Користувач підтверджує вибір

.4.Обрана аудиторія виділяється

.Альтернативна процедура: відсутня

.Точка завершення: обрано потрібний обєкт

.Постумова: додатково ще один обєкт змінює колір (підсвічується).

.Обмеження \ виключення: Має бути обрана аудиторія або будь-яке інше приміщення.

.Коментарі: відсутні

) Перегляд найкоротшого маршруту до кінцевого приміщення:

.Основна діюча особа: Користувач

.Інші учасники прецеденту: відсутні

.Звязки з іншими варіантами використання: Відображення від поточного місцезнаходження, відображення від поточної аудиторії, відображення від входу, вибір приміщення.

.Короткий опис: Даний варіант використання дозволяє відобразити найкоротшого шлях між двома потрібними обєктами.

.Передумови: має бути виконаний варіант 2.1 або 2.4.

.Стартова точка: Користувач обирає пункт меню «Розрахунок маршруту»

.Сценарій:

.1.ПЗ отримує початкову точку(обєкт) та кінцеву точку(обєкт).

.2.ПЗ розраховує найкоротший шлях між двома обєктами.

.3.ПЗ відображає кольоровим пунктиром найкоротший розрахований шлях.

.Альтернативна процедура: відсутні

.Точка завершення: Користувач натискає кнопку «Повернутись в меню»

.Постумова: Відображається підсвічений маршрут від одного обєкту до іншого.

.Обмеження \ виключення: Поточне місцезнаходження не має співпадати з кінцевим приміщенням.

.Коментарі: відсутні

) Відображення від поточної аудиторії:

.Основна діюча особа: Користувач

.Інші учасники прецеденту: відсутні

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

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

.Передумови: має бути обрана група.

.Стартова точка: Користувач обирає пункт меню «Розрахунок маршруту»

.Сценарій:

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

.2.ПЗ за замовчанням встановлює аудиторію в котрій має бути пара, як кінцеве приміщення.

.3.ПЗ розраховує найкоротший шлях до кінцевого приміщення.

.4.ПЗ відображає кольоровим пунктиром найкоротший шлях до кінцевого приміщення.

.Альтернативна процедура: Відображення від поточного місцезнаходження, відображення від входу.

.Точка завершення: Користувач натискає кнопку «Повернутись в меню»

.Постумова: Відображається підсвічений маршрут від одного обєкту до іншого.

.Обмеження \ виключення: Поточне місцезнаходження не має співпадати з кінцевим приміщенням.

.Коментарі: відсутні

) Відображення від входу:

.Основна діюча особа: Користувач

.Інші учасники прецеденту: відсутні

.Звязки з іншими варіантами використання: Відображення від поточного місцезнаходження, Перегляд найкоротшого маршруту до кінцевого приміщення, Відображення від поточної аудиторії, вибір приміщення.

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

.Передумови: має бути натиснута кнопка «Від входу», має бути обрана група.

.Стартова точка: Користувач обирає пункт меню «Розрахунок маршруту»

.Сценарій:

.1.ПЗ встановлю головний вхід як початковий обєкт

.2.ПЗ за замовчанням встановлює аудиторію в котрій має бути пара, як кінцеве приміщення.

.3.ПЗ розраховує найкоротший шлях до кінцевого приміщення.

.4.ПЗ відображає кольоровим пунктиром найкоротший шлях від входу до кінцевого приміщення.

.Альтернативна процедура: Відображення від поточного місцезнаходження, Відображення від поточної аудиторії.

.Точка завершення: Користувач натискає кнопку «Повернутись в меню»

.Постумова: Відображається підсвічений маршрут від одного обєкту до іншого.

.Обмеження \ виключення: відсутні.

.Коментарі: відсутні

) Відображення від поточного місцезнаходження:

.Основна діюча особа: Користувач

.Інші учасники прецеденту: відсутні

.Звязки з іншими варіантами використання: Відображення від входу, Перегляд найкоротшого маршруту до кінцевого приміщення, Відображення від поточної аудиторії, вибір приміщення.

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

.Передумови: має бути обрано поточне місцезнаходження.

.Стартова точка: Користувач обирає пункт меню «Розрахунок маршруту»

.Сценарій:

.1.ПЗ встановлює поточне місцезнаходження як початковий обєкт

.2.ПЗ за замовчанням встановлює аудиторію в котрій має бути пара, як кінцеве приміщення.

.3.ПЗ розраховує найкоротший шлях до кінцевого приміщення.

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

.Альтернативна процедура: Відображення від входу, Відображення від поточної аудиторії.

.Точка завершення: Користувач натискає кнопку «Повернутись в меню»

.Постумова: Відображається підсвічений маршрут від одного обєкту до іншого.

.Обмеження \ виключення: відсутні.

.Коментарі: відсутні

) Вибір приміщення:

.Основна діюча особа: Користувач

.Інші учасники прецеденту: відсутні

.Звязки з іншими варіантами використання: Відображення від входу, Перегляд найкоротшого маршруту до кінцевого приміщення, Відображення від поточної аудиторії, Відображення від поточного місцезнаходження.

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

.Передумови: має бути натиснута кнопка «Від входу», має бути обрана група або поточне місцезнаходження.

.Стартова точка: Користувач натискає кнопку «Обрати інше приміщення»

.Сценарій:

.1.ПЗ встановлює обраний обєкт як кінцеве приміщення для розрахунку шляху

.Альтернативна процедура: відсутня.

.Точка завершення: Користувач натискає кнопку «Повернутись в меню», або кнопку «Повернути попереднє місце призначення»

.Постумова: Відображається змінює «підсвічення» одного обєкта на інший

.Обмеження \ виключення: Для можливості повернути попереднє місце призначення має бути обрана група.

.Коментарі: відсутні

) Відображення ключових обєктів:

.Основна діюча особа: Користувач

.Інші учасники прецеденту: відсутні

.Звязки з іншими варіантами використання: відсутні.

.Короткий опис: Даний варіант використання дозволяє Користувачу вибрати зі списку ключовий обєкт, та виділити його на моделі.

.Передумови: відсутні.

.Стартова точка: Користувач переходить у пункт меню «Ключові обєкти»

.Сценарій:

.1.Користувач обирає зі спадаючого списку тип обєкту

.2.Користувач обирає конкретний обєкт.

.3.Обраний обєкт виділяється кольором

.Альтернативна процедура: відсутня

.Точка завершення: Користувач натискає кнопку «Повернутись в меню»

.Постумова: Відображається підсвічений обєкт на моделі.

.Обмеження \ виключення: відсутні.

.Коментарі: відсутні

) Перегляд новин:

.Основна діюча особа: Користувач

.Інші учасники прецеденту: відсутні

.Звязки з іншими варіантами використання: відсутні.

.Короткий опис: Даний варіант використання дозволяє Користувачу переглянути загальні новини, заміни розкладу, та зміни у учбовому процесі.

.Передумови: має бути обрана група.

.Стартова точка: Користувач натискає кнопку «Новини»

.Сценарій:

7.1.Розгортається поле з новинам на поточний та деякий наступні дні

8.Альтернативна процедура: відсутня

.Точка завершення: Користувач натискає кнопку «Повернутись в меню»

.Постумова: Відображається підсвічений обєкт на моделі.

.Обмеження \ виключення: Для відображення новин учбового процесу має бути обрана група, інакше відображатись будуть лише загальні новини.

.Коментарі: відсутні


2.1.2 Розробка прототипу інтерфейсу

На основі описаних вище специфікацій діаграми використання створимо ескіз інтерфейсу користувача. Інтерфейс головного меню представлений на рисунку 3.


Рисунок 3 - Інтерфейс головного меню ПЗ «Путь»


2.2 Технічний проект програмного забезпечення для 3D-навігації головним корпусом НУК ім. адм. Макарова для мобільних пристроїв під управління ОС Android


2.2.1 Створення діаграми класів

Для відображення фізичної структури програми потрібно побудувати діаграму класів. На діаграмі зображено структуру класів та методів виходячи з ескізного проекту, та описаних у додатку А функціональних вимог.

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

програмний навігація мобільний android

Рисунок 4 - Діаграма класів


2.2.2 Створення діаграми аналізу

Для відображення взаємодії об'єктів, впорядковані за часом їх прояву створимо діаграму аналізу на основі діаграми послідовності. Використовуючи стереотипи обєктів прояснимо деякі аспекти побудови діаграми аналізу. Діаграма аналізу зображена на рисунку 5.


Рисунок 5 - Діаграма аналізу


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


Рисунок 6 - Діаграма кооперацій


Для основних складних станів створимо діаграми діяльності для того, щоб більш детально відобразити роботи цих станів.

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


Діаграма діяльності для стану «вибір групи»

Діаграма діяльності для стану «вибір дня тижня»


Діаграма діяльності для стану «становлення обєкту, як поточне місцезнаходження»

Діаграма діяльності для стану «перегляд ключових обєктів»


2.2.4 Створення діаграми розгортання

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

Так як з даними програми мають працювати 2 актори: диспетчер та клієнт відобразимо ці робочі станції з розгортання їх компонентів на діаграмі, та звернення їх до інших компонентів системи.


Діаграма розгортання


Висновки


Результатом виконання курсової роботи є створення проекту програмного забезпечення для 3D-навігації головним корпусом НУК ім. адм. Макарова для мобільних пристроїв під управління ОС Android.

Було проаналізовано проблеми, вирішення котрих має стати програмного забезпечення для 3D-навігації головним корпусом НУК ім. адм. Макарова для мобільних пристроїв під управління ОС Android.

Розробка програмного забезпечення була виконана відповідно до ГОСТ 19.102-77. В розробці були реалізовані етапи ескізного та технічного проекту, побудовані усі необхідні діаграми, а саме діаграма варіантів використання, діаграма аналізу, діаграма класів, діаграма станів, діаграма діяльності та розгортання.

Підвівши підсумки можна сказати, що ПЗ «Путь» згідно до розробленого проекту має вирішити проаналізовані проблеми щодо навігації корпусом НУК.


Список джерел


1. ГОСТ 19.102-77. Единая система программной документации. Стадии разработки.

.Крэг Ларман. Применение UML 2.0 и шаблонов проектирования = Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development. - 3-е изд. - М.: Вильямс, 2006. - 736 с. - ISBN 0-13-148906-2

.Джозеф Шмуллер. Освой самостоятельно UML 2 за 24 часа. Практическое руководство = Sams Teach Yourself UML in 24 Hours, Complete Starter Kit. - М.: Вильямс, 2005. - 416 с. - ISBN 0-672-32640-X

.Грейди Буч, Джеймс Рамбо, Айвар Джекобсон. Язык UML. Руководство пользователя = The Unified Modeling Language user guide. - 2-е изд. - М., СПб.: ДМК Пресс, Питер, 2004. - 432 с. - ISBN 5-94074-260-2

.Буч Г., Якобсон А., Рамбо Дж. UML. Классика CS. 2-е изд. / Пер. с англ.; Под общей редакцией проф. С. Орлова - СПб.: Питер, 2006. - 736 с. ISBN 5-469-00599-2



1. Аналіз структури головного корпусу НУК та постановка задачі 1.1 Аналіз структури головного корпусу НУК Головний корпус НУК має досить великі га

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ