Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision | |||
amo:zadanie_7 [2017/10/23 23:25] pszwed usunięto |
— (current) | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Zadanie 7 Zastosowanie w projektowaniu ====== | ||
- | |||
- | Celem zajęć jest sporządzenie częściowego projektu serwisu internetowego. Modelując, należy przyjąć założenie, | ||
- | |||
- | O ile analiza wymagań specyfikuje, | ||
- | |||
- | Architekturę aplikacji internetowych opisuje się często, jako trójwarstwową: | ||
- | |||
- | *Model (warstwa składowania danych) obejmuje bazie danych (lub inną formę zarządzania danymi) | ||
- | *Widok (warstwa prezentacji) obejmuje obiekty realizujące interfejs graficzny (okna dialogowe, strony HTML, itd.) | ||
- | *Kontroler (warstwa przetwarzania) reaguje na polecenia płynące z obiektów warstwy widoku, przetwarza je i wysyła zlecenia do warstwy modelu. | ||
- | |||
- | Sporządzając projekt będziemy więc definiować obiekty typowe dla każdej warstwy: | ||
- | |||
- | ===== Składowe projektu ===== | ||
- | |||
- | ==== Model ==== | ||
- | Baza danych może być potraktowana jako klasa , której atrybutami są tabele, natomiast metodami zapytania (kwerendy). | ||
- | |||
- | ==== Widok ==== | ||
- | |||
- | Elementami widoku klasy stron HTML. | ||
- | |||
- | *Atrybutami stron są wyświetlane na nich dane (obiekty) oraz pola edycyjne, listy, pola ukryte. | ||
- | *Użytkownik dokonując interakcji za pośrednictwem przeglądarki woła metody obiektu. W większości przypadków metody te przekazują sterowanie do skryptów, ale też mogą być metody implementowane wewnętrznie, | ||
- | *Kreacja obiektu następuje najczęściej w wyniku wywołania skryptu, ale mogą też istnieć strony statyczne (np.: strona logowania serwisu) odpowiadające obiektom globalnym | ||
- | *Destrukcja obiektu jest dokonywana niejawnie przez przeglądarkę | ||
- | |||
- | Definicja klasy, czyli przepis jak utworzyć konkretną stronę zapisana jest w odpowiednim skrypcie odpowiedzialnym za jej generację. | ||
- | Aplikacje internetowe często mają złożone widoki, np.: zawierają ramki złożone ze stron podrzędnych (kompozycja). | ||
- | |||
- | ==== Kontroler ==== | ||
- | Elementami tej warstwy są skrypty. | ||
- | |||
- | *Mogą mieć jedną domyślną metodę wywoływaną przez zlecenie get lub post. Rozróżnienie metod może nastąpić na podstawie parametru typu action. Wówczas nazwy metod powinny odpowiadać wartościom tego parametru. | ||
- | *Metody skryptu mogą mieć parametry. Powinny odpowiadać polom stron, z których są wołane. | ||
- | *Skrypty mogą korzystać z funkcji innych modułów | ||
- | *Skrypty mogą być traktowane jako obiekty globalne, o czasie życia równym czasowi istnienia systemu | ||
- | |||
- | ===== Do wykonania ===== | ||
- | Należy wybrać istniejący serwis internetowy i zamodelować jego fragment: | ||
- | |||
- | -Analiza dziedziny: zidentyfikować klasy przetwarzanych obiektów i relacje pomiędzy nimi (w ograniczonym zakresie, niezbędnym do zrozumienia następnych diagramów) | ||
- | -Projekt: zidentyfikować klasy wchodzące w skład warstw aplikacji (strony HTML, skrypty, baza danych) w zakresie niezbędnym do realizacji punktu 3 | ||
- | -Projekt: sporządzić jeden diagram sekwencji przedstawiający wybraną funkcje serwisu (ale nie logowania). | ||
- | -W sprawozdaniu proszę dodać zrzuty ekranu dla stron HTML (wraz z identyfikatorem obiektu). Należy to potraktować jako projekt interfejsu. | ||
- | W miarę możliwości proszę starać się wygenerować alternatywne scenariusze pojawiające się w przypadku błędnych danych wprowadzonych przez użytkownika. | ||
- | |||
- | Wybierając funkcję serwisu do zamodelowania należy w miarę możliwości wybrać taką, która jest wykonywana w kilku etapach. | ||
- | |||
- | ===== Przykładowe zadania ===== | ||
- | -Licytacja towaru na Allegro | ||
- | -Wystawianie komentarza na Allegro | ||
- | -Zakup w sklepie internetowym (dodanie do koszyka) | ||
- | -Zakup w sklepie internetowym (złożenie zamówienia) | ||
- | -Wystawienie komentarza do artykułu w serwisie typu onet.pl | ||
- | -Publikacja materiałów na forum internetowym | ||
- | -Wyszukiwanie ogłoszeń w serwisie typu gratka.pl | ||
- | -Wysyłanie SMS za pośrednictwem bramki | ||
- | |||
- | ===== Przykłady ===== | ||
- | |||
- | [[http:// | ||