Module also offered within study programmes:
General information:
Name:
Management of Informatics System
Course of study:
2019/2020
Code:
AMAT-2-302-MZ-s
Faculty of:
Applied Mathematics
Study level:
Second-cycle studies
Specialty:
Mathematics in Management
Field of study:
Mathematics
Semester:
3
Profile of education:
Academic (A)
Lecture language:
Polish
Form and type of study:
Full-time studies
Course homepage:
 
Responsible teacher:
dr Mielczarek Dominik (dmielcza@wms.mat.agh.edu.pl)
Module summary

Element inżynierii oprogramowania. Systemy informatyczne.

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: is able to
M_K001 Student identyfikuje kontekst społeczny zaplanowanego systemu, w jaki sposób wykonana praca wpłynie na pracę i przyzwyczajenia innych ludzi. MAT2A_K03 Execution of laboratory classes
M_K002 Student aktywnie proponuje uproszczenia projektowanego systemu, biorąc pod uwagę ograniczenia zasobów. MAT2A_K03, MAT2A_K02 Execution of laboratory classes
M_K003 Student aktywnie bierze udział w dyskusji nad wizją projektowanego systemu, zadaje pytania prowadzącemu. MAT2A_K04, MAT2A_K03, MAT2A_K02 Execution of laboratory classes
Skills: he can
M_U001 Student potrafi zebrać wymagania dla systemu informatycznego oraz zapisać je w postaci umożliwiającej dalsze przetwarzanie. MAT2A_K03, MAT2A_K02, MAT2A_U20, MAT2A_U19 Execution of laboratory classes
M_U002 Student potrafi wykonać analizę oczekiwań interesariuszy oraz ich priorytetyzację. MAT2A_K02, MAT2A_U16 Examination
M_U003 Student potrafi użyć notacji UML do przedstawienia aspektów projektowanego systemu oraz wykonać model w narzędziu CASE. MAT2A_U20 Project,
Execution of a project,
Execution of laboratory classes
Knowledge: he knows and understands
M_W001 Student identyfikuje zagrożenia dla typowego projektu informatycznego oraz metody stosowane do ich uniknięcia lub zmniejszenia skutków. MAT2A_W11 Examination
M_W002 Student rozpoznaje pojęcia z dziedziny inżynierii oprogramowania, rozumie cele standardowych procesów. MAT2A_W11 Examination
Number of hours for each form of classes:
Sum (hours)
Lecture
Audit. classes
Lab. classes
Project classes
Conv. seminar
Seminar classes
Pract. classes
Zaj. terenowe
Zaj. warsztatowe
Prace kontr. przejść.
Lektorat
30 15 0 15 0 0 0 0 0 0 0 0
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
Prace kontr. przejść.
Lektorat
Social competence
M_K001 Student identyfikuje kontekst społeczny zaplanowanego systemu, w jaki sposób wykonana praca wpłynie na pracę i przyzwyczajenia innych ludzi. + - + - - - - - - - -
M_K002 Student aktywnie proponuje uproszczenia projektowanego systemu, biorąc pod uwagę ograniczenia zasobów. + - + - - - - - - - -
M_K003 Student aktywnie bierze udział w dyskusji nad wizją projektowanego systemu, zadaje pytania prowadzącemu. + - + - - - - - - - -
Skills
M_U001 Student potrafi zebrać wymagania dla systemu informatycznego oraz zapisać je w postaci umożliwiającej dalsze przetwarzanie. - - + - - - - - - - -
M_U002 Student potrafi wykonać analizę oczekiwań interesariuszy oraz ich priorytetyzację. - - + - - - - - - - -
M_U003 Student potrafi użyć notacji UML do przedstawienia aspektów projektowanego systemu oraz wykonać model w narzędziu CASE. - - + - - - - - - - -
Knowledge
M_W001 Student identyfikuje zagrożenia dla typowego projektu informatycznego oraz metody stosowane do ich uniknięcia lub zmniejszenia skutków. + - + - - - - - - - -
M_W002 Student rozpoznaje pojęcia z dziedziny inżynierii oprogramowania, rozumie cele standardowych procesów. + - + - - - - - - - -
Student workload (ECTS credits balance)
Student activity form Student workload
Summary student workload 57 h
Module ECTS credits 2 ECTS
Udział w zajęciach dydaktycznych/praktyka 30 h
Preparation for classes 4 h
przygotowanie projektu, prezentacji, pracy pisemnej, sprawozdania 20 h
Examination or Final test 1 h
Contact hours 2 h
Module content
Lectures (15h):
Treść wykłady odpowiada zajęciom laboratoryjnym.
Laboratory classes (15h):
  1. Ćwiczenia labolatoryjne

    Zajęcia laboratoryjne mają przygotować do wykonania projektu przez zajęcia z kontaktu z klientem, uzupełnianie wiedzy praktycznej. Część czasu zostanie przeznaczona na konsultacje wykonywanych projektów i przedyskutowanie problemów pojawiających się podczas wykonania.

    1. Analiza systemu – 1,5 godz.
    Analiza interesariuszy. Wywiad z klientem. Definiowanie wymagań funkcjonalnych i niefunkcjonalnych.

    2. Przygotowanie dokumentacji projektowej – 1,5 godz.
    Wykonanie (na podstawie szablonu) pierwszej wersji specyfikacji funkcjonalnej i zapisu decyzji architektonicznych.

    3. Przygotowanie i wykorzystanie modelu systemu – 1,5 godz.
    Wykonanie modelu systemu w oparciu o notację UML w narzędziu CASE.

    4. Tworzenie aplikacji z użyciem wybranych technologii (np. HTML, CSS i PHP, C++) – 4,5 godz.
    Obsługa narzędzi potrzebnych do wykonania projektu. Przygotowanie interfejsu użytkownika. Analiza użyteczności interfejsu użytkownika.

    5. Weryfikacja i akceptacja projektu – 1,5 godz.
    Przekonanie klienta, że wykonany system jest odpowiedzią na zgłoszone potrzeby. Przedstawienie możliwości dalszego rozwoju.

  2. Seminarium

    1. Wprowadzenie do Inżynierii Oprogramowania – 1,5 godz.
    Historia inżynierii oprogramowania. Zakres, podstawowe pojęcia, nomenklatura. Wyzwania stojące przed projektami.

    2. Inżynieria wymagań – 1,5 godz.
    Analiza interesariuszy. Wymagania niefunkcjonalne i funkcjonalne. Sposoby definiowania wymagań. Błędy popełniane przy specyfikowaniu wymagań. Praktyki przydatne w zarządzaniu wymaganiami.

    3. Modelowanie i dokumentacja projektowa – 3 godz.
    Rodzaje modeli. Modelowanie obiektowe. Modelowanie zachowania systemu. Modelowanie dziedziny systemu. Modelowanie z użyciem UML. Przykład modelu systemu opartego na przypadkach użycia. Zintegrowane narzędzia do modelowania.

    4. Procesy tworzenia oprogramowania – 1,5 godz.
    Modele rozwoju oprogramowania. Porównanie modelu kaskadowego, spiralnego, unified process. Cechy procesu fazowego i iteracyjnego na podstawie Agile Unified Process i Enterprise Unified Process. Aspekty faz początkowej, rozwinięcia, budowy, dostarczenia.

    5. Lekkie metody tworzenia oprogramowania – 1,5 godz.
    Geneza praktyk zwinnych. Porównanie metod preskryptywnych i adaptacyjnych. Praktyki stosowane w różnych obszarach aktywności projektowej.

    6. Testowanie oprogramowania i jakość – 1,5 godz.
    Kryteria jakości. Poziomy testów. Techniki testowania. Pokrycie systemu testem. Rozwój oprogramowania sterowany testami.

    7. (opcjonalne) Studium przypadków zastosowania inżynierii oprogramowania – 1,5 godz.
    Analiza wykonania dwóch projektów. Użyte narzędzia i metody pracy.

  3. Projekt

    Celem zadań projektowych jest zaplanowanie, zaprojektowanie i wykonanie systemu informatycznego. Może zostać przez wykonawców wybrany dowolny temat i technologia, jeżeli tylko wyniki prac mogą być prezentowane podczas zajęć i prowadzący podejmie się pełnienia roli klienta w takim zestawieniu.
    Studenci wykonują projekt pracując w grupach 3-osobowych. W ramach projektu przygotowują:

    - dokumentację analityczną tworzonego systemu

    - opis architektury systemu

    - działający prototyp systemu, wykonujący przynajmniej część przewidzianej w dokumentacji funkcjonalności i zgodny z przyjętymi założeniam

