River in the Light of ArchJava: The use of User-Defined Connectors in
Ubiquitous Computing Systems
by
Eiman Erbad
Ubiquitous computing systems are challenging to design and
implement because they interact with hundreds of devices. The devices used
change periodically depending on the state of the system and the specific
command or event that is being processed. River is a ubiquitous computing
system that uses SQL queries to address the challenge of specifying the
devices at the end points of communication primitives, such as events and
function calls. The current implementation parses the SQL queries at run
time and it doesn't support any compile time syntactic or semantic
analysis. Moreover, the devices specified by the queries are not
guaranteed to support the required functionalities. In our new design we
use user-defined connectors in ArchJava to improve River by adding compile
time syntactic analysis and type checking. Using ArchJava's connectors
helped in making sure that the devices specified by the queries actually
support the required functionalities. The connectors' library is reusable
and easy to extend.
Advised by Craig Chambers
MGH 251
Wednesday
Februsary 18, 2004
3:30 - 4:20 pm