Przedmiot: Programowanie aplikacji mobilnych Rok: 4 Semestr: 7
Transkrypt
Przedmiot: Programowanie aplikacji mobilnych Rok: 4 Semestr: 7
Biuro Projektu: ul. Nadbystrzycka 36A 20-618 Lublin tel. (+48 81) 538 47 21/22 Przedmiot: Programowanie aplikacji mobilnych Rok: 4 Rodzaj zajęć i liczba godzin: fax (+48 81) 538 45 80 [email protected] www.kwalifikacje.pollub.pl Semestr: 7 Studia stacjonarne Studia niestacjonarne 30 0 0 0 14 0 0 0 Wykład Ćwiczenia Laboratorium Projekt Liczba punktów ECTS: 1 Cel przedmiotu C1 C2 C3 C4 C5 Przedstawienie studentom najpopularniejszych platform mobilnych ich systemów operacyjnych i języków programowania na te platformy oraz trendów ich rozwoju Zapoznanie studentów z zabezpieczeniami systemów operacyjnych urządzeń mobilnych Przedstawienie studentom metod programowania i zabezpieczania działania aplikacji mobilnych Zapoznanie studentów z metodami ataków i zabezpieczeń transmisji sieciowej urządzeń mobilnych Zapoznanie studentów z metodami bezpiecznego składowania danych Wymagania wstępne w zakresie wiedzy, umiejętności i innych kompetencji 1 2 3 4 5 Wiedza z zakresu programowania obiektowego Podstawowa wiedza na temat programowania w języku Java Podstawy wiedzy o bazach danych i języku SQL Znajomość podstaw działania sieci komputerowych Umiejętność posługiwania się narzędziami IDE Efekty kształcenia W zakresie wiedzy: EK Znajomość sytuacji i trendów na rynku urządzeń mobilnych ich systemów operacyjnych i wspieranych 1 języków programowania EK2 Podstawowa wiedza z zakresu mechanizmów bezpieczeństwa mobilnych systemów operacyjnych Podstawowa wiedza dotycząca zabezpieczania aplikacji mobilnych i danych przechowywanych na EK3 urządzeniu mobilnym EK4 Podstawowa znajomość metod zabezpieczania komunikacji sieciowej aplikacji mobilnych W zakresie umiejętności: EK Umiejętność stworzenia projektu i prostej aplikacji w narzędziach IDE dla systemów Android i iOS 5 uwzględniającej mechanizmy bezpieczeństwa systemu W zakresie kompetencji społecznych EK Świadomość potrzeby samokształcenia i rozwijania wiedzy w zakresie systemów mobilnych i 6 mechanizmów ich bezpieczeństwa Treści programowe przedmiotu Forma zajęć – wykłady Treści programowe W1 Wstęp. Przegląd rynku platform mobilnych, rodzajów urządzeń, systemów operacyjnych i języków Liczba godzin Studia stacjonarne Liczba godzin Studia niestacjonarne 2 1 2 1 programowania W2 Charakterystyka i bezpieczeństwo systemu Android Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego Biuro Projektu: ul. Nadbystrzycka 36A 20-618 Lublin tel. (+48 81) 538 47 21/22 W3 W4 W5 W6 W7 W8 W9 W10 W11 W12 W13 W14 W15 fax (+48 81) 538 45 80 Podstawy programowania dla systemu Google Android – Android SDK, Android NDK, Eclipse ADT, Java, XML Charakterystyka i bezpieczeństwo systemu iOS Podstawy programowania dla systemu Apple iOS – iPhone SDK, Xcode IDE, iOS Developer Program, Objective-C Zabezpieczenia przed niepowołanym dostępem do urządzenia Przechowywanie i zabezpieczenia danych użytkownika Bezpieczeństwo aplikacji mobilnych, stosowanie systemu uprawnień aplikacji i podpisu elektronicznego System plików, dostawcy treści i tworzenie oprogramowania do bezpiecznego składowania danych Programowanie zabezpieczeń kryptograficznych danych na urządzeniu mobilnym Ataki na komunikację systemów mobilnych Programowanie bezpiecznej komunikacji sieciowej Malware – zagrożenia ze strony niepożądanego oprogramowania, sposoby zabezpieczeń Mechanizmy bezpieczeństwa i zasady dystrybucji oprogramowania: Google Play, App Store Kolokwium Suma godzin: [email protected] www.kwalifikacje.pollub.pl 2 1 2 1 2 1 2 0,5 2 0,5 1 2 2 1 2 1 2 2 1 1 1 2 2 1 2 1 14 30 Narzędzia dydaktyczne 1 2 Prezentacje multimedialne w postaci slajdów zawierających treści wykładowe Przykładowe aplikacje uruchamiane w zintegrowanych środowiskach programistycznych i na emulatorach urządzeń mobilnych Sposoby oceny F1 P1 Ocena formująca Krótki sprawdzian pisemny z omówieniem wyników Ocena podsumowująca Kolokwium pisemne w formie testu z pytaniami zamkniętymi i otwartymi (2 godz. studia stacjonarne, 1 godz. niestacjonarne) Obciążenie pracą studenta Forma aktywności Godziny kontaktowe z wykładowcą, realizowane w formie zajęć dydaktycznych – łączna liczba godzin w semestrze Godziny kontaktowe z wykładowcą, realizowane w formie np. konsultacji w odniesieniu – łączna liczba godzin w semestrze Przygotowanie do zaliczenia Suma Sumaryczna liczba punktów ECTS dla przedmiotu Średnia liczba godzin na zrealizowanie aktywności na studiach stacjonarnych Średnia liczba godzin na zrealizowanie aktywności na studiach niestacjonarnych 28 13 2 1 5 35 11 25 1 1 Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego Biuro Projektu: ul. Nadbystrzycka 36A 20-618 Lublin tel. (+48 81) 538 47 21/22 [email protected] www.kwalifikacje.pollub.pl fax (+48 81) 538 45 80 Literatura podstawowa i uzupełniająca 1 2 3 4 5 6 7 8 Steele J.: The Android Developer's Cookbook: Building Applications with the Android SDK., AddisonWesley Professional, 2010 Hashimi S., Komatineni S., MacLean D.: Pro Android 3, Apress, 2011. Baxter-Reynolds M.: Multimobile Development: Building Applications for the iPhone and Android Platforms., Apress, 2010 Eckel B.: Thinking in Java. Edycja polska. Wydanie IV., Helion, Gliwice, 2006 IOS Security, October 2012, <http://images.apple.com/iphone/business/docs/iOS_Security_Oct12.pdf> Enck W., Ongtang M, McDaniel P.: Understanding Android Security, IEEE Security & Privacy, 2009 Android security overview, <https://source.android.com/tech/security/#androidapplication-security> Best Practices for Security & Privacy, <http://developer.android.com/training/best-security.html> Macierz efektów kształcenia Efekt kształcenia Odniesienie danego efektu kształcenia do efektów zdefiniowanych dla całego programu (PEK) Cele przedmiotu EK 2 I1A_W04,I1A_W11, I1A_W15 I1A_W15 EK 3 I1A_W08, I1A_W15 C3, C5 EK 4 I1A_W06, I1A_W15 C3, C4 EK 5 I1A_U21 C3, C5 EK 6 I1A_K01 C1 EK 1 C1 C2 Treści programowe Narzędzia dydaktyczne Sposób oceny 1 F1, P1 1,2 F1, P1 1,2 F1, P1 1,2 F1, P1 2 F1, P1 1 F1, P1 W1, W2, W3, W4, W5 W2, W4, W6, W7, W13 W6, W7, W8, W9, W10 W11, W12 W3, W5, W8, W9, W10,W12, W14 W1, W2, W3, W4, W5, W13 Formy oceny – szczegóły Na ocenę 2 (ndst) EK 1 Nie zna sytuacji na rynku systemów mobilnych. Nie potrafi wymienić popularnych platform i języków programowania. Nie zna trendów rozwoju rynku urządzeń mobilnych EK 2 Nie zna typów zagrożeń bezpieczeństwa systemów mobilnych, ani mechanizmów zapobiegających zagrożeniom Na ocenę 3 (dst) Potrafi wymienić systemy operacyjne i języki programowania platform mobilnych Potrafi wymienić podstawowe typy zagrożeń systemów mobilnych Na ocenę 4 (db) Potrafi wymienić i opisać cechy języków programowania w kontekście systemów operacyjnych na które tworzy się w nich oprogramowanie Potrafi scharakteryzować zagrożenia systemów mobilnych i wskazać mechanizmy bezpieczeństwa systemu Na ocenę 5 (bdb) Potrafi dogłębnie scharakteryzować i ocenić popularność różnych platform mobilnych. Potrafi wskazać trendy rozwoju rynku urządzeń mobilnych Potrafi wyczerpująco scharakteryzować zagrożenia systemów mobilnych, dopasować odpowiednie zabezpieczenia do zagrożenia i opisać różnice zabezpieczeń Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego Biuro Projektu: ul. Nadbystrzycka 36A 20-618 Lublin tel. (+48 81) 538 47 21/22 EK 3 Nie zna zagrożeń, ani metod zapobiegania ujawnieniu lub utracie danych przechowywanych na urządzeniach mobilnych Zna metody zabezpieczeń dostępu do urządzenia mobilnego, wie o uprawnieniach aplikacji, zna podstawy zabezpieczeń danych użytkownika Zna i potrafi scharakteryzować metody zabezpieczeń aplikacji i systemu plików, potrafi scharakteryzować uprawnienia aplikacji, zna pojęcie dostawcy treści Nie wie nic na temat komunikacji sieciowej urządzeń mobilnych, ani sposobów zapewniania bezpieczeństwa transmisji Zna podstawowe metody i protokoły komunikacyjne stosowane w połączeniach sieciowych i radiowych urządzeń mobilnych Potrafi scharakteryzować metody komunikacji urządzeń mobilnych i stosowane protokoły, zna możliwości ich zabezpieczania Nie wie jak tworzy się projekt i buduje aplikacje w narzędziach IDE dla systemów mobilnych Zna i potrafi wymienić zastosowania narzędzi do tworzenia aplikacji mobilnych dla systemów mobilnych Zna narzędzia IDE, wie jak stworzyć w nich projekt programistyczny, z czego składa się projekt i jak skompilować aplikację. Nie zna i nie wykazuje potrzeby poznania trendów rozwoju rynku aplikacji mobilnych, metod programistycznych i bezpieczeństwa aplikacji mobilnych Posiada podstawową wiedzę dotyczącą systemów mobilnych oraz ich bezpieczeństwa. Nie widzi potrzeby rozwoju i samokształcenia. Interesuje się przedmiotem i rozszerza wiedzę uzyskaną na zajęciach o wiadomości dostępne w literaturze przedmiotu. EK 4 EK 5 EK 6 fax (+48 81) 538 45 80 [email protected] www.kwalifikacje.pollub.pl różnych systemów operacyjnych urządzeń mobilnych Potrafi szczegółowo opisać metody zabezpieczeń aplikacji i danych przechowywanych na urządzeniach mobilnych w systemach plików i bazach danych, potrafi scharakteryzować metody wykonywania lokalnych i zdalnych kopii zapasowych Potrafi dogłębnie opisać metody komunikacji urządzeń mobilnych w sieci Internet, GSM i poprzez połączenia radiowe. Potrafi scharakteryzować ataki na taką transmisję oraz metody zapobiegania atakom, zna i potrafi scharakteryzować metody szyfrowania przesyłanych danych danych Potrafi szczegółowo scharakteryzować części składowe aplikacji mobilnych dla różnych systemów operacyjnych, opisać w kolejności kroki wykonywania aplikacji z uwzględnieniem mechanizmów bezpieczeństwa systemu i modelu aplikacji Wykazuje wyraźnie potrzebę samokształcenia. Wyszukuje samodzielnie informacje rozszerzające treści wykładowe. Zadaje pytania i podejmuje dyskusje na tematy poruszane na zajęciach. Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego Biuro Projektu: ul. Nadbystrzycka 36A 20-618 Lublin tel. (+48 81) 538 47 21/22 Autor programu: Adres e-mail: Jednostka organizacyjna: fax (+48 81) 538 45 80 [email protected] www.kwalifikacje.pollub.pl Dr inż. Piotr Kopniak [email protected] Instytut Informatyki, WeiI, Politechnika Lubelska Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego