Projektowanie systemów informatycznych



Podobne dokumenty
Harmonogramowanie projektów Zarządzanie czasem

Strategia rozwoju kariery zawodowej - Twój scenariusz (program nagrania).

Załącznik nr 4 UMOWA O REALIZACJI PRAKTYKI STUDENCKIEJ

KONCEPCJA NAUCZANIA PRZEDMIOTU RACHUNKOWOŚĆ SKOMPUTERYZOWANA" NA WYDZIALE ZARZĄDZANIA UNIWERSYTETU GDAŃSKIEGO

Ogólna charakterystyka kontraktów terminowych

Zarządzanie projektami. wykład 1 dr inż. Agata Klaus-Rosińska

Politechnika Warszawska Wydział Matematyki i Nauk Informacyjnych ul. Koszykowa 75, Warszawa

Przypomnienie najważniejszych pojęć z baz danych. Co to jest baza danych?

INSTRUKCJA DLA UCZESTNIKÓW ZAWODÓW ZADANIA

KATEDRA INFORMATYKI STOSOWANEJ PŁ ANALIZA I PROJEKTOWANIE SYSTEMÓW INFORMATYCZNYCH

Eksperyment,,efekt przełomu roku

Zamawiający potwierdza, że zapis ten należy rozumieć jako przeprowadzenie audytu z usług Inżyniera.

Objaśnienia do Wieloletniej Prognozy Finansowej na lata

DE-WZP JJ.3 Warszawa,

Program szkoleniowy Efektywni50+ Moduł III Standardy wymiany danych

Technologie internetowe Internet technologies Forma studiów: Stacjonarne Poziom kwalifikacji: I stopnia. Liczba godzin/tydzień: 2W, 2L

Adres strony internetowej, na której Zamawiający udostępnia Specyfikację Istotnych Warunków Zamówienia:

Numer obszaru: 13. Jak pracować z uczniem uzdolnionym informatycznie? Od grafiki i multimediów do poważnych algorytmów w środowisku Logomocja-Imagine

ZAPYTANIE OFERTOWE z dnia r

II. WNIOSKI I UZASADNIENIA: 1. Proponujemy wprowadzić w Rekomendacji nr 6 także rozwiązania dotyczące sytuacji, w których:

