Projektowanie systemów informatycznych 2400-IiE2PSI
1. Podstawy metodyczne projektowania systemów informatycznych. Ujęcie dynamiczne i statyczne projektowania. Tradycyjne i współczesne podejście do projektowania. Inżynieria systemów informacyjnych. Metody, techniki i narzędzia projektowania.
2. Metodyki tworzenia systemu informatycznego – wymagania. Klasyfikacja metodyk tworzenia systemów informatycznych. Modele cyklu życia systemów. Podejścia techniczne (hard approaches) i społeczne (soft approaches) w projektowaniu.
3. Metody strukturalne. Przykłady modeli i diagramów. Wybrane techniki i narzędzia projektowania strukturalnego. Metody obiektowe. Metody społeczne. Budowa zespołów projektowych i zasady tworzenia złożonych aplikacji w zespołach projektowych.
4. Projektowanie wybranych elementów systemów informacyjnych. Projektowanie baz danych. Projektowanie programów. Projektowanie interfejsu użytkownika. Systemy multimedialne i hipermedialne. Zarządzanie wiedzą w systemach informacyjnych.
5. Środowiska wspierające projektowanie (narzędzia CASE). Elastyczne podejścia w projektowaniu. Problemy planowania i zarządzania strategią informatyzacji.
6. Zarządzanie projektami informatycznymi. Parametry projektu (zakres, koszt, czas). Standardy zarządzania projektami. Metody prowadzenia projektów informatycznych. Metody oceny inwestycji w technologie informatyczne. Charakterystyki wybranych metod oceny. „Paradoks produktywności”. Nowoczesne technologie informacyjne a projektowanie systemów.
7. Powstanie i rozwój języka UML (Unified Modeling Language) jako standardu modelowania procesów biznesowych, analizy oraz projektowania systemów informacyjnych. Podstawowe pojęcia i podstawy notacji UML. Obiektowość w UML. Modele i diagramy UML. Typy modeli i rodzaje diagramów. Ujęcie statyczne i dynamiczne w modelowaniu. Oprogramowanie wspomagające tworzenie modeli i diagramów w UML. Narzędzia CASE dla użytkowników UML.
8. Modelowanie wymagań. Diagramy przypadków użycia (use case diagrams). Przypadki użycia, aktorzy (role), związki. Stereotypy na diagramach przypadków użycia.
9. Ujęcie struktury systemu - statycznej wizji systemu: diagramy klas (class diagrams). Klasy obiektów. Atrybuty i operacje klas. Rodzaje asocjacji, liczebności, role, klasy asocjacyjne. Diagramy obiektów.
10. Diagramy aktywności (czynności). Czynności, podczynności, przepływy. Bloki decyzyjne i przepływy współbieżne.
11. Diagramy stanów. Stany, podstany sekwencyjne i obszary współbieżne. Przejścia, zdarzenia, warunki dozoru i akcje na diagramach stanów.
12. Diagramy interakcji: sekwencji i współdziałania (komunikacji). Klasyfikatory, komunikaty, ośrodki sterowania.
Rodzaj przedmiotu
Założenia (opisowo)
Koordynatorzy przedmiotu
W cyklu 2023L: | W cyklu 2024L: |
Efekty kształcenia
A) wiedza
1. Student wie na czym polega i czemu służy projektowanie systemów informatycznych, jego specyfika i czym różni się od projektowania w innych dziedzinach. Zna i rozumie trudności i bariery projektowania systemów informatycznych, przyczyny niepowodzeń projektowania systemów oraz możliwe sposoby przeciwdziałania trudnościom, pokonywania barier i zapobiegania niepowodzeniom.
2. Student zna i rozumie podstawy metodyczne projektowania systemów informatycznych. Ma wiedzę dotyczącą projektowania systemów zgodnie z zasadami inżynierii oprogramowania, aby przeciwdziałać „chałupniczemu” wytwarzaniu systemów.
3. Wie, jakie istnieją rozwiązania modelowe (tzw. cykle życia oprogramowania, jak np. model kaskadowy, spiralny, przyrostowy, z prototypowaniem, z wykorzystaniem zasobów wielokrotnego użycia), będące podstawą stosowanych w praktyce metodyk projektowania i jest świadomy możliwości ich modyfikacji stosownie do potrzeb danej sytuacji projektowania systemu i wie jak przeprowadzić takie modyfikacje. Ma wiedzę o wykorzystywaniu i łączeniu metod i narzędzi podejścia technicznego w projektowaniu z elementami „miękkimi”, aktywizującymi członków zespołów projektowych.
4. Student ma wiedzę o podstawach, zaletach i wadach trzech obecnie najbardziej rozpowszechnionych podejść do projektowania, jakimi są podejście strukturalne, podejście społeczne oraz obiektowe.
5. Student zna na poziomie podstawowym zagadnienia związane z metodami strukturalnymi projektowania systemów informatycznych. Student ma wiedzę o modelach i diagramach: związków encji, przepływu danych, przejść stanów, diagramach struktury oraz ich elementach. Student zna przeznaczenie poszczególnych diagramów i rozumie różnice między poszczególnymi rodzajami diagramów. Student ma wiedzę w zakresie wybranych technik i narzędzi projektowania strukturalnego (słowniki danych, języki strukturalne projektowania, specyfikacje procesów, prototypowanie). Umie wskazać języki programowania strukturalnego (posiadające konstrukcje ułatwiające kodowanie na podstawie projektów opracowanych zgodnie z podejściem strukturalnym) i zasady budowy programów zgodne z założeniami podejścia strukturalnego. Zna relacyjny model danych jako wywodzący się z założeń podejścia strukturalnego.
6. Student wie jak wykorzystać techniki i koncepcje metodyk społecznych (wzbogacone wizerunki, definicje podstawowe …). Zna podstawowe zasady i techniki stosowania wybranych metodyk. Umie zgodnie z założeniami metodyk społecznych zorganizować zespół projektowy i zna zgodne z założeniami metodyk społecznych zasady tworzenia złożonych aplikacji w zespołach projektowych.
7. Student zna i rozumie podstawowe pojęcia podejścia obiektowego do projektowania systemów oraz zagadnienia związane z zastosowaniem metod obiektowego projektowania systemów informatycznych. Student ma wiedzę o modelach i diagramach stosowanych w Ujednoliconym Języku Modelowania Systemów Informatycznych UML (Unified Modeling Language) oraz ich elementach. Zna i rozumie przydatność dla projektowania podstawowych diagramów UML: diagramów przypadków użycia, klas, stanów, czynności, interakcji i współpracy; wie kiedy się je stosuje i jak się je buduje.
8. Student ma podstawową wiedzę w zakresie projektowania wybranych elementów systemów informacyjnych: baz danych, programów, interfejsu użytkownika.
9. Student zna środowiska wspierające projektowanie – narzędzia CASE (Computer Aided Software/System Engineering), zakres zastosowania i wymagania wobec narzędzi CASE oraz ich kategorie.
10. Student ma wiedzę dotyczącą podstaw zarządzania projektami informatycznymi. Rozumie powiązania między podstawowymi parametrami projektu decydującymi o zarządzaniu projektem, do których należą zakres, koszt, czas. Wie jak sterować parametrami, aby zakończyć projekt z sukcesem. Zna podstawowe standardy zarządzania projektami i metody prowadzenia projektów.
11. Rozumie i zna trudności dokonywania oceny opłacalności inwestycji w technologie informatyczne i przyczyny trudności oceny. Zna możliwości i ograniczenia oceny za pomocą takich metod oceny jak COCOMO, FPA, rachunek zdyskontowanych przepływów finansowych, EVA, TCO, Balanced Scorecard … . Umie zinterpretować znane zjawisko określane mianem „paradoksu produktywności” stosowania technologii informatycznych.
12. Posiada wiedzę o nowych trendach w rozwoju technologii informatycznych, takich jak wirtualizacja, cloud computing, rozwiązania mobilne, współczesne techniki analiz danych (np. Data Mining), funkcje znane z mediów społecznościowych, których włączenie w projekt pozwala uzyskać korzyści biznesowe.
B) umiejętności
1. Student potrafi wskazać różnice między różnymi podejściami do projektowania systemów informatycznych i zastosować odpowiednie podejście do stworzenia projektu systemu informatycznego.
2. Student ma umiejętność określenia wymagań w stosunku do systemu informatycznego, który ma zostać zaprojektowany oraz potrafi przeanalizować warunki w jakich zostanie on wdrożony.
3. Student posiada umiejętność określenia potrzeb w zakresie informatyzacji przedsiębiorstwa oraz przekazania ich w sposób zrozumiały dla informatyka. Potrafi z wykorzystaniem notacji Ujednoliconego Języka Modelowania opisać konkretny problem związany z funkcjonowaniem danego systemu i znaleźć jego rozwiązanie.
4. Student potrafi z wykorzystaniem notacji Ujednoliconego Języka Modelowania zbudować diagramy, składające się na model systemu informatycznego.
5. Student potrafi wskazać powiązania między poszczególnymi rodzajami zbudowanych diagramów.
6. Student ma umiejętność określenia potencjalnych problemów związanych z budową konkretnego modelu systemu informatycznego i jego wdrożeniem.
7. Student umie zastosować narzędzie CASE do stworzenia projektu systemu informatycznego.
8. Student potrafi przygotować opracowanie zadanego problemu oraz zaprezentować je na forum grupy.
C) kompetencje społeczne
1. Student rozumie w jakim celu tworzy się projekty systemów informatycznych. Ma świadomość problemów związanych z projektowaniem systemów i potrafi je samodzielnie rozwiązać.
2. Student wykazuje gotowość do poszerzania swojej wiedzy samodzielnie wyszukaną literaturą na określony temat.
3. Student umie pracować w grupie, jest w stanie pełnić rolę aktywnego i „świadomego” współuczestnika (obok informatyków) budowy infrastruktury informatycznej przedsiębiorstwa.
4. Student zna i rozumie zagadnienia prawne związane z korzystaniem z oprogramowania komputerowego oraz jego licencjonowania.
KW01, KW02, KW03, KU01, KU02, KW03, KK01, KK02, KK03
Kryteria oceniania
Ocena wystawiana jest na podstawie: zaliczenia na komputerach – 40% oceny końcowej, prezentacji na zadany temat – 40% oceny końcowej, aktywności podczas zajęć - 10% oceny końcowej, kartkówek – 10% oceny końcowej.
Podczas zaliczenia na komputerach student powinien wykazać się praktyczną znajomością języka UML i diagramów w nim wykorzystywanych. Obecność na zajęciach oraz zaliczenie kartkówek jest warunkiem koniecznym zaliczenia przedmiotu. Do zaliczenia niezbędne jest jednocześnie uzyskanie minimum 51% punktów możliwych do zdobycia w czasie semestru oraz otrzymanie zarówno z prezentacji jak i kolokwium minimum 51% punktów.
Literatura
Pozycje podstawowe:
1. Dąbrowski W., Stasiak A., Wolski M., Modelowanie systemów informatycznych w
języku 2.1, Wydawnictwo Naukowe PWN, 2009
2. Lasek M., Projektowanie systemów informatycznych. Materiały pomocnicze do zajęć, WNE
UW, Warszawa 2009.
3. Sacha K., Inżynieria oprogramowania, PWN, Warszawa 2010
4. Wrycza S., Wyrzykowski K., Marcinkowski B., UML 2.0 w modelowaniu systemów
informatycznych, HELION, Gliwice 2005.
Pozycje uzupełniające:
1. Jaszkiewicz A., Inżynieria oprogramowania, HELION, Gliwice 2007.
2. Szejko S. (red.), Metody wytarzania oprogramowania, MIKOM, Warszawa 2002.
3. Śmiałek M., Zrozumieć UML 2.0. Metody modelowania obiektowego, HELION,
Gliwice 2005.
4. Wrycza S., Analiza i projektowanie systemów informatycznych zarządzania. Metodyki,
techniki, narzędzia, PWN, Warszawa 1999.
Więcej informacji
Dodatkowe informacje (np. o kalendarzu rejestracji, prowadzących zajęcia, lokalizacji i terminach zajęć) mogą być dostępne w serwisie USOSweb: