Na podstawie własnych doświadczeń, Praxis SA przygotowała kilka aplikacji pomocnych w realizacji zaawansowanych projektów informatycznych. Poniżej przedstawiamy listę i charakterystykę aplikacji dostępnych komercyjnie.
Aplikacje i Projekty:
    IMPORT
    WYSZUKIWARKA
    PORTAL


IMPORT - Okienkowa Aplikacja Importowania Danych     
Idea rozwiązania (Funkcjonalność) Architektura rozwiązania
    Na podstawie konfiguracji zapisanej w arkuszu Excel, aplikacja tworzy w bazie danych MS-SQL struktury tabel, do których importuje dane z plików Excel. IMPORT pozwala zwykłemu Użytkownikowi przenieść dane z Excel do SQL w sposób łatwy i nie wymagający programistycznej wiedzy. Istotnym elementem „przyjaznego” interfejsu użytkownika jest możliwość elastycznej „konfiguracji” IMPORTu, deklaracji zakresu i formatu wczytywanych danych, zgodności danych względem wzorca.
    Aplikacja pozwala tworzyć złożone struktury tabel włącznie ze wsparciem struktur „drzew”, słowników (meta-danych, „multi-atrybutów”), danych XML i triggerów.
- Microsoft Windows XP, Windows 7
- Microsoft SQL 2005, 2008
- Microsoft Office
- Microsoft .NET
- DTSPackage

Architektura
    W pierwszej fazie aplikacja wczytuje i sprawdza poprawność „konfiguracji” IMPORTu. Kontrolowana jest poprawność logiczna (struktura pliku konfiguracyjnego i kompletność zawartych w nim danych) oraz formalna (sprawdzane jest istnienie i poprawność plików źródłowych).
    W drugiej fazie tworzone są struktury tymczasowe, a następnie importowane dane pomocnicze i źródłowe ze sprawdzeniem ich poprawności.. Badana jest zgodność z zadeklarowanym typem. Odbywa się kontrola względem kategorii (słowników). W logu pojawia się pełny raport z informacją o zaimportowanych i odrzuconych danych.
    W trzeciej fazie dane są konsolidowane oraz tworzone i aktualizowane są definicje struktur. Następnie struktury te są napełniane od początku lub aktualizowane.
    W fazie czwartej jest przeprowadzany proces aktualizacji relacji miedzy danymi w oparciu o wbudowane triggery.

Konfiguracja
Do góry



WYSZUKIWARKA - Webowa Przeglądarka Danych Tabelarycznych i Drzew
Idea rozwiązania Architektura rozwiązania
    WYSZUKIWARKA pozwala prezentować dowolne tabele lub widoki z bazy SQL w przeglądarce internetowej. Wyniki są przedstawiane w postaci tabeli (grida) i drzewa kategorii (tree). Prezentowane wyniki mogą być zawężane poprzez operacje na:
(1) kolumnach i drzewach: zasłanianie i odsłanianie,
(2) wierszach: nakładanie warunków filtrujących na jedną kolumnę lub wiele kolumn,
(3) drzewach: nakładanie warunków filtrujących na gałęzie drzew (kategorie słownikowe).
WYSZUKIWARKA może prezentować różne fragmenty widoków SQL gdyż jej konfiguracja jest zapisana w profilu XML.
- Microsoft Windows 2003, 2008
- Microsoft IIS 7
- Microsoft SQL 2005, 2008
- Microsoft .NET 3.5
- Active Directory (LDAP)
- AJAX
- RAD Controls (by Telerik)

Architektura
    WYSZUKIWARKA jest internetową kontrolką, zbudowaną zgodnie z modelem MVC (Model-View-Controller) z oddzielonymi warstwami: prezentacyjną i danych. Jest zbudowana na platformie Microsoft ASP.NET w połączeniu z AJAX (Asynchronous JavaScript and XML).
    Konfiguracja każdej WYSZUKIWARKI jest zapisana w XML'owym pliku Profilu (kolumnie jest przydzielona: nazwa, dymek, widoczność, kolejność wyświetlania, szerokość, typ, format, zależność względem innych kolumn, itd.).
    Bezpieczeństwo zapewnia zarejestrowanie WYSZUKIWARKI w Active Directory (autoryzowany dostęp, określenie źródła danych).
    WYSZUKIWARKA może funkcjonować jako niezależny, wolnostojący obiekt lub być elementem złożonego systemu.