1. Proszę krótko scharakteryzować firmę którą założyła Pani/Pana podgrupa, w zakresie: a) nazwa, status prawny, siedziba, zasady zarządzania (5 pkt.

Umowa o pracę zawarta na czas nieokreślony

ZASADY WYPEŁNIANIA ANKIETY 2. ZATRUDNIENIE NA CZĘŚĆ ETATU LUB PRZEZ CZĘŚĆ OKRESU OCENY

Odpowiedzi na pytania zadane do zapytania ofertowego nr EFS/2012/05/01

Analiza systemowa. Andrzej Łachwa Bazy danych 12+/15

HAŚKO I SOLIŃSKA SPÓŁKA PARTNERSKA ADWOKATÓW ul. Nowa 2a lok. 15, Wrocław tel. (71) fax (71) kancelaria@mhbs.

JĘZYK UML JAKO NARZĘDZIE MODELOWANIA PROCESU PROJEKTOWO-KONSTRUKCYJNEGO

Projektowanie bazy danych

POMOC PSYCHOLOGICZNO-PEDAGOGICZNA Z OPERONEM. Vademecum doradztwa edukacyjno-zawodowego. Akademia

OPIS PRZEDMIOTU ZAMÓWIENIA DO ZAPYTANIA KE1/POIG 8.2/13

Przygotowały: Magdalena Golińska Ewa Karaś

Niezależnie od rodzaju materiału dźwiękowego ocenie podlegały następujące elementy pracy egzaminacyjnej:

PROCEDURA OCENY RYZYKA ZAWODOWEGO. w Urzędzie Gminy Mściwojów

Możemy zapewnić pomoc z przeczytaniem lub zrozumieniem tych informacji. Numer dla telefonów tekstowych. boroughofpoole.

Automatyczne przetwarzanie recenzji konsumenckich dla oceny użyteczności produktów i usług

INSTRUKCJA DLA INSPEKTORÓW DS. REJESTRACJI

Komputer i urządzenia z nim współpracujące

Podstawy programowania

PROGRAM ZAPEWNIENIA I POPRAWY JAKOŚCI AUDYTU WEWNĘTRZNEGO

ZARZĄDZENIE nr 1/2016 REKTORA WYŻSZEJ SZKOŁY EKOLOGII I ZARZĄDZANIA W WARSZAWIE z dnia r.

Nadzwyczajne Walne Zgromadzenie Art New media S.A. uchwala, co następuje:

PK Panie i Panowie Dyrektorzy Izb Skarbowych Dyrektorzy Urzędów Kontroli Skarbowej wszyscy

RZECZPOSPOLITA POLSKA. Prezydent Miasta na Prawach Powiatu Zarząd Powiatu. wszystkie

Załącznik nr 4 WZÓR - UMOWA NR...

UCHWAŁA NR IX / 72 / 15 RADY GMINY CHEŁMŻA. z dnia 26 sierpnia 2015 r.

Zapytanie ofertowe nr 3

Edycja geometrii w Solid Edge ST

Faktury elektroniczne a e-podpis stan obecny, perspektywy zmian. Cezary Przygodzki, Ernst & Young

Warunki Oferty PrOmOcyjnej usługi z ulgą

W tym elemencie większość zdających nie zapisywała za pomocą równania reakcji procesu zobojętniania tlenku sodu mianowanym roztworem kwasu solnego.

Komentarz technik ochrony fizycznej osób i mienia 515[01]-01 Czerwiec 2009

Bielsko-Biała, dn r. Numer zapytania: R WAWRZASZEK ISS Sp. z o.o. ul. Leszczyńska Bielsko-Biała ZAPYTANIE OFERTOWE

Uchwała z dnia 20 października 2011 r., III CZP 53/11

Gdynia: Księgowość od podstaw Numer ogłoszenia: ; data zamieszczenia: OGŁOSZENIE O ZAMÓWIENIU - usługi

FUNDACJA Kocie Życie. Ul. Mochnackiego 17/ Wrocław

Temat: Funkcje. Własności ogólne. A n n a R a j f u r a, M a t e m a t y k a s e m e s t r 1, W S Z i M w S o c h a c z e w i e 1

Do Rzecznika Praw Obywatelskich wpływają skargi od studentów kwestionujące

SPRAWOZDANIE FINANSOWE

DOKUMENT ANALIZY BIZNESOWEJ DLA PROJEKTU NAZWA PROJEKTU

LKA /2013 P/13/151 WYSTĄPIENIE POKONTROLNE

Konferencja Sądu Arbitrażowego przy SIDiR WARUNKI KONTRAKTOWE FIDIC KLAUZULA 13 JAKO ODMIENNY SPOSÓB WYKONANIA ROBÓT A NIE ZMIANA UMOWY

Adres strony internetowej, na której Zamawiający udostępnia Specyfikację Istotnych Warunków Zamówienia:

Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego ZAPYTANIE OFERTOWE

Instrukcja sporządzania skonsolidowanego bilansu Miasta Konina

REGULAMIN RADY RODZICÓW PRZY ZESPOLE SZKÓŁ W W PIETROWICACH WIELKICH

OSZACOWANIE WARTOŚCI ZAMÓWIENIA z dnia roku Dz. U. z dnia 12 marca 2004 r. Nr 40 poz.356

2.Prawo zachowania masy

Część 2 struktura e-paczki

Zapytanie ofertowe dotyczące wyboru wykonawcy (biegłego rewidenta) usługi polegającej na przeprowadzeniu kompleksowego badania sprawozdań finansowych

Szczegółowe zasady obliczania wysokości. i pobierania opłat giełdowych. (tekst jednolity)

Na podstawie art.4 ust.1 i art.20 lit. l) Statutu Walne Zebranie Stowarzyszenia uchwala niniejszy Regulamin Zarządu.

Opis przedmiotu zamówienia dla części 1 oraz dla części 2 zamówienia. Załącznik nr 1 do SIWZ

Jeśli jednostka gospodarcza chce wykazywać sprawozdania dotyczące segmentów, musi najpierw sporządzać sprawozdanie finansowe zgodnie z MSR 1.

Regulamin organizacji przetwarzania i ochrony danych osobowych w Powiatowym Centrum Kształcenia Zawodowego im. Komisji Edukacji Narodowej w Jaworze

KOMISJA WSPÓLNOT EUROPEJSKICH, uwzględniając Traktat ustanawiający Wspólnotę Europejską, ROZDZIAŁ 1

Uchwała nr 647/XXV/2012 Rady Miejskiej w Piasecznie z dnia r.

