<?xml version="1.0" encoding="ISO-8859-1"?><article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<front>
<journal-meta>
<journal-id>1316-4821</journal-id>
<journal-title><![CDATA[Universidad, Ciencia y Tecnología]]></journal-title>
<abbrev-journal-title><![CDATA[uct]]></abbrev-journal-title>
<issn>1316-4821</issn>
<publisher>
<publisher-name><![CDATA[AutanaBooks S.A.S. Revista de la Universidad Experimental Politécnica Antonio José de Sucre, Vice Rectorado Puerto Ordaz, Venezuela, gestionada en Ecuador por AutanaBooks]]></publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id>S1316-48212009000100008</article-id>
<title-group>
<article-title xml:lang="es"><![CDATA[Metodologías de desarrollo para sistemas de tiempo real. Un estudio comparativo]]></article-title>
<article-title xml:lang="en"><![CDATA[METHODOLOGY FOR THE DEVELOPMENT OF REAL TIME SYSTEMS. A COMPARATIVE STUDY]]></article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname><![CDATA[Uzcátegui]]></surname>
<given-names><![CDATA[Elluz]]></given-names>
</name>
<xref ref-type="aff" rid="A01"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname><![CDATA[Ortega]]></surname>
<given-names><![CDATA[Dinarle]]></given-names>
</name>
<xref ref-type="aff" rid="A01"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname><![CDATA[Delgado]]></surname>
<given-names><![CDATA[Desirée]]></given-names>
</name>
<xref ref-type="aff" rid="A01"/>
</contrib>
</contrib-group>
<aff id="A01">
<institution><![CDATA[,Universidad de Carabobo Facultad Experimental de Ciencias y Tecnología ]]></institution>
<addr-line><![CDATA[ Carabobo]]></addr-line>
<country>Venezuela</country>
</aff>
<pub-date pub-type="pub">
<day>00</day>
<month>03</month>
<year>2009</year>
</pub-date>
<pub-date pub-type="epub">
<day>00</day>
<month>03</month>
<year>2009</year>
</pub-date>
<volume>13</volume>
<numero>50</numero>
<fpage>059</fpage>
<lpage>066</lpage>
<copyright-statement/>
<copyright-year/>
<self-uri xlink:href="http://ve.scielo.org/scielo.php?script=sci_arttext&amp;pid=S1316-48212009000100008&amp;lng=en&amp;nrm=iso"></self-uri><self-uri xlink:href="http://ve.scielo.org/scielo.php?script=sci_abstract&amp;pid=S1316-48212009000100008&amp;lng=en&amp;nrm=iso"></self-uri><self-uri xlink:href="http://ve.scielo.org/scielo.php?script=sci_pdf&amp;pid=S1316-48212009000100008&amp;lng=en&amp;nrm=iso"></self-uri><abstract abstract-type="short" xml:lang="es"><p><![CDATA[Este trabajo incentiva el uso de las metodologías de desarrollo de software de Tiempo Real. Se facilita una herramienta de soporte a los desarrolladores para determinar la metodología mas adecuada de acuerdo a las necesidades del problema. Se establecen un conjunto de criterios para comparar metodologías de desarrollo de software: COMET, Octopus/UML y ROPES, y en base a estos resultados se logra seleccionar entre ellas la más apropiada a un problema en particular. Durante la investigación, expertos y desarrolladores revisan y ratifican cada uno de estos criterios. Finalmente, se identifican las ventajas de aplicar en un proceso de desarrollo de un sistema de tiempo real los conceptos de calidad de software y evaluación arquitectónica, como herramientas para garantizar características de calidad en el sistema. Se utiliza como metodología de investigación la Investigación-Acción.]]></p></abstract>
<abstract abstract-type="short" xml:lang="en"><p><![CDATA[This work promotes the use of a methodology for the development of Real Time software. We offer a tool that could help to determine the most appropriate methodology, according to problem needs. A set of criteria is established to compare methodologies for the development of software, such as: COMET, Octopus/UML and ROPES. On the basis of these results the most appropriate methodology can be selected to deal with a particular problem. During the research process, experts and developers verify and ratify every one of these criteria. Finally, the advantages of applying software quality and architectural evaluation concepts to the development process of a real time system, are identified as tools to guarantee the quality characteristics of the system. Research-Action is used as a research methodology.]]></p></abstract>
<kwd-group>
<kwd lng="es"><![CDATA[Tiempo Real]]></kwd>
<kwd lng="es"><![CDATA[Metodología de Desarrollo de Software]]></kwd>
<kwd lng="es"><![CDATA[COMET]]></kwd>
<kwd lng="es"><![CDATA[ROPES]]></kwd>
<kwd lng="es"><![CDATA[OctopusUML]]></kwd>
<kwd lng="es"><![CDATA[Calidad del Software]]></kwd>
<kwd lng="es"><![CDATA[Evaluación Arquitectónica]]></kwd>
<kwd lng="en"><![CDATA[Real Time]]></kwd>
<kwd lng="en"><![CDATA[Methodology for the Development of Software]]></kwd>
<kwd lng="en"><![CDATA[COMET]]></kwd>
<kwd lng="en"><![CDATA[ROPES]]></kwd>
<kwd lng="en"><![CDATA[OctopusUML]]></kwd>
<kwd lng="en"><![CDATA[Software Quality]]></kwd>
<kwd lng="en"><![CDATA[Architectural Evaluation]]></kwd>
</kwd-group>
</article-meta>
</front><body><![CDATA[ <p align="center"><font face="Verdana"><b>METODOLOGÍAS DE DESARROLLO PARA  SISTEMAS DE TIEMPO REAL. UN ESTUDIO COMPARATIVO </b></font></p>     <p align="center"><font face="Verdana" size="2">Uzcátegui, Elluz Ortega, Dinarle  Delgado, Desirée </font></p>     <p align="center"><font face="Verdana" size="2">&nbsp;Las autoras del presente  articulo desempeñan sus actividades como Docentes a Dedicación Exclusiva en el  Departamento de Computación de la Facultad Experimental de Ciencias y  Tecnología, Universidad de Carabobo, Antiguas Instalaciones del Decanato de la  Facultad de Ciencias de la Salud, Bárbula, Estado Carabobo, Venezuela. La Lic.  Elluz Uzcátegui tiene el telefax 0241-8678243 y celular 0412-5121631, correos  electrónicos elluz_uzcategui@yahoo.es y euzcateg@uc.edu.ve. La Dra. Dinarle  Ortega, celular 0416-6411495, correos electrónicos dinarleortega@yahoo.es y  dinarleortega@gmail.com. La Ing. Desirée Delgado, el telefax 0241- 8678243,  celular 0416-7341562, correos electrónicos desi.delgado@gmail.com y ddelgado@uc.edu.ve.</font></p>     <p><font face="Verdana" size="2"><b>Resumen</b>: </font></p>     <p align="justify"><font face="Verdana" size="2">Este trabajo incentiva el uso  de las metodologías de desarrollo de software de Tiempo Real. Se facilita una  herramienta de soporte a los desarrolladores para determinar la metodología mas  adecuada de acuerdo a las necesidades del problema. Se establecen un conjunto de  criterios para comparar metodologías de desarrollo de software: COMET, Octopus/UML  y ROPES, y en base a estos resultados se logra seleccionar entre ellas la más  apropiada a un problema en particular. Durante la investigación, expertos y  desarrolladores revisan y ratifican cada uno de estos criterios. Finalmente, se  identifican las ventajas de aplicar en un proceso de desarrollo de un sistema de  tiempo real los conceptos de calidad de software y evaluación arquitectónica,  como herramientas para garantizar características de calidad en el sistema. Se  utiliza como metodología de investigación la Investigación-Acción. </font></p>     <p align="justify"><font face="Verdana" size="2"><b>Palabras clave:</b> Tiempo  Real / Metodología de Desarrollo de Software /COMET/ ROPES/ OctopusUML/ Calidad  del Software / Evaluación Arquitectónica. </font></p>     <p align="justify"><font face="Verdana" size="2"><b>METHODOLOGY FOR THE  DEVELOPMENT OF REAL TIME SYSTEMS. A COMPARATIVE STUDY </b></font></p>     <p align="justify"><font face="Verdana" size="2"><b>Abstract</b>: </font></p>     <p align="justify"><font face="Verdana" size="2">This work promotes the use of a  methodology for the development of Real Time software. We offer a tool that  could help to determine the most appropriate methodology, according to problem  needs. A set of criteria is established to compare methodologies for the  development of software, such as: COMET, Octopus/UML and ROPES. On the basis of  these results the most appropriate methodology can be selected to deal with a  particular problem. During the research process, experts and developers verify  and ratify every one of these criteria. Finally, the advantages of applying  software quality and architectural evaluation concepts to the development  process of a real time system, are identified as tools to guarantee the quality  characteristics of the system. Research-Action is used as a research methodology. </font></p>     <p><font face="Verdana" size="2"><b>Keywords:</b> Real Time / Methodology for  the Development of Software / COMET / ROPES / OctopusUML / Software Quality /  Architectural Evaluation.</font></p>     ]]></body>
<body><![CDATA[<p align="justify"><font face="Verdana" size="2">Manuscrito finalizado en  Valencia, Venezuela, el 2008/03/31, recibido 2008/04/28, en su forma final  (aceptado) el 2008/07/31.</font></p>     <p align="justify"><font face="Verdana" size="2"><b>I. INTRODUCCIÓN </b></font> </p>     <p align="justify"><font face="Verdana" size="2">En los últimos años en  Venezuela, como consecuencia de las políticas de estado en lo referente al  desarrollo endógeno, existe actualmente una orientación estratégica hacia el  desarrollo de software de Tiempo Real, tomando en cuenta las necesidades de  automatización de procesos, robótica, inteligencia artificial, entre otros. </font></p>     <p align="justify"><font face="Verdana" size="2">En este sentido, es importante  resaltar que el desarrollo de software en el dominio de Tiempo Real puede llegar  a ser un proceso complejo, por lo tanto es fundamental aplicar metodologías y  herramientas del área de la ingeniería del software adecuadas, para orientar el  proceso de desarrollo. Actualmente, existen una amplia variedad de metodologías  y notaciones que se han desarrollado para el análisis y diseño de sistemas de  Tiempo Real, de las cuales los desarrolladores deben seleccionar la más  adecuada, según el contexto del problema. El objetivo de este trabajo es,  plantear una herramienta para ayudar a los involucrados en el proceso de  desarrollo de software, al momento de seleccionar una metodología en el contexto  de sistemas de Tiempo Real, estableciendo para ello un conjunto de criterios que  permita realizar una comparación entre metodologías. Asimismo, se busca  propiciar el uso de las metodologías de desarrollo de software como guía para el  desarrollo sistemático de este tipo de aplicaciones, y se exponen las ventajas  de aplicar conceptos de calidad de software y evaluación arquitectónica.</font></p>     <p align="justify"><font face="Verdana" size="2">El presente trabajo está  formado por cinco secciones: una primera sección de introducción, donde se  exponen los fundamentos y objetivos de la investigación; luego se describe la  metodología utilizada en la investigación. Una tercera sección con los  resultados obtenidos, y una cuarta y quinta sección con las conclusiones y  referencias bibliográficas. </font></p>     <p align="justify"><font face="Verdana" size="2"><b>II. DESARROLLO </b></font> </p>     <p align="justify"><font face="Verdana" size="2"><b>1. Metodología </b></font> </p>     <p align="justify"><font face="Verdana" size="2">La investigación fue  desarrollada utilizando la Metodología Investigación-Acción propuesta por Susman  y Evered (1978) [1], dada su adaptación en el contexto de la Ingeniería de  Software y Sistemas de Información. A continuación se detallan las cinco fases  presentes en el proceso iterativo: </font></p>     <p align="justify"><font face="Verdana" size="2">a. Fase de Diagnóstico:  Corresponde a la identificación y descripción de la situación actual. </font> </p>     <p align="justify"><font face="Verdana" size="2">b. Fase de Planificación de la  Acción: Especifica las acciones que deben ser ejecutadas para mejorar el  problema. </font></p>     ]]></body>
<body><![CDATA[<p align="justify"><font face="Verdana" size="2">c. Fase de Implementación de la  Acción: Se implementa la acción planificada. Los investigadores y participantes  colaboran generando cambios que mejoren la situación actual. </font></p>     <p align="justify"><font face="Verdana" size="2">d. Fase de Evaluación: Después  de ser completadas las acciones, los investigadores evalúan las salidas,  utilizando técnicas apropiadas que aporten evidencia de la calidad de las  acciones emprendidas. </font></p>     <p align="justify"><font face="Verdana" size="2">e. Fase de Especificación del  Aprendizaje: en esta fase se reflexiona sobre los resultados de la fase de  evaluación. </font></p>     <p align="justify"><font face="Verdana" size="2"><b>2. Conceptos fundamentales </b></font></p>     <p align="justify"><font face="Verdana" size="2">En esta sección se presenta una  breve revisión de los conceptos fundamentales relacionados con el desarrollo de  esta investigación. </font></p>     <p align="justify"><font face="Verdana" size="2"><b>• Sistemas de Tiempo Real (STR)</b> </font></p>     <p align="justify"><font face="Verdana" size="2">Un Sistema de Tiempo Real, se  define como: “Un sistema en el que el tiempo en que se produce su salida es  significante.&nbsp; Esto es debido a que generalmente la entrada corresponde a  algún instante del mundo físico y la salida tiene relación con ese mismo  instante&quot; [2]. Entre los elementos principales de un STR, se encuentran un  sistema de control, interactuando con el mundo físico a través los sensores,  quienes capturan datos para ser procesados y enviar la respuesta de retorno al  mundo físico a través de los actuadores.</font></p>     <p align="justify"><font face="Verdana" size="2">Por otra parte, dentro de las  características propias del dominio de STR se encuentran los requisitos de  tiempo, de seguridad y fiabilidad, que vistos desde el modelo de calidad  estándar ISO 9126-1 corresponderían con las características de calidad:  Eficiencia, Funcionalidad y Fiabilidad, respectivamente. </font></p>     <p align="justify"><font face="Verdana" size="2"><b>• Metodologías de Desarrollo  de Software para Aplicaciones de Tiempo Real </b></font></p>     <p align="justify"><font face="Verdana" size="2">Una metodología puede definirse  como &quot;Una versión ampliada del ciclo de vida completo del desarrollo de  sistemas, que incluyen tareas o pasos para cada fase, funciones desempeñadas en  cada tarea, productos resultantes, normas de calidad y técnicas de desarrollo  que se utilizan en cada tarea&quot; [3]. En los últimos años se han desarrollado  diversas metodologías de aplicación específica del diseño de STR, entre ellas se  pueden encontrar ROOM/UML-RT, HRT-HOOD, OOHARTS, SiMOO-RT, ACCORD/UML COMET,  Octopus/UML, ROPES [4]. Para esta investigación, se seleccionaron las tres  últimas de las metodologías mencionadas, tomando en cuenta características  comunes tales como, basadas en notaciones estándares como UML y enfocadas bajo  el paradigma orientado a objetos, utilizan la definición arquitectura de  software. A continuación, se presenta una descripción breve de cada una de  ellas. </font></p>     ]]></body>
<body><![CDATA[<p align="justify"><font face="Verdana" size="2"><b>• COMET (Concurrent Object  Modeling and architectural design mEThod) </b></font></p>     <p align="justify"><font face="Verdana" size="2">COMET [4, 5] es una metodología  que emplea notación UML, y está basada en un ciclo de desarrollo iterativo, con  las siguientes fases: modelado de requisitos, análisis , diseño, construcción e  integración incremental del software y validación del sistema (ver <a href="#F1">Figura 1</a>).  </font></p>     <p align="justify"><font face="Verdana" size="2"><a name="F1"></a></font></p>     <p align="center"><font face="Verdana" size="2"> <img border="0" src="/img/fbpe/uct/v13n50/art08f1.jpg" width="619" height="320"></font></p>     
<p align="justify"><font face="Verdana" size="2">Los requisitos funcionales del  sistema se especifican mediante actores y casos de uso. En la fase de análisis,  se refinan los requerimientos para describir los objetos que intervienen y sus  interacciones, a través de diagramas de clase (modelo estructural) y mediante  colaboraciones y/o diagramas de estado (comportamiento dinámico). En la fase de  diseño, se desarrolla la arquitectura del software. En la fase de construcción  se lleva a implementación, el diseño del comportamiento estático y dinámico del  sistema. Durante la fase de integración se integran los módulos de software  creados. Finalmente, sobre la arquitectura de tareas obtenida en la fase de  diseño, se lleva a cabo la validación temporal del sistema, a través de un  análisis de planificación o un análisis de secuencias de eventos. </font></p>     <p align="justify"><font face="Verdana" size="2"><b>• Octopus/UML </b></font> </p>     <p align="justify"><font face="Verdana" size="2">Octopus/UML [4, 6] es una  metodología de desarrollo orientado a objetos y utiliza UML como notación. Sin  embargo, para algunos aspectos donde UML no dispone de notación específica,  utiliza la notación original de Octopus. No fuerza la redefinición de objetos,  ya que admite la reutilización de segmentos de software ya diseñados. Propone  seguir las fases de especificación de requisitos, la definición de la  arquitectura del sistema y luego el desarrollo en paralelo de cada subsistema  siguiendo las habituales fases de análisis, diseño e implementación para cada  uno. En la última fase se lleva a cabo la integración del hardware y el código  ya disponible con los subsistemas desarrollados (ver <a href="#F2">Figura 2</a>).</font></p>     <p align="justify"><font face="Verdana" size="2"><a name="F2"></a></font></p>     <p align="center"><font face="Verdana" size="2"> <img border="0" src="/img/fbpe/uct/v13n50/art08f2.jpg" width="477" height="553"></font></p>     
<p align="justify"><font face="Verdana" size="2">En Octopus/UML, la  especificación de requisitos se hace mediante casos de uso, escenarios y el  diagrama de contexto. Para el análisis de cada subsistema se propone la  generación de los modelos estructural, funcional y dinámico. Cada fase tiene  definidos los artefactos con los que se alimentan las fases subsiguientes y  favorece la combinación entre el modelo de desarrollo de software espiral y  evolutivo. </font></p>     ]]></body>
<body><![CDATA[<p align="justify"><font face="Verdana" size="2"><b>• ROPES (Rapid Object-Oriented  Process for Embedded Systems) </b></font></p>     <p align="justify"><font face="Verdana" size="2">ROPES [4, 7] emplea como  notación UML se basa en un proceso de desarrollo iterativo (o en espiral). Está  compuesto de diversas tendencias de la ingeniería del software, tales como,  análisis de riesgo y calidad de software. Se organiza en cuatro grandes fases:  análisis, diseño, traducción y pruebas, siendo los artefactos resultantes de  cada fase, modelos o diagramas UML que se refinan o corrigen en las siguientes  (ver <a name="Figura_3">Figura 3</a>).</font></p>     <p align="justify"><font face="Verdana" size="2"><a name="F3"></a></font></p>     <p align="center"><font face="Verdana" size="2"> <img border="0" src="/img/fbpe/uct/v13n50/art08f3.jpg" width="558" height="544"></font></p>     
<p align="center">&nbsp;</p>     <p align="justify"><font face="Verdana" size="2">En la actividad de análisis se  llevan a cabo tres tipos de análisis. Un análisis de requisitos, en el que se  especifican los requisitos funcionales y no funcionales del sistema. En segundo  lugar el análisis de sistema, se realiza la división de responsabilidades entre  el hardware y el software, la arquitectura de alto nivel del sistema y los  algoritmos de control necesarios. Y por último el análisis de objetos, el cual  comprende dos grandes tareas, en una, se determinan los modelos estructurales de  los objetos que han de componer el sistema y en la otra, se modela su  comportamiento mediante colaboraciones o diagramas de secuencias. En la fase de  diseño se llevan a cabo los diseños de la arquitectura, mecanismos y el  detallado. La fase de traducción comprende la generación de código ejecutable a  partir del diseño del sistema. En la fase de pruebas se verifica la conformidad  de la aplicación, sea para encontrar defectos o para observar un cierto nivel  funcional. Incluye pruebas de integración y de validación. Como herramienta de  soporte para la elaboración y gestión de los artefactos, su autor propone  Raphsody de I-Logix, en parte debido a que con ella se automatiza la generación  del código. ROPES sin embargo no alcanza a proponer una estrategia que permita  integrar el análisis de planificación en el proceso de desarrollo.</font></p>     <p align="justify"><font face="Verdana" size="2"><b>• Calidad del Software </b> </font></p>     <p align="justify"><font face="Verdana" size="2">En la sección correspondiente  se mencionaron algunas de las principales características de calidad inherentes  a los STR. En este sentido, se hace necesario que las metodologías de desarrollo  en el contexto de los STR manejen de alguna manera este aspecto. En el área de  Ingeniería de Software, existen dos conceptos fundamentales en relación a este  aspecto y son la calidad del software y los modelos de calidad. La calidad de  software se define como, la totalidad de rasgos y atributos de un producto de  software que lo apoyan en su capacidad de satisfacer sus necesidades explícitas  o implícitas (según ISO/IEC 9126, 1998). Relacionado con el concepto de calidad  de software se pueden encontrar los modelos de calidad de software, que  representan un conjunto de características y de las relaciones entre ellas, que  proporcionan la base para especificar los requisitos de la calidad y evaluar  dicha calidad (según ISO14598). Éstos permiten la especificación y evaluación de  la calidad del producto de software desde diferentes perspectivas (adquisición,  desarrollo, uso, evaluación, mantenimiento). Uno de los principales modelos de  calidad es el estándar internacional ISO 9126. </font></p>     <p align="justify"><font face="Verdana" size="2"><b>• Evaluación Arquitectónica  del Software </b></font></p>     <p align="justify"><font face="Verdana" size="2">En el mejor de los casos,  durante el diseño de sistemas de software se generan varias opciones  arquitectónicas. En una evaluación arquitectónica se evalúan dichas opciones  para determinar cuál es la más apropiada sobre la base de los objetivos y  restricciones del problema a resolver. Una Arquitectura de Software ejerce  influencia notable sobre la calidad del sistema que se implementa, y a través de  ella se puede validar si el sistema cumple con los requerimientos de calidad  exigidos. Existen diferentes métodos de evaluación arquitectónica, por ejemplo  el método de Jan Bosch, ATAM(Attribute Tradeoff Analysis Method) , MACA, entre  otros. </font></p>     ]]></body>
<body><![CDATA[<p align="justify"><font face="Verdana" size="2"><b>3. Resultados </b></font> </p>     <p align="justify"><font face="Verdana" size="2">En esta sección se presentan  los resultados que se obtuvieron al aplicar cada una de las fases de la  metodología descrita en la sección anterior. </font></p>     <p align="justify"><font face="Verdana" size="2"><b>3.1 Fase de Diagnóstico </b> </font></p>     <p align="justify"><font face="Verdana" size="2">Durante esta fase se identificó  el contexto que enmarca al problema y se realizó la revisión bibliográfica de  los principales conceptos relacionadas a esta investigación. </font></p>     <p align="justify"><font face="Verdana" size="2"><b>Descripción del problema </b> </font></p>     <p align="justify"><font face="Verdana" size="2">Actualmente existe una gran  demanda por el desarrollo de sistemas de Tiempo Real. El uso de herramientas del  área de la ingeniería del software es fundamental para el desarrollo de este  tipo de sistemas. Sin embargo, aunque existe una gran variedad de metodologías  de desarrollo en este contexto, los desarrolladores son los responsables de  seleccionar aquella que considere adecuada al problema, lo que en algunas  ocasiones puede resultar una tarea difícil. A su vez, se debe tomar en cuenta  que, muchos de los desarrolladores en este dominio, son profesionales de otras  áreas afines a las de Computación. En este sentido, se hace necesario determinar  aquel conjunto de aspectos principales que orienten a los involucrados en el  proceso de desarrollo de software en el momento de seleccionar una metodología  en el contexto de sistemas de Tiempo Real. </font></p>     <p align="justify"><font face="Verdana" size="2"><b>3.2 Fase de Planificación e  Implementación de la acción </b></font></p>     <p align="justify"><font face="Verdana" size="2">En esta fase se describe el  conjunto de actividades que se llevaron a cabo para cumplir con el objetivo  planteado. </font></p>     <p align="justify"><font face="Verdana" size="2"><b>3.2.1 Identificación de  criterios de comparación. </b></font></p>     <p align="justify"><font face="Verdana" size="2">Tomando en cuenta la  experiencia de los autores en el uso de metodologías de desarrollo, se definen  dos conjuntos de criterios para llevar a cabo la comparación de metodologías.  Estos dos criterios se definen como: </font></p>     ]]></body>
<body><![CDATA[<p align="justify"><font face="Verdana" size="2">•<b> Aspectos Generales:</b>  este criterio define rasgos fundamentales que poseen las metodologías de  desarrollo de software. Este criterio se divide a su vez en 9 subcriterios, que  fueron seleccionados tomando como punto de referencia los criterios planteados  en [8,9,10]: </font></p>     <p align="justify"><font face="Verdana" size="2">&#61692; Facilidad de uso: define el  esfuerzo realizado por las personas involucradas en el desarrollo del software,  para seguir la metodología hasta lograr obtener el producto esperado.</font></p>     <p align="justify"><font face="Verdana" size="2">&#61692; Flexibilidad: capacidad para  adaptar la metodología al problema, tomando sólo aquello que se considere  necesario. </font></p>     <p align="justify"><font face="Verdana" size="2">&#61692; Claridad de los diagramas:  define la facilidad para la elaboración de los diagramas de parte de los  involucrados en el desarrollo. </font></p>     <p align="justify"><font face="Verdana" size="2">&#61692; Usa Herramientas  automatizadas de Soporte: indica el uso de herramientas automatizadas para  asistir a los involucrados en la generación de los artefactos. </font></p>     <p align="justify"><font face="Verdana" size="2">&#61692; Documentación de Soporte:  disponibilidad de manuales, guías y cualquier tipo de documento para la  orientación acerca del uso de la metodología. </font></p>     <p align="justify"><font face="Verdana" size="2">&#61692; Cantidad de artefactos:  evalúa la cantidad de artefactos y documentos generados durante el proceso de  desarrollo. </font></p>     <p align="justify"><font face="Verdana" size="2">&#61692; Propicia Características de  Calidad: indica las características de calidad que propicia la metodología. </font></p>     <p align="justify"><font face="Verdana" size="2">&#61692; Contempla Diseño  Arquitectónico: indica si la metodología dentro de sus fases, concuerda con el  desarrollo de la arquitectura del sistema. </font></p>     <p align="justify"><font face="Verdana" size="2">&#61692; Contempla Evaluación  Arquitectónica: indica si la metodología hace uso de algún método de validación  de los requisitos no funcionales (características de calidad) en etapas  tempranas del desarrollo.</font></p>     ]]></body>
<body><![CDATA[<p align="justify"><font face="Verdana" size="2"><b>• Conceptos de Tiempo Real: </b>define las herramientas a través de las cuales la metodología expresa  conceptos básicos, propios del dominio de Tiempo Real, siguiendo las  definiciones para ellos planteadas en [2]. Los conceptos tomados en cuenta son: </font></p>     <p align="justify"><font face="Verdana" size="2">&#61692; Concurrencia: identifica la  documentación (diagramas, modelos) generada por la metodología, para describir  la gestión de varios procesos dentro del sistema. </font></p>     <p align="justify"><font face="Verdana" size="2">&#61692; Comunicación de Mensajes:  identifica la documentación generada para describir los mecanismos para dar  soporte al intercambio de mensajes entre procesos. </font></p>     <p align="justify"><font face="Verdana" size="2">&#61692; Manejo de eventos: se  identifican los documentos que describe el conjunto de pasos seguidos por el  sistema con la llegada de ciertos eventos. </font></p>     <p align="justify"><font face="Verdana" size="2">&#61692; Validación temporal del  sistema: se identifican los documentos que describe la planificación de los  eventos en el tiempo. </font></p>     <p align="justify"><font face="Verdana" size="2"><b>3.2.2 Validación de los  criterios</b></font></p>     <p align="justify"><font face="Verdana" size="2">El conjunto de criterios  establecido en la sección anterior, se evalúa con un grupo de 8 profesores  expertos en el uso de metodologías de desarrollo de software, para determinar si  reúnen la mayor cantidad de características que deban considerarse de una  metodología, y el grado de relevancia de estos en una comparación entre  metodologías. En el instrumento aplicado, los encuestados seleccionan con un SI  o NO para cada criterio. Los resultados de dicha evaluación indica (ver  <a href="#t1">Tabla I</a>)  que la mayoría de los encuestados valoraron con un alto porcentaje la mayoría de  los criterios establecidos. Sin embargo se debe destacar el criterio de  flexibilidad que no fue considerado como aspecto importante en el momento de  seleccionar una metodología. De esta manera, sólo 8 del un grupo de 9 subcriterios sujetos a la evaluación, formarán parte del estudio comparativo a  realizar con las metodologías seleccionadas en este trabajo. En cuanto a los  criterios de Conceptos de Tiempo Real, todos los criterios fueron calificados  como esenciales para la evaluación de la metodología (ver <a href="#t2">Tabla II</a>).</font></p>     <p align="justify"><font face="Verdana" size="2"><a name="t1"></a></font></p>     <p align="center"><font face="Verdana" size="2"> <img border="0" src="/img/fbpe/uct/v13n50/art08t1.jpg" width="374" height="322"></font></p>     
<p align="justify"><font face="Verdana" size="2"><a name="t2"></a></font></p>     ]]></body>
<body><![CDATA[<p align="center"><font face="Verdana" size="2"> <img border="0" src="/img/fbpe/uct/v13n50/art08t2.jpg" width="389" height="222"></font></p>     
<p align="justify"><font face="Verdana" size="2"><b>3.2.3 Comparación de  Metodologías </b></font></p>     <p align="justify"><font face="Verdana" size="2">Sobre la base de la revisión y  análisis bibliográfico de las metodologías COMET, Octopus/UML y ROPES, se ha  llevado a cabo la comparación de estas metodologías según los criterios  establecidos en la sección anterior. Para esto, se ha definido una escala de  valores para cada uno de los criterios: alto, medio y bajo. El valor de la  escala indica el grado en que la metodología cumple con el criterio. En otros  casos, sólo se indica &quot;No&quot; para señalar que no cumple con el criterio, y en caso  contrario, se especifican las herramientas utilizadas para implementarlo. </font> </p>     <p align="justify"><font face="Verdana" size="2">En relación a los aspectos  generales (ver <a href="#t3">Tabla III</a>), la metodología COMET es fácil de usar, y posee  diagramas sencillos de elaborar. Las tres metodologías poseen herramientas que  soportan la generación automática de artefactos; para ROPES, su autor propone  utilizar una herramienta en particular (Raphsody de I- Logix) y en los casos de  Octopus/UML y COMET, se asocian directamente las herramientas que se utilizan  para UML. La Documentación de soporte de Octopus/UML es amplia, de fácil acceso  a los usuarios. En la <a href="#t4">Tabla IV</a> también se observa que Octopus/UML se caracteriza  por ser una metodología pesada, ya que es la que genera mayor cantidad de  artefactos. En cuanto al manejo de características de calidad, ROPES plantea  dentro de sus fases, actividades orientadas a garantizar características muy  importantes de los sistemas de Tiempo Real como lo son la seguridad y la  fiabilidad.</font></p>     <p align="justify"><font face="Verdana" size="2"><a name="t3"></a></font></p>     <p align="center"><font face="Verdana" size="2"> <img border="0" src="/img/fbpe/uct/v13n50/art08t3.jpg" width="584" height="284"></font></p>     
<p align="justify"><font face="Verdana" size="2"><a name="t4"></a></font></p>     <p align="center"><font face="Verdana" size="2"> <img border="0" src="/img/fbpe/uct/v13n50/art08t4.jpg" width="586" height="329"></font></p>     
<p align="justify"><font face="Verdana" size="2">La reutilización es un aspecto  que propicia tanto ROPES como Octopus/UML. En el caso de COMET, la documentación  no especifica actividades en las que se consideren el análisis y tratamiento de  requerimientos adicionales a las funciones del sistema. Las tres metodologías  llevan a cabo el desarrollo de la arquitectura de software. Sin embargo, ninguna  de ellas aplica métodos de evaluación arquitectónica, restringiendo de esta  manera la posibilidad de validar durante las etapas tempranas del desarrollo del  software, el cumplimiento de los requisitos de calidad especificados durante la  etapa de levantamiento de requerimiento. </font></p>     <p align="justify"><font face="Verdana" size="2">Por otra parte, todas las  metodologías ofrecen herramientas para describir los conceptos propios del  dominio de tiempo real (ver <a href="#t4">Tabla IV</a>) como la concurrencia, comunicación de  mensaje, manejo de eventos y validación temporal del sistema. En cuanto a éste  último, ROPES y Octopus/UML no ofrecen ningún modelo al respecto. </font></p>     ]]></body>
<body><![CDATA[<p align="justify"><font face="Verdana" size="2"><b>3.2.4 Fase de Evaluación. </b></font></p>     <p align="justify"><font face="Verdana" size="2">En esta fase, se utilizan los  resultados de la comparación de las metodologías, y se selecciona una de ellas,  para aplicarla en el desarrollo de un sistema de tiempo real. Esta selección se  valida con los desarrolladores del sistema. </font></p>     <p align="justify"><font face="Verdana" size="2"><b>A. Descripción del Problema. </b></font></p>     <p align="justify"><font face="Verdana" size="2">Se requiere implementar un  módulo de navegación para un Vehículo Autónomo Submarino (VAS), en dos fases. En  la primera (septiembre 2006- diciembre 2007), se desarrollará el software bajo  un ambiente simulado que deberá ser capaz de detectar y evadir obstáculos  encontrados en la ruta especificada, utilizando como mecanismo de reconocimiento  una cámara fotográfica. En la segunda fase se tiene previsto rediseñar el  módulo, con el objeto de permitir la visualización de obstáculos que puedan  presentar riesgos o peligros para la integridad y movilidad del VAS, bajo  ambientes de poca fuente de luz. La diferencia principal respecto al desarrollo  anterior, es que el sistema llevará a cabo la búsqueda de objetos con  determinadas características, basadas en las respuestas a las ondas emitida por  un sonar (digital), a diferencia de hacerlo con una cámara. </font></p>     <p align="justify"><font face="Verdana" size="2"><b>B. Selección de la  metodología </b></font></p>     <p align="justify"><font face="Verdana" size="2">Sobre la base de los criterios  establecidos en la sección 3.2 y tomando en cuenta el dominio del problema  planteado, se identifican las características prioritarias a ser tomadas en  cuenta en el momento de la escogencia de la metodología de desarrollo de  software: </font></p>     <p align="justify"><font face="Verdana" size="2">• Generación de artefactos.  Tomando en cuenta la complejidad del problema, resultaría beneficioso contar con  una metodología que genere gran cantidad de artefactos, para documentar  completamente el módulo a desarrollar. </font></p>     <p align="justify"><font face="Verdana" size="2">• Buena documentación de  soporte. De ésta depende la comprensión y el uso adecuado de la metodología de  desarrollo de software, por parte de los desarrolladores. </font></p>     <p align="justify"><font face="Verdana" size="2">• Propicia la reutilización de  código, dado que se tiene previsto realizar modificaciones al módulo a  desarrollar. • Diseño de la arquitectura. Este aspecto permite a los  involucrados en el desarrollo tener una visión clara del sistema y sus  componentes. </font></p>     <p align="justify"><font face="Verdana" size="2">• Usa herramientas automatizada  de soporte. se considera importante que la metodología proporcione herramientas  que permita la generación automática de todos o algunos de los artefactos. </font></p>     ]]></body>
<body><![CDATA[<p align="justify"><font face="Verdana" size="2">Sobre la base de los  requerimientos de la aplicación, los criterios antes descritos, y los resultados  de la comparación de las metodologías en estudio, para este caso particular se  sugiere a los desarrolladores usar la metodología Octopus/UML para el desarrollo  de este módulo del VAS, en sus dos fases, porque es la que cumple con mayor  grado los criterios establecidos como primordiales para este problema. </font> </p>     <p align="justify"><font face="Verdana" size="2"><b>C. Validación de la  metodología seleccionada. </b></font></p>     <p align="justify"><font face="Verdana" size="2">Se entrevistó a los 6  desarrolladores implicados en las dos fases del desarrollo del módulo para el  VAS, con el objeto de evaluar su experiencia con el uso de la metodología  Octopus/UML. (<a href="#t5">Tabla V</a>)</font></p>     <p align="justify"><font face="Verdana" size="2"><a name="t5"></a></font></p>     <p align="center"><font face="Verdana" size="2"> <img border="0" src="/img/fbpe/uct/v13n50/art08t5.jpg" width="580" height="392"></font></p>     
<p align="justify"><font face="Verdana" size="2">Los resultados señalados en la  <a href="#t5">Tabla V</a> ponen de manifiesto el grado de satisfacción de parte de los  desarrolladores, con el uso de la metodología recomendada, validando de esta  manera que aplicando los criterios establecidos en este trabajo puede ayudar a  tomar una decisión en cuanto a seleccionar la metodología más adecuada según el  contexto del problema. </font></p>     <p align="justify"><font face="Verdana" size="2"><b>3.2.5 Fase de Especificación  del aprendizaje </b></font></p>     <p align="justify"><font face="Verdana" size="2">En el desarrollo del módulo  para el VAS, el uso de una metodología de desarrollo, facilitó la modificación  del sistema, y permitió a los dos grupos de desarrolladores comprender y tener  una visión clara del sistema a desarrollar y modificar. Sin el uso de las  metodologías de desarrollo, la tarea de mantenimiento puede resultar un trabajo  arduo y costoso, incluso puede darse el caso de tener que iniciar desde el  principio todo el proyecto por falta de documentación. Efectivamente tomando en  cuenta los criterios establecidos, se pudo identificar la metodología que mejor  se adaptaba al problema. Dado que el problema estaba originalmente dividido en  dos fases bien identificadas, permitió ratificar en dos momentos diferentes la  experiencia de cada uno de los grupos con el uso de la metodología recomendada,  quienes a nivel general catalogaron como satisfactoria la experiencia. Se puede  decir que aun y cuando todas las metodologías tratadas en este trabajo son  perfectamente aptas para aplicarlas en el desarrollo de sistemas de tiempo real,  de problemas de cualquier magnitud, es posible establecer aspectos de  comparación que permitan la escogencia de una de ellas. </font></p>     <p align="justify"><font face="Verdana" size="2"><b>III. CONCLUSIONES </b> </font></p>     <p align="justify"><font face="Verdana" size="2">1. Los resultados sugieren que  tomando como base el conjunto de criterios establecidos, se puede determinar la  metodología que mejor se adapta a las necesidades del problema planteado. </font> </p>     ]]></body>
<body><![CDATA[<p align="justify"><font face="Verdana" size="2">2. Se pudo evidenciar que el  uso de una metodología de desarrollo permite la repetibilidad del proceso de  desarrollo, así como facilita la mantenibilidad y escalabilidad del sistema. </font></p>     <p align="justify"><font face="Verdana" size="2">3. Se detectó que ninguna de  las metodologías estudiadas contempla actividades orientadas a la identificación  de requisitos de calidad en etapas tempranas del desarrollo. </font></p>     <p align="justify"><font face="Verdana" size="2">4. Los modelos de calidad de  software ayudan a especificar las características de calidad en etapas tempranas  del proceso de desarrollo, donde el costo (en tiempo y recursos económicos) es  menor para realizar cambios. </font></p>     <p align="justify"><font face="Verdana" size="2">5. Aplicar un método de  evaluación de arquitectura dentro del proceso de desarrollo permite validar la  arquitectura en relación con los propósitos del sistema. </font></p>     <p align="justify"><font face="Verdana" size="2">6. Se resalta la importancia de  aplicar una metodología en el desarrollo de Sistemas de Tiempo Real y los  beneficios que ésta puede aportar al producto final (el sistema), si se combina  con otros conceptos de la ingeniería del software. </font></p>     <p align="justify"><font face="Verdana" size="2">7. Se sugiere aplicar los  criterios establecidos en este trabajo, en diversos problemas para validar la  utilidad de la herramienta en otros contextos y así ampliar el uso de la misma. </font></p>     <p align="justify"><font face="Verdana" size="2"><b>IV REFERENCIAS </b></font> </p>     <!-- ref --><p align="justify"><font face="Verdana" size="2">1. Susman, G. I. &amp; Evered, R.  D.. An Assessment of the Scientific Merits of Action Research. Administrative  Science Quarterly, (23), 1978, pp. 582-603. </font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=2535768&pid=S1316-4821200900010000800001&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p align="justify"><font face="Verdana" size="2">2. Burns, A.; Wellings, A.  Real-time systems and programming languages.3ª ed., London Addison Wesley. 1997.  pp16-21. </font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=2535769&pid=S1316-4821200900010000800002&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p align="justify"><font face="Verdana" size="2">3. Whitten, J. ; Bentley, L. ;  Barlow, V. Análisis y Diseño de Sistemas de Información. 3ª ed., Madrid. McGraw-Hill.  2003. pp146-160. </font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=2535770&pid=S1316-4821200900010000800003&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p align="justify"><font face="Verdana" size="2">4. Medina, J. Metodología y  Herramientas UML para el Modelado y Análisis de Sistemas de Tiempo Real  Orientados a Objetos. <a href="http://www.tesisenred.net/TDR-0209106-103344">http://www.tesisenred.net/TDR-0209106-103344</a> . Revisado en  marzo del 2008 </font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=2535771&pid=S1316-4821200900010000800004&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p align="justify"><font face="Verdana" size="2">5. Gomaa , H. Designing  Real-Time Applications with the COMET/UML Method . George Mason University.  <a href="http://www.dedicatedsystems.com/magazine/01q1/2001q1_p044.pdf">http://www.dedicatedsystems.com/magazine/01q1/2001q1_p044.pdf</a>&nbsp; </font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=2535772&pid=S1316-4821200900010000800005&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><p align="justify"><font face="Verdana" size="2">6. Domiczi, E, ; Farfarakis R.  ; Ziegler J. Release of Octopus/UML. Nokia Research Center. </font></p>     <p align="justify"><font face="Verdana" size="2"> <a href="http://www.nrc.nokia.com/octopus/supplement/index.html">http://www.nrc.nokia.com/octopus/supplement/index.html</a>&nbsp; . Revisado en febrero 2008. </font></p>     <!-- ref --><p align="justify"><font face="Verdana" size="2">7. Bruce, D. ROPES: Rapid  Object-Oriented Process for Embedded Systems.  <a href="http://www.cs.ru.nl/~hooman/ots/Ropes.pdf%20.%20">http://www.cs.ru.nl/~hooman/ots/Ropes.pdf%20.%20</a> .  Revisado en febrero 2008. </font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=2535775&pid=S1316-4821200900010000800007&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p align="justify"><font face="Verdana" size="2">8. Ghezzi, C. ; Jazayeri, M. ;  Mandrioli, D. Fundamentals of Software Engineering. Washington. Prentice Hall.  1991. pp37-39. </font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=2535776&pid=S1316-4821200900010000800008&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p align="justify"><font face="Verdana" size="2">9. Sommereville, I . Ingeniería  del Software. 7ª ed., Madrid. Pearson Addison Wesley. 2005. pp 309-323 </font> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=2535777&pid=S1316-4821200900010000800009&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p align="justify"><font face="Verdana" size="2">10. Spiteri, A. A Comparison of  Software Analysis and Design Methods for Real Time Systems. Proceedings of Wrld  Academy of Science, Engineering and Technology. Vol 21. May 2007. pp55-59</font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=2535778&pid=S1316-4821200900010000800010&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><p align="justify">&nbsp;</p>     <p align="justify">&nbsp;</p>      ]]></body>
<body><![CDATA[ ]]></body>
<back>
<ref-list>
<ref id="B1">
<label>1</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Susman]]></surname>
<given-names><![CDATA[G]]></given-names>
</name>
<name>
<surname><![CDATA[Evered]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[An Assessment of the Scientific Merits of Action Research]]></article-title>
<source><![CDATA[Administrative Science Quarterly]]></source>
<year>1978</year>
<volume>23</volume>
<page-range>582-603</page-range></nlm-citation>
</ref>
<ref id="B2">
<label>2</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Burns]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
<name>
<surname><![CDATA[Wellings]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
</person-group>
<source><![CDATA[Real-time systems and programming languages]]></source>
<year>1997</year>
<edition>3ª</edition>
<page-range>16-21</page-range><publisher-name><![CDATA[London Addison Wesley]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B3">
<label>3</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Whitten]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
<name>
<surname><![CDATA[Bentley]]></surname>
<given-names><![CDATA[L]]></given-names>
</name>
<name>
<surname><![CDATA[Barlow]]></surname>
<given-names><![CDATA[V]]></given-names>
</name>
</person-group>
<source><![CDATA[Análisis y Diseño de Sistemas de Información]]></source>
<year>2003</year>
<edition>3ª</edition>
<page-range>146-160</page-range><publisher-loc><![CDATA[Madrid ]]></publisher-loc>
<publisher-name><![CDATA[McGraw-Hill]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B4">
<label>4</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Medina]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<source><![CDATA[Metodología y Herramientas UML para el Modelado y Análisis de Sistemas de Tiempo Real Orientados a Objetos]]></source>
<year></year>
</nlm-citation>
</ref>
<ref id="B5">
<label>5</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Gomaa]]></surname>
<given-names><![CDATA[H]]></given-names>
</name>
</person-group>
<source><![CDATA[Designing Real-Time Applications with the COMET/UML Method]]></source>
<year></year>
<publisher-name><![CDATA[George Mason University]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B6">
<label>6</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Domiczi]]></surname>
<given-names><![CDATA[E]]></given-names>
</name>
<name>
<surname><![CDATA[Farfarakis]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
<name>
<surname><![CDATA[Ziegler]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<source><![CDATA[Release of Octopus/UML]]></source>
<year></year>
<publisher-name><![CDATA[Nokia Research Center]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B7">
<label>7</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Bruce]]></surname>
<given-names><![CDATA[D]]></given-names>
</name>
</person-group>
<source><![CDATA[ROPES: Rapid Object-Oriented Process for Embedded Systems]]></source>
<year></year>
</nlm-citation>
</ref>
<ref id="B8">
<label>8</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Ghezzi]]></surname>
<given-names><![CDATA[C]]></given-names>
</name>
<name>
<surname><![CDATA[Jazayeri]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[Mandrioli]]></surname>
<given-names><![CDATA[D]]></given-names>
</name>
</person-group>
<source><![CDATA[Fundamentals of Software Engineering]]></source>
<year>1991</year>
<page-range>37-39</page-range><publisher-loc><![CDATA[Washington ]]></publisher-loc>
<publisher-name><![CDATA[Prentice Hall]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B9">
<label>9</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Sommereville]]></surname>
<given-names><![CDATA[I]]></given-names>
</name>
</person-group>
<source><![CDATA[Ingeniería del Software]]></source>
<year>2005</year>
<edition>7ª</edition>
<page-range>309-323</page-range><publisher-loc><![CDATA[Madrid ]]></publisher-loc>
<publisher-name><![CDATA[Pearson Addison Wesley]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B10">
<label>10</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Spiteri]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[A Comparison of Software Analysis and Design Methods for Real Time Systems. Proceedings of Wrld Academy of Science]]></article-title>
<source><![CDATA[Engineering and Technology]]></source>
<year>May </year>
<month>20</month>
<day>07</day>
<volume>21</volume>
<page-range>55-59</page-range></nlm-citation>
</ref>
</ref-list>
</back>
</article>
