420 likes | 666 Views
Analiza, projekt i implementacja wybranych aspektów systemu wsparcia szkoły językowej. Aleksandra Drezno Promotor: mgr inż. Jerzy Stankiewicz. Agenda. Cel i zakres pracy Założenia systemu Wymagania systemu Modelowanie systemu Narzędzia użyte do realizacji projektu
E N D
Analiza, 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
Agenda • Cel i zakres pracy • Założenia systemu • Wymagania systemu • Modelowanie 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
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
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
Wymagania systemu - funkcjonalne • Logowanie • 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
Wymagania systemu - pozafunkcjonalne • Wydajność • Łatwość utrzymania • Użyteczność • Dostępność Warszawska Wyższa Szkoła Informatyki 2013
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
Modelowanie – diagram przypadków użycia Przykł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
Modelowanie – diagram przypadków użycia Zarzą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
Modelowanie – diagram przypadków użycia Edytuj 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
Modelowanie Rysunek 7. Wiek.aspx Rysunek 8. Wiek.aspx - edycja Warszawska Wyższa Szkoła Informatyki 2013
Modelowanie – diagram klas Rysunek 2. Diagram Klas Warszawska Wyższa Szkoła Informatyki 2013
Rysunek 2. Diagram Klas - powiększenie Warszawska Wyższa Szkoła Informatyki 2013
Modelowanie – diagram klas Opis przykładowej klasy: Tabela 1. Diagram Klas - Podrecznik Warszawska Wyższa Szkoła Informatyki 2013
Modelowanie – diagram czynności Rysunek 3. Diagram aktywności - przypisanie słuchacza do grupy Warszawska Wyższa Szkoła Informatyki 2013
Narzędzia użyte do realizacji projektu Aplikacja 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
Uwierzytelnianie i autoryzacja Pierwszym 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 <authentication> określonemu w pliku Web.config. Warszawska Wyższa Szkoła Informatyki 2013
Uwierzytelnianie i autoryzacja Warszawska Wyższa Szkoła Informatyki 2013
Uwierzytelnianie i autoryzacja Po 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
Uwierzytelnianie i autoryzacja Warszawska Wyższa Szkoła Informatyki 2013
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 e-mail posiada odpowiedni format. W aplikacji wykorzystane zostały następujące walidacyjne kontrolki serwerowe: • RequiredFieldValidator • RegularExpressionValidator Warszawska Wyższa Szkoła Informatyki 2013
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
Rysunek 4. Projekt bazy danych - Model Fizyczny Warszawska Wyższa Szkoła Informatyki 2013
Projektowanie – model fizyczny, opis Tabela 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
Projektowanie – procedury składowane Przykł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
Projektowanie - trigger Przykł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
Projektowanie – funkcja skalarna Wykorzystana 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
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
Projektowanie – interfejs Interfejs 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
Projektowanie – interfejs Rysunek 6. Strona główna Warszawska Wyższa Szkoła Informatyki 2013
Scenariusze testowe Przykładowy scenariusz testowy: Warszawska Wyższa Szkoła Informatyki 2013
Działanie aplikacji Rysunek 9. Grupy Warszawska Wyższa Szkoła Informatyki 2013
Działanie aplikacji Rysunek 10. Grupy - edycja Warszawska Wyższa Szkoła Informatyki 2013
Działanie aplikacji Rysunek 11. Słuchacze - wybierz Warszawska Wyższa Szkoła Informatyki 2013
Działanie aplikacji Rysunek 12. Słuchacze - szukaj Warszawska Wyższa Szkoła Informatyki 2013
Działanie aplikacji Rysunek 13. Przypisanie do grupy - udane Warszawska Wyższa Szkoła Informatyki 2013
Działanie aplikacji Rysunek 14. Przypisanie do grupy - nieudane Warszawska Wyższa Szkoła Informatyki 2013
Możliwości dalszego rozwoju systemu System 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
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
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
Dziękuję za uwagę. Aleksandra Drezno Warszawska Wyższa Szkoła Informatyki 2013