Additional information
Teaching methods and techniques:
  • Lectures: Treści prezentowane na wykładzie są przekazywane w formie prezentacji multimedialnej w połączeniu z klasycznym wykładem tablicowym wzbogaconymi o pokazy odnoszące się do prezentowanych zagadnień.
  • Laboratory classes: W trakcie zajęć laboratoryjnych studenci samodzielnie rozwiązują zadany problem praktyczny, dobierając odpowiednie narzędzia. Prowadzący stymuluje grupę do refleksji nad problemem, tak by otrzymane wyniki miały wysoką wartość merytoryczną.
Warunki i sposób zaliczenia poszczególnych form zajęć, w tym zasady zaliczeń poprawkowych, a także warunki dopuszczenia do egzaminu:

dwa zaliczenia poprawkowe

Participation rules in classes:
  • Lectures:
    – Attendance is mandatory: No
    – Participation rules in classes: Studenci uczestniczą w zajęciach poznając kolejne treści nauczania zgodnie z syllabusem przedmiotu. Studenci winni na bieżąco zadawać pytania i wyjaśniać wątpliwości. Rejestracja audiowizualna wykładu wymaga zgody prowadzącego.
  • Laboratory classes:
    – Attendance is mandatory: Yes
    – Participation rules in classes: Studenci wykonują ćwiczenia laboratoryjne zgodnie z materiałami udostępnionymi przez prowadzącego. Student jest zobowiązany do przygotowania się w przedmiocie wykonywanego ćwiczenia, co może zostać zweryfikowane kolokwium w formie ustnej lub pisemnej. Zaliczenie zajęć odbywa się na podstawie zaprezentowania rozwiązania postawionego problemu. Zaliczenie modułu jest możliwe po zaliczeniu wszystkich zajęć laboratoryjnych.
Method of calculating the final grade:

Oceny z projektu(P) oraz z egzaminu (E) obliczane są następująco: procent
uzyskanych punktów przeliczany jest na ocenę zgodnie z Regulaminem Studiów AGH.
Ocena końcowa (OK) obliczana jest jako średnia ważona ocen z egzaminu (E) i z wykonania projektu (P):
OK = 0.35 x E + 0.65 x P

Sposób i tryb wyrównywania zaległości powstałych wskutek nieobecności studenta na zajęciach:

indywidualnie

Prerequisites and additional requirements:

Uczestnicy kursu powinni wcześniej przejść przez podstawowe kursy obsługi komputera, oprogramowania biurowego i programowania. Przydatne również będzie znajomość konstrukcji baz danych, znaczników HTML.

Nawet dogłębna znajomość zagadnień poruszanych w ramach kursu nie stanowi przeszkody w uczestnictwie.

Recommended literature and teaching resources:

1) IEEE Computer Society, Guide to the Software Engineering Body of Knowledge (SWEBOK), 2004, http://www.computer.org/portal/web/swebok/htmlformat

2) Scott W. Ambler, Agile Modeling: Effective Practices for Extreme Programming and the Unified Process, J. Wiley., 2002

3) Alistair Cockburn, Writing Effective Use Cases, A. Addison Wesley, 2001.

4) Karl Wiegers, Software Requirements 2, O’Reilly Media, 2009

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

Additional scientific publications not specified

Additional information:

Wszystkie zajęcia są prowadzone przez przedstawiczieli firmy Ericpol:

Jacek Rybicki (jacek.rybicki@ericpol.com)
Michał Szancer
Wiesław Chmielnicki