Module also offered within study programmes:
General information:
Name:
Zaawansowane technologie internetowe
Course of study:
2016/2017
Code:
JIS-2-104-SW-s
Faculty of:
Physics and Applied Computer Science
Study level:
Second-cycle studies
Specialty:
Systemy wbudowane i rekonfigurowalne
Field of study:
Applied Computer Science
Semester:
1
Profile of education:
Academic (A)
Lecture language:
Polish
Form and type of study:
Full-time studies
Responsible teacher:
dr inż. Dydejczyk Antoni (dydejcz@agh.edu.pl)
Academic teachers:
dr inż. Dydejczyk Antoni (dydejcz@agh.edu.pl)
dr inż. Gronek Piotr (gronek@agh.edu.pl)
Module summary

Tworzenie aplikacji zgodnych z modelem MVC w technologii JEE. Zapoznanie z funkcjonalnością komponentów JSF, EJB i JPA. Tworzenie aplikacji JEE w chmurze obliczeniowej z wykorzystaniem stylu RESTful.

Description of learning outcomes for module
MLO code Student after module completion has the knowledge/ knows how to/is able to Connections with FLO Method of learning outcomes verification (form of completion)
Social competence
M_K001 Student rozumie potrzebę ciągłego dokształcania się oraz ma świadomość odpowiedzialności za pracę własną oraz w zespole. IS2A_K05, IS2A_K02, IS2A_K01, IS2A_K07, IS2A_K04 Execution of a project
Skills
M_U001 Potrafi dobrać odpowiednią platformę programistyczną i w oparciu o nią zaimplementować aplikację Internetową. IS2A_U12 Execution of laboratory classes,
Execution of a project
M_U002 Zna środowiska programistyczne i umie wdrożyć wykonane przez siebie aplikacje WWW w przedsiębiorstwie. IS2A_U13, IS2A_U14 Execution of laboratory classes,
Execution of a project
Knowledge
M_W001 Wie jak wykorzystać platformę programistyczną do szybkiego prototypowania. IS2A_W14 Execution of laboratory classes,
Execution of a project,
Participation in a discussion,
Activity during classes
M_W002 Student dysponuje aktualną wiedzą na temat tworzenia serwisów WWW realizowanych w strukturach wielowarstwowych. IS2A_W15, IS2A_W13 Execution of laboratory classes,
Execution of a project,
Participation in a discussion,
Activity during classes
M_W003 Zna różne platformy programistyczne i różnice pomiędzy nimi. IS2A_W12 Execution of laboratory classes,
Execution of a project,
Participation in a discussion,
Activity during classes
FLO matrix in relation to forms of classes
MLO code Student after module completion has the knowledge/ knows how to/is able to Form of classes
Lecture
Audit. classes
Lab. classes
Project classes
Conv. seminar
Seminar classes
Pract. classes
Zaj. terenowe
Zaj. warsztatowe
Others
E-learning
Social competence
M_K001 Student rozumie potrzebę ciągłego dokształcania się oraz ma świadomość odpowiedzialności za pracę własną oraz w zespole. - - - + - - - - - - -
Skills
M_U001 Potrafi dobrać odpowiednią platformę programistyczną i w oparciu o nią zaimplementować aplikację Internetową. - - + + - - - - - - -
M_U002 Zna środowiska programistyczne i umie wdrożyć wykonane przez siebie aplikacje WWW w przedsiębiorstwie. - - + + - - - - - - -
Knowledge
M_W001 Wie jak wykorzystać platformę programistyczną do szybkiego prototypowania. - - + + - - - - - - -
M_W002 Student dysponuje aktualną wiedzą na temat tworzenia serwisów WWW realizowanych w strukturach wielowarstwowych. + - + + - - - - - - -
M_W003 Zna różne platformy programistyczne i różnice pomiędzy nimi. + - - + - - - - - - -
Module content
Lectures:

  1. Porównanie technologii JEE i .Net z aplikacjami WWW tworzonymi w języku PHP czy perl.
  2. Serwis WWW – język Java w serwisie WWW.
  3. Szablony JavaServer Faces.
  4. Obiektowo-relacyjne odwzorowanie w JEE – JPA.
  5. Logika biznesowa w aplikacji WWW – Enterprise JavaBeans.
  6. Szkielety do tworzenia aplikacji w JEE – Spring.
  7. Technologia WebService i RESTful w JEE

Laboratory classes:
  1. Projektowanie prostego serwletu

    Efekty kształcenia:

    • student potrafi serwet łączący się z relacyjną bazą danych poprzez interfejs JDBC,
    • student potrafi napisać skrypt JSP korzystający z opracowanego serwletu i biblioteki JSTL.

  2. Projektowanie deklaratywnego uwierzytelnienia w serwisie WWW

    Efekty kształcenia:

    • student potrafi opracować uwierzytelnienie do serwisu WWW w oparciu o mechanizmy dostępne na serwerze aplikacyjnym JEE,
    • student potrafi wykorzystać technologię JNDI do połączenia z relacyjną bazą danych.

  3. Tworzenie serwisu WWW z wykorzystaniem technologii JSF

    Efekty kształcenia:

    • student umie poprawnie opracować stronę wykorzystując technologię szablonów z wykorzystaniem języka JSF.

  4. Dostęp do bazy danych z wykorzystaniem technologii ORM

    Efekty kształcenia:

    • student potrafi wykorzystać technologię ORM (dowolna implementacja interfejsu JPA) do opracowania warstwy dostępu do relacyjnej bazy danych.

  5. Warstwa logiczna aplikacji WWW z wykorzystaniem EJB

    Efekty kształcenia:

    • student potrafi proste komponenty EJB realizujące logikę biznesową aplikacji.

  6. Technologia MVC

    Efekty kształcenia:

    • student potrafi opracować prosty schemat aplikacji wykorzystując Framework Spring.

