zofia.kruczkiewicz@pwr.edu.pl    
Politechnika Wrocławska 
Katedra Informatyki Technicznej (K-30) 
Zespół Inżynierii Oprogramowania i
Inteligencji Obliczeniowej
 
Aktualności  Dydaktyka  Kontakt 
 
   
  strona główna aktualności
 
  menu
  aktualności
  dydaktyka
  kontakt
 

  ostatnia aktualizacja

10.2023 - Inżynieria oprogramowania W04ITE-SI0011G
10.2022 - Praca dyplomowa inżynierska
 

 
  ogłoszenia
Terminy konsultacji:
  1. Czwartek: godz:15.00 - 17.00, sala 325C3
  2. Sobota: godz:16.15 - 18.15, sala 325C3 - tylko: 2017-03-04, 2017-03-11, 2017-03-25, 2017-04-01, 2017-04-08 2017-04-22, 2017-05-13, 2017-05-20, 2017-05-27, 2017-06-10

  materiały do zajęć
    Narzędzia do zainstalowania:
  1. Java SE Development Kit 8u101. Kolejność instalacji: jako pierwsza instalacja Java - wersja Windows x64.
  2. Środowisko NetBeans 8.1 - wersja ALL. Kolejność instalacji: jako druga instalacja NetBeans.
  3. Visual Paradigm for UML 13.2 Community Editionw sali L2.3 C16
    Materiały pomocnicze: UML, JavaEE, wspieranie pracy zespołu
  1. Tutorial Java EE 6.0
  2. Tutorial Java EE 7.0
  3. Materiały pomocnicze: Visual Paradigm.
    1. Pomoc: Drawing use case diagrams.
    2. Pomoc: Use case diagram notations guide.
    3. Pomoc: Documenting use case details.
    4. Pomoc: Creating requirement diagram.
    5. Pomoc: Drawing class diagrams.
    6. Pomoc: Drawing sequence diagrams.
    7. Pomoc: Drawing activity diagrams.
    8. Pomoc: Drawing state machine diagrams.
    9. Pomoc: Generate/Update UML classes from Java code.
    10. Pomoc: Instant reverse Java sources to sequence diagram.
    11. Pomoc: Generate/Update Java code.
  4. Materiały pomocnicze 1: Metodyka typu Agile określająca pracę zespołu: Scrum
    1. The Scrum Guide.
  5. Materiały pomocnicze 2: Środowisko wspierania pracy zespołu
    1. Tutorial: Learn Git with Bitbucket Cloud.
    2. Basic Git commands.
    3. Bitbucket Cloud Documentation Home.
    4. Tutorial: Learn SourceTree with Bitbucket Cloud.