Funkcjonalność
    WYSZUKIWARKA umożliwia przedstawienie tabeli/widoku bazy danych MS SQL w postaci tabeli wyników. Użytkownik może swobodnie operować kolumnami tej tabeli i przypisanymi jej gałęziami drzew (słownikami), prz. ukrycie, zmiana kolejności i szerokości, sortowanie.
    Kluczowe funkcje to możliwość wyświetlania wyników spełniających kryteria wyszukiwania oraz wprowadzenie danych do wyróżnionych kolumn by następnie wykorzystać je w aplikacji współpracującej z WYSZUKIWARKĄ. Kryteria wyszukiwania mogą być nałożone na każdą kolumnę oddzielnie - nałożenie warunków wyszukiwań na kolumnę odbywa się poprzez „Okienko Filtru” przypisane do każdej kolumny, w które należy wpisać warunki i nacisnąć przycisk wyboru 'Filtru'. Gdy warunki nakładane są jednocześnie na kilka wybranych kolumn to wynikiem wyszukiwania są te rekordy, które spełniają wszystkie kryteria – wtedy wykorzystujemy okienko „Szukaj Globalnie”.
    Kryteria wyszukiwania oraz układ kolumn i drzew są pamiętane podczas sesji (do czasu zamknięcia przeglądarki).ale mogą zostać zapisane w Profilu - to pozwala wyświetlić różne wyniki w różny sposób po wybraniu żądanego profilu.

Interfejs
"OFERTA" - przykład zastosowania WYSZUKIWARKI
Do góry



PORTAL - Internetowy Okienkowy System Procesowy
Idea rozwiązania Architektura rozwiązania
    PORTAL składa się z wielu dynamicznie konfigurowanych okien modalnych otwartych w jednej karcie przeglądarki internetowej. Dzięki temu możliwe jest wykonywanie jednocześnie wielu procesów biznesowych (każdy proces w innym oknie) lub przekazywanie zadań pomiędzy Użytkownikami zgodnie z zasadami BPMN. PORTAL zapewnia:
- bezpieczeństwo, gdyż: Użytkownicy i komponenty programowe wymagają rejestracji, autentykacji i autoryzacji z pomocą LDAP - każdy Proces, Rola, Kontrolka, Akcja, Web Service jest mapowany w Active Directory,
- porządek organizacyjny i śledzenie aktywności, gdyż procesowy model wymusza: na Użytkowniku wykonywanie czynności w predefiniowanej sekwencji i zapisanie ważnych przebiegu procesu,
- elastyczność, gdyż ustawienia okien i kontrolek są personalizowane a można równolegle pracować w wielu oknach,
- dostępność, gdyż aplikacja jest dostępna za pomocą przeglądarki Internetowej z każdego miejsca w świecie,
- skalowalność, gdyż wielowarstwowa architektura i Web Service pozwalają swobodnie rozmieszczać składniki.
- Microsoft Windows 2003, 2008
- Microsoft IIS 7
- Microsoft WWF
- Microsoft WCF
- Microsoft SQL 2005, 2008
- Microsoft .NET 3.5
- Active Directory (LDAP)
- AJAX
- RAD Controls (by Telerik)

