1. Wprowadzenie jak się tworzy projekt?



Podobne dokumenty
REFERAT O PRACY DYPLOMOWEJ

I. Informacje ogólne. Jednym z takich systemów jest Mambo.

REFERAT PRACY DYPLOMOWEJ

Jarosław Kuchta Administrowanie Systemami Komputerowymi. Internetowe Usługi Informacyjne

Dokument Detaliczny Projektu Temat: Księgarnia On-line Bukstor

Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC

PDM wbudowany w Solid Edge

Referat pracy dyplomowej

Zarządzanie i realizacja projektów systemu Microsoft SharePoint 2010

Zarządzaj projektami efektywnie i na wysokim poziomie. Enovatio Projects SYSTEM ZARZĄDZANIA PROJEKTAMI

Temat: Windows 7 Centrum akcji program antywirusowy

Obsługa poczty elektronicznej w domenie emeritus.ue.poznan.pl

Tworzenie aplikacji Web Alicja Zwiewka. Page 1

ZAPYTANIE OFERTOWE. Zamawiający. Przedmiot zapytania ofertowego. Wrocław, dnia r.

Procedury techniczne modułu Forte Kontroling. Środowisko pracy programu i elementy konfiguracji

IO - Plan wdrożenia. M.Jałmużna T.Jurkiewicz P.Kasprzyk M.Robak. 5 czerwca 2006

Referat pracy dyplomowej

Logowanie do aplikacji TETA Web. Instrukcja Użytkownika

asix Autoryzacja dostępu do zasobów WWW systemu asix (na przykładzie systemu operacyjnego Windows 2008)

PRZEWODNIK PO PRZEDMIOCIE

Usługi analityczne budowa kostki analitycznej Część pierwsza.

Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych

Tomasz Grześ. Systemy zarządzania treścią

Wymagane jest podłączenie serwera do Internetu (konieczne do zdalnego dostępu).

A. Specyfikacja wymagań na utworzenie portalu internetowego

Dokument Detaliczny Projektu

11. Autoryzacja użytkowników

Programowanie aplikacji biznesowych

REFERAT PRACY DYPLOMOWEJ Temat pracy: Projekt i realizacja serwisu ogłoszeń z inteligentną wyszukiwarką

Szczegółowy opis przedmiotu umowy. 1. Środowisko SharePoint UWMD (wewnętrzne) składa się z następujących grup serwerów:

ActiveXperts SMS Messaging Server

System zarządzający grami programistycznymi Meridius

OCHRONA PRZED RANSOMWARE

Specyfikacja wymagań systemowych (może podlegać edytowaniu na kolejnych etapach)

NIEZAWODNE ROZWIĄZANIA SYSTEMÓW AUTOMATYKI. asix. Wymagania programowe systemu asix Pomoc techniczna

Instrukcja instalacji i obsługi programu Szpieg 3

Wydział Informatyki, Elektroniki i Telekomunikacji. Katedra Informatyki

Forte Zarządzanie Produkcją Instalacja i konfiguracja. Wersja B

Oferta szkoleniowa Yosi.pl 2012/2013

Oracle Application Express -

TWÓJ BIZNES. Nasz Obieg Dokumentów

Jak ustawić cele kampanii?

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ),

PROGRAM MICROSOFT DEVELOPER NETWORK ACADEMIC ALLIANCE MSDN AA

OCHRONA PRZED RANSOMWARE. Konfiguracja ustawień

Zaawansowane aplikacje internetowe - laboratorium

IO - Plan testów. M.Jałmużna T.Jurkiewicz P.Kasprzyk M.Robak. 5 czerwca 2006

Zmiana logo. Dziękujemy za wybór naszych rozwiązań. apjoo od Apláuz. Wspólnie przebrniemy przez proces konfiguracji strony www i wstawiania treści.

INSTRUKCJA INSTALACJI SYSTEMU

Dokonaj instalacji IIS opublikuj stronę internetową z pierwszych zajęć. Ukaże się kreator konfigurowania serwera i klikamy przycisk Dalej-->.

WINDOWS Instalacja serwera WWW na systemie Windows XP, 7, 8.

Szpieg 2.0 Instrukcja użytkownika

4. Podstawowa konfiguracja

Architektura systemu e-schola

Case study strona firmowa

Analiza i projekt systemu pracy grupowej z zastosowaniem metodyki SCRUM w technologii SharePoint Karolina Konstantynowicz

Spis treści. Spis treści Wstęp Instalacja nazwa.pl Instalacja Home.pl Edycja grafiki strony logo...

