Using Component-Based Development and Web Technologies to Support a Distributed Data Management System