Project classes:

W trakcie semestru student realizuje jeden projekt. Temat projektu wybiera student po konsultacji z prowadzącym laboratorium. W ramach projektu należy stworzyć działającą aplikacje w serwisie WWW.
Efekty kształcenia:

  • student potrafi opracować projekt serwisu WWW, zdefiniować założenia i przeprowadzić analizę wymagań użytkownika, zaprojektować podstawową funkcjonalność realizowaną przez serwis;
  • student potrafi opracować wielowarstwową strukturę serwisu WWW;
  • student potrafi wykorzystać technologię ORM do realizacji serwisu WWW;
  • student potrafi wykorzystać prototypowanie do realizacji serwisu WWW.

Student workload (ECTS credits balance)
Student activity form Student workload
Summary student workload 140 h
Module ECTS credits 5 ECTS
Participation in lectures 15 h
Realization of independently performed tasks 25 h
Participation in laboratory classes 15 h
Preparation for classes 15 h
Participation in project classes 30 h
Completion of a project 30 h
Contact hours 10 h
Additional information
Method of calculating the final grade:

W trakcie pięciu zajęć laboratoryjnych (5 × 3h) studenci zapoznają się z niektórymi aspektami tworzenia aplikacji w środowisku JEE na podstawie dostarczonych przykładów.
W ramach zajęć projektowych (9 × 3h) należy zrealizować jednoosobowo aplikację zaliczeniową wykorzystującą technologię JEE oraz w zespołach dwuosobowych zaprezentować w trakcie seminarium wybraną technologię. Omówienie wybranej technologii w trakcie seminarium składa się z dwóch części – krótkiej ale wyczerpującej temat prezentacji oraz przedstawienia przykładowej aplikacji w omawianej technologii wraz z odpowiednią instrukcją pozwalającą uruchomić ją uczestnikom seminarium. Oceniana będzie prezentacja, przykładowa aplikacja oraz jakość instrukcji umożliwiającej uruchomienie przykładu przez uczestników seminarium. Projekt oceniany będzie pod kątem wdrożonej funkcjonalności, uruchomienia w chmurze obliczeniowej i poprawności dokumentacji.

Zaliczenie z przedmiotu składa się z oceny obliczanej na podstawie zebranych punktów: punktów za aktywny udział części laboratoryjnej ( 35% oceny końcowej ), punktów za prezentację technologii w ramach seminarium ( 20% oceny końcowej ) i punktów za realizację projektu ( 45% oceny końcowej ).
Ocena końcowa z przedmiotu jest obliczana zgodnie z Regulaminem Studiów AGH po przeliczeniu punków na ocenę końcową.

Prerequisites and additional requirements:

Student posiada wiedzę z zakresu programowania obiektowego, relacyjnych baz danych, inżynierii oprogramowania oraz podstaw technologii internetowych.

Recommended literature and teaching resources:

G.Warin, Spring MVC 4 : projektowanie zaawansowanych aplikacji WWW, Tłumaczenie Helion 2016
Craig Walls, Spring w akcji, Wydanie III, Manning Publications Co., Tłumaczenie Helion 2013
E.Jendrock, I.Evans, D.Gollapudi, K.Haase, C.Srivathsa, Java EE 6 Zaawansowany przewodnik, Wydanie IV, Perason Education Inc., Tłumaczenie Helion 2013
E.Jendrock, I.Evans, D.Gollapudi, K.Haase, C.Srivathsa, Java EE 6 Przewodnik, Wydanie IV, Perason Education Inc., Tłumaczenie Helion 2012
David Geary, Cay S. Horstmann, Core JavaServer Faces. Wydanie III, Perason Education Inc., Tłumaczenie Helion 2011
Cay S. Horstmann, Gary Cornell, Java. Techniki zaawansowane. Wydanie VIII, Tłumaczenie Helion 2009

Scientific publications of module course instructors related to the topic of the module:

Additional scientific publications not specified

Additional information:

Nieobecność na zajęciach wymaga od studenta samodzielnego opanowania przerobionego na zajęciach materiału i jego zaliczenia w formia sprawozdania w wyznaczonym przez prowadzącego terminie.
Istnieje możliwość odrobienia nieobecności w innej grupie laboratoryjnej pod warunkiem dostępności miejsc na laboratorium i zgody prowadzącego laboratorium.
Student, który bez usprawiedliwienia opuścił więcej niż trzy zajęcia może zostać pozbawiony przez prowadzącego możliwości wyrównania zaległości.