Програмні технології мобільних обчислень

Спеціальність: Комп'ютерна інженерія
Код дисципліни: 6.123.02.E.066
Кількість кредитів: 3.00
Кафедра: Електронні обчислювальні машини
Лектор: асистент Костик Андрій Тарасович
Семестр: 7 семестр
Форма навчання: денна
Мета вивчення дисципліни: Виробити у студентів чітке та систематизоване уявлення про архітектуру та призначення мобільних обчислювальних систем, принципи управління локальними та розподіленими ресурсами в мобільних обчислювальних системах, а також про принципи побудови відповідного програмного забезпечення; надати навички управління та налагодження мобільних обчислювальних систем. Внаслідок вивчення навчальної дисципліни студент повинен бути здатним продемонструвати такі результати: 1. вивчити принципи побудови, архітектуру та призначення мобільних обчислювальних систем, 2. розуміти концептуальні основи функціонування системних та прикладних програмних засобів, що реалізують основну функціональність мобільних обчислювальних систем, 3. вивчити принципи управління локальними ресурсами мобільних обчислювальних систем, зокрема обчислювальними процесами, пам’яттю та пристроями вводу/виводу, 4. розуміти принципи організації файлових систем та систем збереження даних у складі мобільних обчислювальних систем, 5. вивчити принципи управління розподіленими ресурсами мобільних обчислювальних систем, зокрема способи організації розподілених обчислень, методи синхронізації в розподілених системах, принципи реплікації та роботи служб іменування ресурсів, 6. вміти конфігурувати та налагоджувати роботу мобільних обчислювальних систем.
Завдання: Вивчення навчальної дисципліни передбачає формування у здобувачів освіти компетентностей: загальні компетентності: – базові знання фундаментальних наук, в обсязі, необхідному для освоєння загально-професійних дисциплін; – базові знання в галузі комп’ютерної інженерії (комп’ютерної логіки, теорії програмування, електротехніки) необхідні для освоєння професійно-орієнтованих дисциплін. – здатність до аналізу та синтезу; – здатність до застосування знань на практиці; – здатність здійснювати пошук та аналізувати інформацію з різних джерел; – здатність розв’язувати поставлені задачі та приймати відповідні рішення; – креативність, здатність до системного мислення. фахові компетентності: – базові знання технічних характеристик, конструктивних особливостей, призначення і правил експлуатації комп’ютерних систем, мереж та обладнання; – знання сучасних технологічних процесів та систем автоматизації технологічної підготовки виробництва; – здатність застосовувати та інтегрувати знання і розуміння дисциплін інших інженерних галузей; – здатність досліджувати проблему та визначати обмеження, у тому числі технічні та обумовлені проблемами сталого розвитку, а також проблемами впливу на навколишнє середовище та безпеку життєдіяльності
Результати навчання: У результаті вивчення навчальної дисципліни здобувач освіти повинен бути здатним продемонструвати такі результати навчання: 1. знати загальні принципи побудови та функціонування мобільних обчислювальних систем; 2. знати основні функції мобільних обчислювальних систем та способи їх використання; 3. знати способи управління локальними ресурсами мобільних обчислювальних систем; 4. знати способи управління пам’яттю, пристроями вводу-виводу, файловими системами та мережною підсистемою мобільних обчислювальних систем; 5. вміти визначати основні параметри роботи мобільних обчислювальних систем, здійснювати моніторинг використання системних ресурсів, знаходити та виправляти помилки в роботі мобільних обчислювальних систем; 6. мати практичні навички роботи з системним та прикладним програмних забезпеченням мобільних обчислювальних систем.
Необхідні обов'язкові попередні та супутні навчальні дисципліни: Системне програмне забезпечення Кросплатформні засоби програмування Комп’ютерні мережі Системне адміністрування комп'ютерних мереж Глобальні інформаційні мережі
Короткий зміст навчальної програми: Дисципліна “Програмні технології мобільних обчислювань” ставить на меті виробити у студентів чітке та систематизоване уявлення про архітектуру та призначення мобільних обчислювальних систем, принципи управління локальними та розподіленими ресурсами в обчислювальних системах, а також про принципи побудови відповідного програмного забезпечення; надати навички управління та налагодження мобільних обчислювальних систем. В результаті освоєння учбового матеріалу дисципліни студенти повинні знати загальні принципи побудови та функціонування мобільних обчислювальних систем, розуміти концептуальні основи функціонування системних та прикладних програмних засобів, що реалізують основну функціональність мобільних обчислювальних систем, вміти працювати з основними компонентами мобільних обчислювальних систем. Для освоєння даної дисципліни необхідне знання таких дисциплін: “Системне програмне забезпечення”, “Кросплатформні засоби програмування”, “Комп’ютерні мережі”.
Опис: 1. Принципи побудови мобільних обчислювальних систем. Мобільні системи. Сучасний стан розвитку мобільних систем та засобів їх розробки. Інтернет речей. Технології мобільних обчислень. 2. Основа технологій мобільних обчислень. Мобільні обчислювальні пристрої. Програмні засоби для розробки мобільних обчислювальних систем. Платформа Android. Архітектура та організація роботи ОС Android. Програмна технологія платформи Android. Структура Android-програми. Основні компоненти Android-програми. Життєвий цикл Android Activity. Сервіси (Services). Постачальники контенту (Content providers). Отримувачі широкомовних намірів (Broadcast Receivers). Наміри (Intents). Управління локальними ресурсами мобільного обчислювального пристрою. Управління сенсорною підсистемою. Віддалене управління виконавчими системами. Управління мережною підсистемою. Управління споживанням енергії. Середовище розробки Android Studio. Використання AVD Manager. Програмування інтерфейсу користувача. 3.Контекстно-залежні мобільні обчислення. Концепція контекстно-залежних обчислень (context-aware computing). Використання концепції контекстно-залежних обчислень при побудові МО. Модель контексту (context model). Способи реагування на зміни у контексті. 4.Автономні МО на основі мобільних агентів. Просторова самоорганізація автономних МО на основі мобільних агентів. Класифікація задач просторової самоорганізації (spatial self-organization). Приклади використання алгоритмів просторової самоорганізації. Узагальнена схема організації переміщення мобільного агента. Операційна схема переміщення мобільного агента. Алгоритмічне забезпечення задач просторової самоорганізації. Практичне застосування автономних МО на основі мобільних агентів та алгоритмів просторової самоорганізації. 5. Контекстно-залежні мобільні обчислення на платформі Android. Програмні засоби платформи Android для роботи з сенсорами. Сенсорна підсистема мобільного пристрою на платформі Android. Програмна архітектура управління сенсорами на платформі Android. Програмний інтрефейс для роботи з сенсорами на платформі Android. Порядок отримання показів сенсора у програмі. Організація роботи з файлами даних на платформі Android. Зберження та використання даних програми на платформі Android. Робота з локальними файлами даних програми. Організація доступу до зовнішньої пам’яті. Програмний інтерфейс для роботи з медіафайлами. Налаштування параметрів сервісу геолокації. Відслідковування поточного місцезнаходження мобільного пристрою. Лабораторні: 1 Програмна технологія мобільних обчислень Android. 2. Використання основних програмних компонент платформи Android. 3. Програмні засоби вводу/виводу платформи Android. 4. Використання сенсорної підсистеми мобільного пристрою на платформі Android. 5. Програмні засоби для роботи з файлами даних на платформі Android. 6. Програмні засоби для роботи з геоконтекстними сервісами на платформі Android.
Методи та критерії оцінювання: Оцінювання знань студентів з дисципліни “Мобільні кіберфізичні системи” проводиться відповідно до робочого навчального плану у вигляді семестрового контролю, який проводиться в кінці семестру і включає в себе результати поточного контролю знань студентів, який оцінюється за виконання лабораторних робіт, та контрольного заходу – відповідь на відповідний білет на іспиті. Контрольний захід є обов’язковим видом контролю і проводиться в письмово-усній формі в кінці семестру. Поточний контроль на лекційних заняттях проводиться з метою виявлення готовності студента до занять у таких формах: - вибіркове усне опитування перед початком занять; - оцінка активності студента у процесі занять, внесених пропозицій, оригінальних рішень, уточнень і визначень, доповнень попередніх відповідей і т. ін. Контрольні запитання поділяються на: а) тестові завдання – вибрати вірні відповіді; б) проблемні – створення ситуацій проблемного характеру; в) питання-репліки – виявити причинно-наслідкові зв’язки; г) ситуаційні завдання – визначити відповідь згідно певної ситуації; д) питання репродуктивного характеру – визначення практичного значення.
Критерії оцінювання результатів навчання: Письмові звіти з лабораторних робіт, усне опитування, самостійна робота (30%) Підсумковий контроль: контрольні заходи, екзамен, письмово-усна форма (70 %)
Порядок та критерії виставляння балів та оцінок: 100–88 балів – («відмінно») виставляється за високий рівень знань (допускаються деякі неточності) навчального матеріалу компонента, що міститься в основних і додаткових рекомендованих літературних джерелах, вміння аналізувати явища, які вивчаються, у їхньому взаємозв’язку і роз витку, чітко, лаконічно, логічно, послідовно відповідати на поставлені запитання, вміння застосовувати теоретичні положення під час розв’язання практичних задач; 87–71 бал – («добре») виставляється за загалом правильне розуміння навчального матеріалу компонента, включаючи розрахунки , аргументовані відповіді на поставлені запитання, які, однак, містять певні (неістотні) недоліки, за вміння застосовувати теоретичні положення під час розв’язання практичних задач; 70 – 50 балів – («задовільно») виставляється за слабкі знання навчального матеріалу компонента, неточні або мало аргументовані відповіді, з порушенням послідовності викладення, за слабке застосування теоретичних положень під час розв’язання практичних задач; 49–26 балів – («не атестований» з можливістю повторного складання семестрового контролю) виставляється за незнання значної частини навчального матеріалу компонента, істотні помилки у відповідях на запитання, невміння застосувати теоретичні положення під час розв’язання практичних задач; 25–00 балів – («незадовільно» з обов’язковим повторним вивченням) виставляється за незнання значної частини навчального матеріалу компонента, істотні помилки у відповідях на запитання, невміння орієнтуватися під час розв’язання практичних задач, незнання основних фундаментальних положень.
Рекомендована література: Базова 1. Кіберфізичні системи: багаторівнева організація та проектування / А. О. Мельник, В. А. Мельник, В. С. Глухов, А. М. Сало, за ред. А. О. Мельника. – Львів: "Магнолія 2006", 2019. – 237 c. 2. Кіберфізичні системи: технології збору даних / О.Ю. Бочкарьов, В.А. Голембо, Я.С. Парамуд, В.О. Яцук. За ред. А.О. Мельника, Львів: “Магнолія 2006”, 2019. - 176 с. 3. Rajeev Alur, Principles of Cyber-Physical Systems, The MIT Press, 2015. - 464 p. Допоміжна 1. Cyber Physical Systems. Design, Modeling, and Evaluation, Proceedings of the 5th International Workshop, CyPhy 2015, Amsterdam, The Netherlands, October 8, 2015. - 147 p. 2. Edward A. Lee. Fundamental Limits of Cyber-Physical Systems Modeling, ACM Transactions on Cyber-Physical Systems, Volume 1, Issue 1, 2016. - pp.3:1-3:26. 3. Siddhartha Kumar Khaitan and James D. McCalley, Design Techniques and Applications of CyberPhysical Systems: A Survey, IEEE Systems Journal, Volume: 9, Issue: 2, June 2015. - pp.350-365. 4. Botchkaryov A., Kraikin Yu. Wireless Sensor-Actuator Network based on the SoC ESP8266 for Mobile Cyber-Physical Systems // Advances in Cyber-Physical Systems, Lviv, Volume 2, Number 2, 2017. – pp.39-46 5. Мельник А.О. Кіберфізичні системи: проблеми створення та напрямки розвитку // Вісник НУ «Львівська політехніка» «Комп’ютерні системи та мережі», 2014, №806. - С.154-161. 6. Мельник А.О. Інтеграція рівнів кіберфізичної системи // Вісник Національного університету "Львівська політехніка". Комп’ютерні системи та мережі. - 2015. - № 830. - С. 61-67. 7. Голембо В.А., Бочкарьов О.Ю., Підходи до побудови концептуальних моделей кіберфізичних систем // Вісник Національного університету «Львівська політехніка» «Комп’ютерні науки та інформаційні технології», №864, 2017. - C.168-178
Уніфікований додаток: Національний університет «Львівська політехніка» забезпечує реалізацію права осіб з інвалідністю на здобуття вищої освіти. Інклюзивні освітні послуги надає Служба доступності до можливостей навчання «Без обмежень», метою діяльності якої є забезпечення постійного індивідуального супроводу навчального процесу студентів з інвалідністю та хронічними захворюваннями. Важливим інструментом імплементації інклюзивної освітньої політики в Університеті є Програма підвищення кваліфікації науково-педагогічних працівників та навчально-допоміжного персоналу у сфері соціальної інклюзії та інклюзивної освіти. Звертатися за адресою: вул. Карпінського, 2/4, І-й н.к., кімн. 112 E-mail: nolimits@lpnu.ua Websites: https://lpnu.ua/nolimits https://lpnu.ua/integration
Академічна доброчесність: Політика щодо академічної доброчесності учасників освітнього процесу формується на основі дотримання принципів академічної доброчесності з урахуванням норм «Положення про академічну доброчесність у Національному університеті «Львівська політехніка» (затверджене вченою радою університету від 20.06.2017 р., протокол № 35).