Capítulo 4 Análisis y diseño del software de los Robots



Documentos relacionados
3.1 INGENIERIA DE SOFTWARE ORIENTADO A OBJETOS OOSE (IVAR JACOBSON)

Análisis y diseño del sistema CAPÍTULO 3

Diagramas del UML. A continuación se describirán los diagramas más comunes del UML y los conceptos que representan: Diagrama de Clases

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso

Conceptos y Principios de Análisis

BPMN básico. Clase Modelos de Procesos. Javier Bermudez

2 EL DOCUMENTO DE ESPECIFICACIONES

Técnica - Diagrama de Flujo de Datos (DFD)

Ingeniería de Software I

Proceso de desarrollo del software modelo en cascada

Capítulo 5. Análisis del software del simulador del sistema de seguridad

BPMN Business Process Modeling Notation

Análisis de Sistemas. M.Sc. Lic. Aidee Vargas C. C. octubre 2007

Oficina Online. Manual del administrador

Tema 5. Diseño detallado.

Proceso Unificado de Rational PROCESO UNIFICADO DE RATIONAL (RUP) El proceso de desarrollo de software tiene cuatro roles importantes:

Incidencias: Todas las incidencias que ocurrirán durante el apadrinamiento de un niño se deben registrar para poder buscar soluciones.

UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos

TEMA 7: DIAGRAMAS EN UML

(PHP y APACHE), y el programa de comunicación Skype, para controlar de manera

LiLa Portal Guía para profesores

ESCUELA DE GRADUADOS EN INGENIERIA PORTUARIA

Comentario sobre el entorno de desarrollo Microsoft Visual Studio 2005 Juan Manuel Lucas

DCU Diagramas de casos de uso

La nueva criba de Eratóstenes Efraín Soto Apolinar 1 F.I.M.E. U.A.N.L. San Nicolás, N.L. México. efrain@yalma.fime.uanl.mx

Capítulo 5. Cliente-Servidor.

Diseño orientado al flujo de datos

Capitulo III. Diseño del Sistema.

INGENIERÍA DEL SOFTWARE I Práctica 4 Interacciones

Preparándose para el Aprendizaje en Línea (e-learning) Guía del Participante

Ciclo de vida y Metodologías para el desarrollo de SW Definición de la metodología

CAPÍTULO 3 Servidor de Modelo de Usuario

Draw: objetos en 3D, diagramas de flujo y exportación

Esta es una excelente herramienta de análisis y seguimiento de la facturación. Dispone usted de cantidad de criterios por los que analizar las ventas.

Operación Microsoft Access 97

Una vez descrita la constitución general de un robot, podemos empezar con la

La interoperabilidad se consigue mediante la adopción de estándares abiertos. Las organizaciones OASIS y W3C son los comités responsables de la

Bogotá D. C., Colombia

6 Anexos: 6.1 Definición de Rup:

Control de motor de pasos Para Pic12C508

SÍNTESIS Y PERSPECTIVAS

Metodología Orientada a Objetos Clave Maestría en Sistemas Computacionales

Patrones de Diseño Orientados a Objetos 2 Parte

UNIVERSIDAD DE SALAMANCA

REGLAMENTO DEL AJEDREZ. Tablero cuadrado 8x8 de 64 casillas con colores alternados (típicamente blanco y negro).

Funciones, x, y, gráficos

DIAGRAMA DE CLASES EN UML

TELEOPERACIÓN DE UN ROBOT MOVIL CON MANEJO DIFERENCIAL A BAJO COSTO

Programa para el Mejoramiento de la Enseñanza de la Matemática en ANEP Proyecto: Análisis, Reflexión y Producción. Fracciones

6.8 La Arquitectura del Sistema. [Proceso]

DISEÑO DE FUNCIONES (TRATAMIENTOS)

TABLA DE DECISION. Consideremos la siguiente tabla, expresada en forma genérica, como ejemplo y establezcamos la manera en que debe leerse.

Manual de software. Dynamic Cloud. 10/2014 MS-Dynamic_Cloud v1.2

Practica A. Crear y Administrar Grupos

El siguiente instructivo comprende los principales aspectos a tener en cuenta para la utilización del sistema de Cobro Virtual

Programación Orientada a Objetos Profr. Pedro Pablo Mayorga

Introducción. Ciclo de vida de los Sistemas de Información. Diseño Conceptual

11 Número de publicación: Int. Cl.: 72 Inventor/es: Kunigita, Hisayuki. 74 Agente: Elzaburu Márquez, Alberto

Trabajar con diapositivas

Paso 2 Una vez se ha completado la instalación y ejecutado el programa, veremos esto

Arquitectura de Aplicaciones

Capítulo 4. Implementación del lenguaje multitáctil

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.1 UML: Introducción

Modificación y parametrización del modulo de Solicitudes (Request) en el ERP/CRM Compiere.

Manual Usuario SEDI. Solicitud Electrónica Diseños Industriales (SEDI) Manual de Usuario. Versión: v2.0. Página: 1 de 22

Bogotá D. C., Colombia

CAPÍTULO 5. DESARROLLO Y PRUEBAS

Este programa mueve cada motor de forma independiente, y cuando termina una línea pasa a la siguiente.

Técnicas de prueba 1. FUNDAMENTOS DE LA PRUEBA DEL SOFTWARE

TEMA 14. Modelos de representación de diagramas

Archivo de correo con Microsoft Outlook contra Exchange Server

Análisis de Resultados

Para ingresar a la aplicación Microsoft PowerPoint 97, los pasos que se deben seguir pueden ser los siguientes:

Manejo de versiones 392

1. Descripción y objetivos

Manual de uso. Manual de uso - citanet 1

El modelo de ciclo de vida cascada, captura algunos principios básicos:

Funcionalidades Software PROYECTOS GotelGest.Net Software para la gestión de Proyectos GotelGest.Net

MANUAL DE AYUDA HERRAMIENTA DE APROVISIONAMIENTO

Capítulo V. Implementación

Accesibilidad web GUÍA FUNCIONAL

Ingeniería de Software. Pruebas

Por qué deberías adaptar tu página web a la navegación móvil?

Guía Práctica para el Uso del Servicio de Software Zoho CRM

MANUAL DE INICIACIÓN A JOVELLANOS VIRTUAL J. A. Espejo coordinador.tic@iesjovellanos.org 1

CAPITULO 4. Requerimientos, Análisis y Diseño. El presente capítulo explica los pasos que se realizaron antes de implementar

Ejercicio Guiado de Análisis y Diseño Orientado a Objetos. Ejemplo: CAJERO AUTOMÁTICO

WINDOWS : TERMINAL SERVER

Elementos requeridos para crearlos (ejemplo: el compilador)

Notación UML para modelado Orientado a Objetos

REGISTRO DE EMPRESAS Y PERSONAS BASE DE INFORMACIÓN DE CLIENTES & CONTACTOS

Uso de Visual C++ Pre-Practica No. 3

Ejercicio 6 Ingresos y Gastos de una Empresa

Capitulo I. Introducción

AUTORIZACIÓN DE COMERCIALIZACIÓN EXCEPCIONAL DE MEDICAMENTOS DE USO HUMANO GUÍA PARA LA SOLICITUD DE UNA AUTORIZACIÓN DE COMERCIALIZACIÓN EXCEPCIONAL

Manual Instalación de certificados digitales en Outlook 2000

PERSYS Tel. (81) Página 0

Capitulo 3. Desarrollo del Software

Plan de estudios Maestría en Sistemas de Información y Tecnologías de Gestión de Datos

Transcripción:

Capítulo 4 Análisis y diseño del software de los Robots En el capítulo del diseño mecánico de los robots se muestran los distintos sensores que se utilizarán como entradas, así como los motores que deberán ser accionados dependiendo de lo que se desee hacer. 4.1 Análisis de los sistemas Dentro de nuestro sistema completo podemos vislumbrar 3 subsistemas basándonos en el número de RCX que se utilizarán, el motivo del criterio es que cada RCX contendrá un programa en NQC que constituirá un sistema en si. Los sistemas 1 y 2 del robot refrigerador mencionados en este capítulo, corresponden al mismo robot, sólo que se trata de dos RCX. Para nuestro análisis realizaremos un modelado funcional y describiremos el flujo de información existente. NQC es un lenguaje procedural, para ello se recomienda el uso de diagrama de flujo de datos, DFDs; estos son un mecanismo para el modelado funcional, así como el modelado del flujo de información [Pressman, 2002]. Sin embargo, los sistemas que estamos intentando modelar, corresponden a un grupo donde la información se genera en tiempo real a través de los sensores a los cuales el robot debe de reaccionar. Ward y Mellor propusieron una ampliación a la notación básica del análisis estructurado para que se adapte a las demandas impuestas por los sistemas de tiempo real [Pressman, 2002]. Las notaciones que se agregaron fueron las siguientes: Líneas con flecha punteadas: Indican un suceso. Círculos con líneas punteadas: Indican un proceso de control que se ejecuta solo si se cumple una condición u ocurre un suceso.

Líneas con doble flecha:- Indican una entrada o salida continua. Las entidades externas incluyen los motores y sensores que posee el robot, así como los demás robots con los que se interactúa en todo el sistema. Los sensores proporcionan una entrada de tipo continuo en el tiempo, es decir el sensor esta constantemente enviando señales para su procesamiento. Se tienen algunos depósitos de datos que representan datos que se guardan en variables del programa. En los DFD la notación I1 se refiere al diagrama de interacción de 3 vías mientras que la notación I2 se refiere al de 1 vía. Los diagramas de interacción se encuentran en el Apéndice C. La notación Cn representa que tiene un caso de uso asociado. Véase el apéndice A. 4.1.1 Análisis del sistema del robot M El nivel más básico del DFD que describe el flujo de datos del programa del robot M se presenta en la figura 4.1 Figura 4.1 DFD Nivel contextual del sistema del robot M En el nivel contextual los flujos de mensaje de activación se refieren a un objeto de datos que da la instrucción al robot de iniciar el proceso, y la flecha de entrega de cubo se refiere al evento de entregar el cubo al vaso.

El DFD de nivel 1 se muestra en la figura 4.2 y 4.3, en el cual se denotan todas las entidades externas que interactúan con el sistema, así como los sucesos que deben de ocurrir para que se pase de un proceso de control a otro. Los procesos de control se ejecutan sólo si el sensor manda un valor en particular o si alguna entidad externa envía un valor o suceso. La salida y entrada del DFD de nivel 1 coincide con la entrada y salida del DFD de nivel contextual, lo que nos indica que hay continuidad en el flujo.

Figura 4.2 Primera parte del DFD correspondiente al sistema del robot M

Figura 4.3 Segunda parte del DFD correspondiente al sistema del robot M 4.1.2 Análisis del sistema 1 del robot R La figura 4.4 indica el nivel contextual del sistema 1 del robot R. El sistema inicia con la activación del operador y termina cuando se pasan los cubos al robot M.

Figura 4.4 DFD Nivel contextual del sistema 1 del robot R El nivel 1 del DFD mostrado en la figura 4.5 y 4.6, indica la interacción con las demás entidades externas, incluyendo la interacción con el otro RCX que se encuentra dentro del mismo robot. En el diagrama los sucesos que ocurren para que se ejecute cierto proceso se denominan indicador de activación, la banda que sube los cubos se denota como una entidad externa bajo el nombre de banda vertical, y la banda transportadora como otra entidad externa bajo el nombre de banda horizontal. El DFD describe el sistema desde que es encendido hasta donde termina la ejecución pasando por varios flujos de control que únicamente paran la ejecución en espera de un valor del sensor o bien de un suceso o dato de una entidad externa.

Figura 4.5 Primera parte del DFD Nivel 1 del sistema 1 del robot R

Figura 4.6 Segunda parte del DFD Nivel 1 del sistema 1 del robot R 4.1.3 Análisis del sistema 2 del robot R La figura 4.6 indica el nivel contextual del sistema 2 del refrigerador. El sistema inicia con la activación del operador y termina cuando se comunica al robot M que se ha llegado a la segunda puerta. Figura 4.6 DFD Nivel contextual del sistema 2 del robot R

En la figura 4.7 y 4.8 se muestra el detalle del DFD de nivel contextual, ampliando la burbuja del sistema 2 del robot R a un nivel más detallado. Figura 4. 7 Primera parte del DFD correspondiente al sistema 2 del robot R

