Aleksandra Drezno Promotor: mgr inż. Jerzy Stankiewicz

1 Aleksandra Drezno Promotor: mgr inż. Jerzy StankiewiczA...
Author: Lech Pietrusiński
0 downloads 0 Views

1 Aleksandra Drezno Promotor: mgr inż. Jerzy StankiewiczAnaliza, projekt i implementacja wybranych aspektów systemu wsparcia szkoły językowej. Aleksandra Drezno Promotor: mgr inż. Jerzy Stankiewicz Warszawska Wyższa Szkoła Informatyki 2013

2 Agenda Cel i zakres pracy Założenia systemu Wymagania systemuModelowanie systemu Narzędzia użyte do realizacji projektu Uwierzytelnianie i autoryzacja Walidacja danych Projektowanie Scenariusze testowe Działanie aplikacji Możliwości dalszego rozwoju Wnioski Warszawska Wyższa Szkoła Informatyki 2013

3 Cel i zakres pracy Celem pracy jest:przeprowadzenie analizy zagadnienia opracowanie projektu aplikacji w stopniu wystarczającym do przeprowadzenia procesu budowy aplikacji napisanie kodu aplikacji internetowej spełniającej podane funkcjonalności. Warszawska Wyższa Szkoła Informatyki 2013

4 Założenia systemu Organizacją jest szkoła językowa. Jej misją jest prowadzenie zajęć w ramach nauczania języków obcych. W tym celu szkoła zatrudnia pracowników, których można podzielić na dwie grupy: administracyjną – zajmują się między innymi obsługą wprowadzanego systemu (wprowadzenie, modyfikacja danych). dydaktyczną – prowadzenie zajęć Warszawska Wyższa Szkoła Informatyki 2013 Rysunek 1. Diagram Aktorów

5 Wymagania systemu - funkcjonalneLogowanie Obsługa słowników* Obsługa słuchaczy Obsługa lektorów Obsługa grup Obsługa użytkowników* * tylko dla użytkowników w roli Admin Warszawska Wyższa Szkoła Informatyki 2013

6 Wymagania systemu - pozafunkcjonalneWydajność Łatwość utrzymania Użyteczność Dostępność Warszawska Wyższa Szkoła Informatyki 2013

7 Modelowanie systemu Zamodelowano i opisano system wykorzystując diagramy UML: diagramy przypadków użycia, w oparciu o użytkowników systemu: Diagram przypadków użycia – Użytkownik, Diagram przypadków użycia - Admin, Diagram przypadków użycia - Pracownik Biura. diagram czynności (diagram aktywności) obrazujący czynność przypisania słuchacza do grupy. diagram klas Warszawska Wyższa Szkoła Informatyki 2013

8 Modelowanie – diagram przypadków użyciaPrzykładowy diagram przypadków użycia, dla użytkownika Admin Rysunek 2. Diagram przypadków użycia - Admin Warszawska Wyższa Szkoła Informatyki 2013

9 Modelowanie – diagram przypadków użyciaZarządzaj słownikami: Dodaj do słownika Przypadek dostępny tylko dla użytkowników w roli Admin. Na każdym formularzu słownikowym znajdują się pola/pole tekstowe i przycisk. Po wprowadzeniu danych w pola tekstowe oraz przyciśnięciu przycisku dodany zostaje nowy rekord do wyświetlanej na stronie listy, aktualizowanej na bieżąco. Warszawska Wyższa Szkoła Informatyki 2013

10 Modelowanie – diagram przypadków użyciaEdytuj słownik Przypadek dostępny tylko dla użytkowników w roli Admin. Na każdym formularzu słownikowym, obok wyświetlanych rekordów znajduje się przycisk „Edytuj”. Po wciśnięciu go, wybrany rekord w tabeli przechodzi w tryb edycji. Oznacza to, że można go modyfikować, podobnie jakby znajdował się w polu tekstowym. Pojawiają się również dwa przyciski: „Zapisz” - zapisuje zmienione dane, „Rezygnuj” - nie zapisuje zmian. Wciśnięcie jednego lub drugiego powoduje wyjście z trybu zmiany. Warszawska Wyższa Szkoła Informatyki 2013

11 Modelowanie Rysunek 7. Wiek.aspx Rysunek 8. Wiek.aspx - edycjaWarszawska Wyższa Szkoła Informatyki 2013

12 Modelowanie – diagram klasRysunek 2. Diagram Klas Warszawska Wyższa Szkoła Informatyki 2013

13 Rysunek 2. Diagram Klas - powiększenieWarszawska Wyższa Szkoła Informatyki 2013

14 Modelowanie – diagram klasOpis przykładowej klasy: Podrecznik Nazwa Typ Czy wymagane? Opis IDpodrecznik int - PK tak unikalny identyfikator rekordu (Primary Key) z aktywną opcją autoinkrementacji. tytul char tytuł podręcznika, łącznie z jego poziomem autor nie autor lub autorzy podręcznika wydawnictwo nazwa wydawnictwa Tabela 1. Diagram Klas - Podrecznik Warszawska Wyższa Szkoła Informatyki 2013

15 Modelowanie – diagram czynnościRysunek 3. Diagram aktywności - przypisanie słuchacza do grupy Warszawska Wyższa Szkoła Informatyki 2013

16 Narzędzia użyte do realizacji projektuAplikacja została napisana w oparciu o środowisko ASP.NET i technologię Framework 4, przy użyciu Visual Studio 2010 oraz bazy danych Microsoft SQL Server 2008 R2. Wybranym językiem programowania jest obiektowy język C#, odznaczający się dużą prostotą, wygodą pisania i przejrzystością. Warszawska Wyższa Szkoła Informatyki 2013

17 Uwierzytelnianie i autoryzacjaPierwszym krokiem wykonywanym przez system jest uwierzytelnienie, czyli identyfikacja użytkownika. W aplikacji odpowiedzialny jest za to proces logowania. Dlatego, mimo, że domyślną stroną aplikacji jest Strona Główna, pierwszym formularzem wyświetlanym użytkownikowi uruchamiającemu aplikację jest właśnie strona Logowanie. Uzyskujemy taki efekt, dzięki określonemu w pliku Web.config. Warszawska Wyższa Szkoła Informatyki 2013

18 Uwierzytelnianie i autoryzacjaWarszawska Wyższa Szkoła Informatyki 2013

19 Uwierzytelnianie i autoryzacjaPo zalogowaniu system udostępnia zasoby i opcje zgodnie z uprawnieniami roli, do której przypisany jest użytkownik. Jest to właśnie proces autoryzacji. W aplikacji utworzona została jedna rola - rola administratora systemu, o nazwie Admin. Jej uprawnienia różnią się od uprawnień pozostałych użytkowników możliwością przeglądania i modyfikacji danych słownikowych oraz możliwością dodania nowego użytkownika. Warszawska Wyższa Szkoła Informatyki 2013

20 Uwierzytelnianie i autoryzacjaWarszawska Wyższa Szkoła Informatyki 2013

21 Walidacja danych Mimo, że nie można możliwości sprawdzenia, czy wprowadzane dane są prawdziwe, istnieją narzędzia pomagające upewnić się, że dane zostały wpisane w pole tekstowe, oraz podany adres posiada odpowiedni format. W aplikacji wykorzystane zostały następujące walidacyjne kontrolki serwerowe: RequiredFieldValidator RegularExpressionValidator Warszawska Wyższa Szkoła Informatyki 2013

22 Warszawska Wyższa Szkoła Informatyki 2013

23 Projektowanie W fazie projektowania stworzono:diagram (Projekt bazy danych - Model Fizyczny) opis tabel modelu fizycznego procedury składowane wyzwalacz funkcja skalarna widok. Warszawska Wyższa Szkoła Informatyki 2013

24 Rysunek 4. Projekt bazy danych - Model FizycznyWarszawska Wyższa Szkoła Informatyki 2013

25 Projektowanie – model fizyczny, opisTabela PODRECZNIK Tabela ta należy do tabel słownikowych. Zawiera następujące atrybuty: IDPODRECZNIK - unikalny identyfikator rekordu (Primary Key) z aktywną opcją autoinkrementacji. TYTUL - zawiera dane typu char składające się na tytuł podręcznika, łącznie z nazwą poziomu, np. "New English File intermediate". Nie zezwala na wartość typu null. AUTOR - typ danych: char, przechowuje nazwiska autora/autorów, z inicjałami imion. WYDAWNICTWO - typ danych: char, przechowuje nazwę wydawnictwa. Warszawska Wyższa Szkoła Informatyki 2013

26 Projektowanie – procedury składowanePrzykładowa procedura składowana: spPokazSluchaczy (SluchaczePlusGrupy.aspx) - procedura ta zwraca listę Słuchaczy przypisanych do grupy o podanym w parametrze ID Listing 1. Procedura składowana spPokazSluchaczy Warszawska Wyższa Szkoła Informatyki 2013

27 Projektowanie - triggerPrzykładowa procedura wyzwalana: tr_AfterDelete_SLUCHACZ - Użyty po stronie bazy wyzwalacz ma za zadanie ‘przechwycić’ rekord usuniętego słuchacza i wstawić jego podstawowe dane do tabeli archiwalnej. Listing 2. Procedura wyzwalana Warszawska Wyższa Szkoła Informatyki 2013

28 Projektowanie – funkcja skalarnaWykorzystana w aplikacji funkcja IleOsob (SluchacGrupa.aspx) zwraca ilość Słuchaczy przypisanych do grupy o przekazanym w parametrze ID Listing 3. Funkcja skalarna Warszawska Wyższa Szkoła Informatyki 2013

29 Projektowanie – widok Wykorzystany w aplikacji widok Grupa_all (Grupy.aspx) zwraca wszystkie informacje o grupach wiążąc dane oparte o klucz obcy. Aby uzyskać tabelę z tymi danymi, zamiast każdorazowo korzystać z kodu zapytania Listing 4. Widok Warszawska Wyższa Szkoła Informatyki 2013

30 Projektowanie – interfejsInterfejs jest zaprojektowany z użyciem Master Page, której głównym elementem jest nagłówek. Rysunek 5. Menu Warszawska Wyższa Szkoła Informatyki 2013

31 Projektowanie – interfejsRysunek 6. Strona główna Warszawska Wyższa Szkoła Informatyki 2013

32 Scenariusze testowe Przykładowy scenariusz testowy:Scenariusz testowy3 - Usunięcie podręcznika Testowana funkcjonalność UC5.3 Edytuj słownik Cel testu Testowanie nieprawidłowego usunięcia danych słownikowych Sposób dostępu Po zalogowaniu do systemu w roli Admin użytkownik wybiera zakładkę Menu - „Słowniki” - „Podręcznik” i zostaje przekierowany do formularza Podręcznik Kroki Testowe Akcja użytkownika Odpowiedź systemu Kliknięcie przycisku „Usuń” w tabeli Sprawdzenie, czy wybrany podręcznik jest przypisany do istniejącej grupy. Ponieważ jest, system wyświetla komunikat: „Wybrany element nie może zostać usunięty. Jest przypisany do istniejącej grupy.” Usunięcie nie powiodło się. Warszawska Wyższa Szkoła Informatyki 2013

33 Działanie aplikacji Rysunek 9. GrupyWarszawska Wyższa Szkoła Informatyki 2013

34 Działanie aplikacji Rysunek 10. Grupy - edycjaWarszawska Wyższa Szkoła Informatyki 2013

35 Działanie aplikacji Rysunek 11. Słuchacze - wybierzWarszawska Wyższa Szkoła Informatyki 2013

36 Działanie aplikacji Rysunek 12. Słuchacze - szukajWarszawska Wyższa Szkoła Informatyki 2013

37 Działanie aplikacji Rysunek 13. Przypisanie do grupy - udaneWarszawska Wyższa Szkoła Informatyki 2013

38 Działanie aplikacji Rysunek 14. Przypisanie do grupy - nieudaneWarszawska Wyższa Szkoła Informatyki 2013

39 Możliwości dalszego rozwoju systemuSystem jest prototypem, który w kolejnej wersji można rozbudować o: dodanie funkcjonalności „Dokonaj Wpłaty” - wprowadzenie danych dotyczących dokonanych opłat i na ich podstawie, biorąc pod uwagę cenę zajęć w grupie, prezentowanie należności moduł listy słuchaczy zadłużonych - prognozowanie, na podstawie wybranego schematu płatności, terminu, do którego należy dokonać płatności, a po jego przekroczeniu dodanie słuchacza do listy dłużników Warszawska Wyższa Szkoła Informatyki 2013

40 Wnioski Wszystkie cele przedstawione przez promotora w zadaniu dyplomowym zostały zrealizowane. W dokumencie pracy dyplomowej opisano główne założenia systemu, który w następnym etapie zamodelowano i w efekcie powstał estetyczny i czytelny produkt, którego obsługa nie powinna sprawić trudności potencjalnym użytkownikom. Warszawska Wyższa Szkoła Informatyki 2013

41 Wnioski Szczególnie dla mnie ważne okazały się:możliwość przejścia wieloetapowego procesu, jakim jest budowanie systemu okazja do wykorzystania wcześniej nieznanej mi technologii LINQ oraz LINQ to SQL praktyczna funkcja systemu – kontrola ilości słuchaczy w grupie Warszawska Wyższa Szkoła Informatyki 2013

42 Dziękuję za uwagę. Aleksandra DreznoWarszawska Wyższa Szkoła Informatyki 2013