Produkty. MKS Produkty

Wykonać Ćwiczenie: Active Directory, konfiguracja Podstawowa

Strona wizytówka od 400 zł

Programowanie obiektowe

E-commerce. Genialnie proste tworzenie serwisów w PHP i MySQL.

W ramach realizacji zamówienia Wykonawca będzie świadczył usługi w zakresie m.in:

ibcslabel v2 Instrukcja instalacji systemu

Wykaz zmian w programie SysLoger

OPIS i SPECYFIKACJA TECHNICZNA

Kancelaria Prawna.WEB - POMOC

Instrukcja instalacji Asystenta Hotline

Część I Rozpoczęcie pracy z usługami Reporting Services

Instalacja SQL Server Express. Logowanie na stronie Microsoftu

PRZEWODNIK PO PRZEDMIOCIE

Szczegółowy opis przedmiotu zamówienia

PRZEWODNIK PO PRZEDMIOCIE

SoftVig Systemy Informatyczne Sp. z o.o. Szczecin , ul. Cyfrowa 4

Aplikacje Internetowe

Bezpieczne strony WWW dla edukacji, organizacji non-profit i uŝytkowników indywidualnych.

1. Pobieranie i instalacja FotoSendera

WYDRA BY CTI. WYSYŁANIE DOKUMENTÓW ROZLICZENIOWYCH I ARCHIWIZACJA Instrukcja do programu

Pracownia internetowa w szkole podstawowej (edycja jesień 2005)

R o g e r A c c e s s C o n t r o l S y s t e m 5

Szczegółowy opis przedmiotu zamówienia

ZAPYTANIE OFERTOWE. Wsparcie projektów celowych

Platforma e-learningowa

WEBCON BPS Instalacja Standalone

Zmiany funkcjonalne i lista obsłużonych zgłoszeń Comarch DMS

4 Web Forms i ASP.NET Web Forms Programowanie Web Forms Możliwości Web Forms Przetwarzanie Web Forms...152

Instrukcja instalacji wersja 1.01

PROJEKT Z BAZ DANYCH

INFRA. System Connector. Opis systemu

e-awizo SYSTEM POTWIERDZANIA DORĘCZEŃ POCZTY ELEKTRONICZNEJ

Inżynieria oprogramowania- Grupa dra inż. Leszka Grocholskiego II UWr 2009/2010. Aleksandra Kloc, Adam Grycner, Mateusz Łyczek. Wasza-fota.

Produkcja by CTI. Proces instalacji, ważne informacje oraz konfiguracja

Podstawowe możliwości programu Spectro Market Faktura

1. Podręcznik instalacji aplikacji EXR Creator Wstęp Instalacja Instalacja aplikacji EXR Creator z płyty CD

Informatyka I. Standard JDBC Programowanie aplikacji bazodanowych w języku Java

Win Admin Monitor Instrukcja Obsługi

elektroniczna Platforma Usług Administracji Publicznej

Transkrypt:

PIOTR NIEMOJEWSKI * SZKIELET PLATFORMY WEB WSPOMAGAJĄCEJ PRACĘ JEDNOSTKI DYDAKTYCZNEJ A FRAMEWORK FOR WEB-BASED PLATFORM SUPPORTING EDUCATIONAL PROCESS MANAGEMENT STRESZCZENIE: W artykule zawarte są: Przedstawienie kolejnych etapów realizacji portalu od chwili otrzymania zlecenia do gotowego produktu podane zostaną wskazówki dla osób realizujących podobny projekt. Wyjaśnienie zastosowanej technologii, nowatorskie rozwiązania oraz przedstawienie istotnych elementów programistycznych. Wymienienie napotkanych trudności i problemów w procesie tworzenia i scalania produktu. Wyjaśnienie kwestii bezpieczeństwa, autoryzacji oraz prawidłowej instalacji systemu. Prezentacja na żywo (w miarę możliwości czasowych) przedstawiony zostanie szkielet platformy WEB wspomagającej pracę zakładu katedry uczelni. ABSTRACT: The paper includes following content: We will show every single step of our education platform creation process from design to ready project authors of Web based platform will present some tips considering important steps that are to be taken while implementing similar project. Information about new technology and some of our programming secrets. We will explain which problems are very common during project evaluation. Description of security and authorization problems. Live presentation (depending on time given for speech) showing the framework of ASPort education platform. 1. Wprowadzenie jak się tworzy projekt? Rozwiązanie zadania stworzenia portalu z dynamicznie tworzoną treścią wymaga przeprowadzenia wielu analiz przed właściwym rozpoczęciem prac. Pierwszym krokiem jest dobór zespołu ludzi o odpowiednich kwalifikacjach do realizacji zadania. W celu wykonania projektu, zostały stworzone grupy o następujących funkcjach: Kierownik projektu osoba odpowiedzialna za całościowe zarządzanie projektem Jakość osoby odpowiedzialne za merytoryczną analizę dokumentów, tworzenie standardów, systemu obiegu informacji, zapewniające zachowanie spójności projektu * Politechnika Warszawska 158

Dokumentacja zespół odpowiedzialny za tworzenie, aktualizację i scalenie dokumentacji projektowej, użytkownika, administracyjnej, zapis polityki bezpieczeństwa. Grafika osoby odpowiedzialne za projekt szaty graficznej projektu, elementów DTP w dokumentacji oraz tworzenie prezentacji multimedialnych, jeśli jest taka potrzeba. Analitycy najważniejszy trzon zespołu, to od tej grupy zależy, w jaki sposób będzie wyglądał produkt, oraz czy spełni on założenia postawione na etapie zlecenia. Najlepiej, aby byli oni też dobrymi programistami. Programiści osoby odpowiedzialne za zrealizowanie kodowania projektu i jego uruchomienie Specjaliści od baz osoby odpowiedzialne za implementację bazy danych i tworzenie interfejsów do kodu źródłowego dla programistów. Testerzy osoby weryfikujące błędy zarówno widoczne, ze strony użytkownika, jak również te mniej widoczne po stronie kodu. Administrator osoba odpowiedzialna za zarządzanie infrastrukturą informatyczną oraz bezpieczeństwem Utworzenie tych grup, jest bardzo istotne, ponieważ większość projektów dyplomowych lub międzywydziałowych jest realizowana jedynie przez programistów. Ilość osób, potrzebnych do tworzenia portalu została ustalona w naszym przypadku na dwanaście jest to wystarczająca ilość do sprawnego stworzenia portalu (w innym przypadku więcej czasu mogłoby zostać stracone na konserwację, poprawki, wdrożenie i udokumentowanie systemu). Drugim etapem jest przydział zadań dla członków zespołu. Równolegle można zlecić dwa zadania przeprowadzenie analizy projektu przez analityków oraz opracowanie szablonów dokumentów oraz standardów przez jakość. Tuż po zakończeniu analizy projektu można rozpocząć projekt układu szaty graficznej GUI. Teraz następuje właściwy początek realizacji portalu jednoczesne prowadzone kodowanie i tworzenie bazy danych. Po pewnym założonym wstępnie przez kierownika okresie czasu następuje pierwszy punkt kontrolny żargonowo nazywany checkpoint weryfikujący czy projekt jest tworzony w odpowiedni sposób. W tym momencie może nastąpić pierwsze scalenie projektu przez programistów (każdy tworzy jedynie elementarny moduł dla portalu). Analitycy mogą w tym momencie zweryfikować czy jest zgodność pomiędzy założeniami projektowymi a realizacją. Przeprowadzane są kolejne testy i poprawki. Na koniec jest zatwierdzana dokumentacja produktu i jego prezentacja oraz wdrożenie. Bardziej optymalne wyniki można by uzyskać stosując podejście szybkiego tworzenia projektu tzw. extreme Programming. XP pozwala ulepszyć projekt w czterech zasadniczych wymiarach: komunikacja, prostota, sprzężenie/informacje zwrotne oraz pewność działania. Programiści XP komunikują się ze swoimi klientami, jak też z innymi programistami. Utrzymują swój projekt prosty i przejrzysty. Otrzymują informacje zwrotne, rozpoczynając testowanie swojego oprogramowania już od pierwszego dnia. Dostarczają klientom system tak wcześnie, jak to możliwe i wprowadzają sugerowane zmiany. Bazując na takich, fundamentach programiści XP mogą z pewnością i zdecydowaniem reagować na zmieniające się wymagania i technologię. My użyliśmy klasycznej metodologii programowania oraz część elementów XP, przez co ilość roboczogodzin na osobę była umiarkowana. 159

2. Technologia Serwer stron Internet Information Services z obsługą ASP Baza danych MS SQL 2000.NET C#.NET Framework Do zarządzania procesem projektowania stosowanych było wiele różnorodnych aplikacji, między innymi MS SharePoint. Zdefiniowany został szablon dla programistów i standard kodowania (między innymi nazwy zmiennych, skróty, język). Ponieważ portal ma aktywnie tworzoną treść w środowisku ASP.NET, zastosowane zostało środowisko programistyczne Microsoft Visual Studio 2003 (język C#) z obsługą.net Framework 1.1. Windows 2003 lub XP Baza danych SQL 2000 Skompilowne interfejsy oraz kod portalu obsługiwane przez Framework 1.1 Serwer IIS ASP.NET Przeglądarka WWW Internet Explorer, Firefox Firewall + IDS Logi i alerty Rys. 1. Uproszczona struktura systemu Jako podstawowy system bazodanowy wykorzystano Microsoft SQL Serwer 2000 pracujący pod systemami Windows 20003 / XP. Głównym elementem integrującym wszystkie usługi i udostępniającym strony jest typowy serwer WWW - Microsoft Internet Information Services w wersji 5 / 6 wbudowany w system operacyjny Windows. W projekcie zastosowano User Web Controls czyli technologię, która pozwala programującym w.net na wielokrotne wykorzystywanie raz napisanego kodu bez potrzeby jego ponownego kopiowania dodatkowo kod po stronie serwera jest w postaci plików C# z rozszerzeniami ASCX, które są w projekcie dynamicznie ładowane ze strony bazowej ASPX. 160

Portal jest tak zaprojektowany, że wszystkie przyciski menu widoczne po lewej stronie ekranu portalu są tworzone w sposób dynamiczny w zależności od kontekstu wywołania. Uprawnienia osoby, logującej się do portalu decydują jak jest wyświetlana ta sama strona bazowa z inną zawartością, a nie jak to ma miejsce w przypadku innych portali inny plik html lub aspx. Dla użytkownika mniej uprzywilejowanego gościa jest wyświetlana lista przycisków umożliwiających wyłącznie operacje przeglądania ogólnie dostępnych informacji. Strona bazowa ASPX Podstrona (kontrolka) ASCX Podstrona (kontrolka) ASCX Rys. 2. System wywoływania kontrolek ze strony bazowej. Baza danych nie jest bezpośrednio dostępna dla programisty. Do komunikacji z bazą stosujemy specjalnie stworzone interfejsy, które pozwalają na prostą implementację dostępu, modyfikację oraz pobieranie danych Kontrolki ASCX SQL Procedury składowane Interfejsy w C# strony używające b.d. na przykład: szukanie pracowników Rys. 3. Sposób udostępniania informacji przechowywanych w bazie danych W praktyce wygląda to tak: baza danych SQL zawiera procedury składowane wykonują parametryczne zapytania, do procedur są stworzone odpowiednie interfejsy napisane w języku C#, które z kolei są używane w kontrolkach (elementach funkcjonalnych serwisu). 161

3. Napotkane problemy Podczas realizacji tak dużego projektu sporo trudności sprawiło rozwiązanie problemów wynikających z pewnych ograniczeń języka C# a w szczególności zaawansowanego użycia kontrolek User Web Controls. Okazało się, że nie do końca wyjaśnione w dokumentacji MSDN zostały przypadki wywoływania kontrolek przez kolejne kontrolki są problemy z przekazywaniem parametrów oraz gubieniem informacji o stanie elementów sterujących mimo próby ich przechowania w typowy sposób. Kolejny problem to prawidłowa konfiguracja serwera IIS i bazy, przy pierwszym testowym uruchomieniu systemu on-line czas potrzebny na włamanie do serwera przez port 80 wyniósł niecałe 10 minut! Typowym problemem ze strony realizacji jest dotrzymywanie terminów wyznaczonych na sprawdzenia w punktach kontrolnych, które z założenia są nieprzekraczalne. Niezwykle istotne jest prawidłowe stworzenie szablonów dokumentów. W bieżącej wersji ASPort, system nie jest jeszcze skalowalny, należałoby stworzyć specyfikację dodatkową między innymi interfejsów oraz standardy komunikacji między innymi portalami. Nie ustalono też limitów połączeń, może to w praktyce doprowadzić do zablokowania funkcjonalności portalu przy bardzo dużej liczbie aktywnych użytkowników lub przy próbach ataków typu DDoS (rozproszone ataki odmówienia usługi). W celu rozwiązania w/w problemów należałoby wprowadzić moduł zarządzania połączeniami oraz na przykład klasteryzację lub inne rozwiązanie. Testowanie odbywało się w kilku etapach. Pierwsze przeprowadzane było już na etapie tworzenia kodu przez samych programistów. Kolejnym etapem była weryfikacja scalonego projektu, oraz jego kolejnej poprawionej wersji. Na samym końcu przeprowadzono testy bezpieczeństwa. 4. Niebezpieczeństwo Ten fragment artykułu można by rozwinąć do postaci wielotomowej książki a mimo wszystko nie da się przewidzieć wszystkich możliwych prób włamania lub ataku na serwis przez nas publikowany. Podstawowy problem stanowi to, że usługa ASP.NET jest uruchomiona na bardzo dobrze znanym wszystkim serwerze Microsoft IIS. Oprogramowanie to jest niezwykle podatne na różne rodzaje włamań i prób uzyskania nieautoryzowanego dostępu. Podczas pierwszego uruchomienia i instalacji komponentów należy bezwzględnie odłączyć serwer od sieci LAN. W przeciwnym wypadku z dużym prawdopodobieństwem nie uda się dokończyć tej procedury, gdyż system zostanie zainfekowany wirusem lub zainstaluje się jakiś RootKit (aplikacja dająca uprawnienia administracyjne hakerom). Po uruchomieniu IIS, o ile nie są potrzebne należy blokować wszystkie nieużywane usługi (FTP, SMTP, itp.). Po zainstalowaniu i skonfigurowaniu w bezpieczny sposób IIS, należy bezwzględnie ściągnąć wszystkie aktualizacje do tego systemu (najlepiej na innej stacji roboczej i nagrać je na nośnik CD / DVD). Sugerowana jest instalacja przez administratora odpowiednich filtrów w serwerze, które usuwają niedozwolone zapytania mogące bardzo zagrozić dalszemu funkcjonowaniu serwera. Następnym krokiem w naszym przypadku było odpowiednie zabezpieczenie dostępu ze strony zarówno bazy danych jak i aplikacji portalowej. We wszystkich możliwych miejscach, gdzie użytkownik ma styczność z wprowadzaniem danych postanowiono użyć tak zwanych walidatorów treści, są to wbudowane 162

w język C# specjalne formuły filtrująco-sprawdzające poprawność wprowadzanych treści. W ten sposób sprawdzane mogą być dynamicznie typy danych, rozmiar danych i inne parametry. Dzięki temu można znacznie ograniczyć próby użycia niedozwolonych treści jak i uodpornić system na przypadkowe błędy ze strony użytkownika. 5. Dodatkowe rozwiązania Rys. 4. Zaawansowana struktura bazy danych W tym momencie należy wspomnieć o bardzo rozbudowanym systemie uprawnień. W naszym portalu można definiować grupy użytkowników o różnych (wspólnych) uprawnieniach, w projekcie przewidziana jest opcja chwilowego przekazywania uprawnień między użytkownikami (aktualnie jeszcze nie zrealizowana). Baza danych przechowuje informacje o użytkownikach, rolach, uprawnieniach. Na rysunku 4 przedstawiono następujące elementy odpowiedzialne za wspomniane funkcje: RoleRights, Role, UserRole, User, Right, User- Rights Jak już wcześniej wspomniano portal jest tak zaprojektowany, że wszystkie przyciski menu widoczne po lewej stronie ekranu portalu są tworzone w sposób dynamiczny. Jest to bardzo praktyczne podejście, które ułatwia rozbudowę portalu o nowe treści i funkcje bez konieczności zmiany kodu strony w celu dodania nowych składników. Kolejnym elementem zrealizowanym w naszym projekcie jest wsparcie dla szyfrowania połączenia za pomocą SSL. Wystarczy zaimportować do serwera IIS specjalnie przygo- 163