Adres strony internetowej, na której Zamawiający udostępnia Specyfikację Istotnych Warunków Zamówienia:

Tworzenie modelu obiektowego

UCHWAŁ A SENATU RZECZYPOSPOLITEJ POLSKIEJ. z dnia 18 października 2012 r. w sprawie ustawy o zmianie ustawy o podatku dochodowym od osób fizycznych

U S T A W A. z dnia. o zmianie ustawy o ułatwieniu zatrudnienia absolwentom szkół. Art. 1.

Ewidencjonowanie nieruchomości. W Sejmie oceniają działania starostów i prezydentów

Metoda LBL (ang. Layer by Layer, pol. Warstwa Po Warstwie). Jest ona metodą najprostszą.

- 70% wg starych zasad i 30% wg nowych zasad dla osób, które. - 55% wg starych zasad i 45% wg nowych zasad dla osób, które

Objaśnienia wartości, przyjętych do Projektu Wieloletniej Prognozy Finansowej Gminy Golina na lata

FORUM ZWIĄZKÓW ZAWODOWYCH

Komentarz do prac egzaminacyjnych w zawodzie technik administracji 343[01] ETAP PRAKTYCZNY EGZAMINU POTWIERDZAJĄCEGO KWALIFIKACJE ZAWODOWE

Dziedziczenie : Dziedziczenie to nic innego jak definiowanie nowych klas w oparciu o już istniejące.

Kancelaria Radcy Prawnego

Instrukcja Obsługi STRONA PODMIOTOWA BIP

ZARZĄDZENIE NR 243/2007 PREZYDENTA MIASTA KRAKOWA Z DNIA 7 lutego 2007 roku

Szczegółowe wyjaśnienia dotyczące definicji MŚP i związanych z nią dylematów

Koszty jakości. Definiowanie kosztów jakości oraz ich modele strukturalne

1. NAUCZANIE JĘZYKÓW NOWOŻYTNYCH (OBOWIĄZKOWYCH) W RAMACH PROGRAMU STUDIÓW STACJONARNYCH (CYKL A I B) I NIESTACJONARNYCH

Procedura działania Punktu Potwierdzającego Profile Zaufane epuap w Urzędzie Miejskim w Barcinie

Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Elementy animacji sterowanie manipulatorem

SEKCJA I: ZAMAWIAJĄCY SEKCJA II: PRZEDMIOT ZAMÓWIENIA.

Zakupy poniżej euro Zamówienia w procedurze krajowej i unijnej

Transkrypt:

Projektowanie systemów informatycznych Tytuł kursu: projektowanie systemów informatycznych Cel kursu: Celem wykładu jest zapoznanie studentów z najważniejszymi aspektami projektowania systemów informatycznych a w szczególności realizacją diagramów UML w perspektywie implementacyjnej. Planowany zakres wykładu Wykład 1: Wprowadzenie do projektowania systemów informatycznych. Wykład 2: Diagramy klas UML w perspektywie implementacyjnej. Wykład 3: Diagramy sekwencji, pakietów, stanu i wdrożenia. Wykład 4. Projektowanie interfejsu użytkownika cz. 1 Wykład 5. Projektowanie interfejsu użytkownika cz. 2 Projektowanie systemów informatycznych, wykład 1 1 Niniejszy kurs będzie poruszał zagadnienia dotyczące projektowania systemów informatycznych. Ponieważ dziedzina jest bardzo obszerna a rozmiar kursu dość ograniczony więc zdecydowałem się na prezentację najważniejszych aspektów oraz najczęściej wykorzystywanych technik w projektowaniu systemów informatycznych. Przy czym w dalszej części kursu zamiast używać długiego określenia: projektowanie systemów informatycznych będę pisał krótko projektowanie. Niniejszy kurs nie należy traktować jako kompendium wiedzy z dziedziny projektowania. Jest on jedynie wstępem do obszernej wiedzy na temat której napisano wiele książek. Dopiero przestudiowanie literatury podanej na slajdzie 3 daje w miarę pełny obraz dziedziny. Biorąc pod uwagę powyższe zdecydowałem się podzielić kurs na dwie główne części: Pierwsza część będzie dotyczyła wprowadzenia do projektowania systemów informatycznych ze szczególnym uwzględnieniem roli UML i metod obiektowych. Myślę, że to wprowadzenie zaprezentuję w trzech jednostkach wykładowych. Druga część będzie dotyczyła projektowania interfejsu użytkownika, innych aspektów nie związanych z dziedziną problemu. Niniejszy kurs zwłaszcza w pierwszej części będzie pewną kontynuacją kursu z poprzedniego semestru, który dotyczył modelowania systemów informatycznych, gdyż projektowanie traktowane jest jako kolejny etap budowy systemu informatycznego po modelowaniu. Stąd wyniki modelowania stanowią dane wejściowe dla projektowania. Zakładam, że student realizujący niniejszy kurs zna podstawy inżynierii oprogramowania. Stąd, w celu przypomnienia, proponuję przed rozpoczęciem studiowania dalszej części tego kursu przeczytać wykład 1 kursu z modelowania systemów informatycznych realizowanego na poprzednim semestrze. 1

