Проектування програмних систем для мобільних пристроїв - Робоча програма навчальної дисципліни (Силабус)
Реквізити навчальної дисципліни
Рівень вищої освіти | Другий (магістерський) |
Галузь знань | 12 Інформаційні технології |
Спеціальність | 126 Інформаційні системи та технології |
Освітня програма | Інтегровані інформаційні системи |
Статус дисципліни | Вибіркова |
Форма навчання | очна(денна)/заочна/дистанційна |
Рік підготовки, семестр | 2 курс, осінній семестр |
Обсяг дисципліни | 120 годин (36 годин – Лекції, 18 годин – Лабораторні, 66 годин – СРС) |
Семестровий контроль/ контрольні заходи | Залік |
Розклад занять | http://rozklad.kpi.ua |
Мова викладання | Українська |
Інформація про керівника курсу / викладачів | Лектор: д.т.н., проф., Корнієнко Богдан Ярославович b.korniyenko@kpi.ua моб. +38(096)965-05-17 Лабораторні: д.т.н., проф., Корнієнко Богдан Ярославович |
Розміщення курсу | https://campus.kpi.ua |
Програма навчальної дисципліни
Опис навчальної дисципліни, її мета, предмет вивчання та результати навчання
Опис дисципліни. Дисципліна Проектування програмних систем для мобільних пристроїв охоплює технології та методи створення мобільної частки корпоративної інформаційної системи з урахуванням гнучкості та адаптованості бізнес-процесів підприємства. Даний курс знайомить студентів із основами базової будови операційних систем популярних мобільних платформ, навчає основним принципам проектування та аналізу мобільних рішень корпоративних інформаційних систем під сучасні мобільні платформи; допомогає оволодіти навичками самостійного (командного) розроблення мобільних додатків під сучасні мобільні платформи.
Предмет навчальної дисципліни: теорія і практика розроблення мобільних додатків на базі сучасних технологій розроблення програмного забезпечення.
Міждисциплінарні зв’язки. Дисципліна Проектування програмних систем для мобільних пристроїв базується на дисциплінах: Інформатика, Операційні системи, Об'єктно-орієнтоване програмування.
Мета навчальної дисципліни. Метою навчальної дисципліни є формування у висококваліфікованих фахівців стійких знань і навичок щодо технологій створення додатків, які базуються на сучасних мобільних платформах і технологіях їхнього застосування під час реалізації бізнес-комунікацій.
Основні завдання навчальної дисципліни
Знання:
понятійний та категорійний апарат щодо проектування та розроблення мобільних додатків під сучасні мобільні платформи;
основні види архітектур мобільних платформ та її компоненти;
основні етапи й особливості процесу проектування програмного забезпечення для мобільних пристроїв;
технології та інструменти проектування мобільних додатків для сучасних мобільних платформ;
основні класи API и компоненти SDK мобільних платформ Android, iOS, Microsoft;
основні методи та практики забезпечення захисту даних у мобільних пристроях на різних мобільних платформах.
Уміння:
проводити аналіз можливостей сучасних інструментальних середовищ
розроблення мобільних додатків;
розгортати та налагоджувати середовища розроблення для платформи
Android;
застосовувати інструменти для розроблення мобільних додатків;
створювати та налагоджувати емулятори мобільного пристрою;
розробляти додатки під платформи Android, iOC, Microsoft Windows 10
із використанням сучасних мов (технологій) програмування;
проектувати інтерфейс користувача мобільного додатка;
користуватися раніше складеними програмами і здійснювати супровід
програм, вносити зміни до програми, виконувати налагодження програм за допомогою інструментальних засобів;
застосовувати мобільні технології під час проектування інформаційної
системи підприємства з метою підвищення якості бізнес-процесів підприємства;
використовувати програмні засоби формування основних процедур
захисту інформації в мобільних пристроях.
Пререквізити та постреквізити дисципліни (місце в структурно-логічній схемі навчання за відповідною освітньою програмою)
Пререквізити: здатність застосовувати знання у практичних ситуаціях, навички використання інформаційних і комунікаційних технологій, здатність до пошуку, опрацювання та аналізу інформації з різних джерел, здатність застосовувати знання про основні принципи організації сучасних мобільних операційних систем.
Постреквізити: вміти застосовувати знання про особливості архітектури і апаратного середовища мобільних пристроїв; способи установки мобільних додатків в різних ОС; особливості архітектури мобільних пристроїв з точки зору програмування; основні прийоми розробки програм для мобільних пристроїв; особливості реалізації призначеного для користувача інтерфейсу в мобільних пристроях; пристрій і архітектуру ОС Android; основні компоненти архітектури мобільних платформ; життєвий цикл мобільних додатків і їх структуру; основні елементи призначеного для користувача інтерфейсу мобільних додатків; роботу з файлами, базами даних, призначеними для користувача настройками в мобільних пристроях; інструменти для програмування і основ проектування мобільних додатків; володітимуть навичками створення програмного забезпечення для мобільних пристроїв.
Після проходження дисципліни студенти зможуть використовувати знання з фундаментальних дисциплін для реалізації професійно-профільованих знань й практичних навичок в галузі сучасних мобільних операційних систем; використовувати інформаційні ресурси, включаючи електронні бази даних, довідкову літературу, стандарти тощо для підвищення свого професійного рівня, інноваційної, проектної та дослідницької діяльності в професійній сфері.
.
Зміст навчальної дисципліни
Лекційні заняття
Розділ 1. Мобільні операційні системи
Розділ 2. Особливості розроблення мобільних рішень для ОС Android.
Лабораторні заняття
Створення activity і передача параметрів між ними.
Основи верстки.
Робота з базою даних.
Взаємодія з сервером.
Зберігання даних. Налаштування і зовнішні файли.
Повідомлення.
Навчальні матеріали та ресурси
Базова література
Голощапов Алексей Google Android. Программирование для мобильных устройств; БХВ-Петербург - Москва, 2012. - 448 c.
Корнієнко Б.Я. Лабораторний практикум з навчальної дисципліни «Сучасні мобільні операційні системи». Електронний ресурс.
Дэрси Лорен , Кондер Шейн Android за 24 часа. Программирование приложений под операционную систему Google; Рид Групп - Москва, 2011. - 464 c.
Колисниченко Денис Программирование для Android. Самоучитель; БХВ-Петербург - Москва, 2012. - 272 c.
Майер Рето Android 2. Программирование приложений для планшетных компьютеров и смартфонов; Эксмо - Москва, 2011. - 672 c.
Майер Рето Android 4. Программирование приложений для планшетных компьютеров и смартфонов; Эксмо - Москва, 2013. - 816 c.
Медникс Зигард , Дорнин Лайрд , Мик Блэйк , Накамура Масуми Программирование под Android; Питер - Москва, 2013. - 560 c.
Немцова Т. И., Голова С. Ю., Абрамова И. В. Программирование на языке высокого уровня. Программирование на языке Object Pascal (+ CD-ROM); Форум, Инфра-М - Москва, 2009. - 496 c.
Ретабоуил Сильвен. Android NDK. Разработка приложений под Android на С/С++; ДМК Пресс - Москва, 2012. - 496 c.
Цехнер Марио Программирование игр под Android; Питер - Москва, 2012.
- 688 c.
Допоміжна література
П. Ноутон, Г. Шилдт. Java 2. – СПб.: БХВ-Петербург, 2005.
Горнаков С.Г. Программирование мобильных телефонов на Java 2 Micro Edition. –ДМК.: Москва, 2005.
В. Пирумян. Платформа программирования J2ME для портативных устройств.- М.: КУДИЦ-ОБРАЗ, 2002.
Романьков П.П. Создание игр для мобильных телефонов.- М.: Технолоджи- 300.: Триумф, 2007.
А. Аллан. Программирование для мобильных устройств на iOS– Питер, 2013.
О. Мельникова. Смартфоны на Android. –Эксмо, 2013.
Д. Елисеев. Разработка и продажа программ для iPhone и iPad.- : БХВ-Петербург, 2011.
Кристофер Брин. iPhone. Полный карманный справочник.- Символ-Плюс, 2008.
Брюс Е. Крелль. Windows Mobile. Разработка приложений для КПК.- ДМК Пресс, 2009.
Навчальний контент
Методика опанування навчальної дисципліни (освітнього компонента)
Лекційні заняття
№ з/п | Назва теми лекції та перелік основних питань (перелік дидактичних засобів, посилання на літературу та завдання на СРС) |
---|---|
1 | Лекція 1,2. Опис будови мобільних пристроїв. Стандарт GSM. Прошивка і операційна система. Інфрачервоний порт. Технологія Bluetooth. Протокол WAP. Протокол GPRS. Карта SIM. Види телефонів та ретранслятори стільникового зв’язку Стандарт GSM, CDMA. Стандарти і оператори стільникового зв’язку. Література: [1, с.5-31; 3, с.3…10; 4, с.10…42.] Завдання на СРС. Емулятори мобільних пристроїв. |
2 | Лекція 3,4. Основні поняття операційних систем. Операційні системи для мобільних пристроїв Windows Mobile/Phone, Blackbarry, Symbian. Android. Прошивка мобільного телефону і операційна система. Основи програмування Android. Література: [1, с. 61-76; 3, с. 42…53; 4, с. 388 ...402; 6, с.219..234.] Завдання на СРС. Допоміжне програмне забезпечення для взаємодії ПК та мобільного пристрою. |
3 | Лекція 5,6. Емулятори мобільних пристроїв Телефонні емулятори. Емулятори смартфонів, планшетів та КПК. Література: [5, с.52-87; 7, с. 120-170.] Завдання для СРС. Робота з файлами. Формат файлів XML та робота з ним. |
4 | Лекція 7,8. Середовища розробки. Засоби розробки програм для мобільних пристроїв. Eclipse, NetBeans, Android Studio, Microsoft Visual Studio. Інструментальні засоби розробника. Інструменти програмування для мобільних пристроїв (SDK). Література: [ 7, с. 38-55. ] Завдання для СРС. Програмування із використанням графіки в мобільних пристроях. |
5 | Лекція 9. Модульна контрольна робота На контрольну роботу виноситься увесь попередній матеріал, що включає базові поняття сучасних мобільних операційних систем. Завдання для СРС. Повторити матеріал 1-8 лекцій. |
6 | Лекція 10. Середовище розробки Android Studio. Основні види Android-додатків. Середовище розробки Android Studio, налаштування його для роботи. Основні панелі середовища, способи їх переключення. Основні види Android-додатків, етапи їх створення та сфери застосування. Література: [ 6, с. 125-147. ] Завдання для СРС. Структура Android-програми. |
7 | Лекція 11. Апаратна архітектура. Платформа Android. Механізм роботи програм на Android. Віртуальна машина. Класи інтерфейсу користувача Android. Література: [ 4, с. 88-127; 5, с. 56-148; 6, с. 170-186; 7, с. 56-90, 107-110; 8, с. 137-188. ] Завдання для СРС. Програмування мобільних пристроїв із використання мереж і комунікацій. |
8 | Лекція 12. Системні бібліотеки Бібліотеки для Android-додатків, як додати зовнішню бібліотеку в свій додаток. Правила безпеки при використанні бібліотек, що підключаються. Програмування графіки Android. Програмування мультимедіа. Організація мереж і комунікацій в Android. Література: [3, с.118...135; 4, с.182...194] Завдання для СРС. Робота з базами даних в мобільних пристроях на базі платформи Java. |
9 | Лекція 13. Графіка в ОС Аndroid. Програмування графіки Android. Програмування мультимедіа. Організація мереж і комунікацій в Android. Література: [3, с.118...135; 4, с.182...194] Завдання для СРС. Покоління мережних мобільних технологій. |
10 | Лекція 14. Програмна архітектура. Файлова система. Організація роботи з базами даних в мобільних пристроях. Використання сенсорів (акселерометр, гіроскоп, магнетометр, освітленість, тиск, температура, наближення, вологості). Програмування мультимедіа та робота із камерою. Мови розмітки WAP-ресурсів для мобільних пристроїв. Створення інтерфейсів користувача для мобілних користувачів Інтернет. Література: [6, с.226...239; 7, с.349-398.] Завдання для СРС. Організація багатопоточних програм. |
11 | Лекція 15. Ресурси. Методи створення макету додатку (зовнішнього вигляду екрану), роль ресурсів у цьому процесі. Література: [3, с.30…36; 4, с. 6…70, 433 ...448.] Завдання для СРС. Робота з базами даних в мобільних пристроях на базі платформи .NET Compact Framework. |
12 | Лекція 16. Бази даних і мультимедіа в Android. Основи роботи з базами даних SQLite, застосування анімації в Android-додатках, 2D і 3D графіки, основні принципи розробки додатків для смартфонів. Література: [3, с.52…78; 4, с. 85…110.] Завдання для СРС. Компоненти Android-програми. |
13 | Лекція 17. Багатовіконні додатки. Методи побудови додатків з декількома Activities, способи переключання між ними. Стани activity, їх життєвий цикл. Події високого і низького рівня; компоненти інтерфейсу користувача. Методи роботи з діалоговими вікнами. Особливості розробки програми, що містить кілька активностей. Література: [3, с. 85…114; 4, с. 124…150.] Завдання для СРС. Архітектура Android GUI. |
14 | Лекція 18. Модульна контрольна робота На контрольну роботу виноситься увесь попередній матеріал, що включає базові поняття реалізації програм для операційної системи Android. Завдання для СРС. Повторити матеріал 10-17 лекцій. |
**
**
Лабораторні заняття
№ | Назва лабораторної роботи | Кількість ауд. годин |
---|---|---|
1 | Лабораторна робота 1. Створення activity і передача параметрів між ними.
Література: [2, стор. 6] |
4 |
2 | Лабораторна робота 2. Основи верстки. Ознайомитись з основами верстки. Навчитися керувати інтерфейсом мобільного пристрою при розробці програмного додатка. Література: [2, стор. 20] |
2 |
3 | Лабораторна робота 3. Робота з базою даних Вивчити роботу Android програми з базою даних SQLite. Література: [2, стор. 30] |
4 |
4 | Лабораторна робота 4. Взаємодія з сервером Вивчити роботу з потоками. Навчитися працювати з мультимедіа файлами. Вивчити роботу з класом AsyncTask. Література: [2, стор. 40] |
2 |
5 | Лабораторна робота 5. Зберігання даних. Налаштування і зовнішні файли. Вивчити інструменти зберігання даних, а також роботу з зовнішніми файлами. Література: [2, стор. 50] |
2 |
6 | Лабораторна робота 6. Повідомлення. Вивчити методи реалізації та відправлення повідомлень. Література: [2, стор. 59] |
4 |
Самостійна робота студента/аспіранта
|
Назва теми, що виноситься на самостійне опрацювання | Кількість годин СРС |
---|---|---|
1 | Емулятори мобільних пристроїв | 4 |
2 | Допоміжне програмне забезпечення для взаємодії ПК та мобільного пристрою | 2 |
3 | Робота з файлами. Формат файлів XML та робота з ним | 2 |
4 | Програмування із використанням графіки в мобільних пристроях | 2 |
5 | Структура Android-програми | 2 |
6 | Програмування мобільних пристроїв із використання мереж і комунікацій | 4 |
7 | Робота з базами даних в мобільних пристроях на базі платформи Java | 4 |
8 | Покоління мережних мобільних технологій | 2 |
9 | Організація багатопоточних програм | 4 |
10 | Робота з базами даних в мобільних пристроях на базі платформи .NET Compact Framework | 4 |
11 | Компоненти Android-програми | 4 |
12 | Архітектура Android GUI | 4 |
13 | Підготовка до заліку по всьому матеріалу модуля | 10 |
Політика та контроль
Політика навчальної дисципліни (освітнього компонента)
Система вимог, які ставляться перед студентом:
відвідування лекційних та лабораторних занять є обов’язковою складовою вивчення матеріалу;
на лекції викладач користується власним презентаційним матеріалом; використовує гугл-диск для викладання матеріалу поточної лекції, додаткових ресурсів, лабораторних робіт та інше; викладач відкриває доступ до певної директорії гугл-диска для скидання електронних лабораторних звітів та відповідей на МКР;
на лекції заборонено відволікати викладача від викладання матеріалу, усі питання, уточнення та ін. студенти задають в кінці лекції у відведений для цього час;
лабораторні роботи захищаються у два етапи – перший етап: студенти виконують завдання на допуск до захисту лабораторної роботи; другий етап – захист лабораторної роботи. Бали за лабораторну роботу враховуються лише за наявності електронного звіту;
модульна контрольна робота пишеться на лекційних заняттях без застосування допоміжних засобів (мобільні телефони, планшети та ін.); результат пересилається у файлі до відповідної директорії гугл-диску;
заохочувальні бали виставляються за: активну участь на лекціях; участь у факультетських та інститутських олімпіадах з навчальних дисциплін, участь у конкурсах робіт, підготовка оглядів наукових праць; презентацій по одній із тем СРС дисципліни тощо. Кількість заохочуваних балів на більше 10.
Види контролю та рейтингова система оцінювання результатів навчання (РСО)
Рейтинг студента з дисципліни складається з балів, що він отримує за:
виконання та захист 6 лабораторних робіт;
виконання 2 модульних контрольних робіт (МКР).
Система рейтингових балів та критерії оцінювання
Лабораторні роботи:
«відмінно», повна відповідь на питання під час захисту (не менш ніж 90% потрібної інформації) та оформлений належним чином протокол до лабораторної роботи – 8 балів;
«добре», достатньо повна відповідь на питання під час захисту (не менш ніж 75% потрібної інформації) та оформлений належним чином протокол до лабораторної роботи – 6 балів;
«задовільно», неповна відповідь на питання під час захисту (не менш ніж 60% потрібної інформації), незначні помилки та оформлений належним чином протокол до лабораторної роботи – 4 бали;
«незадовільно», незадовільна відповідь та/або не оформлений належним чином протокол до лабораторної роботи – 0 балів.
Модульні контрольні роботи:
«відмінно», повна відповідь (не менш ніж 90% потрібної інформації) – 25 балів;
«добре», достатньо повна відповідь (не менш ніж 75% потрібної інформації), або повна відповідь з незначними помилками – 20 балів;
«задовільно», неповна відповідь (але не менш ніж 60% потрібної інформації) та незначні помилки – 16 балів;
«незадовільно», незадовільна відповідь (неправильний розв’язок задачі), потребує обов’язкового повторного написання в кінці семестру – 0 балів.
Заохочувальні бали
за активну роботу на лекції 1 бал.
Міжсесійна атестація
За результатами навчальної роботи за перші 7 тижнів максимально можлива кількість балів – 20 балів. На першій атестації (8-й тиждень) студент отримує «зараховано», якщо його поточний рейтинг не менший ніж 10 балів.
За результатами 13 тижнів навчання максимально можлива кількість балів – 32 бали. На другій атестації (14-й тиждень) студент отримує «зараховано», якщо його поточний рейтинг не менший ніж 16 балів.
Максимальна сума вагових балів контрольних заходів протягом семестру складає:
R=6*rлаб+2*rмкр=6*8+50=98.
Студенти, які наприкінці семестру мають рейтинг менше 60 балів, а також ті, хто хоче підвищити оцінку, виконують залікову контрольну роботу.
Контрольна робота складається з 4 питань. Кожне оцінюється 25 балами.
Сума балів за кожне з чотирьох питань ()переводиться до залікової оцінки згідно з таблицею :
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Залік:
Сума стартових балів і балів за модульну контрольну роботу переводиться до залікової оцінки згідно з таблицею:
Бали | Оцінка |
---|---|
95-100 | відмінно |
85-94 | дуже добре |
75-84 | добре |
65-74 | задовільно |
60-64 | достатньо |
Менше 60 | незадовільно |
Невиконання шести лабораторних робіт та виконання МКР на оцінку «незадовільно» | не допущено |
Додаткова інформація з дисципліни (освітнього компонента)
перелік теоретичних питань, які виносяться на семестровий контроль наведено в Додатку 1;
на початку семестру викладач аналізує існуючі курси по тематиці дисципліни та пропонує пройти відповідні безкоштовні курси студентам. Після отриманням студентом сертифікату проходження дистанційних чи онлайн курсів за відповідною тематикою, викладач закриває відповідну частину курсу (лабораторні чи лекції) за попередньою домовленістю з групою.
Робочу програму навчальної дисципліни (Силабус):
Складено професор, д.т.н., Корнієнко Богдан Ярославович
Ухвалено кафедрою ІСТ(протокол № 1 від 30.08.2021 р.)
Погоджено Методичною комісією факультету[1] (протокол № 1 від 30.08.2021 р.)
Додаток 1
Перелік теоретичних питань на залік
Дайте визначення мобільних обчислювальних пристроїв.
Яка архітектура класів, що забезпечують з'єднання мобільних пристроїв з мережею?
Навіть типи та опишіть особливості меню Android-програми.
У чому переваги використання мобільних пристроїв?
За допомогою якого механізму реалізується робота з даними?
Назвіть основні віджети Android.
Які типи мобільних пристроїв існують?
Як називається основний профіль для мобільних пристроїв? Які його властивості?
Які операційні системи використовуються в мобільних пристроях?
Опишіть структуру Android-програми.
Які типи пам'яті застосовуються в мобільних пристроях? У чому полягають їхні переваги і недоліки?
Яка конфігурація була розроблена для мобільних пристроїв з невеликою пам'яттю?
Вкажіть типи компонентів для Android-програм.
Які інструменти необхідно встановити, щоб проектувати мобільні програми для платформи Android?
Які об'єкти можуть використовуватися для розробки користувальницького інтерфейсу?
Що таке емулятор мобільної програми, чому і навіщо він використовується?
Що таке керуючий файл в програмі Android?
Дайте визначення мобільних обчислювальних пристроїв.
З яких компонентів складається Android-програма?
Опишіть архітектуру мобільних прикладних програм.
Яка архітектура класів, що забезпечують з'єднання мобільних пристроїв з мережею?
У чому переваги використання мобільних пристроїв?
Назвіть основні особливості віртуального пристрою для Android (AVD).
За допомогою якого механізму реалізується робота з даними?
Які типи мобільних пристроїв існують?
Опишіть архітектуру платформи Android.
Як називається основний профіль для мобільних пристроїв? Які його властивості?
Які операційні системи використовуються в мобільних пристроях?
Назвіть покоління мережних мобільних технологій.
Які типи пам'яті застосовуються в мобільних пристроях? У чому полягають їхні переваги і недоліки?
Назвіть особливості організації оперативної пам`яті мобільних пристроїв.
Здійсніть класифікацію мобільних пристроїв.
Навіть типи та опишіть особливості меню Android-програми.
Назвіть основні технічні характеристики мобільних пристроїв.
Назвіть основні віджети Android.
Які операційні системи використовуються в мобільних пристроях?
Які особливості конструкції мобільних пристроїв?
Опишіть архітектуру Android GUI.
За допомогою якого механізму реалізується робота з даними?
Назвіть основні типи процесорів мобільних пристроїв.
Опишіть структуру Android-програми.
Які типи пам'яті застосовуються в мобільних пристроях? У чому полягають їхні переваги і недоліки?
Назвіть особливості організації оперативної пам`яті мобільних пристроїв.
Вкажіть типи компонентів для Android-програм.
Які об'єкти можуть використовуватися для розробки користувальницького інтерфейсу?
Назвіть покоління мережних мобільних технологій.
Назвіть основні особливості віртуального пристрою для Android (AVD).
У чому переваги використання мобільних пристроїв?
Назвіть основні характеристики технології передачі даних IEEE 802.11.
Опишіть архітектуру мобільних прикладних програм.
Що таке емулятор мобільної програми, чому і навіщо він використовується?
Опишіть архітектуру платформи Android.
Вкажіть основні переваги та недоліки Java 2 Micro Edition.
Які типи мобільних пристроїв існують?
[1] Методичною радою університету – для загальноуніверситетських дисциплін.