Розробка мобільного додатку для полегшення комунікації туристів у місті Львові

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

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык украинский
Дата добавления 10.06.2014
Размер файла 3,2 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

ЗМІСТ

ВСТУП

Розділ 1. Туристичний путівник Львова на платформі Android

1.1 Мобільні пристрої

1.2 Розвиток інформаційних технологій в туризмі

1.3 Програми-Аналоги

Розділ 2. Опис засобів та роботи LvivTourist

2.1 Постановка задачі дипломного проектування

2.2 Інструментальні засоби для реалізації

2.3 Вхідні та вихідні дані

2.4 Специфікація вимог

Розділ 3. Проектне рішення програмного забезпечення

3.1 Модель розробки програмного забезпечення

3.2 Архітектура програмного забезпечення

3.3 Опис поведінки програмного забезпечення

3.4 Формати даних

Розділ 4. Реалізація та тестування

4.1 Архітектурне рішення

4.2 Обмін даними

4.3 Тестування

Розділ 5. Економічна частина

5.1 Економічна характеристика туристичного гіда Львоа на платформі Android

5.2 Інформаційне забезпечення та формування гіпотези щодо потреби розроблення проектного рішення туристичного гіда Львова

5.3 Оцінювання та аналізування факторів зовнішнього та внутрішнього середовища

5.4 Формування стратегічних альтернатив

5.5 Бюджетування

5.6 Вибір стратегії

ВИСНОВКИ

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

ДОДАТКИ

ВСТУП

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

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

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

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

РОЗДІЛ 1. ТУРИСТИЧНИЙ ПУТІВНИК ЛЬВОВА НА ПЛАТФОРМІ ANDROID

1.1 Мобільні пристрої

У сучасному світі все більшого поширення набувають пристрої на базі мобільних платформ. Це зумовлено потребою сучасної людини бути завжди на зв'язку. Але якщо десять років тому мобільний телефон був всього лише засобом зв'язку - пересувний версією стаціонарного апарату, то п'ять років тому він вже міг виконувати функції записної книжки, допомагав обмінюватися невеликими обсягами інформації і міг використовуватися як засіб для розваг. В наш час у поняття мобільний телефон вкладається надзвичайно широкий набір функцій. За допомогою сучасного мобільного телефону, який належить до середньої цінової категорії, можна робити високоякісні фотографії і відео, отримувати, зберігати, відтворювати і передавати значні обсяги даних, користуватися Інтернетом та грати в ігри, про якість та деталізації яких ще десять років тому не могли мріяти і власники настільних комп'ютерів.

Смартфон володіє наступними апаратними особливостями:

- більший за розміром екран, який спрощує роботу;

- процесор, частота якого забезпечує більшу швидкодію;

- графічна карта, що дозволяє обробку значних обсягів мультимедійної

інформації без завантаження основного процесори;

- оперативна пам'ять, яка дозволяє оперувати великими обсягами даних;

- значний обсяг вбудованої пам'яті, а також можливість підключення додаткових модулів;

- Wi-Fi, GPRS модулі.

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

- Windows Phone (Windows Mobile) - ця операційна система містить в собі безліч можливостей, серед яких слід вказати: роботу з повідомленнями (SMS, електронна пошта), медіаплеєр, Internet Explorer, календар, нотатки та адресна книга. Характерною рисою даної платформи є відкрита архітектура, що дозволяє встановлювати додаткові програми і виконувати надбудови для стандартних програм. Дизайн ОС схожий на Windows, але не має з нею нічого спільного [1];

- Android - за широтою можливостей платформа Android не поступається операційним системам навіть настільних ПК. Вона являє собою багаторівневе середовище на основі ядра Linux і володіє багатими функціональними можливостями. Основу користувальницького інтерфейсу складають:

- вікна;

- подання;

- віджети для відображення загальних елементів, таких як редаговані поля, списки і розгортаючі списки. Android володіє широким спектром можливостей підключення таким, як Wi-Fi, Bluetooth і протоколи передачі даних через мережу [2]. У стек програмного забезпечення Android входить і підтримка сервісів, заснованих на визначенні місця розташування (наприклад, GPS), і акселерометрів, проте слід зауважити, що не всі пристрої на цій платформі оснащені необхідним обладнанням;

- Simbian. На боці Symbian дружність до непідготовленого технічно користувача. Операційні системи Symbian можна розділити на дві основні підгрупи: Series 60 (як і додаткові варіанти - S80 і S90), UIQ з підтримкою сенсорного екрану і застосовується компанією SonyEricsson [3];

- iPhoneOS (iOS) - iPhone OS заснована на спеціальній версії Mac OS X, при цьому інтерфейс адаптований для роботи з пальцями. Особливістю апарата є великий сенсорний екран, який займає майже всю фронтальну панель і всього одна клавіша, все управління здійснюється дотиками і переміщенням пальців по екрану, все це робить смартфон як живим [4].

Також крім цих операційних систем існує досить багато й інших, хоча вони менш популярні:

- BlackBerryOS

- PalmOS

- HPwebOS

- Bada

1.2 Розвиток інформаційних технологій в туризмі

Створення нових інформаційних технологій має велике значення для розвитку суспільства. Вони активно перетворюють інші технології матеріального і нематеріального виробництва, в кінцевому підсумку формуючи новий стиль роботи, спосіб життя в цілому. Індустрія туризму ідеально пристосована для впровадження сучасних ІТ, тому за останні десятиліття зазнала значного впливу науково-технічного прогресу. Серед найважливіших досягнень сфери туризму стала її комп'ютеризація [5]. Персональний комп'ютер, мобільні пристрої та мережа Інтернет дали змогу створювати загальнодоступну, надзвичайно інформаційно містку, та, порівняно з іншими інформаційно-технологічними системами, дешеву й швидку інформаційну інфраструктуру, їх доступність та надійність сприяли входженню у всі сфери суспільства нових інформаційних технологій.

Однією з новітніх технологій є використання електронного довідника-каталогу, до функцій якого входить вибір туристичного продукту, автоматизованих агентств, оформлення замовлення. Висока ефективність каталогу зумовлена надзвичайно високим обсягом інформації. Розроблено багато програм для мобільних пристроїв під різні операційні системи для спрощення пересування, та інформування туристів у місцевості [6].

З плином часу та розвитку ІТ технологій на мобільних пристроях, звичайний турист все більше має можливості самостійно пізнавати світ.

1.3 Програми-Аналоги

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

У таблиці 1.1 наведено основні переваги та недоліки програм аналогів в порівнянні із розроблюваною мною.

Таблиця 1.1

Порівняльна таблиця програм аналогів

характеристика

LvivTourist

i-Экскурсовод

Azbo Audio Tour

Field Trip

Можливість прокладання маршруту між двома точками

+

+

+

+

Формування туристичних маршрутів

+

+

+

+

Синтез тексту в мову

+

-

+

-

Фільтрування по типах туристичних місць (ресторани, музеї, готелі, історичні місця …)

+

-

-

-

Вибір типу маршруту (авто, вело, пішки)

+

+

+

+

Кешування даних

+

+

+

+

Наявність платної версії

-

+

+

-

Наявність англійського інтерфейсу

+

-

+

+

Наявність туристичних точок міста Львова

+

-

-

-

«Я-Екскурсовод» - це відмінні детальні і продумані екскурсії російською мовою, які дозволять самостійно відкрити для себе нові міста без будь-яких гідів або екскурсоводів. Даний додаток працює на мобільному пристрої під управлінням іОС[7].

плюси:

- безліч докладних маршрутів;

- компас і можливість працювати без підключення до Інтернету;

- можливість створити власний маршрут.

мінуси:

- ОСМ-карти, зовнішній вигляд яких залишає бажати кращого;

- всього одна фотографія для кожного місця.

«Azbo Audio Tour» - це путівник і аудіогід який проведе по всіх вибраних пам'ятках, розповідаючи історію місць, перекази і цікаві факти. Інформація для екскурсій збирається детально, з залученням місцевих сертифікованих гідів, тому електронна екскурсія не відрізнятиметься від прогулянки з справжнім гідом. Тільки, на відміну від людини, електронний гід Azbo Audio Tour навряд чи втомиться, забуде згадати щось цікаве або прийде на екскурсію в поганому настрої. І вже зовсім точно Azbo не буде замість історичних пам'яток півдня водити користувача по сувенірних лавках , де працюють його родичі [8].

плюси:

- багато екскурсійних маршрутів;

- можливість самостійного планування екскурсій;

- найпопулярніші місця відзначені зірками;

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

- аудіоконтент підготовлений професійними дикторами і гідами;

- зручний інтерфейс;

- частина екскурсій доступна безкоштовно;

- платні екскурсії мають доступну ціну;

- додаток регулярно оновлюється.

мінуси:

- скромний список доступних міст.

«Field Trip» - програмний додаток розроблений компанією google, і використовується на пристроях Google Glass. Цей додаток запускається за допомогою голосової команди «Ок, Google, explore nearby». Після запуску додатку користувач буде отримувати на дисплей інформацію про визначні пам'ятки або інших об'єктах (магазинах, кафе, заправках), які потрапили в поле його зору. [9]

РОЗДІЛ 2. ОПИС ЗАСОБІВ ТА РОБОТИ LVIVTOURIST

2.1 Постановка задачі дипломного проектування

Завданням на дипломне проектування є розробка мобільного додатку туристичного гіда Львова (LvivTourist) під управлінням ОС Android. Цей додаток повинен допомогти туристу орієнтуватись у місті та без проблем знаходити бажане туристичне місце. При розробці додатку потрібно ознайомитись із існуючими методами роботи із Google Map, а також із електронним синтезом мови та його генеруванням.

2.2 Інструментальні засоби для реалізації

Java -- це об'єктно-орієнтована мова програмування. Синтаксис мови багато в чому походить від C та C++. У офіційній реалізації, Java програми компілюються у байткод, який при виконанні інтерпретується віртуальною машиною для конкретної платформи. Oracle надає компілятор Java та віртуальну машину Java, які задовольняють специфікації Java Community Process, під ліцезією GNU General Public License[10].

Мова значно запозичила синтаксис із C і C++. Зокрема, взято за основу об'єктну модель С++, проте її модифіковано. Усунуто можливість появи деяких конфліктних ситуацій, що могли виникнути через помилки програміста та полегшено сам процес розробки об'єктно-орієнтованих програм. Ряд дій, які в С/C++ повинні здійснювати програмісти, доручено віртуальній машині. Передусім, Java розроблялась як платформо-незалежна мова, тому вона має менше низькорівневих можливостей для роботи з апаратним забезпеченням. За необхідності таких дій java дозволяє викликати підпрограми, написані іншими мовами програмування [11].

Android SDK - включає в себе повний набір інструментів розробки. До них відносяться відладчик, бібліотеки, емулятор на основі QEMU, документації, зразки коду. Мною розробка буде проводитись під управлінням операційною системою Windows та на мові програмування Java.

SDK також підтримує старі версії Android платформи у випадку якщо потрібно зосередити свої додатки на старих пристроях [12].

Додатки Android упаковані в форматі .apk.

IntelliJ IDEA -- комерційне інтегроване середовище розробки для Java від компанії JetBrains. Система поставляється у вигляді урізаної по функціональності безплатної версії "Community Edition" і повнофункціональної комерційної версії "Ultimate Edition", для якої активні розробники відкритих проектів мають можливість отримати безплатну ліцензію. Community версія середовища IntelliJ IDEA підтримує інструменти для проведення тестування TestNG і JUnit, системи контролю версій CVS, Subversion, Mercurial і Git, засоби складання Maven і Ant, мови програмування Java, Java ME, Scala, Clojure і Groovy. Підтримується розробка застосунків для мобільної платформи Android. До складу входить модуль візуального проектування GUI-інтерфейсу Swing UI Designer, XML-редактор, редактор регулярних виразів, система перевірки коректності коду, система контролю за виконанням завдань і доповнення для імпорту та експорту проектів з Eclipse. Доступні засоби інтеграції з системами відстеження помилок JIRA, Trac, Redmine, Pivotal Tracker, GitHub, YouTrack, Lighthouse [13].

Google Maps - додаток, побудованих на основі безкоштовного картографічного сервісу і технологій, які надає компанія Google.

Сервіс являє собою карту та супутникові знімки всього світу. З сервісом інтегрований бізнес-довідник і карта автомобільних, вело та пішохідних доріг, з пошуком маршрутів [14], яка охоплює і Львів.

Це є основним інструментом для розробки туристичного гіда Львова. Оскільки він надає досить великий спектр можливостей для роботи з картами:

- прокладання маршрутів (автомобільних, вело та пішохідних доріг);

- відмічення туристичних місць;

- визначення часу в дорозі та відстані.

TextToSpeech - це фреймворк, котрий використовується для синтезу мови. На вході він отримує стрічку тексту, пізніше, при виклику відповідної функції, перетворює цей текст на синтезоване голосове відтворення. Цей фреймворк має досить широкий функціонал, та може відтворювати текст на різних мовах [15].

JSON -- це легкий формат обміну даними між комп'ютерами. JSON базується на тексті, і може бути з легкістю прочитаним людиною. Формат дозволяє описувати об'єкти та інші структури даних. Цей формат головним чином використовується для передачі структурованої інформації через мережу (завдяки процесу, що називають серіалізацією) [16].

2.3 Вхідні та вихідні дані

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

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

2.4 Специфікація вимог до програми «LvivTourist»

Вступ

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

Призначення, мета

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

Огляд програм аналогів

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

- i-Экскурсовод;

- Azbo Audio Tour;

- Field Trip.

Детальніший опис, а також їхні плюси та недоліки наведено вище. Основний мінус цих програм полягає в тому, що жодна з них не підходить для Львова. Тому програм-аналогів для туристів, які приїхали у Львів не існує. Є подібні пристрої такі як infoDesk, які розташовані по місту. Але їх недолік полягає в тому, що вони не є портативними, а стоять в певних локаціях та знаходяться в центральній частині міста.

Загальний опис

Характеристики продукту

До основних характеристик продукту можна віднести наступне:

- Швидкість роботи;

- Можливість роботи додатку в двох режимах online та offline;

- Оновлення бази даних відповідно до змін на віддаленому сервері;

- Формування маршруту (авто, пішо та вело) від поточного до заданого;

- Перегляд інформації про туристичне місце;

- Прослуховування інформації про місце;

