GENERAR MÁQUINAS DE ESTADOS UTILIZADAS EN LAS ACTIVIDADES DE LOS LABORATORIOS
Enviado por kayrumet • 6 de Septiembre de 2016 • Tesis • 3.004 Palabras (13 Páginas) • 248 Visitas
HERRAMIENTA PARA GENERAR MÁQUINAS DE ESTADOS UTILIZADAS EN LA LÓGICA DE LAS ACTIVIDADES DE LOS LABORATORIOS VIRTUALES
Tool For Generating Finite State Machines Used In The Logic Of The Activities Of Virtual Labs
Lui Kayrumet Pérez Buigas1, Juan Miguel Rodríguez Sillero2, Angel Ulise Tabarez Gonzáles3
1 Universidad de las Ciencias Informáticas, Cuba, kayrumet@uci.cu, calle 141 % 238 y 240, Edif 2 apto B-5, Matanzas
2 Universidads de las Ciencias Informáticas, Cuba, jmsillero@uci.cu
3 Universidad de las Ciencias Informáticas, Cuba, ulise@uci.cu
RESUMEN:
Los laboratorios virtuales son medios educativos de gran utilidad, con ellos es posible simular el ambiente de un laboratorio tradicional y desarrollar una práctica de laboratorio sin correr los riesgos ni costear los gastos que conlleva una práctica de laboratorio tradicional. Algunos laboratorios virtuales utilizan una máquina de estados para su desarrollo, permitiendo que la implementación sea más organizada. En el presente trabajo se describe una investigación que se desarrolló con el objetivo de reducir los tiempos de desarrollo de los laboratorios virtuales que utilizan máquinas de estados. Aquí se exponen los principales elementos que conforman las máquinas de estados, especialmente cómo funcionan, además se realizó un estudio de los trabajos referentes al tema. Se obtuvo una herramienta desarrollada en Qt Creator capaz de realizar el diseño de una máquina de estado, para luego exportarla a código fuente C++ para su utilización en los entornos de desarrollo integrado.
Palabras Clave: Laboratorios virtuales, máquina de estados, diseño
ABSTRACT: Virtual Labs are very useful educational media, with them is possible to simulate the environment of a traditional lab and develop a laboratory practice without the risks or cover expenses carrying a traditional laboratory practice. Some virtual laboratories use a state machine for its development, allowing implementation more organized. In the present work an investigation that was developed with the objective of reducing development times of virtual laboratories that use state machines is described. Here the main elements to compose the state machines are exposed, especially as work, besides a study of the work done regarding the topic. Was obtained a tool in qt creator able to make design a state machine, to later export it to c ++ source code for using in a development environment integrated.
KeyWords: Virtual Labs, state machine, design
- INTRODUCCIÓN
Con el avance de las Tecnologías de la Informática y las Comunicaciones prácticamente todos los aspectos cotidianos se han vistos reflejados en el fenómeno de la virtualización. Mediante la aplicación de la Realidad Virtual (RV), podemos hacer que el usuario interactúe con aplicaciones que simulan diferentes situaciones de la vida real. Los Laboratorios Virtuales (LVs) son un área de aplicación de la RV, que pretenden acercar al usuario al ambiente de un Laboratorio Tradicional (LT), los LVs tienen como objetivo facilitar la comprensión de conceptos científicos a través de la simulación de estos en un computador. Los experimentos se desarrollan paso a paso, como se haría en un LT, ya que se visualizan instrumentos y fenómenos mediante objetos dinámicos, imágenes o animaciones. [1]
La Universidad de las Ciencias Informáticas mediante el centro VERTEX ya ha desarrollado su propia versión de varios LVs, ejemplo de esto es el “Laboratorio Virtual Ensamblaje de una Computadora para la enseñanza de la Informática” [2] y se encuentra desarrollando nuevas versiones de otros. Durante el desarrollo de algunos de estos productos, una situación ha sido recurrente, y es el hecho de detectar la existencia de varios estados y transiciones en los comportamientos de estos. Una forma usual de solventar estas situaciones es la utilización del patrón máquina de estados a partir de un boceto del autómata finito determinista que cumple con estos estados y transiciones.
Una máquina de estados o autómata es un modelo de comportamiento de un sistema con entradas y salidas, donde un estado modela un comportamiento determinado. Al utilizarse este patrón se permite que la implementación sea más organizada y que el mantenimiento posterior sea más fácil.
En estos momentos el centro no cuenta con ningún medio que permita automatizar este proceso de diseñar un autómata con las especificaciones que son necesarias como son el nombre de los estados, atributos de las clases y métodos de transición con sus parámetros. Actualmente cuando se realiza el diseño de un autómata, el desarrollador lo tiene que hacer de forma manual y escrita, el problema que trae consigo esto es que tras el diseño de un autómata, estos son propensos a no estar correctamente elaborados, ya que pueden existir errores humanos al elaborarlos que de pasar desapercibidos en una etapa más avanzada del desarrollo pueden inducir retrasos importantes que atentan contra el cumplimiento del cronograma. También al realizar el diseño de forma escrita no permite realizarlo con las especificaciones anteriormente mencionadas por lo que el proceso de implementación sería más extenso.
Cuando se procede a la implementación de este patrón el programador debe utilizar más tiempo para implementar desde el principio cada clase correspondiente a cada estado del diagrama, teniendo en cuenta la estructura que utiliza el patrón máquina de estados, esta tarea puede tornarse extensa y propensa a errores a medida que la cantidad de estados del autómata crece, lo que impide centrarse en la programación de las particularidades de cada ejercicio y subutiliza el tiempo en la resolución de tareas más comunes.
Para dar solución al problema planteado se define como objetivo general: desarrollar una herramienta que permita generar código fuente, a partir del diseño de un autómata finito, para la lógica de los laboratorios virtuales.
- CONTENIDO
Laboratorio Virtual
Los laboratorios virtuales son entornos virtuales como ambientes de aprendizaje, que fomentan grandemente la integración de los usuarios a la práctica propiciando cada vez más simulaciones de fenómenos de la vida diaria.
Como concepto se conoce que son objetos digitales que, mediante el modelado de la realidad, permiten la simulación y la experimentación de fenómenos o situaciones de la vida real. Son un espacio electrónico de trabajo concebido para la colaboración y la experimentación a distancia con objeto de investigar o realizar otras actividades creativas y elaborar y difundir resultados mediante tecnologías de información y comunicación. [1]
...