MAS dr. Inż. Mariusz Trzaska. Wykład 1



Podobne dokumenty
Programowanie warstwy klienta w aplikacji Java EE

Programowanie warstwy klienta w aplikacji Java EE

stworzyliśmy najlepsze rozwiązania do projektowania organizacji ruchu Dołącz do naszych zadowolonych użytkowników!

Wymagania techniczne aplikacji LSI

Przestrzeń papier / model

Instrukcja korzystania z serwisu Geomelioportal.pl. - Strona 1/12 -

Wymagania edukacyjne z przedmiotu Pracownia aplikacji internetowych dla klasy 3iA Nauczyciel: Kornel Barteczko Rok szkolny: 2015/2016

Oznaczenie CE. Ocena ryzyka. Rozwiązanie programowe dla oznakowania

Baza Aktów Własnych Opis produktu. Zastosowanie, Wykaz funkcjonalności, Cennik.

Absolutt Systemy Teleinformatyczne ul. MontaŜowa 7, Bielsko-Biała tel./fax

Efektywne wspieranie procesu projektowego

Nazwa Wydziału Nazwa jednostki prowadzącej moduł Nazwa modułu kształcenia. Kod modułu Język kształcenia Efekty kształcenia dla modułu kształcenia

Chmura obliczeniowa. Rozwiązania dla biznesu.

Podstawy Programowania

Standardy proceduralne i dokumentacyjne

COMARCH ERP E-SKLEP...

Inżynieria Oprogramowania 2013/14. Testy integracyjne

TECHNOLOGIA EJB I JPA KOD: EJBJPA

ZAPYTANIE OFERTOWE. Bielsko-Biała, 22 maja 2013 r.

Scenariusz lekcji. Scenariusz lekcji 1 TEMAT LEKCJI: 2 CELE LEKCJI: 2.1 Wiadomości: 2.2 Umiejętności: 3 METODY NAUCZANIA 4 ŚRODKI DYDAKTYCZNE

WYMAGANIA EDUKACYJNE Z PRZEDMIOTU PRACOWNIA URZĄDZEŃ TECHNIKI KOMPUTEROWEJ. dla klasy 1ia. Rok szkolny 2015/2016 Nauczyciel: Agnieszka Wdowiak

Szkolenie BIM dla menedżerów

Opis i specyfikacja interfejsu SI WCPR do wybranych systemów zewnętrznych

Nowe funkcje w programie Symfonia e-dokumenty w wersji Spis treści:

Automatyzacja pracy w magazynie tylko na bazie standardowo zakodowanych informacji!

Tworzenie kwerend. Nazwisko Imię Nr indeksu Ocena

Specyfikacja dotycząca modernizacji przepompowni ścieków należącej do oczyszczalni ścieków w Podrzeczu.

SZCZEGÓŁOWY OPIS PRZEDMIOTU ZAMÓWIENIA

Wymagania edukacyjne z przedmiotu Systemy baz danych dla klasy 3iA Nauczyciel: Kornel Barteczko Rok szkolny: 2015/2016

Konfiguracja Windows do pracy w sieci

PROGRAM SZKOLENIA DLA SPECJALISTÓW RYNKU PRACY Z UŻYTKOWANIA OPROGRAMOWANIA EIPD

QuarkXpress skład i publikacja operacje podstawowe

Konfiguracja przeglądarki Internet Explorer 6.0 i instalacja komponentu w środowisku systemów Windows

Parametryzacja modeli części w Technologii Synchronicznej

KASPERSKY LAB. Kaspersky Administration Kit wersja 6.0. Podręcznik administratora

Kliknij przycisk Start > Panel sterowania > Konta użytkowników > Poczta (w widoku

Wykrywanie i usuwanie uszkodzeń w sieci

Zmiany funkcjonalne wprowadzone w wersji

WYMAGANIA EDUKACYJNE Z PRZEDMIOTU SIECI KOMPUTEROWE. dla klasy 2

10 i zarządzania komputerem (74) o Konfigurowanie zasad buforowania zapisu na dysku SSD przy użyciu konsoli CompMgmt.msc (74) o

Współpraca programów WINBUD Kosztorys i Symfonia Handel premium I Informacje ogólne

Przedsięwzięcia Działania Specyfikacja 1. Inwestycje w rozwój wspólnych lub połączonych systemów

Strona 1. Nr4/2013. BENCHMARKING - Czy coś o tym wiemy? W biznesie wszystko jest jasne!

Elektroniczny Urząd oczami Comarch Nowoczesna administracja oczami Comarch

Optymalizacja wydajności zapytań w testowaniu schematu bazy danych

Znane problemy Autodesk Revit Architecture 2010

Podyplomowe Studium Informatyki w Bizniesie Wydział Matematyki i Informatyki, Uniwersytet Łódzki specjalność: Tworzenie aplikacji w środowisku Oracle

Znane problemy Autodesk Revit Structure 2010

WYMAGANIA EDUKACYJNE Z INFORMATYKI

Sugerowany sposób rozwiązania problemów. Istnieje kilka sposobów umieszczania wykresów w raportach i formularzach.

AgroColumbus unikalny system oświetlenia kurników

Wstęp. 2. Definicje. 3. Warunki zawarcia umowy

Zapytanie ofertowe. Stworzenie inteligentnych narzędzi do generacji i zarządzania stron internetowych (SaaS+WEB2.0),

Wymagania edukacyjne z przedmiotu Witryny i aplikacje internetowe dla klasy 3iA Nauczyciel: Mariusz Walendzewicz Rok szkolny: 2015/2016

PL

SENTE CMS zarządzanie treścią witryny internetowej

Nowe funkcje w module Repozytorium Dokumentów

Partner projektu F5 Konsulting Sp. z o.o. ul. Składowa 5, Poznań T: F:

Ekspertyza w zakresie oszacowania kosztów zaprojektowania i wykonania systemu identyfikacji i rejestracji zwierząt towarzyszących

Projektowanie architektury systemu rozproszonego. Jarosław Kuchta Projektowanie Aplikacji Internetowych

Statystyka - wprowadzenie

Regulamin obowiązujący do :

Biuro Partnera projektu F5 Konsulting Sp. z o.o. ul. Składowa 5, Poznań T: F:

Programowanie obiektowe

Baza aktywności e-learningowej uczelni

Instrukcja dla użytkownika Płockiej Platformy Teleinformatycznej E - Urząd

Program szkolenia Kluczowe kompetencje informatyczne na rynku pracy

Acronis Backup & Recovery 10 Advanced Server

1. Niniejszy Regulamin określa zasady realizacji zakupów na stronie oraz relacje pomiędzy e-

odkryj swój biznes na nowo

RAPORT Analizy Finansowej Rozliczenia JGP Instrukcja obsługi

Wybrane działy Informatyki Stosowanej

Bazy danych 2. Wykład 1

amjam 2015 Regulamin

SZCZEGÓŁOWY OPIS PRZEDMIOTU ZAMÓWIENIA. Spis treści

Informatyka Systemów Autonomicznych

ZAŁOŻENIA TECHNICZNE

SPIS TREŚCI ZESTAWIENIE SZKOLEŃ DO PRZEPROWADZENIA W RAMACH ZAMÓWIENIA CHARAKTERYSTYKA MINIMALNEGO ZAKRESU SZKOLEŃ...

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

MODELOWANIE W UML DO OPISU BIZNESU, CZY SYSTEMÓW?

GEO-INFO V Delta 2010

Wymagania edukacyjne z przedmiotu Pracownia Baz danych dla klasy 3iA Nauczyciel: Mariusz Walendzewicz Rok szkolny: 2015/2016

Zintegrowany system obsługi przedsiębiorstwa. Migracja do Firebird 2.x

Wybrane działy Informatyki Stosowanej

MINISTERSTWO SPRAW WEWNĘTRZNYCH I ADMINISTRACJI DEPARTAMENT INFORMATYZACJI

Procedury i instrukcje związane z ochroną danych osobowych w szkole

REGULAMIN. Konkurs ekologiczny dla szkół podstawowych. w zakresie prawidłowego postępowania ze zużytymi bateriami

Notatka służbowa dotycząca Terenu Centralnego Bis.

INSTRUKCJA UŻYTKOWNIKA OTWARTEGO SYSTEMU ANTYPLAGIATOWEGO (OSA)

OFERTA JEDNOSTKI NAUKOWEJ. STAŻ PRACOWNIKA PRZEDSIĘBIORSTWA W JEDNOSTCE NAUKOWEJ w ramach projektu Stolica staży (UDA.POKL

Oświadczenie o przygotowaniu systemu Comarch ERP Optima wersja do wymagań RODO

ZAŁĄCZNIK NR 1B KARTA USŁUGI Utrzymanie Sieci LAN/WAN (USLW)

PROTOTYP C4 CACTUS AIRFLOW 2L: TYLKO 2L/100 KM

Podręcznik dla nauczycieli. i szkoleniowców. Training for Trainers on e-learning PT/05/B/F/PP

e Policja w służbie społeczeństw u województwa śląskiego DZIAŁANIE ROZW ÓJ ELEKTRONICZN YCH USŁUG PUBLICZNYCH

Moduł Konsolidacji Sprawozdań wersja

Akademia Sieci Szerokopasmowych program szkoleń

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

Wytyczne projektowe okablowania strukturalnego i sieci telefonicznej

Laboratorium 5 Zend Framework: lista zadań

Transkrypt:

MAS dr. Inż. Mariusz Trzaska Wykład 1 Prjektwanie i mdelwanie architektury systemu

Tematyka wykładu Infrmacje Mariusz Trzaska: Mdelwanie i implementacja systemów infrmatycznych. Rk 2008/11. Wersja elektrniczna (ebk działający na Windws, ios, Andrid, urządzeniach mbilnych raz czytnikach) w księgarni internetwej Virtual.pl: wersja PDF i epub. Wydawnictw PJWSTK. Strn 299. ISBN 978-83-89244-71-3: sklep PJWSTK. Fragmenty: http://www.mtrzaska.cm/mas-ksiazka Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 2

Literatura c.d. Infrmacje (2) Książki mdelwaniu, UML, biektwści; Książki dtyczące prgramwania: Java, C#, C++. Zaliczenie Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 3

Zagadnienia Wprwadzenie Prblemy i ich rzwiązanie Architektura - widki Różne rdzaje architektur Mainframe, Cienki klient, Dwuwarstwwa, Trójwarstwwa Architektura trójwarstwwa Mdel View Cntrller Pdsumwanie Wykrzystan: wykłady Sftware Architecture autrstwa Chandika Mendis (University f Mratuwa) artykuł Java SE Applicatin Design With MVC autrstwa Rbert Eckstein Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 4

Architektura Klucz d sprawienia by skmplikwane systemy stały się mżliwe d zbudwania. Efektywne zarządzanie twrzeniem skmplikwanych systemów Łatwiejsze kierwanie dużymi grupami pracwników Zwiększne pnwne użycie (reuse) Lepsza spójnść i integracja w ramach systemu Realizacja strategii bizneswych Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 5

Architektura dlaczeg? Nie mżesz wybudwać drapacza chmur w ten sam spsób c budy dla psa Bch, SD 99 Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 6

Architektura ptencjalne prblemy Dekmpzycja systemu Jak pdzielić system na mniejsze kawałki? Czy uwzględniliśmy wszystkie elementy? Czy pszczególne elementy pasują d siebie? Kntrla i zarządzanie Prblemy zrównleglenia Własnści bejmujące wiele aspektów systemu Kmprmisy Zapewnienie Pnwneg użycia Redukcji ksztów Krótkieg czasu d uzyskania gtweg rzwiązania (time t market) Integralnści systemu Rzszerzalnści Pielęgnwalnści Zgdnści z celami bizneswymi Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 7

Architektura - definicja Architektura bejmuje pis struktury systemu składająceg się z: Kmpnentów lub blków, Ich właściwści widcznych na zewnątrz, Zależnści pmiędzy nimi. Na pdstawie Bass, Clements, and Kazman. Sftware Architecture in Practice, Addisn-Wesley 1997 Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 8

Dekmpzycja systemu Odpwiedź na prblemy ze złżnścią Intelektualną Związaną z zarządzaniem Jak pdzielić system na mniejsze elementy? Enkapsulacja Luźne wiązanie Przejrzyste interfejsy i usługi Czy mamy wszystkie niezbędne elementy? Czy zapewniliśmy spełnienie wymagań Funkcjnalnych Niefunkcjnalnych Czy elementy pasują d siebie? Dbrze zdefiniwane interfejsy Rygrystyczne wytyczne Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 9

Decyzje architektniczne - zakres Na architekturę ma wpływ wiele decyzji, które nie mgą być pdjęte bez kmprmisów związanych z gólnymi celami systemu. Decyzje pwinny być pdejmwane z perspektywy całeg systemu lub nawet jeszcze szerzej. Decyzja, która mże być pdjęta krzystając z węższej perspektywy pwinna być przekazana właściwej jednstce lub grupie rbczej (architektura minimalistyczna; minimalist architecture) Decyzje architektniczne pwinny się skupiać na ważnych bszarach dużym wpływie na resztę systemu, pzstając w zgdzie z bizneswym celem (strategią) Cele strategiczne Ważne usługi Cechy systemu jak całści Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 10

Architektura - widki Kncepcyjny Diagram, Identyfikacja kmpnentów i przydział dpwiedzialnści Lgiczny Uaktualniny diagram kncepcyjny z interfejsami specyfikujący kmpnenty Prjekt współpracy kmpnentów, mechanizmów i prtkłów płączeń Wyknawczy (executin) Prcesy (diagramy interakcji) Przydział działających instancji kmpnentów dla prcesów, Ich współpraca Wykrzystanie zasbów Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 11

Widk kncepcyjny Identyfikuje wyskpzimwe kmpnenty z uwzględnieniem właściwej dekmpzycji. Zależnści, Spsby współpracy, Odpwiedzialnści, Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 12

Widk lgiczny Definiuje interfejsy i specyfikację kmpnentów: Precyzyjnie, Jednznacznie Określa dkładne spsby: interakcji, współpracy Pwinien zapewniać w miarę niezależny spsób pracy dla pszczególnych prgramistów. Twrzy dkładne diagramy architektury systemu Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 13

Uwzględnia: Widk wyknawczy fizyczny (implementacyjny) mdel Wdrżenie Odzwierciedlenie prcesów w działającym systemie Skalwalnść Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 14

Mainframe (systemy spadkwe) Nie jest t współczesny klient/serwer, ale są pewne pdbieństwa Użytkwnik łączy się z kmputerem centralnym za pmcą prsteg terminala, który przechwytuje plecenia klawiatury i przesyła je d jednstki centralnej Całe przetwarzanie dbywa się w kmputerze centralnym Mżna wykrzystywać różne platfrmy sprzętwe i systemwe Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 15

Architektury współdzielenia plików Nie jest t współczesny klient/serwer. Pliki były udstępniane przez serwer i pbierane na stacje rbczą. Następnie całe przetwarzanie (włączając w t lgikę bizneswą i dane) dbywał się na stacji rbczej Takie pdejście działa w miarę dbrze jeżeli bjętść danych nie jest duża. Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 16

Klient - Serwer Pdejście wprwadzne w celu zastąpienia serwera plików. Krzystając z (relacyjneg) systemu zarządzania bazą danych (DBMS), plecenia (kwerendy, ang. queries) użytkwnika mgą być wyknywane natychmiast. Redukcja ruchu sieciweg pnieważ przesyłam tylk dane będące dpwiedzią na kwerendę (a nie wszystkie ptrzebne d bliczenia/ustalenia wyniku). Ułatwienie współpracy wielu użytkwników dzięki graficznemu interfejswi dstępu d danych. Wykrzystanie zdalneg wywływania prcedur (Remte Prcedure Calls - RPCs) lub języka zapytań (Standard Query Language - SQL) d kmunikacji pmiędzy klientem, a serwerem. Jedna z najbardziej (najbardziej ppularna?) architektur wykrzystywanych współcześnie. Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 17

Architektura cienkieg klienta (thin client) Pdbna d klient-serwer Klient jest maszyną bardz słabych parametrach Całe przetwarzanie dbywa się na serwerze Nie zdbyła wielkiej ppularnści Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 18

Architektura dwuwarstwwa Składa się z trzech kmpnentów rzmieszcznych w dwóch warstwach: Klient (interfejs użytkwnika), Serwer (dane, lgika bizneswa) Interfejs użytkwnika + część funkcjnalnści Zarządzanie bazą danych + (większa) część funkcjnalnści Interfejs dstępu d aplikacji jest zlkalizwany na kmputerze użytkwnika, a funkcjnalnść bazdanwa na serwerze (zwykle maszyna duż mcniejsza). Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 19

Architektura dwuwarstwwa (2) Zarządzanie przetwarzaniem jest pdzielne pmiędzy śrdwisk użytkwnika, a śrdwisk systemu zarządzania bazą danych. Serwer bazy danych udstępnia: Dane, Prcedury, Wyzwalacze (ang. triggers), Spsób implementacji zarządzaniem danych i usługami przez dstawcę BD granicza elastycznść i wybór daneg systemu DBMS Limitwana zdlnść d przenszenia systemu z jedneg śrdwiska bazdanweg d inneg. Zakres funkcji Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 20

Architektura trójwarstwwa Główna zmiana w stsunku d architektury dwuwarstwwej: Ddan warstwę pśredniczącą (Middleware) pmiędzy interfejsem użytkwnika raz bazą danych Wiele spsbów implementacji raz zadań dla warstwy pśredniczącej: Mnitrwanie transakcji, Wymiana kmunikatów pmiędzy pzstałymi warstwami, Serwer aplikacji (Lgika bizneswa) Ddatkwe mżliwści Klejkwanie, Uruchamianie aplikacji, Specjalna prpagacja kmunikatów. Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 21

Mnitrwanie transakcji Zdlnść d uaktualniania wielu różnych DBMS ów w czasie jednej (lgicznej) transakcji Przezrczysta praca z różnymi źródłami danych: Pliki, Architektura trójwarstwwa (2) Relacyjne DBMS, Obiektwe DBMS, Nadawanie (raz mdyfikwanie) prirytetów transakcjm Bezpieczeństw Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 22

Architektura trójwarstwwa (3) Wymiana kmunikatów Przetwarzanie asynchrniczne Krzyści, Prblemy Przetwarzanie synchrniczne Przezrczysta kmunikacja pmiędzy aplikacjami hetergenicznymi Inteligentne zarządzanie ruchem: Prirytety, Klejkwanie, Autmatyczne pwiadamianie zdarzeniach Separuje d prblemów związanych z kmunikacją Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 23

Serwer aplikacji Aplikacja jest uruchamiana na współdzielnym kmputerze, zamiast na kliencie Przetwarzanie GUI dbywa się pza serwerem Obsługa: Lgiki bizneswej, Dstępu d danych Pprawa bezpieczeństwa (klient nie ma bezpśrednieg dstępu d aplikacji) Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 24

Lepsza skalwalnść Niższe kszty pielęgnacji aplikacji na jednym serwerze niż na wielu kmputerach klienckich Przykłady: Apache Tmcat JBss Serwer aplikacji J2EE Plne, Zpe Serwer aplikacji (2) Websphere Applicatin Server Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 25

Typwe kmpnenty: Bezpieczeństw Płączenie d baz(y) danych Dstęp d zasbów Serwer aplikacji (3) Interfejsy d kmpnentów zewnętrznych Zarządzanie transakcjami Kmpnenty sterwane zdarzeniami (lub reagujące na zdarzenia) Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 26

Rzprszna aplikacja wielwarstwwa Aplikacja 1 Aplikacja 2 Aplikacja kliencka Dynamiczne strny HTML Kmputer kliencki Strny JSP Enterprise Beans Enterprise Beans Serwer aplikacyjny Baza danych Baza danych Serwer baz danych Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 27

Architektura trójwarstwwa typu ORB (Object Request Brker) Systemy typu klient/serwer wykrzystujące technlgie wspierające rzprszne biekty CORBA, RMI, DCOM, itd. Wspierają współpracę rzprsznych biektów, umżliwiając użytkwnikm budwę systemów przez łączenie biektów pchdzących z różnych źródeł (i wyknanych w różnych technlgiach) Szczegóły implementacyjne wykrzystywanych biektów są ukryte przed użytkwnikiem. Prgramista musi tylk znać interfejs pisujący dstęp d biektu Mim wielu zalet wydaje się, że nie są zbyt ppularne (?) Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 28

ORB Najważniejsze funkcje (usługi) technlgii ORB: Definiwanie interfejsów, Lkalizacja i ewentualna aktywacja zdalnych biektów, Kmunikacja pmiędzy biektami. Usługa lkalizująca ORB Ustanwienie płączenia Usługa aktywująca Aplikacja kliencka Kmunikacja Usługa zdalna (biekt) Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 29

ORB (2) Inne funkcje: Bezpieczeństw, Transakcje, Wyszukiwanie, Wiele spsbów realizacji ORB: Implementacja w kliencie, Oddzielne prcesy Część systemu peracyjneg czy serwera aplikacji Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 30

.NET Framewrk - Windws 2003 Serwer jak serwer aplikacji Enterprise Services Cnnectin Pling Distributed Transactins Security Messaging (MSMQ) Management/M nitring Źródł: MS Windws 2003 Technical Overview f Applicatin Services, MS Crpratin Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 31

Szkielet aplikacji Spring Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 32

Architektura warstwwa Wyzwania związane z twrzeniem dużych systemów Ogrmne ilści kdu źródłweg (setki tysięcy lub miliny linii) Wyskie skmplikwanie interakcji pmiędzy kmpnentami Rzległe wykrzystanie gtwych elemntów ( z półki ) Prgramwanie w wielu językach Duża liczba prgramistów (częst są t setki sób rzprsznych gegraficznie) Różne spsby pracy z danymi (w tym zapewnianie trwałści): Pliki, Bazy relacyjna, Bazy biektwe, Rzprszenie kmpnentów na różne platfrmy sprzętwe Rzbudwana wielzadaniwść Warstwwe diagramy są dbrym spsbem na pdzielenie dużych systemów na zarządzalne kawałki Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 33

Architektura warstwwa (2) Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 34

Diagram architektury warstwwej dla.net (przykład) Warstwa Prezentacji zapewnia (graficzny) interfejs użytkwnika. Przeważnie wykrzystuje Windws Frms lub ASP.NET. Warstwa Bizneswa realizuje bizneswą funkcjnalnść aplikacji. Realizwane jest t za pmcą jedneg z języków udstępnianych przez platfrmę.net. Stwrzne kmpnenty mgą być płączne z Micrsft.NET Enterprise Services i/lub z Micrsft BizTalk Server. Warstwa Danych zapewnia dstęp d zewnętrznych źródeł danych takich jak bazy danych (np. MS Access, MS SQL Server) czy pliki XML. Źródł: MSDN Patterns and Practices Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 35

Mdel View Cntrller Wzrzec prjektwy(?) pracwany w 1979 przez Trygve Reenskaug w Xerx Pal Alt Research Center. Bardz mcn wykrzystywany przy prgramwaniu z wykrzystaniem GUI na platfrmie Java. Jest pewną mdyfikacją architektury trójwarstwwej. Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 36

Mdel View Cntrller (2) Składa się z trzech elementów (warstw): Mdel (mdel) - dane Widk (view) - wizualizacja Kntrler (cntrler) - zarządzanie Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 37

Mdel Reprezentacja danych (w tym metadanych), Definicja zasad rządzących dstępem d nich, Właściwa mdyfikacja danych (z uwzględnieniem np. pwiadamiania zmianach) Częst jest też pewneg rdzaju dwzrwaniem prcesów ze świata rzeczywisteg Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 38

Widk (view) Wizualizacja zawartści mdelu (danych). Dkładnie kreśla jak dane mają zstać wyświetlne. Musi właściwie reagwać na zmiany mdelu (danych). Technlgia push widk rejestruje się w mdelu celem trzymywania pwiadmień zmianach, Technlgia pull widk sam dpwiada za dpytywanie mdelu. Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 39

Kntrler (cntrller) Tłumaczy działania użytkwnika na akcje, które dzwierciedlane będą w mdelu. W zależnści d rdzaju aplikacji: Aplikacja desktpwa: działaniami użytkwnika będą kliknięcia myszką lub wybry pzycji z menu, Aplikacja krpracyjna dstępna przez www: dpwiednie żądania HTTP GET raz POST Kntrler mże tez utwrzyć nwy widk Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 40

MVC - diagram Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 41

MVC przykład dla Javy SE 6 Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 42

MVC przykład dla Javy SE 6 (2) P utwrzeniu mdelu, widku raz kntrlera: Widk rejestruje się w mdelu celem trzymywania pwiadmień zmianach (push). Mdel nie jest świadmy istnienia kntrlera. Kntrler jest łączny z widkiem (krzystając z listener a). Kntrler trzymuje referencję pkazującą na mdel. Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 43

MVC przykład dla Javy SE 6 (3) Gdy użytkwnik wykna jakąś aktywnść: Widk rzpznaje aktywnść GUI, np. kliknięcie na przycisku Widk wywłuje dpwiednią metdę z kntrlera Kntrler łączy się z mdelem ewentualnie mdyfikując jeg stan. Jeżeli mdel zstał zmdyfikwany, infrmuje tym widk(i) (krzystając z dpwiednich listener ów). Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 44

MVC nwe pdejście Różnice w stsunku d pprzedniej wersji Pwiadmienia zmianach stanu w mdelu są przekazywane za pmcą kntrlera. Czyli, kntrler kntrluje przepływ danych pmiędzy widkiem, a mdelem Takie pdejście pzwala na lepsze ddzielenie mdelu d widku. Klasyczna architektura trójwarstwwa? http://java.sun.cm/develper/technicalarticles/javase/mvc/index.html Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 45

Pdsumwanie Właściwie zaprjektwana architektura znacząc ułatwia (umżliwia) budwę dużych systemów kmputerwych Obecnie najppularniejsza jest architektura trójwarstwwa Interfejs użytkwnika, Lgika bizneswa, Źródł danych. Istnieje wiele gtwych rzwiązań wspierających twrzenie aplikacji w takiej architekturze. Mdelwanie i Analiza Systemów Infrmacyjnych (MAS), wykład 1 46