El indicador de activación es un suceso que ocurre para dar paso al proceso de control siguiente, el sistema tiene constante interacción con los otros dos RCX, cada uno de estos indicados como entidades externas.

Figura 4. 8 Segunda parte del DFD correspondiente al sistema 2 del robot R La entidad externa denominada Motor A, representa el motor encargado de mover el robot hacia delante y hacia atrás. La entidad externa denominada Motor B, representa el motor encargado de hacer girar el robot sobre su eje. Los sensores tales como el bumper derecho para seguir paredes y el sensor de luz apuntando al piso, son representados cada uno como entidades diferentes que proporcionan una entrada continua en el tiempo. La interacción con los robots se da de dos maneras: como sucesos denominados notificaciones, así como sucesos de llegada enviados por las otras entidades externas. 4.2 Diseño del sistema Una vez analizados los tres diferentes sistemas que estarán en los 3 RCX, estableceremos el diseño del sistema desde 2 perspectivas distintas. El robot M usará el paradigma de la arquitectura Subsumption y para ambos RCX s del robot R se programarán los diferentes movimientos dependiendo del tiempo y de las entradas de los sensores. 4.2.1 Diseño del sistema del robot M El robot M usará el paradigma de la arquitectura Subsumption, se definirán los distintos comportamientos que integraran el sistema, así como su interacción con los motores del robot. La arquitectura nos proporciona un buen manejo del robot cuando se tienen distintos punto de referencia y el robot ejecuta siempre el mismo comportamiento ante un estimulo del ambiente. El robot M ejecuta siempre la misma acción evasora cuando se toca el bumper frontal, y siempre debe de seguir la pared cuando se está en contacto con el sensor derecho. El sensor

de luz tiene dos modos: al iniciar lee la receta, y durante el trayecto lee las distintas líneas negras. Es por ello que se decide utilizar la arquitectura Subsumption para diseñar del sistema. La figura 4.9 muestra el diagrama de la arquitectura implementada. Se denotan seis comportamientos dados por cuatro tipos de entradas: el comportamiento de más alto nivel y que suprime a los demás es el de comunicación, el de más bajo nivel que no suprime a ninguno es navegar en línea recta. Figura 4.9 DFD Arquitectura Subsumption del robot M 4.2.2 Diseño del sistema del robot R El robot R utiliza otro diseño: se programan los diferentes movimientos por cada etapa, el robot ejecuta una secuencia de movimientos distinta dependiendo del tiempo de ejecución y

la entrada de los sensores, la secuencia de movimientos indica los motores que se accionarán. Para ambos RCX se tiene la misma arquitectura, entre ambos debe de haber una comunicación rápida para que uno de ellos detenga su ejecución en ese momento. 4.2.2.1 Diseño del sistema 1 del robot R Para describir el diseño se utilizo un análisis de las transformaciones, este análisis permite transformar un DFD en una estructura de árbol en donde existen gestores y controladores [Pressman,2002]. El primer nivel del árbol mostrado en la figura 4.10 muestra el gestor de todo el sistema y de ahí se divide en otros gestores que interactúan con los motores, sensores y otros RCX. Figura 4.10 Diseño del sistema 1 del robot R

4.2.2.2 Diseño del sistema 2 del robot R Para el diseño del sistema 2 del robot R se usa la misma metodología que para el sistema 1 del robot, solo que para este caso el gestor de sensores tiene más salidas. La figura 4.11 muestra todos los niveles desde el gestor de todo el sistema hasta cada una de las acciones que toman los operadores. Figura 4.11 Diseño del sistema 2 del robot R Una vez analizados los requerimientos de software deseados, deberán ser implementados en lenguaje NQC, aunado a esto, para ciertos requerimientos será necesario el diseño de algoritmos que satisfagan estas necesidades.

4.2.3 Casos de uso Aunado a los diagramas anteriores se utilizarán casos de uso para describir el funcionamiento de todo el sistema. La descripción de los casos de uso se encuentran en el apéndice A. Durante el diseño e implementación de algoritmos se hará referencia a ellos, dado que, la finalidad de los algoritmos es implementar lo que se describe en los casos de uso.