Architektura systemu
    Portal jest internetową aplikacją, zbudowaną zgodnie z modelem MVC (Model-View-Controller), z warstwą prezentacyjną oddzieloną od pozostałych warstw a do jego budowy wykorzystano platformę Microsoft ASP.NET w połączeniu z AJAX (Asynchronous JavaScript and XML).
    Jako warstwę komunikacji między Portalem a WorkFlow i WebService'ami wybrano technologię Windows Communication Fundation. Takie rozwiązanie gwarantuje wszechstronność i szybkość wymiany komunikatów.
    Windows Workflow Foundation realizuje reguły BPMN i steruje Web Service'ami, w których jest zapisana logika biznesowa. W rzeczywistości Web Service'y są odpowiedzialne za przetwarzanie danych pochodzących z warstwy Workflow i DB (bazy danych).
    Web Service'y przechowują oraz pobierają dane z bazy danych MS SQL 2008, warstwy DB.
    Pomiędzy warstwami DB oraz WS istnieje warstwa dostępu do danych, która jest odpowiedzialna za autentykację Użytkowników oraz autoryzację każdego zapytania w Active Directory. Każdy Użytkownik operuje na Portalu w obrębie roli mu nadanej w usługach katalogowych. Dostęp do dowolnego komponentu, czy aplikacji w Portalu jest ograniczony z dokładnością do roli.

Model

Funkcjonalność
    Po poprawnej autoryzacji Użytkownik zostaje przeniesiony do głównego okna Portalu, które jest budowane dynamicznie z kontrolek zapisanych w profilu przypisanym dla roli Użytkownika. Każda kontrolka musi być zarejestrowana w Active Directory i każde wywołanie kontrolki musi być autoryzowane, czyli dozwolone w zależności od roli Użytkownika oraz Stanu Procesu.
    Kiedy Użytkownik wybiera akcję z menu Portalu, wówczas odpowiedni komunikat zostaje wysłany poprzez szynę WCF do WWF, gdzie sprawdzane są prawa dla roli użytkownika do wywołania danej akcji. Z Active Directory są pobierane metody oraz parametry niezbędne do wywołania w/w akcji. Te metody uruchamiają Web Service'y warstwy logiki biznesowej. Każda metoda Web Service'u musi być zarejestrowana w Active Directory. Jeżeli potrzebne jest przekazanie danych z/do bazy danych, następuje to przy pomocy Brokera, który autoryzuje każde zapytanie.
    Akcja, kończąc działanie, zapisuje dane i zmiany tj. przejście ze stanu do stanu. Każdy stan jest otwierany w nowym oknie modalnym zaś okno reprezentujące stan poprzedni zostanie zamknięte.

Diagram

Dlaczego takie rozwiązanie?

Proces produkcji oprogramowania
- Wymagania dla serwera:
    MS Windows 2008 Server, MS SQL 2008, MS Active Directory, MS .NET 3.5, MS WCF, MS WFF, AJAX
- Wymagania dla klienta - każdy system z przeglądarką internetową:
    Windows, Linux, Mac OS X, Unix
- Prostota obsługi:
    interfejsem użytkownika jest przeglądarka internetowa
- Centralne zarządzanie oprogramowaniem:
    aplikacja znajduje się na serwerze, jedno miejsce administracji i aktualizacji
- Spójność danych:
    wszystkie dane zgromadzone w jednym miejscu
- Dostępność i niezależność od sprzętu:
    do działania w systemie wystarczy dowolny sprzęt (komputer, palmtop, telefon) z dostępem do internetu
- Skalarność:
     dodanie nowej funkcjonalności lub dodatkowego modułu do aplikacji internetowej jest nieporównywalnie prostsze, tańsze i szybsze niż w przypadku tradycyjnej aplikacji.
- Specyfikacja:
    na tym etapie następuje określenie i ustalenie wymagań, które musi spełniać oprogramowanie
- Projektowanie:
    ustalenie ogólnej architektury systemu, wymagań dla poszczególnych jego składowych
- Implementacja:
    realizacja ustalonej architektury poprzez implementację składowych (modułów) i połączeń między nimi
- Integracja:
    zintegrowanie poszczególnych składowych w jeden system, testowanie całego systemu
- Ewolucja:
    uruchomienie systemu, usuwanie wykrytych podczas jego używania błędów, rozszerzanie systemu
Do góry