Materiały pomocnicze:
  1. Podstawowe informacje o projektach:
    1. Harmonogramy - 2017
        Projekt: Zapisy na zajęcia
      1. Opis projektu i harmonogram 1-go sprintu "Zapisy na zajęcia".
      2. Opis prac i harmonogram 2-go sprintu "Zapisy na zajęcia".
        Projekt: Biuro turystyczne
      1. Opis projektu i harmonogram 1-go sprintu projektu "Biuro turystyczne".
      2. Opis prac i harmonogram 2-go sprintu projektu "Biuro turystyczne".
        Diagram klas - sprint 2.
    2. Ogólny schemat rozwoju modelu projektu podczas pierwszego sprintu z równolegle rozwijanymi przypadkami użycia. Na podstawie materiału prezentowanego podczas pierwszych zajęć.
    3. Ogólny schemat rozwoju modelu projektu podczas trzech sprintów z równolegle rozwijanymi przypadkami użycia. Na podstawie materiału prezentowanego podczas pierwszych zajęć.
  2. Koncepcja, projekt i implementacja wielowarstwowego systemu informatycznego.
  3. Pierwszy przykład: Przykład dwóch iteracji tworzenia warstwy biznesowej systemu katalogu książek - zastosowanie programu Visual Paradigm do projektowania i platformy Java SE do programowania:
    1. Wprowadzenie do UML. Modyfikacja w dniu 5.03.2016
    2. Wykonanie 1 iteracji wybranego projektu - część 1.
    3. Wykonanie 2 iteracji wybranego projektu - cześć 2.
    4. Projekt Projekt_lab1.vpp, opisany w dwóch poprzednich iteracjach.
    5. Program zaprojektowany podczas 1 i 2-ej iteracji.
  4. Drugi przykład: Tworzenie modelu projektowego oraz implementacji systemu tworzenia rachunków w sposób iteracyjno-rozwojowy:
    1. Tworzenie modelu projektowego systemu informatycznego. Iteracyjno - rozwojowy proces tworzenia projektowego modelu warstwy biznesowej systemu sporządzania rachunków.
    2. Przykład programu reprezentującego warstwę biznesowej systemu sporządzania rachunków.
  5. Tworzenie aplikacji dotyczącej systemu katalogu książek działającej na platformie Java EE 7:
    1. Tworzenie interfejsu graficznego aplikacji na platformie SE:
      1. Przykład tworzenia prostego interfejsu graficznego do wykonywanej aplikacji w ramach p. 3.4:
        1. Krótki opis programu.
        2. Program po 2-iteracji z dodanym interfejsem graficznym użytkownika, działający na platformie Java SE. Przykład programu.
        3. Java SE 7 Tutorial 2011-07-20

    2. Kolejne przykłady zostaną zmodyfikowane

    3. Przykład dodania do programu z interfejsem graficznym użytkownika (p. 5.1.1), działającego na platformie Java SE - dostępu do bazy danych:
      Materiał dodatkowy
      1. za pomocą wzorca DAO: Przykład program .
      2. za pomocą wzorca Domain Store (technologia ORM): Przykład programu (JPA 2.0).
      3. Podobne zmiany można wprowadzić do programu z p.5.1.2.
    4. Przekształcenie aplikacji typu Java SE z (załącznik z punktu 5.1.1) do aplikacji Java EE 6.
      Materiał główny
      Przykład przekształcenia programu SE składającego się z GUI (5.1.1, pakiet Warstwa_klienta) oraz warstwy biznesowej (p.5.1.1, pakiet Warstwa_biznesowa) do programu EE, obsługującego wielu użytkowników w sieci, korzystających z aplikacji warstwy klienta (GUI) uruchomionych na maszynach użytkowników, wywołujących usługi biznesowe z warstwy biznesowej działającej na komputerze aplikacji pod nadzorem serwera aplikacji.
    5. Podobne zmiany można wprowadzić do programu z p.5.1.2.
    6. Przykład 1: Przekształcenie aplikacji typu Java SE z (wg punktu 5.1.1) do aplikacji Java EE 7, z dostępem do bazy danych za pomocą ORM.
      Materiał główny. Dodano wyjaśnienie na stronie 15, dotyczące nagłówka metody uaktualnij dane w dniu 2.05.16.
      Program SE wykorzystany w instrukcji
    7. Przykład 2: Przekształcenie aplikacji typu Java SE z (wg punktu 5.1.2) do aplikacji Java EE 7, z dostępem do bazy danych za pomocą ORM oraz dodanie warstwy prezentacji i klienta przeglądarki.
      Materiał główny
    8. Przykład przekształcenia programu do standardu EE, wg materiałów z punktu 5.2.1 z dostępem DAO do bazy danych. Podobnie można przekształcić aplikację z p. 5.2.2 z dostępem typu ORM do bazy danych.
      Materiał dodatkowy
    9. Przykład dodania warstwy prezentacji i klienta przeglądarki do programu EE wg materiałów z p. 5.4 (z klientem aplikacji EE i z dostępem DAO do bazy danych): Przykład programu.
      Podobnie można przekształcić aplikację z poprzedniego punktu z dostępem typu ORM do bazy danych.
      Materiał dodatkowy
    10. Przykład tworzenia aplikacji internetowej EE na podstawie bazy danych.
      Materiał dodatkowy
  6. Pomiar metryk oraz testy jednostkowe i akceptacyjne.
    1. Pomiar metryk - narzędze do pomiaru metryk: Chidamber and Kemerer Java Metrics (ckjm).
    2. Testowanie programów w środowisku NetBeans - zastosowanie pakietu JUNIT.
    3. Wykonanie testów akceptacyjnych aplikacji internetowych za pomocą narzędzia Selenium IDE 2.0.0.
    4. Materiał dodatkowy:
    5. Metryki oprogramowania, jakość oprogramowania - definicje.
    6. Przykłady pomiaru metryk.
  7. Dodanie uwierzytelniania i autoryzacji.
    1. Mechanizmy bezpieczeństwa w aplikacjach EJB Java EE (Building Secure Enterprise Beans in Java EE).
    2. Mechanizmy bezpieczeństwa w aplikacjach internetowych.(Securing a Web Application in NetBeans IDE - Expected duration: 40 minutes)
    3. Materiał dodatkowy:
    4. Wprowadzenie do mechanizmów bezpieczeństwa stosowanych w Java EE 5.0.
  8. Materiał uzupełniający: Programowanie aplikacji internetowych na platformie Java EE 6 z wykorzystaniem technologii JavaServer Faces 2.1 (materiał jest w rozwoju):
      Wykłady:
    1. Wstęp do programowania komponentowego w Javie EE 6 (Ogólny przegląd technologii Java EE 6.) - część 1.
    2. Wstęp do programowania komponentowego w Javie EE 6 (Przykłady aplikacji Java Server Faces.) - część 2.
      Wykład jest oparty na materiałach umieszczonych na stronach:
      Java EE & Java Web Learning Trail.
      Tutorial Java EE 6
    3. Przegląd znaczników używanych do definiowania stron w technologii JavaServer Faces 2.1 - część pierwsza.
    4. Przegląd znaczników używanych do definiowania stron w technologii JavaServer Faces 2.1 - część druga. Konwertery.
      Laboratoria:
    1. Zastosowanie technologii JavaServer Faces oraz ziarna EJB do obsługi prostego formularza, wstawienia połączeń między stronami, walidacji danych oraz przechowywania i przesyłania danych.
    2. Zastosowanie technologii JavaServer Faces oraz ziarna EJB do obsługi formularzy zbudowanych na szablonie, wstawienia połączeń między stronami, walidacji danych oraz przechowywania i przesyłania zbioru danych.
      jsfcrud.css
    3. Zastosowanie technologii JavaServer Faces oraz ziarna EJB do obsługi formularzy - zastosowanie obiektu transferowego i konwerterów.
    4. Zastosowanie komponentu h:selectOneMenu, stronicowanie komponentu h:dataTable, wieloużywalność formularzy, zastosowanie technologii ORM do operacji bazodanowych.


  literatura
literatura podstawowa
  1. Grady Booch, James Rumbaugh, Ivar Jacobson: UML przewodnik użytkownika, Seria: Inżynieria oprogramowania, Warszawa : WNT, 2002.
  2. Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, Wzorce projektowe. Elementy oprogramowania obiektowego wielokrotnego użytku. Seria: Inżynieria oprogramowania, Warszawa, WNT, 2008.
  3. Shalloway A.,Trott James R.,Projektowanie zorientowane obiektowo. Wzorce projektowe. Gliwice, Helion, 2005
  4. Alur D., Crupi J.,Malks D., Core J2EE. Wzorce projektowe. Gliwice, Helion, 2004
  5. J. Nilsson: Applying Domain-Driven Design and Patterns,With Examples in C# and .NET, Addison-Wesley Professional, 2006
  6. Martin Robert C., Martin Micah, Agile, Programowanie zwinne. Zasady, wzorce i praktyki zwinnego wytwarzania oprogramowania w C#, Gliwice, Helion, 2008.
literatura uzupełniająca
  1. Robert J. Muller: Bazy danych, język UML w modelowaniu danych, Warszawa, Mikom, 2000
  2. Paul Beynon-Davies: Inżynieria systemów informacyjnych, Warszawa, WNT, 2004
  3. James Martin, James J.Odell: Podstawy metod obiektowych, Warszawa, WNT, 1997.
  4. Janusz Górski, Inżynieria oprogramowania w projekcje programistycznym, Warszawa, Mikom, 2000.
  5. Martin Fowler, Kendall Scott, UML w kropelce, wersja 2.0, Warszawa, Oficyna Wydawnicza LTP, 2005