Inżynieria oprogramowania
Transkrypt
Inżynieria oprogramowania
KARTA MODUŁU KSZTAŁCENIA I. Informacje ogólne 1 Nazwa modułu kształcenia Inżynieria oprogramowania 2 Nazwa jednostki prowadzącej moduł Instytut Informatyki, Zakład Informatyki Stosowanej 3 Kod modułu (wypełnia koordynator ECTS) 4 Grupa treści kształcenia kierunkowego 6 Poziom studiów studia I stopnia 7 9 Rok studiów, semestr 10 Liczba godzin w semestrze III rok VI semestr – letni studia stacjonarne Wyk. 30 Liczba 6 Ćw. punktów Lab. Sem. 5 Typ modułu obowiązkowy ECTS 8 Poziom przedmiotu średnio-zaawansowany 11 Liczba godzin w tygodniu Proj. 30 Wyk. 2 Ćw. Lab. Sem. Proj. 2 12 Język wykładowy: polski 13 Wykładowca (wykładowcy): Marek Krętowski, dr hab. inż. – wykład, laboratorium, Marcin Klimek, dr inż. – laboratorium II. Informacje szczegółowe 14 Wymagania wstępne 1. Podstawowa znajomość programowania (najlepiej obiektowego) zdobyta m.in. na przedmiocie Języki programowania. 15 Cele przedmiotu C1 Zapoznanie studentów z podstawami języka UML. C2 Zaznajomienie studentów z podstawowymi zagadnieniami inżynierii oprogramowania: tj. modele procesów wytwarzania oprogramowania oraz zasady ich wyboru w zależności od specyfiki realizowanego przedsięwzięcia, specyfikowanie wymagań dotyczących tworzonego oprogramowania, zasady projektowania oprogramowania, walidacja i testowanie oprogramowania, zarządzanie konfiguracją oprogramowania, ewolucja oprogramowania, wprowadzenie do zarządzania projektem informatycznym, zarządzania ryzykiem projektu itp. C3 Pozyskanie praktycznych umiejętności tworzenia projektu systemu informatycznego. C4 Zrozumienie przez studentów złożoności procesu produkcji oprogramowania i faktu, że programowanie jest tylko elementem składowym tego procesu. C5 Wykształcenie u studentów umiejętności sporządzania i interpretacji dokumentacji projektów systemów informatycznych. 16 Efekty kształcenia w zakresie wiedzy, umiejętności i kompetencji społecznych odniesienie do celów przedmiotu nr student, który zaliczył przedmiot, potrafi: EK01 korzystać z narzędzi do projektowania systemów informatycznych tworzyć diagramy UML (przypadków użycia, klas, wdrożenia, przejść stanów, przebiegu itp.) opisujące praktyczne projekty wybierać odpowiednie modele procesów wytwarzania oprogramowania w zależności od specyfiki realizowanego projektu zarządzać procesem wytwarzania oprogramowania i określać wymagania, walidować i testować oprogramowanie projektować oprogramowanie i tworzyć odpowiednią dokumentację projektową, właściwie interpretować dokumentację projektów systemów informatycznych EK02 EK03 EK04 EK05 C1, C2, C5 C1, C3, C5 C2 C2, C4 C2, C3, C5 17 Treści programowe forma zajęć – wykłady W1 W2 W3 W4 W5 W6 W7 W8 W9 W10 Przedmiot i cele inżynierii oprogramowania, przyczyny powstania IO, metodyka a metodologia, narzędzia CASE. Wprowadzenie do UML, diagramy przypadków użycia systemu, diagramy czynności. UML: Diagramy klas i obiektów, pakiety. UML: Diagramy interakcji i stanów. UML: Diagramy fizyczne: komponentów i wdrożenia. Cykl życia oprogramowania (modele: wodospadowy, spiralny, COTS, ...). Inżynieria wymagań dla systemów informatycznych (metody zbierania informacji, wymagania funkcjonalne i niefunkcjonalne). Modelowanie i projektowanie systemów. Implementacja systemu. Testowanie, weryfikacja i walidacja liczba godzin S liczba godzin NS odniesienie do efektów kształcenia dla przedmiotu 2 EK01 2 EK02 2 EK02 2 2 EK02 EK02 2 EK03 2 EK04, EK05 2 EK04, EK05 2 2 EK04, EK05 EK04, EK05 W11 W12 W13 W14 W15 oprogramowania (testy dynamiczne i statyczne). Zapewnienie jakości oprogramowania i metryki oprogramowania. Dokumentowanie, instalacja, wdrażanie oraz konserwacja oprogramowania. Wiarygodność systemów informatycznych. Zarządzanie projektami programistycznymi. Zarządzanie ryzykiem w projektach. suma godzin forma zajęć – laboratoria L1 L2 L3 L4 L5 L6 L7 L8 L9 L10 L11 Przedstawienie wymagań i sposobu prowadzenia zajęć, utworzenie zespołów, pokaz działania programów Rational Rose i Visual Paradigm for UML. Wprawki - diagram przypadków użycia, opisywanie przypadków użycia. Wprawki - diagram klas, pakiety. Wprawki - diagram czynności. Wprawki - diagram stanów. Wprawki - diagramy interakcji (przebiegu). Wprawki - diagramy fizyczne (komponentów i wdrożenia). Uzgadnianie tematyki zadania grupowego, określanie celów i zakresu projektowanego systemu oraz korzyści z jego wdrożenia. Tworzenie i opisywanie diagramów przypadków użycia, projektowanie interfejsu użytkownika. Tworzenie diagramu klas, identyfikowanie atrybutów i metod, opracowywanie realizacji przypadków użycia, d. interakcji poziom pojęciowy. Opracowywanie realizacji przypadków użycia, tworzenie 2 EK04 2 EK04, EK05 2 EK04 2 EK04, 2 30 EK04 liczba godzin S liczba godzin NS odniesienie do efektów kształcenia dla przedmiotu 2 EK01 2 EK01, EK02 2 2 2 2 EK01, EK02 EK01, EK02 EK01, EK02 EK01, EK02 2 EK01, EK02 2 EK04 2 EK01, EK02, EK04, EK05 2 EK01, EK02, EK04, EK05 2 EK01, EK02, EK04, EK05 L12 L13 L14 L15 diagramów przebiegu - poziom implementacyjny, czynności. Przygotowywanie diagramów zmiany stanu. Specyfikowanie wymagań niefunkcjonalnych i propozycji technologii informatycznych, przygotowanie proponowanego planu pracy i analiza ryzyka projektu. Prezentacja projektu, przedstawienie podziału pracy i przekazanie sprawozdania projektowego do oceny. Ewentualna weryfikacja zadeklarowanego podziału pracy, omówienie oceny punktowej, wpisy ocen suma godzin 2 2 EK01, EK02, EK04, EK05 EK04, EK05 2 EK05 2 30 18 Narzędzia/metody dydaktyczne 1. 2. 3. 4. Podczas laboratoriów praca indywidualna studentów. Rysowanie diagramów UML w Visual Paradigm for UML, rozwiązywanie wprawek: - tworzenie diagramu przypadków użycia, opisywanie przypadków użycia; - sporządzanie diagramu klas, pakietów; - opracowywanie diagramu czynności. - konstruowanie diagramu stanów; - tworzenie diagramu interakcji (przebiegu); - budowa diagramów fizycznych, wdrożenia. W dalszej części laboratoriów zespołowa realizacja wybranego projektu systemu informatycznego: - uzgadnianie tematyki zadania grupowego; - określanie celów i zakresu projektowanego systemu oraz korzyści z jego wdrożenia; - tworzenie i opisywanie diagramów przypadków użycia, projektowanie interfejsu użytkownika; - tworzenie diagramu klas, identyfikowanie atrybutów i metod, opracowywanie realizacji przypadków użycia; - tworzenie diagramów przebiegu oraz d. czynności; - przygotowywanie diagramów zmiany stanu; - specyfikowanie wymagań niefunkcjonalnych i propozycji technologii informatycznych, przygotowanie proponowanego planu pracy i analiza ryzyka projektu; - prezentacja projektu, przedstawienie podziału pracy i przekazanie sprawozdania projektowego do oceny. Wykład prowadzony z wykorzystaniem projektora multimedialnego. Wykłady przygotowane są w formie prezentacji PowerPoint. W pracowni komputerowej zainstalowany program Visual Paradigm for UML, który jest wykorzystywany do rysowania diagramów UML. 19 Sposoby oceny (F – formująca, P – podsumowująca) F1 F2 F3 P1 Sześć krótkich sprawdzianów z tworzenia różnych diagramów UML. Ocena zespołowej realizacji projektu systemu informatycznego. Ocena ciągła pracy indywidualnej podczas laboratoriów. Egzamin w formie pisemnej (3 pytania teoretyczne + 2 zadania praktyczne z UML). 20 Obciążenie pracą studenta forma aktywności Godziny kontaktowe z nauczycielem Przygotowanie się do laboratorium Przygotowanie się do egzaminu Realizacja projektu zaliczeniowego SUMA SUMARYCZNA LICZBA PUNKTÓW ECTS DLA PRZEDMIOTU średnia liczba godzin na zrealizowanie aktywności S NS 75 30 20 25 150 6 21 Literatura podstawowa i uzupełniająca Literatura podstawowa: 1. Wprowadzenie do inżynierii oprogramowania, K. Subieta, Wydawnictwo PJWSTK, 2002. 2. Inżynieria oprogramowania, I. Sommerville, WNT, 2003. 3. Modelowanie systemów informatycznych w języku UML 2.1, W. Dąbrowski, A. Stasiak, M. Wolski, PWN 2007. Literatura uzupełniająca: 1. Zarządzanie projektami informatycznymi, M. Flasinski, PWN, 2006. 2. UML w kropelce, M. Fowler, Oficyna Wydawnicza LTP, 2005 (wyd. III, UML wersja 2.0). 3. Język UML 2.0 w modelowaniu systemów informatycznych, S. Wrycza, B. Marcinkowski, K. Wyrzykowski, Helion 2005. 22 Kryteria oceny * nr na ocenę 2 (ndst) efektu EK01 student nie zna narzędzi do projektowania systemów informatycznych EK02 student nie ma podstawowej wiedzy na temat tworzenia diagramów UML na ocenę 3 (dst) na ocenę 4 (db) na ocenę 5 (bdb) student potrafi rysować jedynie proste diagramy UML student zna narzędzi do tworzenia diagramów, ale ma problemy z tworzeniem skomplikowanych diagramów UML student potrafi opracowywać diagramy UML, ale jedynie dla prostych projektów student potrafi korzystać z zaawansowanych możliwości narzędzi do projektowania systemów informatycznych student umie tworzyć diagramy UML (przypadków użycia, klas, wdrożenia, przejść stanów, przebiegu itp.) opisujące praktyczne, nawet złożone, projekty student zna zasady tworzenia diagramów UML, ale nie potrafi tworzyć modeli UML w praktycznych projektach EK03 student nie zna modeli procesów wytwarzania oprogramowania EK04 student nie posiada podstawowej wiedzy z inżynierii oprogramowania dotyczącej specyfikacji wymagań projektowych, walidacji, testowania oprogramowania itp. student nie zna zasad projektowania oprogramowania i nie umie interpretować dokumentacji projektów systemów informatycznych EK05 student ma jedynie podstawową wiedzę nt. modeli procesów wytwarzania oprogramowania i nie potrafi oceniać przydatności modelu w praktycznych projektach student zna podstawowe aspekty zarządzania procesem produkcji oprogramowania, ale ma problemy z poprawnym definiowaniem poszczególnych etapów projektowych student zna modele wytwarzania oprogramowania, ale nie potrafi dokonywać wyboru właściwych modeli w praktycznych projektach student potrafi oceniać przydatność i wybierać odpowiednie modele procesów wytwarzania oprogramowania w zależności od specyfiki realizowanego projektu student potrafi określać wymagania, walidować, testować oprogramowanie, ale jedynie przy prostych przedsięwzięciach programistycznych student potrafi zarządzać procesem wytwarzania oprogramowania, umie określać wymagania, walidować, testować oprogramowanie itp. student poprawnie interpretuje dokumentację prostych projektów informatycznych, ale nie potrafi samodzielnie tworzyć dokumentacji projektowej student umie poprawnie interpretować dokumentację projektów systemów informatycznych i potrafi tworzyć dokumentację projektową, ale jedynie dla prostych przedsięwzięć informatycznych student potrafi opracowywać dokumentację projektową i umie właściwie interpretować dokumentację, nawet złożonych, projektów systemów informatycznych III. Inne przydatne informacje 23 Inne przydatne informacje o przedmiocie 1. 2. Materiały z wykładów udostępnione są dla studentów na stronie internetowej. Laboratoria odbywają się w salach komputerowych 285 lub 286 z oprogramowaniem niezbędnym do realizacji przedmiotu tj. Visual Paradigm for UML. *do decyzji koordynatora Tabela podsumowująca. Efekt kształcenia EK01 EK02 EK03 EK04 EK05 Odniesienie danego efektu do efektów zdefiniowanych dla całego programu („kierunkowych”) K_W10, K_W20, K_U03, K_U04, K_U16, K_U25 K_W08, K_U03, K_U04, K_U15, K_U16 K_W20, K_W21, K_W23, K_U01, K_U02, K_U19, K_K05 K_W21, K_W22, K_U02, K_U14, K_U19, K_U20, K_U26, K_K05 K_W08, K_U02, K_U03, K_U04, K_U16, K_U18, K_U33 Cele przedmiotu Treści programowe Narzędzia/metody dydaktyczne Sposób oceny W1,W6,L1-L7,L9-L12 1, 2, 3, 4 F2, F3 W2-W5, L2-L7,L9-L12 1, 2, 3, 4 F1, F3, P1 W6, L1 3 P1 W7-W15, L8-L13 2, 3, 4 F2, P1 W7-W10,W12, L9-L14 1, 2, 3, 4 F1, F2, P1 C1, C2, C5 C1, C3, C5 C2 C2, C4 C2, C3, C5 Strona | 8