Zasady zaliczenia kursu W materiałach wykładowych przewidziano dwa zadania do rozwiązania. Końcowa ocena jest średnią Państwa ocen za poszczególne zadania. Końcowa ocena wyliczana jest według następujących zasad zamieszczonych w tabeli poniżej: Zakres średniej (2 2.75> (2.72 3.25> (3.25 3.75> (3.75 4.25> (4.25 4.75> (4.75 5> Ocena 2 3 3.5 4 4.5 5 Dodatkowo na zjeździe, pod koniec semestru, mogę zapytać z dowolnego zadania oddanego przez studenta aby sprawdzić czy zadanie zostało wykonane samodzielnie. Projektowanie systemów informatycznych, wykład 1 2 W przypadku gdy student otrzymał ocenę końcową 2 istnieje możliwość jej poprawienia poprzez oddanie zadań na zjeździe w siedzibie WSInf, przy czym student może otrzymać wtedy maksymalną ocenę końcową równą 3. 2

Cel i zakres pierwszego wykładu Wykład 1: Wprowadzenie do projektowania systemów informatycznych Cel Prezentacja celów i zakresu projektowania systemów informatycznych. Zakres 1) Literatura przedmiotu 2) Etapy projektowania systemów informatycznych 3) Czynności realizowane na etapie projektowania 4) Perspektywy języka UML 5) Diagramy UML tworzone na etapie projektowania Projektowanie systemów informatycznych, wykład 1 3 3

Literatura przedmiotu Literatura: 1. Sommerville I.: Inżynieria oprogramowania, WNT 2. Fowler M.: UML w kropelce, LTP Warszawa 2005 3. Yourdon E., Argila C.: Analiza obiektowa i projektowanie, WNT, 2000 4. Jaszkiewicz A.: Inżynieria oprogramowania, Helion, 1997 5. Gamma E., Helm R., Johnson R., Vlissides J.: Wzorce projektowe. Elementy oprogramowania obiektowego wielokrotnego użytku, WNT, 2005 6. J. Cooper.: Java. Wzorce projektowe, Helion, 2001 7. A. Shalloway, J. R. Trott.: Programowanie zorientowane obiektowo. Wzorce projektowe. Wydanie II, Helion, 2005 8. http://wazniak.mimuw.edu.pl/ Projektowanie systemów informatycznych, wykład 1 4 Polecam szczególnie wykłady na stronie [8]. Uważam, że każdy student a w szczególności studenci e-studiów powinien zaglądać na tę stronę, gdzie można znaleźć bardzo profesjonalnie przegotowane wykłady z informatyki. Polecam szczególnie wykład nr. 18 inżynieria oprogramowania, jednostka wykładowa: zasady skutecznego działania. Polecam również biblię inżynierii oprogramowania [1] gdzie znajdą Państwo rzetelne napisane, zrozumiałym językiem, bardzo bogate kompendium wiedzy z inżynierii oprogramowania. Jako pierwszą książkę dotyczącą UML polecam [2]. Książka ta łagodnie wprowadza do użytkowania tego języka. Ponadto zawiera bardzo cenne uwagi dotyczące literatury inżynierii oprogramowania. Uwagi te można traktować jako przewodnik po studiowaniu tej obszernej dziedziny nauki. Polecam również szczególnie biblię wzorców projektowych [6] autorstwa bandy czworga twórców koncepcji wzorców projektowych. Do powyższej literatury będę odwoływał się w treści niniejszego kursu. 4

Etap projektowania Celem projektowania jest opracowanie szczegółowego opisu implementacji systemu, który po modyfikacjach na etapie implementacji systemu staje się również głównym elementem dokumentacji technicznej. Określenie wymagań Projektowanie Implementacja Testowanie Konserwacja Faza strategiczna Analiza Instalacja Dokumentacja W odróżnieniu od etapu analizy, projektowanie przeprowadzane jest w kontekście środowiska implementacji oraz środowiska pracy systemu. Projektanci muszą więc posiadać dobrą znajomość języków, bibliotek, i narzędzi stosowanych w trakcie implementacji oraz systemu operacyjnego i platformy sprzętowej na jakiej będzie działał system. Projektowanie systemów informatycznych, wykład 1 5 Jak podano w [3] odkąd opracowano pierwsze metodyki kaskadowe, inżynierowie oprogramowania rozróżniali modelowanie (analizę) i projektowanie. Analiza zajmuje się tym, co system musi robić, a projektowanie tym, jak te wymagania będą zrealizowane. Przeprowadzając analizę, zwykle przyjmujemy założenie, że dostępny jest doskonały" sposób realizacji. Podczas projektowania zakładamy zazwyczaj świadomie lub nieświadomie, że dany system będzie realizowany na platformie sprzętowej x, w systemie operacyjnym y i w języku programowania z. Zasadniczą sprawą jest traktowanie projektowania i analizy jako odrębnych czynności. Mogą się one nakładać; oczywiście w typowym projekcie mogą być wykonywane jednocześnie. Ciągle jednak istnieje zasadnicza różnica między co" i,jak", rozpoznawana przez większość inżynierów oprogramowania. Niepostrzeżenie tej różnicy stwarza niebezpieczeństwo, że analityk lub użytkownik włączy do zestawu wymagań zbyt wiele założeń i ograniczeń dotyczących sposobu realizacji. Projektowanie systemów informatycznych jest konieczne ponieważ model budowany w fazie analizy abstrahuje od szczegółów środowiska implementacji, jest on zbyt ogólny, aby być bezpośrednią podstawą implementacji. Projektowanie wymaga więc uszczegółowienia wyników analizy. Rysunek zaprezentowany na slajdzie pokazuje umiejscowienie etapu projektowania w cyklu życia systemu. Rysunek ten sugeruje, że projektowanie, szczególnie na jego wczesnych etapach może być realizowane równolegle z analizą. Ponadto rysunek pokazuje, że projektowanie ma znaczący wkład do dokumentacji. Jednak pragnę podkreślić fakt, że większość metodologii tworzenia systemów informatycznych traktuje analizę i projektowanie jako dwa oddzielne etapy. 5

Podstawowe założenia inżynierii oprogramowania Struktura oprogramowania odzwierciedla model stworzony na etapie modelowania. Zachowanie przez system naturalnej struktury dziedziny problemu. Niewielkie zmiany w dziedzinie problemu powinny prowadzić do niewielkich, tanich zmian w oprogramowaniu. Projekt powinien być wynikiem transformacji konstrukcji występujących w modelu do odpowiadających im konstrukcji środowiska implementacji. Wykorzystanie idei programowania strukturalnego i obiektowego. Projektowanie systemów informatycznych, wykład 1 6 Jednym z podstawowych założeń inżynierii oprogramowania jest dążenie do tego, aby struktura tworzonego oprogramowania jak najbardziej zachowywała ogólną strukturę modelu stworzonego w poprzedniej fazie. Celem jest uzyskanie systemu, którego struktura odzwierciedlałaby naturalne zależności w danej dziedzinie problemu. Współczesne metody inżynierii oprogramowania są więc rozwinięciem znanej już od lat sześćdziesiątych idei programowania strukturalnego. Zachowanie przez system naturalnej struktury dziedziny problemu ma przede wszystkim podnieść jego zrozumiałość oraz ułatwić modyfikowanie systemu. Niewielkie zmiany w dziedzinie problemu powinny prowadzić do niewielkich zmian w oprogramowaniu. Ich wprowadzenie nie powinno być więc zbyt kosztowne i długotrwałe. Niekorzystna jest sytuacja, w której klient żądający niewielkiej jego zdaniem zmiany, dowiaduje się, że będzie ona wymagała istotnych zmian w systemie, podważa to bowiem zaufanie klienta do producenta oprogramowania. Z drugiej strony klient łatwiej zaakceptuje konieczność dokonania istotnych zmian w systemie, jeżeli żądana przez niego modyfikacja jest poważna również z jego punktu widzenia. 6

Czynności realizowane na etapie projektowania 1. Uszczegółowienie modelu składowej dziedziny problemu 2. Projektowanie elementów systemu nie związanych z dziedziną problemu 1. Interfejs użytkownika 2. Zarządzanie danymi 3. Zarządzanie pamięcią 4. Zarządzanie zadaniami 5. Optymalizacja systemu 3. Dostosowanie do ograniczeń i możliwości systemu 4. Określenie fizycznej struktury systemu Projektowanie systemów informatycznych, wykład 1 7 Oprogramowanie składa się z kilku składowych. Jedną z nich jest składowa dziedziny problemu odpowiedzialna za wykonywanie podstawowych funkcji systemu oraz przechowywanie podstawowych dla systemu danych. Jest to składowa, która powstaje poprzez uszczegółowienie modelu zbudowanego w fazie analizy. Uszczegółowienie wyników analizy polega między innymi na wyborze sposobu implementacji pewnych konstrukcji pojawiających się w modelu, które mogą być zrealizowane na jeden z kilku sposobów. Firma programistyczna może jednak przyjąć pewne standardy, które jednoznacznie definiują sposób implementacji tego typu konstrukcji. Pozwala to w istotnym stopniu zredukować nakład pracy w fazie projektowania. W fazie projektowania należy opracować także inne składowe oprogramowania, tj.: składową kontaktu z użytkownikiem odpowiedzialną za współpracę systemu z użytkownikiem (użytkownikami), składową zarządzania danymi odpowiedzialną za przechowywanie oraz dostęp do trwałych danych, składową zarządzania pamięcią oraz składową zarządzania zadaniami. W fazie analizy pewne funkcje i struktury danych mogą zostać zamodelowane w sposób mało efektywny. W fazie projektowania dokonywana jest więc również optymalizacja systemu. Środowisko implementacji może zarówno narzucać pewne ograniczenia, to jest nie pozwalać na bezpośrednie zaimplementowanie pewnych konstrukcji pojawiających się w modelu, jak i oferować dodatkowe możliwości ułatwiające implementację. Projektowanie polega więc także na dostosowaniu systemu do ograniczeń i możliwości środowiska implementacji. 7

Różne podejścia do projektowania Metody strukturalne wykorzystanie różnych pojęć oraz notacji graficznych na etapie analizy oraz projektowania. Metody obiektowe w fazie analizy, projektowania i implementacji wykorzystuje się te same pojęcia i notacje graficzne. Projektowanie systemów informatycznych, wykład 1 8 W przypadku metod strukturalnych w fazie projektowania i implementacji wykorzystywane są wyraźnie odmienne pojęcia niż te stosowane w fazie modelowania. W związku z tym w metodach tych pojawiają się także notacje graficzne odmienne od stosowanych w fazie modelowania. W przypadku metod obiektowych w fazach modelowania, projektowania i implementacji wykorzystywane są te same pojęcia. We wszystkich fazach operuje się pojęciami klas, pól i metod. W związku z tym w projektowaniu obiektowym wykorzystywane są w zasadzie te same notacje graficzne co w fazie analizy; choć pojawiają się w nich pewne rozszerzenia stosowane tylko w fazie projektowania. Ponieważ metody obiektowe wypierają metody strukturalne, które coraz rzadziej są wykorzystywane to zdecydowałem, że nie będę prezentował na tym kursie metod strukturalnych. Ponadto projektowanie strukturalne wymagałoby dodatkowo wyjaśnienia podstaw modelowania strukturalnego, co przekracza zakres niniejszego kursu a wcześniejszy kurs dotyczący modelowania nie prezentował metod strukturalnych. 8

UML a projektowanie systemów Trzy perspektywy UML Perspektywa pojęciowa Reprezentuje diagramy reprezentujące koncepcje na poziomie studiowania dziedziny problemu. Nie zawiera żadnych pojęć specyficznych dla implementacji oprogramowania. Realizacja niniejszej perspektywy ma prowadzić do odpowiedzi na pytanie Co jest problemem lub inaczej co powinien realizować system. Perspektywa specyfikacyjna (interfejsu) używa diagramów perspektywy pojęciowej rozbudowując je o elementy wskazujące jak rozwiązać problem na poziomie niezależnym od platformy implementacyjnej. Obejmuje specyfikację elementów, komponentów i interfejsów programu. Perspektywa implementacyjna rozwinięcie diagramów perspektywy specyfikacyjnej dla konkretnej platformy programistycznej Projektowanie systemów informatycznych, wykład 1 9 Otwarty format UML (ang. Unified Modeling Language, czyli Ujednolicony Język Modelowania), to język formalny służący do opisu świata obiektów w modelowaniu obiektowym, projektowaniu obiektowym i programowaniu obiektowym. Służy do modelowania dziedziny problemu (opisywania-modelowania fragmentu istniejącej rzeczywistości - na przykład modelowanie tego, czym zajmuje się jakiś dział w firmie) w przypadku stosowania go do analizy, oraz do modelowania rzeczywistości, która ma dopiero powstać -tworzy się w nim głównie modele systemów informatycznych. UML jest głównie używany wraz z jego reprezentacją graficzną jego elementom przypisane są symbole, które wiązane są ze sobą na diagramach. Podstawy UML były prezentowane na wykładzie Modelowanie Systemów Informatycznych w poprzednim semestrze. Znacząca część niniejszego kursu dotyczy wykorzystania UML w projektowaniu systemów. Jak podano w [2], przy rozpatrywaniu graficznych języków modelowania, zwykle myśli się o nich w kontekście procesu kaskadowego. W procesie kaskadowym zazwyczaj tworzy się dokumenty, które służą do przekazywania prac miedzy fazami projektowania i kodowania. Modele graficzne mogą stanowić większą część tych dokumentacji. Niezależnie od tego czy stosujemy model kaskadowy czy nie i tak wykonujemy czynności modelowania, projektowania, kodowania i testowania. Można np. uruchomić projekt iteracyjny z 1-tygodniowymi iteracjami, z których każda jest małym procesem kaskadowym. Ponieważ UML może być wykorzystany zarówno na etapie modelowania czy projektowania wyróżnia się trzy perspektywy odpowiadające etapom tworzenia systemów informatycznych. Każda z perspektyw odpowiada innemu spojrzeniu na system odpowiadającemu aktualnemu etapowi realizacji. Zrozumienie pojęcia perspektyw jest kluczowe dla poprawnego rysowania i czytania diagramów UML. Diagram UML powinien być przygotowywany z punktu widzenia jednej perspektywy. Kiedy diagram UML jest czytany, czytelnik powinien wiedzieć w jakiej perspektywie diagram został przygotowany. Ta wiedza jest nieodzowna aby zinterpretować diagram poprawnie. Niestety granice pomiędzy perspektywami nie są ostre. Najbardziej zatarto granice pomiędzy perspektywą specyfikacyjną a implementacyjną przygotowując najczęściej po diagramach pojęciowych od razu diagramy implementacyjne. Stąd pierwsze zadanie Państwa będzie polegało na modyfikacji diagramów perspektywy pojęciowej na diagramy perspektywy implementacyjnej oraz zbudowanie diagramów specyficznych dla perspektywy interfejsu i perspektywy implementacyjnej. Zadania te pojawią się po umieszczeniu wykładu 2 i 3. 9

Perspektywa pojęciowa a implementacyjna Poniższy rysunek pokazuje dwie perspektywy tego samego fragmentu diagramu UML. Na rysunku widać podstawowe różnice pomiędzy perspektywą pojęciową a implementacyjną. Źródło: http://www.informit.com/articles/article.aspx?p=360440&seqnum=6&rl=1 Dice Dice Projektowanie systemów informatycznych, wykład 1 10 Na następnym wykładzie różnice między perspektywą pojęciową a implementacyjną diagramów klas i obiektów zostaną zaprezentowane dokładniej. 10

Diagramy UML na etapie projektowania Zwykle na etapie projektowania tworzone są perspektywie implementacyjnej: następujące diagramy w Diagramy klas z perspektywy oprogramowania przedstawiają klasy programu i relacje zachodzące między nimi. Diagramy sekwencji dla częstych scenariuszy wartościowym podejściem jest wybranie najważniejszych i najbardziej interesujących scenariuszy spośród przypadków użycia systemu i użycie kart CRC lub diagramów sekwencji do określenia, co się w trakcie tych scenariuszy dzieje w programie. Diagramy pakietów, które ukazują w ogólnym świetle sposób organizacji oprogramowania. Diagramy stanów dla klas ze skomplikowanymi cyklami działania. Diagramy wdrożenia pokazujące fizyczny układ oprogramowania. Projektowanie systemów informatycznych, wykład 1 11 11