Architektura i technologia
Zaawansowana architektura
Rosnące wymagania użytkowników, co do funkcjonalności systemu informatycznego sprawiają, że klasyczne rozwiązania bazujące na architekturze klient–serwer nie są w stanie już zaspokoić oczekiwań użytkowników. Ograniczenia pod względem przetwarzania i możliwości prezentacji danych typowe dla tradycyjnych rozwiązań typu klient–serwer nie występują w przypadku architektury trójwarstwowej. W architekturze tej, poza warstwą bazy danych oraz warstwą prezentacji wyodrębniono warstwę logiki aplikacji, która odpowiedzialna jest za kontrolę poprawności zapisywanych danych, wykonywanie procesów przetwarzających dane oraz generowanie raportów i zestawień.
Wysoka wydajność
Umiejscowienie warstwy logiki blisko serwera SQL pozwala na uzyskanie wysokiej wydajności przy jednoczesnym zachowaniu możliwości zastosowania zaawansowanej logiki biznesowej. Warstwa logiki jest wielowątkowa, co umożliwia jednoczesne przetwarzanie wielu żądań. Dzięki temu w pełni wykorzystuje możliwości nowoczesnych procesorów wielordzeniowych.
Minimalne zapotrzebowanie na przepustowość sieci
Dane pomiędzy warstwą danych (serwerem bazy danych SQL) a warstwą logiki (serwerem aplikacyjnym) przesyłane są w ramach tego samego komputera lub za pomocą sieci lokalnej. Do warstwy prezentacji przesyłane są jedynie wyniki działania procesów: raporty z ich wykonania lub wygenerowane zestawienia. Dzięki temu możliwa jest praca w sieciach rozległych o niewielkiej przepustowości bez konieczności stosowania kosztowych serwerów terminalowych.
Niski koszt utrzymania
Warstwa prezentacji (klient systemu Dom 5) jest niewielką aplikacją mającą formę pojedynczego pliku wykonywalnego. Instalacja klienta na stacji roboczej sprowadza się do jego skopiowania na dysk lokalny i utworzenia skrótu na pulpicie. Możliwe jest również uruchamianie bezpośrednio z udostępnionego udziału sieciowego. Nie ma potrzeby instalacji na stacjach roboczych oprogramowania klienckiego serwera SQL. Aktualizacja systemu (włączając w to aktualizację klienta zainstalowanego na stacjach roboczych) wykonywana jest w pełni automatycznie, bez konieczności angażowania w to służb informatycznych. Nowe wersje pobierane są z Internetu i instalowane według zdefiniowanego przez użytkownika harmonogramu. Podczas instalacji następuje automatycznie dostosowanie struktur bazy danych do potrzeb nowej wersji.
Nowoczesna technologia
Konieczność ciągłego dostosowywania oprogramowania do zmieniających się potrzeb użytkownika w powiązaniu z coraz większym stopniem jego złożoności wymaga stosowania zaawansowanych technologii. System Dom 5 został zaprojektowany z wykorzystaniem metodologii MDA (Model Driven Architecture, Architektura Bazująca na Modelu). Logika aplikacji została zapisana z wykorzystaniem języka modelowania UML, przy czym wiele składowych projektu (definicje klas, wyrażenia OCL określające warunki poprawności modelu) jest bezpośrednio interpretowanych przez środowisko uruchomieniowe modelu, wbudowane w jądro systemu. Ogranicza to do minimum konieczność ręcznej implementacji funkcjonalności przez programistę, a co za tym idzie, zapewnia wysoki poziom elastyczności. Dzięki zastosowaniu mapowania obiektowo-relacyjnego uzyskano całkowitą niezależność od serwera baz danych. Zaawansowany mechanizm mapowania pozwala przy tym na wykorzystanie możliwości nowych wersji serwerów SQL, przy jednoczesnym zachowaniu zgodności z wersjami starszymi.