Tuesday, June 02, 2009

From virtual devices' echoes to composable information units

About the first point let's analize how to render a composable information unit. These need to change domain as the
format they have when they are received by the clock class (DeviceAliasPortReadClockDaemon) is still very jmx-
notification like. In a very simplified view every information received is a property (sometimes structured) object.
Thinking to this (I ilike this game of watching objects as physical shapes) as geometric elements, what is that is
defined by a variable eguals to a number, another variable equals to another number, like:
x = 1y = 3z = 5anothervariable = 7stillanothervariable = 12
It seems to me to be a point. A point in a space defined by as many dimensions as how many are the properties
carried by the composable information unit received. So, for example, let's analize a sample (one unsolicited echo
received because of the fuel limit notification, an interrupt driven echo received because the vehicle bumped
against an obstaclea, an echo sent back as an answer to a read request generated by the clock class to gather the
vehicle position):

Sample of fuel notification that says "GREEN" level: ****************************Sequence number: 4Source: FuelTimestamp: 1243956311584User data: User data payload: it.free.i.virtual.machine.hal.devicealias.echo.DynamicParameterChangingEchoImpl@7ec028Dynamic parameter changing echo parameter name: FuelDynamic parameter changing echo parameter level: GREENUser data payload data type: nullClass: class javax.management.NotificationMessage: Fuel FuelType: UNSOLICITED_VALUE_CHANGED****************************

Sample of a collision detected echo:
****************************Sequence number: 21Source: devicealias.port.positioningsystem.collisiondetector-1243956298973Timestamp: 1243956311506User data: User data payload: it.free.i.virtual.machine.hal.devicealias.echo.CollisionEchoImpl@191777eCollision echo impacted object type: 0Collision echo center of mass position: x: 1.8370745 y: -3.553998 z: 1.1854142Collision echo impacted object description: BoxUser data payload data type: nullClass: class javax.management.NotificationMessage: devicealias.port.positioningsystem.collisiondetector-1243956298973
devicealias.port.positioningsystem.collisiondetector-1243956298973Type: PORT_INTERRUPT****************************

Sample of an echo received by the on board virtual GPS:
****************************Sequence number: 8Source: devicealias.port.positioningsystem.locator-1243956300864 READ verb answer Timestamp: 1243956312178User data: User data payload: it.free.i.virtual.machine.hal.devicealias.echo.PositionEchoImpl@10e18baPosition echo center of mass position: x: -0.022259876 y: -4.7243595 z: -0.15895882Position echo linear velocity: Vx: 0.011706882 Vy: 0.16265121 Vz: -0.14992155User data payload data type: nullClass: class javax.management.NotificationMessage: devicealias.port.positioningsystem.locator-1243956300864 devicealias.port.positioningsystem.locator-
1243956300864 READ verb answer Type: PORT_DO_READ_ANSWER****************************

These logs come from the application running a test. Now, these three types of echo you can find in package
it.free.i.virtual.machine.hal.devicealias.echo, are always communicating a bunch of information (as seen, solicited,
unsolicited, interrupts) but they have heterogeneous formats, as some have a structure, some have different
properties. This implies that a neutralizer and a common format is needed. possibly the format will be made as a
property object representing so an n-dimensional point in a n-dimensional space. This sounds particularly
interesting if taking into account that these will all become what we defined as composable information units. From
a geometric perspective these will be points going to be linked together and, still to play with solid
representations for java objects in design, these points linked in a structure will create a sort of "segment" or a
solid volume. Important to note: different points derived from different composable information unit could have a
different number of properties: points with different number of coordinates, so points in spaces with different
numbers of dimensions. The reason why I continue with this parallelism between java objects and geometric shapes is
that the closer I get to the "experience store" (knowledge base) representation, more It seems that the aggregation
is something more easy to understand if it is "visible". Well, it is also funny.
First problem by now, important to be solved, is the definition of a DTO for the composable information unit, and
(this comes for second and it is simpler to me) of a renderer to change every echo object into a unit of generalized

No comments: