Professional Documents
Culture Documents
211
OBJETOS JAVA QUE INTEROPERAN EN UN MISMO ESPACIO
VIRTUAL SIMULANDO EQUIPOS DE UN LABORATORIO DE
TELECOMUNICACIONES
Java Objects that inter-operate in a same virtual space that simulate
equipments of telecommunications
1
Andrs E. Castillo Rojas
lar, el analizador de espectro, que se basa en la evidente muy pronto, porque un demo de un anali-
transformada rpida de Fourier para procesar la zador de espectro, requiere de un generador de
seal, y esto y es un punto importante, porque a seales. Entonces se plante como estrategia
partir de cierto nivel, se cae en un proceso de desarrollar un laboratorio virtual, para de esta ma-
emulacin, del equipo, ms que de representa- nera, cada objeto desarrollado, necesariamente
cin, porque, tambin dotando a nuestro analiza- deba interoperar con los otros.
dor de espectro, con algoritmos de Fourier, obten-
Aspectos medulares de la metodologa pro-
dremos la misma funcionalidad que un equipo
puesta:
real. Esto es as y lo ser en mayor grado, ya que
la tendencia es basarse en un microprocesador La formulacin como objetivo de que el
actuando con un sistema operativo y programas equipo pertenezca a un laboratorio virtual
de aplicacin, donde la transformada rpida de es una formulacin estratgica que es
Fourier, es una de la que ms se utiliza. parte de nuestra metodologa para des-
La situacin actual, es que los equipos ya des- arrollar objetos que representen equipos
arrollados, requieren de adaptacin, por modifica- de laboratorios de telecomunicaciones.
cin y/o agregacin, para que puedan interoperar Cada parte que es mvil, dentro del equi-
en un mismo escenario virtual, esto requiere, la po, debe construirse aparte, para luego in-
implementacin de la modelacin y diseo con tegrarse dentro del software, este impera-
UML[7], comenzando con un equipo bsico, que tivo, garantizar el movimiento individual
declare las funcionalidades esenciales a cualquier de cada parte sin interferir con otras. En-
equipo: encendido, apagado, posicin y orienta- tre los elementos mviles, se tienen las
cin en el espacio, y de equipos, especializados asas del equipo y los controles, giratorios
de funcionalidad similar, por ejemplo generadores, y deslizantes.
equipos de pantalla tipo osciloscopio y equipo de Las dimensiones fsicas del equipo, son
presentacin por display, para el agregado de un aspecto importante, y por lo tanto, se
funcionalidades especializadas. La modelacin y destinas mtodos y tcnicas, para garanti-
codificacin de una clase cable, que incluya co- zar que el tamao de los equipos, o estn
nectores y pueda conectarse a diversos equipos y de acuedo con las medidas que presentan
presenta una apariencia flexible y realstica, y la los equipos reales.
implementacin de modelos de transformacin en
el dominio del tiempo al dominio de la frecuencia y Los modelos desarrollados, se trasladan
viceversa, ya que en telecomunicaciones, estos al formato 3DS. Actualmente se utiliza
son los dos espacios de medicin. La implemen- como nico cargador de objetos 3D, el
tacin del cdigo, requerir del dominio de algu- cargador ncsa. Cuando posteriormente se
nas estructuras de java especificas, las ms im- integren otros cargadores, los modelos,
portantes, son las que contienen la biblioteca ja- podrn presentarse en otros formatos de
vaio, para manejar comunicaciones de flujos de especificacin modelos 3D.
datos entre procesos independientes, las que El software para integrar la totalidad de las
contienen la biblioteca java3D para la representa- partes, utiliza Java para permitir la visuali-
cin foto realstica[8, 9] y la que contienen la librer- zacin 3D para la interaccin se apoya en
a swing, para la interface con el usuario (las de- la biblioteca Java 3D.
nominadas estructuras GUI)[10].
El cargador a utilizar es ncsa, una API
Lograr la homologacin, encaminar a la rea- desarrollada por la NASA, no es limitativo.
lizacin de un laboratorio virtual de telecomunica- Se debe utilizar diagramas UML, para la
ciones, completo y funcional, por lo que las tareas, modelizacin, uso de casos, secuencia,
mencionadas en el apartado anterior, se hacen comunicacin, clases, son los diagramas
imperativas, la sistematizacin de las acciones a a preferir, pero hay que entender que UML
seguir, se exponen en el apartado siguiente. no es suficiente. En lo que respecta a la
2. METODOLOGA descripcin de las partes visibles se usa-
ran los grafos de escena[11] y para en-
La metodologa que aqu se resea, es el fruto tender y plasmar los procesos que afectan
de un proceso evolutivo a partir de las experien- las seales que se generan en un equipo
cias que sucesivos proyectos de grados fueron y se muestran en otros, se usaran dia-
aportando. Los primeros proyectos eran proyectos gramas de bloques, y como opcin de
aislados, se basaban en obtener objetos de java avanzada, la modelizacin en simulink (un
que representaran instrumentos de telecomunica- modulo del paquete Matlab).
ciones. La necesidad de interconectarlos se hizo Cada equipo, requiere de un estudio de
3
CICCI: I Conferencia Internacional de Ciencias de la Computacin e Informtica.
Castillo Rojas, Andrs Eloy | OBJETOS JAVA QUE INTEROPERAN EN UN MISMO ESPACIO VIRTUAL SIMULANDO EQUIPOS
DE UN LABORATORIO DE TELECOMUNICACIONES
cuencia.
La visin global de equipos que se inter-
conectan, la posibilidad de elegir equipos
segn necesidades de determinadas prac-
ticas y de poder utilizar los mismos equi-
pos en otro software, obliga a crear una
biblioteca de equipos y elementos para
conformar dispositivos. Cada equipo lo-
4
CICCI: I Conferencia Internacional de Ciencias de la Computacin e Informtica.
Castillo Rojas, Andrs Eloy | OBJETOS JAVA QUE INTEROPERAN EN UN MISMO ESPACIO VIRTUAL SIMULANDO EQUIPOS
DE UN LABORATORIO DE TELECOMUNICACIONES
El cable que interconecta a los equipos y el que Patrn Singleton: Garantiza que solamente se
conecta los equipos a su fuente de alimentacin, crea una instancia de una clase: caso la pantalla
es un problema especial, porque requiere intepor- del equipo o la carcasa; si aplica este patrn, una
lacin tridimensional, y adems la restriccin de y solo pantalla por equipo.
que un cable puede cambiar de forma pero no de
longitud, hace que el problema requiera asesora Patrn Iterator: Define un interface que decla-
en la disciplina matemticas, sin embargo se en- ra mtodos para acceder secuencialmente a los
contr una solucin aceptable, utilizando el cdigo objetos de una coleccin. Ver su diagrama de
de la clase PathIterator de la biblioteca Ja- clases asociado en la fig. 9. Este patrn se aplica
va3D[12]. Se obtiene un cable de forma suave, para manejar los controles de equipos, como una
pero la longitud del mismo, puede cambiar cuan- coleccin y tener una misma estrategia de codifi-
do se cambian la posicin de los elementos ex- cacin independiente del equipo. Los programas,
tremos del cable y se redibuja el mismo. en Java, que crean los equipos, se utilizan objetos
de la clase Collection y objetos que utilizan la in-
Otro factor importante, es la sistematizacin de
terface Iterator[10].
la utilizacin de los patrones de diseo, ya que
tienen el potencial de simplificar la codificacin
garantizando la calidad del cdigo.
Algunos de los patrones de diseo[13], que uti-
lizamos o que estn en estudio para su implemen-
tacin:
Patrn Composite: Permite construir objetos
complejos mediante composicin recursiva de
objetos similares.[13] Se aplica al caso de los
controles giratorios o deslizantes que tiene cada
equipo, ver fig 8, para su diagrama en UML.
Fig. 9: Diagrama de clases que representa al patrn Iterator
despachador de eventos, al que se le denomina Las figuras 11 a 13, presentan tres tipos de
modulo de control. diagramas: UML, Grafo de Escena y Diagramas
Patrn Observer: Permite a los objetos cap- de Bloques, todos son incluidos en la metodologa,
tar dinmicamente las dependencias entre obje- por que se complementan entre s.
tos, de tal forma que un objeto notificar a los
objetos dependientes de l cuando cambia su
estado, siendo actualizados automticamen-
te..[13] Este patrn se aplica, para establecer una
relacin de cambio automtico, entre un modelo y
una representacin grfica del mismo. Especfi-
camente entre la pantalla del equipo y los contro-
les. Cada vez que cambia el modelo, el objeto que
lo observa, cambia consecuentemente. Java tiene
dos clases para manejar este patrn de diseo,
estas clases son la clase Observer y la interface
Observable. Ver fig. 10 para la visualizacin de su
diagrama de clases asociado, estas clases se
utilizan, dentro de un patrn que contiene al patrn
Observer y al patrn Mediator, ese patrn es el Fig. 11 Diagrama Clases Aplicado a parte de la Biblioteca de equipos y
patrn MVC.. componentes
7
CICCI: I Conferencia Internacional de Ciencias de la Computacin e Informtica.
Castillo Rojas, Andrs Eloy | OBJETOS JAVA QUE INTEROPERAN EN UN MISMO ESPACIO VIRTUAL SIMULANDO EQUIPOS
DE UN LABORATORIO DE TELECOMUNICACIONES
9
CICCI: I Conferencia Internacional de Ciencias de la Computacin e Informtica.