- Можливість швидкого пошуку в Інтернеті;

Класи користувачів і їх характеристики

Туристи та жителі міста можуть використовувати додаток для перегляду туристичних точок міста, формування маршрутів, швидкого пошуку інформації про місце, прослуховування інформації. (Додаток Б)

Середовище функціонування

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

Розроблене програмне забезпечення матиме можливість працювати на будь яких пристроях, які управляються Android та мають можливість виходу в інтернет за допомогою будь якого модуля (WI-FI, GPRS, EGE …). Також пристрій, на якому буде встановлено цей додаток повинен мати сенсорний дисплей із розширенням не менше 800x480px.

Перспективи проекту

Існують декілька аналогів даного продукту, які мають подібний, але досить вузький функціонал. Кожна програма чимось відрізняється одна від одної. Деякі програма працюють під управлінням iOC, деякі під Android. А оскільки Львів знаходиться в тій частині світу де найпопулярнішою є операційна система на мобільних пристроях під управлінням Android, то це є і однією із ключових переваг в розробці даного продукту. Львів є одним із найбільших туристичних міст в Україні і багато гостей міста мають потребу у швидкому пошуку туристичних місць. Тому цей продукт має шанси на існування та впровадження в життя.

Інструментальні засоби для реалізації програмного забезпечення

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

a. Мова програмування:

JAVA - оскільки розроблений програмний продукт має працювати на мобільних пристроях під управлінням операційної системи Android, то це є найкращим рішенням для розробки цього додатку. Що забезпечує хорошу роботу на мобільному пристрої.

b. Бібліотека для роботи із Android OS:

Android SDK - набір із засобів розробки, утиліт і документації, який дозволяє легко розробляти, інтегрувати додатки, та використовувати системні пристрої такі як GPS, WI-FI.

c. Середовище програмування:

IntelliJ IDEA - хороше, просте у використанні середовище, яке підтримує розробку додатків на мобільні пристрої. Має можливість інтегрування плагинів, та надбудов. А також передбачена обрізана безплатна версія, що цілком підходить для розробки LivivTourist.

d. Додаток для роботи з картами:

Google Maps - безкоштовний сервіс що надає можливість працювати з картами, є хорошим рішенням для побудови маршрутів, відображення туристичних точок та прорахунком відстані.

e. Бібліотека для електронного синтезу тексту:

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

f. Формат для передачі даних:

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

Припущення та залежності

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

Характеристики системи

Програмний додаток має містити такий набір функціоналу:

a. Відображення карти міста, та поточного місцезнаходження.

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

Пріоритет: високий

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

ь Функціональні вимоги:

- масштабування;

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

b. Відображення на карті туристичних локації.

ь Опис: на карті міста має бути накладено іконки туристичних місць Львова відповідно до їхнього місцезнаходження.

Пріоритет: високий.

ь Послідовності дія/відгук: при натисканні на відповідну локацію на карті має показуватись опис цього місця із можливістю прослуховування, та швидкого пошуку в Інтернеті. Також на карті має прокладатись маршрут від вибраної локації, до поточного місцезнаходження. Маршрути мають прокладатись у трьох варіаціях по автомобільних шляхах, пішохідних зонах, та вело доріжках (якщо вони передбачені містом). Також на даній панелі має відобразитись обрахований час у дорозі та довжина маршруту.

ь Функціональні вимоги:

- прокладання маршруту;

- відображення інформації про локацію;

- відображення час у дорозі та довжина маршруту.

c. Можливість швидкого пошуку в Інтернеті;

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

Пріоритет: середній

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

ь Функціональні вимоги:

- запуск браузера;

- пошук вибраної локації.

d. Прослуховування синтезованого тексту інформації.

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

Пріоритет: середній.

ь Послідовності дія/відгук: при натисканні на відповідну іконку має початись зачитувати текс вказаний у вікні «детальної інформації».

ь Функціональні вимоги:

- синтез тексту.

e. Верхня панель навігації:

ь Опис: у верхній частині екрану має знаходитись розкриваюча панель навігації із відповідним функціоналом.

Пріоритет: високий.

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

ь Функціональні вимоги:

- відкривання панелі навігації.

f. Відфільтровувати туристичні місця за типом.

ь Опис: туристичні локації повинні фільтруватись відповідно до їх типу. Кнопка фільтрації має знаходитись на верхній панелі навігації.

Пріоритет: середній.

ь Послідовності дія/відгук: при виборі певного типу локації на карті повинні відобразитись тільки ті туристичні місця котрі попадають у вибраний тип.

ь Функціональні вимоги:

- вибір типу туристичних місць у випадаючому списку.

g. Налаштування додатку:

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

Пріоритет: високий.

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

ь Функціональні вимоги:

- Відкриття нового вікна.

h. Нижня панель навігації:

ь Опис: у нижній частині екрану має знаходитись розкриваюча панель навігації із списком туристичних місць.

Пріоритет: високий.

ь Послідовності дія/відгук: при натисканні на стрілку вверху, має відкритись панель навігації.

ь Функціональні вимоги:

- відкривання панелі навігації.

i. Формування користувачем туристичного маршруту.

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

Пріоритет: високий.

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

ь Функціональні вимоги:

- знаходження найкоротшого маршруту.

j. Перегляд готових туристичних маршрутів.

ь Опис: користувач має можливість переглянути готових, складених туристичних маршрутів.

Пріоритет: високий.

ь Послідовності дія/відгук: при вибору туристичного туру, має прокластись оптимальний маршрут від поточної точки.

ь Функціональні вимоги:

- вибір готового туристичного туру;

- прокладання оптимального маршруту.

Вимоги зовнішніх інтерфейсів

Користувацькі інтерфейси

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

Інші нефункційні вимоги

Вимоги продуктивності

Робота додатку повинна бути організована таким чином, аби забезпечити найбільш можливу швидкодію. Додаток використовуватиме GSM, GPRS, та WI-FI модулі тому потрібно максимально зменшити час їхнього використання, для збільшення часу роботи пристрою. Оскільки дані модулі потребують досить багато затрат електроенергії.

Вимоги безпеки

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

Атрибути якості програмного продукту

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

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

РОЗДІЛ 3. ПРОЕКТНЕ РІШЕННЯ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ

3.1 Модель розробки програмного забезпечення

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

Найпопулярнішими моделями розробки програмного забезпечення є [17]:

- структурна;

- об'єктна;

- компонентна.

Структурна модель - в основу покладено принцип функціональної декомпозиції, при якій структура системи описується в термінах ієрархії її функцій і передачі інформації між окремими функціональними елементами. Cутність структурного підходу до розроблення ПЗ ІС полягає в його декомпозиції на автоматизовані функції: система розбивається на функціональні підсистеми, що у свою чергу поділяються на підфункції, вони - на задачі і так до конкретних процедур. При цьому ІС зберігає цілісність подання, де всі складові взаємопов'язані. При розробці системи "знизу нагору", від окремих задач до всієї системи, цілісність втрачається, виникають проблеми при описі інформаційної взаємодії окремих компонентів [17].

Об'єктна модель - концептуальна основа об'єктно орієнтованого аналізу і проектування ПЗ (ООАП). Її основні принципи (абстрагування, інкапсуляція, модульність та ієрархія) і поняття (об'єкт, клас, атрибут, операція, інтерфейс тощо). Використовує об'єктну декомпозицію, описує структуру у термінах об'єктів і зв'язків між ними, а поведінку системи - в термінах обміну повідомленнями між об'єктами [18].

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

Для розробки програмного забезпечення на дипломну роботу я використав об'єктну модель, оскільки в основі об'єктної моделі знаходиться опис необхідної поведінки програмного забезпечення (ПЗ), що розробляється. Саме вона відображує основну суть роботи з картами та віддаленим сервером. В туристичному додатку дозволяє розробити програмне забезпечення необхідне для обчислення та відображення туристичних маршрутів.

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

При створені діаграми класів, мною було виділено таку групу класів:

- структура даних;

- інтерфейс для завантажування даних;

- інтерфейс для роботи з картами;

- відображення інформації;

- допоміжні класи.

Структура даних

В цій частині діаграми (Рис. 3.1) відображено структуру даних, її основні класи та функціонал.

- Point - цей клас створений для зберігання координат туристичної точки (довготи та широти).

- Description - клас для зберігання інформації про локацію. Властивість “_type” дає можливість знати тип об'єкту, і в подальшому його відфільтрувати у відповідну категорію вибрану користувачем.

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

- SystemInfo - клас, який призначений для зберігання системної інформації. Він має два поля: перше зберігає URL адресу файлу, в якому описані всі туристичні точки («_dataLocationURL»); другий містить дату та час останнього обновлення даних в додатку з віддаленого сервера.

- SerializableBitmap - клас призначений для зберігання іконки на телефоні.

Всі ці класи іплементуються від класу “Serializable” для того, щоб можна було реалізувати кешування даних (сереалізація даних).

Рис. 3.1 діаграма класів структури даних

Інтерфейс для завантажування даних

В цій частині діаграми (Рис. 3.2) відображено основні класи для завантаження даних в додаток.

- Caching - клас для кешування та отримання кешу даних. Сереалізує, та десереалізує об'єкти.

- DownloadSystemInfo - клас для завантаження системної інформації із сервера.

- DownloadFilesTask - клас для завантаження інформації про локації.

- DataServices - основний клас для роботи з даними. Він вибирає звідки отримувати дані

- ServisesStream - допоміжний клас, який відкриває потік для читання чи запису даних.

Рис. 3.2 діаграма інтерфейсів для завантажування даних

При старті програми десеріалізовується (клас Cheshing ) з пам'яті телефону кеш системної інформації, робиться підключення до віддаленого сервера та завантажує файл з цим об'єктом (клас DownloadSystemInfo). Коли програма отримує ці об'єкти, то звіряє дату (клас DataServices) останньої зміни на сервері та останнього оновлення даних в програмі. Якщо дати збігаються, програма не буде наново завантажувати дані із сервера, а отримає ці дані із кешу телефона, що дає можливість працювати в офлайн режимі. Якщо немає доступу до інтернету, програма також отримає ці дані з кешу, щоб просто економити час завантаження додатку, трафік інтернету та заряд батареї. В іншому випадку, буде створене підключення та отримано оновлення даних (клас DownloadFilesTask), які будуть зразу ж закешовані в телефон, попередньо видаливши старий кеш.

Інтерфейс для роботи з картами

Даний інтерфейс (Рис. 3.3) розроблений для роботи з картами, а саме: розміщення туристичних точок на них, масштабування, прокладання оптимальних маршрутів.

- OnRouteCalcCompleted - це інтерфейс, який реалізовують ряд класів для отримання інформації про маршрут.

- LocationHelper - клас із статичними методами для отримання координат поточного місцезнаходження (getMyLocation()), також конвертує відстань та час у відповідний формат.

- RouteHandler - клас, який збирає інформацію про маршрут, в паралельному потоці формує та робить запит. У відповідь він отримує JSON об'єкт в якому міститься інформація про сформований маршрут.

- MapTourist - основний клас який працює із картою. Розставляє на карті туристичні точки із відповідними іконками та інформацією отриманою раніше. Відображає маршрути сформовані класом RouteHandler.

Рис. 3.3 діаграма інтерфейсів для роботи з картою

Відображення інформації

В цій групі класів (Рис. 3.4) відображено класи зовнішнього інтерфейсу користувача.

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

- InfoView - клас який відкриває спливаюче вікно із описом туристичної точки.

- Panels - інтерфейс який реалізовують два класи:

o TopPanel - верхня панель навігації;

o BottonPanel - нижня панель навігації.

- OnScrollListener, OnSliderIndexChanged, HorizontalSlider, IfloatAlgorithm, IsliderViewCreator, SliderConfig, IfloatAlgorithm, IsliderViewCreator - класи та інтерфейси для формування горизонтальних слайдерів.

Рис. 3.4 діаграма класів для відображення даних

Допоміжні класи

В цій групі класів (Рис. 3.5) знаходяться допоміжні класи, які надають певні характеристики, чи встановлюють властивості об'єктів.

- MetricsHelper - клас для переводу з різних схем відображення.

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

- POSITION - клас, який задає властивість (положення) панелі на екрані пристрою.

- TYPE - клас, що задає тип отриманої інформації.

Рис. 3.5 допоміжні класи

3.2 Архітектура програмного забезпечення

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

На даний момент існує декілька типів архітектури розробки програмного забезпечення. В залежності від основного завдання, яке повинно виконувати ПЗ, потрібно вибрати відповідну архітектуру [20]. При виборі потрібної архітектури може залежати час розробки програмного забезпечення, вартість, тривалість та в подальшому можливість імплементувати, чи модифікувати певні частини програмного забезпечення. Існують такі основні архітектурні рішення:

- багаторівнева;

- розподілена;

- модульна;

- сервісно-орієнтована архітектура

- подійно-орієнтована архітектура.

Багаторівнева архітектура відноситься до категорії модульного типу уявлення, а відносини між модулями є типовими представниками відносин «один є частиною іншого » і «один успадковує від іншого». Кожен рівень є сукупністю відповідного коду і діє як віртуальна машина, незалежна від інших рівнів. Зв'язок між рівнями є за своїм характером ієрархічний: рівні вищого порядку передають управління рівнями нижчого порядку. Елемент в одному рівні відправляє інформацію елементу в наступному рівні, і на цьому його місія закінчена; він не очікує повернення інформації [21].

Розподілена архітектура - це система програмного забезпечення, в якій компоненти розташовані на мережевих комп'ютерах спілкуються і координуються шляхом передачі повідомлень. Компоненти взаємодіють один з одним з метою досягнення спільної мети. Три основних характеристики розподілених систем це: паралелізм компонентів, відсутність глобального часу, і незалежний вихід з роботи компонентів [22].

Модульна архітектура - архітектура, що підкреслює поділ функціональності програми на незалежні змінні модулі, таких, що кожен з них містить все необхідне, щоб виконати тільки один аспект необхідної функціональності. Модулі, як правило, включені в програму через інтерфейси [23].

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

Сервісно-орієнтована архітектура -- архітектурний шаблон програмного забезпечення, модульний підхід до розробки програмного забезпечення, заснований на використанні розподілених, слабко пов'язаних замінних компонентів, оснащених стандартизованими інтерфейсами для взаємодії за стандартизованими протоколам [25].

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

При розробці програми туристичного гіда Львова було вибрано декілька архітектурних рішень, а саме:

- Подійно-орієнтована архітектура;

- Сервісно-орієнтована архітектура;

- Модульна архітектура.

Ці архітектурні рішення (Додатки В.1 - В.2) вибрані на підставі того, що розроблюване програмне забезпечення працює з віддаленим сервером, на якому знаходяться дані, які завантажуються на пристрій як тільки відбулись зміни. Саме це дає змогу реалізувати подійно-орієнтована архітектура. Також цей додаток тісно працює із сервісом GoogleMap, тому для хорошої взаємодії між компонентами та зрозумілої реалізації була вибрана сервісно-орієнтована архітектура. Останній тип архітектури, який реалізований в програмному додатку це модульний. В розробленому програмному забезпеченні він забезпечує завантаження даних із сервера.

3.3 Опис поведінки програмного забезпечення

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

- формування структури даних;

- при необхідності оновлювати дані, викачуючи їх із сервера;

- кешувати дані.

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

- Формування туристичного маршруту;

- перегляд інформації про туристичну точку (Додаток Г.2);

- прослуховування інформації.

3.4 Формати даних

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

- XML - визначає набір базових лексичних та синтаксичних правил для побудови мови описання інформації шляхом застосування простих тегів. Цей формат достатньо гнучкий для того, аби бути придатним для застосування в різних галузях. Іншими словами, запропонований стандарт визначає метамову, на основі якої, шляхом запровадження обмежень на структуру та зміст документів визначаються специфічні, предметно-орієнтовані мови розмітки даних [26].

- JSON - це легкий формат обміну даними між комп'ютерами. JSON базується на тексті і може бути з легкістю прочитаним людиною. Формат дозволяє описувати об'єкти та інші структури даних. Цей формат головним чином використовується для передачі структурованої інформації через мережу (завдяки процесу, що називають серіалізацією) [27].

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

- при отриманні загальної інформації із сервера (Додаток Д.1);

- при отриманні обновлення, чи завантаження даних із сервера. (Додаток Д.2 - Д.3);

- при отриманні відповіді із сервісу googleMap при надсиланні запиту на формування маршруту (Додаток Д.4).

РОЗДІЛ 4. РЕАЛІЗАЦІЯ ТА ТЕСТУВАННЯ ТУРИСТИЧНОГО ПУТІВНИКА ЛЬВОВА

4.1 Архітектурне рішення

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

- модульне;

- подійно-орієнтоване;

- сервісно-орієнтоване.

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

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

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

Дані, які знаходяться на телефоні завантажуються із сервера в двох випадках. В першому випадку - коли програма вперше встановлена, відбувається підключення до сервера, та викачування даних. Після чого дані тим же модулем формуються у відповідні структури для роботи додатку та кешуються в телефон. В другому випадку - коли є підключення до Інтернету програма автоматично викачує системний файл (він не є ресурсоємним ресурсів оскільки містить тільки три поля: 1 - дата останніх змін на сервері; 2 - url адреса файлу з туристичними точками; 3 - url адреса файлу з туристичними маршрутами.) та порівнює дату останньої зміни даних, яка є на сервері із датою, яка була закешована на телфоні. Якщо дати не збігаються відбувається автоматичне завантаження даних на телефон та обновлення кешу.

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

Під час прокладання маршруту між поточним місцем знаходження до вибраної локації формується запит, в якому вказується поточне місце знаходження та кінцева локація. Вони вказуються у випадку вибору декількох точок, а також тип маршруту (автомобільний, пішохідний чи вело), а також тип відповіді (json, xml), який відправляється на сервіс google. Після опрацювання відправленого запиту приходить відповідь у вигляді json об'єкту. Дані, які прийшли, парсяться за відповідним алгоритмом та віддаються програмі для відображення їх на телефоні. Також зразу в цьому файлі вибирається і час перебування в дорозі.

Це все відбувається в паралельному потоці, що унеможливлює зависання програми.

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

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

Останній тип архітектури це сервісно-орієнтована. Це рішення використовується оскільки для коректної роботи додатку використовується декілька сервісів:

1. GoogleMap service - цей сервіс, від компанії гугл надає ряд можливостей для роботи із картами, прокладанням маршрутів, відображенням туристичних точок на карті.

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

4.2 Обмін даними

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

1. при отриманні даних із сервера. В даному випадку дані, які приходять на мобільний додаток у вигляді JSON. Для отримання даних мною розроблені три остновні формати:

a. Структура JSON обєкта який містить загальну інформацію про дані (Додаток Д.1):

- дата останніх обновлень на сервері ;

- адреса даних туристичних маршрутів;

- адреса даних туристичних точок.

b. Структура JSON обєкта який містить інформацію про локації.

Цей тип надає можливість гнучко добавляти типи локацій, за рахунок чого в телефоні будуть появлятись нові розділи із туристичними точками без оновлення версії додатку (Додаток Д.2):

- id розділу;

- назва розділу;

- маси локацій. Це поле містить декілька підполів:

o id;

o опист. Інформація про точку яка показується користувачу, і має наступні пункти: імя, текст, рік, тип;

o географічні координати точки;

o адреса картинок;

o адреса іконки;

c. Структура JSON обєкта який містить інформацію про туристичний маршрут.

В даному форматі знаходится інформація про туристичні маршрути (Додаток Д.3). Він містить наступні поля:

- id туристичного маршруту;

- id розділу до якого він належить;

- назва туристичного маршруту;

- туристичні точки через які він проходиться. Це id туристичних точок.

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

4.3 Тестування

Вступ

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

Розробка тестів

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

Функціональні тестові сценарії

Під час розробки тестів було спроектовано 32 основних функціональних тестових випадків (табл. 4.1), які описали поведінку та роботу додатку.

Таблиця 4.1

Розподіл варіантів використання для функціонального тестування

Варіанти використання

Тестові випадки

Тестові дані

Завантаження даних

4

18

Кешування даних

3

8

Формування структури даних

11

24

Формування запиту для побудови маршруту

4

11

Отримання координат поточного місцезнаходження

2

6

Синтекс тексту

2

4

Отримання інформації про маршрут

6

10

Загалом

32

81

GUI тестові випадки

Під час фази розробки тестів було спроектовано 10 GUI тестових випадків (табл. 4.2). За допомогою них видно як працює інтерфейс та наскільки коректно відображає дані.

Таблиця 4.2

Розподіл варіантів використання для GUI тестування

Варіанти використання

Тестові дані

Створення верхньої панелі

2

Створення нижньої панелі

2

Відображення туристичного маршруту

3

Перегляд інформації про локацію

1

Розставлення туристичних точок

2

Загалом

10

Функціональне тестування

Усі функціональних тестових випадки були виконані успішно. Отже вірність фунціональної роботи програми забезпеченне на 100%.

GUI тестування

Як тестування функціональних складових, так і GUI тестування пройшло успішно на 100% що забезпечить коректне відображення даних на мобільному додатку.

Критерій успіх/провал проекту

Умови тестування, які визнавалися успішними, були наступні:

Розробка тестів:

· Всі заплановані тестові випадки розроблено;

· Покриття тестами програмних вимог досягає 100%;

· Покриття тестами варіантів використання досягає 100%;

Тестування:

· Всі розроблені тестові випадки виконано;

Всі наведені умови задоволено, отже проект вважається успішним

РОЗДІЛ 5. ЕКОНОМІЧНА ЧАСТИНА

5.1 Економічна характеристика туристичного гіда Львова на платформі Android

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

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


Подобные документы

  • Ескізний проект програмного забезпечення для 3D-навігації для мобільних пристроїв під управління ОС Android. Розробка прототипу інтерфейсу. Технічний проект програмного забезпечення. Створення діаграми класів, аналізу, розгортання та кооперацій.

    курсовая работа [880,5 K], добавлен 09.01.2014

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

    дипломная работа [1,2 M], добавлен 05.01.2014

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

    курсовая работа [2,4 M], добавлен 07.10.2014

  • Тривимірна модель мобільного робота. Алгоритмізація моделі та її програмної реалізації з використанням бібліотек MFC та OpenGL. Розробка програмного забезпечення. Середовище розробки проекту Microsoft Visual Studio 2010. Керування рухами маніпулятора.

    курсовая работа [462,9 K], добавлен 03.04.2014

  • Android, iOS та Windows як основні платформи для розробки додатків для мобільних пристроїв. Перелік вимог до програмної системи. Основні вимоги, які є критичними для працездатності мобільного додатку. Аналіз основних напрямків розвитку системи.

    курсовая работа [1,1 M], добавлен 19.08.2016

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

    курсовая работа [2,3 M], добавлен 14.12.2010

  • Коротка характеристика об’єктів управління "Nix Solutions". Розроблення варіантів використання, специфікація функціональних та не функціональних вимог. Проектування структури бази даних, елементи. Тестування додатку та розгортання програмного продукту.

    дипломная работа [1,5 M], добавлен 01.07.2015

  • Розробка програми "Тетрис", яка виконує створення та переміщення фігур, видалення повних рядів та нарахування балів. Вимоги до умов експлуатації ігрової програми, вхідні та вихідні дані. Проектування діаграми класів та діаграми станів ігрового додатку.

    курсовая работа [515,8 K], добавлен 27.05.2019

  • Характеристика функціональної структури предметної області програмного комплексу. Розробка архітектури програмної системи. Вибір типу архітектури й зразків проектування. Опис декомпозиції, залежностей та інтерфейсу. Детальне проектування модулів та даних.

    курсовая работа [462,2 K], добавлен 19.12.2013

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

    курсовая работа [1,5 M], добавлен 01.12.2010

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.