jueves, 4 de febrero de 2010

Trabajos Futuros

Queda trabajo por hacer:

- Hasta ahora las trazas para cada requisito se elaboran de forma manual. Buscar la forma de automatizar dicho proceso es un reto importante.

- La reutilización de los requisitos aún no es 100% eficiente, para ello sería necesario desarrollar una herramienta que cargue todos los requisitos y en la que se puedan añadir los requisitos con un simple click.

- Una vez confeccionado el catálogo final de requisitos y trazas, queda la transformación hacia la plataforma ETS.

Conclusiones y Aportaciones

- Se ha demostrado la utilidad de un enfoque MDE aplicado a sistemas domóticos con el propósito de crear herramientas (DSLs) más intuitivos para el usuario y poder reutilizar el software. En este caso particular nos enfocamos en la reutilización de requisitos domóticos para diversas aplicaciones.

El Catálogo de Requisitos:

- Desarrolló un catálogo de 30 requisitos aprox. para sistemas domóticos.
- Nuevos dispositivos y Servicios.
- El catálogo abarca los requisitos básicos para una instalación domótica en una vivienda.
- Desarrollo de metodología para uso del catálogo.

Aplicaciones para Sala de Juntas:

-Se desarrollaron un total de 7 aplicaciones.
- Por categorías domóticas: seguridad, clima, iluminación, motorización.
- Por nivel de complejidad utilizando dispositivos disponibles: básica, intermedia y completa.

Trazabilidad:

- Se ha desarrollado un catálogo de trazas correspondiente al Catálogo de Requisitos y Aplicaciones.
- Compendio de Trace Reports.

Trazabilidad de Requisitos



Dado que muchos requisitos comparten los mismos dispositivos es necesario llevar una trazabilidad exhaustiva de los mismos como lo muestra el diagrama anterior. Eclipse tiene la capacidad de crear "trace reports" dónde se concatena la relación existente entre distintos requisitos y sus contenidos.

DSL desarrollados para Sistemas Domóticos




Catálogo de Requisitos Domóticos: Un Ejemplo



Req_1: Lights On/Off (Pasillo, Cocina, Patio, Terraza, Baños de la 2º Planta)

Req_2: Dimmer Lightsà On/Off y regulación (salón, comedor, 3 dormitorios).

Req_3: Luces On/Off sensor de presencia (salón, patio y terraza)

Req_17: Light On/Off sensor de luminosidad SS (Patio)

Req_18: Light On/Off en el salón a las 9:00pm los Viernes con Programador Horario Semanal

Req_5: Subir/Bajar Persianas por Sensor de Iluminación (3 Dormitorios)

Req_36: Detección de Humo en la cocina

Req_16: Detección Fuga de agua (baños)

Req_6: Detector de presencia en terraza y salón Con alarma y aviso al móvil.

Catalogo de Requisitos para Reutilización



“Catalogue” es el elemento raíz en el que se incluye el conjunto de requisitos a definir.

Un requisito puede estar relacionado con otros requisitos mediante “Relationship”.

“TypeOfRelationship” define el tipo de relación: con un solo requisito, uno o más o con múltiples requisitos.

El Meta-Modelo de Trazabilidad


v“Link” apunta a cualquier elemento del modelo ElementOfModel”, mediante dos referencias: sourcela fuente, y múltiples elementos destinos “target”.
vCompositeLinkpermite definir varios niveles para agrupar los links en niveles más complejos.
vlinkTypepermite clasificar las relaciones existentes y distinguir a que nivel del proceso de desarrollo se localiza la traza.

Introducción a La Trazabilidad



DEFINICIONES:

1.Aizenbud-Rehesef: relación entre dos artefactos involucrados en un ciclo de vida del software.

2.Goetel y Finkenstein: habilidad de describir y seguir el ciclo de vida de un requerimiento en ambas direcciones, desde su origen, desarrollo, especificaciones hasta su lanzamiento, incluyendo todos los

El Proyecto HAbitATION