towany certyfikat dla portalu ASPort, aby wszystkie połączenia z serwerem były szyfrowane 128 bitowym kluczem. Dodatkowym zabezpieczeniem wbudowanym w ASPort jest możliwość weryfikacji na każdym etapie wykonywanych operacji czy użytkownik posiada do niej uprawnienie, zabezpiecza to przed niedozwolonym wykorzystaniem kontrolek (podstron) przez zwykłe podmienienie ich adresu i nazw z poziomu przeglądarki. Nie zaimplementowany został moduł szyfrowania haseł w bazie danych, ale można w łatwy sposób podłączyć dostępne mechanizmy szyfrowania danych z.net (np. CryptoAPI). 6. Funkcje portalu Portal edukacyjny jako aplikacja trójwarstwowa z możliwością przyszłej rozbudowy i integracji z innymi systemami (standard bazy danych portalu zgodny ze SCORM) Rys. 5. Wygląd strony głównej Obsługa prac dyplomowych (zautomatyzowane określanie i wybór tematów prac, a także ich ocenianie, przypisywanie dyplomantów do prac; Możliwość odciążenia pracowników dydaktycznych od zajęć administracyjnych (poprzez możliwość przekazywania ich części pracownikom administracji); Promocji realizowanych zadań dydaktycznych i zapewnianiu informacji o zakładzie w formie portalu internetowego; Ułatwienia oceny pracy dydaktycznej zakładu poprzez statystyki 164

Tabela 1 Prezentacja funkcjonalności systemu Rola użytkownika Kontekst wywołania Możliwości Gość Lista pracowników Wybór zakładu/katedry, Imienia, Nazwiska. Sekretarka Administrator Nauczyciel Przedmioty Kalendarium Lista ogłoszeń Prace dyplomowe Dziedziczy uprawnienia gościa Statystyki szczegółowe Statystyki prowadzącego Wyznaczanie terminu Ocena pracy dyplomowej Dodanie/Edycja/Usuwanie wydarzenia Dziedziczy uprawnienia gościa Tworzenie/Edycja/Usuwanie użytkownika Przypisywanie/Usuwanie uprawnień dla grup Zmiana haseł Dodawanie/Edycja nowych uprawnień Dziedziczy uprawnienia gościa Zarządzenie pracami dyplomowymi Nowa konsultacja Usuwanie nieaktualnych konsultacji Edycja własnych danych Tworzenie nowych prac Nazwa, prowadzący, gmach, typ zajęć, kierunek Wyświetlanie kalendarium Wyświetlanie listy ogłoszeń Kierunek, typ pracy, stan, słowa kluczowe Posiada wszystkie uprawnienia gościa Informacje jak dla statystyk ogólnych tylko dodatkowo informacje o latach ubiegłych Ilość prac u danego prowadzącego, dodatkowo informacje o latach ubiegłych Przypisanie terminu obrony dla konkretnej pracy Przypisanie oceny do konkretnej pracy Dodanie/edycja/usuwanie wydarzenia w portalu Posiada wszystkie uprawnienia gościa Dodawanie/edycja/usuwanie użytkownika oraz przypisanie mu roli Możliwość przypisania/usuwania nowych uprawnień na przykład: nauczycielowi Możliwość edycji haseł Dodawanie/Edycja nowych uprawnień, które można następnie przypisać innym użytkownikom Posiada wszystkie uprawnienia gościa Edycja, zamknięcie pracy, przypisanie studentów Wyznaczanie terminu konsultacji dla danego kierunku/specjalności/przedmiotu Możliwość usuwania nieaktualnych terminów konsultacji Edycja danych kontaktowych widocznych dla studentów Dodawanie nowych prac 165

7. Podsumowanie System zaprojektowano jako aplikację trójwarstwową składającą się z bazy danych, warstwy logicznej i warstwy prezentacji. Warstwę logiki stanowił komponent ASPortLibrary zbiór interfejsów bazy danych umożliwiający dostęp do danych dydaktycznych poprzez bezpośrednie wywołania, poprzez system wyszukiwania i poprzez moduł generujący statystyki. Warstwa prezentacji oparła się na pojedynczej stronie bazowej, którą system kształtował w zależności od: aktualnie wykonywanej operacji statusu (autoryzacji i autentykacji) użytkownika wydarzeń w życiu jednostki administracji uczelni wyższej Dzięki możliwości obsługi prac dyplomowych i przeglądania informacji bieżących możne on znacznie ułatwić dostęp do wymaganych informacji dla różnych grup użytkowników o różnych uprawnieniach. Szkielet portalu ASPort, który został przez nas zrealizowany jest prawie całkowicie funkcjonalny, większość funkcji można rozbudować lub zintegrować z innymi istniejącymi systemami i portalami uczelnianymi. System można przetestować on-line wchodząc na stronę https://asport.dyndns.org (są jednak wprowadzone ograniczenia czasowe), w razie chęci zalogowania się jako uprzywilejowany użytkownik, proszę wysłać e-mail na adres: piotr@aplikacje.biz z prośbą o udostępnienie loginu i hasła do systemu. 8. Literatura Michael Howard, David LeBlanc. 2001: Bezpieczny kod. Promise, Warszawa. P. Niemojewski, A. Ambroziewicz, K. Kalenik. 2005: Dokumentacja systemu. ASPort T. Miszkiel. 2002: Visual C#.NET encyklopedia. Helion, Gliwice. 166