- Grupo de Investigación de División de Sistemas e Ingeniería Electrónica (DSIE) de la UPCT
- Proyecto MEDSWA (“Marco conceptual y tecnológico para el desarrollo de software de sistemas reactivos”)
- Proyecto HAbitATION: definir un software para sistemas domóticos (desde los requisitos hasta las transformaciones a código para cada plataforma), intuitivo y que el usuario no tenga que ser un experto en el dominio para su uso.
- Plataforma de Trabajo: Eclipse

- Desarrollo:

1.Se ha desarrollado un DSL para sistemas domóticos
2.Un catálogo de dispositivos y servicios domóticos
3.Caso de Uso: Sala de Juntas.

DSL (Domain Specific Language)

Los lenguajes de Dominio Específico también conocidos como DSL se caracterizan por tener:
-Sintaxis Concreta: notación que permite la construcción y representación de modelos. Puede ser de tipo textual o gráfica.
- Sintaxis Abstracta: describe el vocabulario para los conceptos que aporta el lenguaje y como pueden ser combinados para crear modelos.
-Semántica: Debido a que la sintaxis abstracta contiene poca información, en ocasiones se requiere de más información, para ello se utiliza la semántica.
-Existen meta-modelos para describir la semántica, la sintaxis abstracta y concreta.
Algunos ejemplos: HTML, LATEX, SQL, VHDL.

Introducción a la Domótica

Direccionamiento de Grupo
Direccionamiento Físico

Ahorro Energético: mediante el control adecuado de sistemas de climatización, iluminación y sistemas motorizados.

Seguridad: Detección, vigilancia y aviso de cualquier alarma de intrusión o técnica (fuga o detección de gas, agua, humo, fuego, etc.)

Comunicaciones: Comunicación interna mediante interfonos, home cinema, señales acústicas o comunicación con el exterior mediante envío de SMS o acceso a Internet.

Confort: Automatización de ciertas tareas como el encendido/apagado de luces o subida/bajada de persianas en una cierta franja horaria.


Los dispositivos domóticos tienen dos tipos de direccionamiento:

- Direcciones físicas: se asignan solamente una vez durante su instalación y sirve para localizar el dispositivo de manera física como lo muestra el diagrama anterior, se indica el Área, seguido de la Línea y el número de dispositivo que representa este dentro de la línea. (Nota: para mayor detalle consultar el blog http://abcdomotics.blogspot.com/)

- Direcciones de grupo:representan la funcionalidad del dispositivo para su programación, se puede dividir en dos categorías o 3, segun convenga. La definición de la categoría es libre. En el ejemplo se propone indicar el dispositivo por FUNCION/AREA DE LA VIVIENDA/NUMERO DE DISPOSITIVO. (Nota: para mayor detalle consultar el blog http://abcdomotics.blogspot.com/)




Introducción a MDE



-M3: representa el meta-meta-modelo conocido como MOF (Meta Object Facility).

-M2: formado por meta-modelos como UML, CWM que se utilizan para desarrollar modelos.

-M1: lo conforman todos los modelos capaces de representar un sistema y pueden ser modelos de tipo CIM (computer independent model) , PIM (platform independent model), PSM (platform specific model).

Objetivos del Proyecto:


vCrear un Catálogo de Requisitos

vUna representación DSL para cada requisito.
vCrear la traza correspondiente a cada requisito.
vDiseñar una metodología para la creación y reutilización de requisitos con sus trazas.

v Casos de Uso: Aplicaciones enfocadas a la sala de juntas de la Universidad.

Trazabilidad de Requisitos Domóticos en un Marco MDE

Domótica y Model Diven Engineering (MDE)


v Diseñar un software reutilizable e intuitivo para sistemas domóticos mediante Model Driven Engineering.

v Carencias:

- diseño independiente de cualquier plataforma.

- Un Lenguaje de Dominio Específico DSL

- Catálogo de Requisitos Domóticos

- Una Metodología

v Propuestas Anteriores:

J Utilizar MDE con UML

L Lenguaje no intuitivo para diseñadores domóticos.

v Propuesta Comercial:

- ETS (Engineering Tool Software)

L Dependiente de Plataforma

v Propuesta Grupo de Investigación DSIE de la UPCT:

J Utilizar MDE con un DSL para Domótica

J Lenguaje intuitivo

J Catálogo de Requisitos reutilizable