<?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>0012-7353</journal-id>
<journal-title><![CDATA[DYNA]]></journal-title>
<abbrev-journal-title><![CDATA[Dyna rev.fac.nac.minas]]></abbrev-journal-title>
<issn>0012-7353</issn>
<publisher>
<publisher-name><![CDATA[Universidad Nacional de Colombia]]></publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id>S0012-73532007000300029</article-id>
<title-group>
<article-title xml:lang="es"><![CDATA[LA INGENIERÍA DE REQUISITOS ORIENTADA A ASPECTOS: UNA EXPERIENCIA DE APLICACIÓN EN UN SISTEMA DE AYUDA EN LÍNEA]]></article-title>
<article-title xml:lang="en"><![CDATA[ASPECT-ORIENTED SOFTWARE ENGINEERING: AN EXPERIENCE OF APPLICATION IN A HELP DESK SYSTEM]]></article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname><![CDATA[TABARES]]></surname>
<given-names><![CDATA[MARTA S.]]></given-names>
</name>
<xref ref-type="aff" rid="A01"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname><![CDATA[ANAYA]]></surname>
<given-names><![CDATA[RAQUEL]]></given-names>
</name>
<xref ref-type="aff" rid="A02"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname><![CDATA[ARANGO]]></surname>
<given-names><![CDATA[FERNANDO]]></given-names>
</name>
<xref ref-type="aff" rid="A03"/>
</contrib>
</contrib-group>
<aff id="A01">
<institution><![CDATA[,Escuela de Ingeniería de Antioquia Departamento de Informática ]]></institution>
<addr-line><![CDATA[ ]]></addr-line>
</aff>
<aff id="A02">
<institution><![CDATA[,Universidad EAFIT Departamento de Sistemas Escuela de Ingeniería]]></institution>
<addr-line><![CDATA[ ]]></addr-line>
</aff>
<aff id="A03">
<institution><![CDATA[,Universidad Nacional de Colombia, Medellín Escuela de Sistemas e Informática ]]></institution>
<addr-line><![CDATA[ ]]></addr-line>
</aff>
<pub-date pub-type="pub">
<day>00</day>
<month>11</month>
<year>2007</year>
</pub-date>
<pub-date pub-type="epub">
<day>00</day>
<month>11</month>
<year>2007</year>
</pub-date>
<volume>74</volume>
<numero>153</numero>
<fpage>285</fpage>
<lpage>299</lpage>
<copyright-statement/>
<copyright-year/>
<self-uri xlink:href="http://www.scielo.org.co/scielo.php?script=sci_arttext&amp;pid=S0012-73532007000300029&amp;lng=en&amp;nrm=iso"></self-uri><self-uri xlink:href="http://www.scielo.org.co/scielo.php?script=sci_abstract&amp;pid=S0012-73532007000300029&amp;lng=en&amp;nrm=iso"></self-uri><self-uri xlink:href="http://www.scielo.org.co/scielo.php?script=sci_pdf&amp;pid=S0012-73532007000300029&amp;lng=en&amp;nrm=iso"></self-uri><abstract abstract-type="short" xml:lang="es"><p><![CDATA[La Ingeniería de Rrequisitos Orientada a Aspectos provee enfoques para la elicitación y especificación de los asuntos y asuntos transversales en etapas tempranas de desarrollo de software. Este artículo presenta un caso de estudio para evaluar un modelo de la separación multidimensional de asuntos orientados a aspectos. Con el caso de estudio, se revisan sus características para la elicitación, análisis y trazabilidad de requisitos, así como algunas limitaciones del modelo y cómo este puede ser adaptado al proceso de desarrollo. Además, planteamos un conjunto de argumentos que podrían promover el desarrollo y evolución de este modelo.]]></p></abstract>
<abstract abstract-type="short" xml:lang="en"><p><![CDATA[Aspect-oriented Requirement Engineering provides approaches for eliciting and specifying the concerns and crosscutting concerns in the early stages of software development. In this paper, we present a case study in order to assess a model of the aspect-oriented multidimensional separation of concerns. With the case study, we review their features for elicitation, analysis and traceability of requirements, as well as some limitations of the model and how it can be adapted to the development process. Also, we discuss some issues that might endorse the development and evolution of this model.]]></p></abstract>
<kwd-group>
<kwd lng="es"><![CDATA[asuntos]]></kwd>
<kwd lng="es"><![CDATA[separación de asuntos]]></kwd>
<kwd lng="es"><![CDATA[asuntos transversales]]></kwd>
<kwd lng="es"><![CDATA[requisitos funcionales]]></kwd>
<kwd lng="es"><![CDATA[requisitos no funcionales]]></kwd>
<kwd lng="es"><![CDATA[RF]]></kwd>
<kwd lng="es"><![CDATA[RNF]]></kwd>
<kwd lng="es"><![CDATA[ingeniería de requisitos]]></kwd>
<kwd lng="es"><![CDATA[modelo de requisitos]]></kwd>
<kwd lng="es"><![CDATA[aspectos tempranos]]></kwd>
<kwd lng="es"><![CDATA[ingeniería de requisitos orientada a aspectos]]></kwd>
<kwd lng="es"><![CDATA[DSOA]]></kwd>
<kwd lng="en"><![CDATA[concerns]]></kwd>
<kwd lng="en"><![CDATA[separation of concerns]]></kwd>
<kwd lng="en"><![CDATA[crosscutting concerns]]></kwd>
<kwd lng="en"><![CDATA[functional requirement]]></kwd>
<kwd lng="en"><![CDATA[non-functional requirements]]></kwd>
<kwd lng="en"><![CDATA[FR]]></kwd>
<kwd lng="en"><![CDATA[NFR]]></kwd>
<kwd lng="en"><![CDATA[requirement model]]></kwd>
<kwd lng="en"><![CDATA[requirement engineering]]></kwd>
<kwd lng="en"><![CDATA[early aspects]]></kwd>
<kwd lng="en"><![CDATA[aspect-oriented requirement engineering]]></kwd>
<kwd lng="en"><![CDATA[AORE]]></kwd>
</kwd-group>
</article-meta>
</front><body><![CDATA[ <p align="center"><font size="4" face="Verdana, Arial, Helvetica, sans-serif"><b>LA       INGENIERÍA DE REQUISITOS ORIENTADA A ASPECTOS: UNA EXPERIENCIA DE APLICACIÓN EN UN SISTEMA DE AYUDA EN LÍNEA </b></font></p>     <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>ASPECT-ORIENTED SOFTWARE ENGINEERING: AN EXPERIENCE OF APPLICATION IN A HELP DESK SYSTEM</b></font></p>     <p align="center">&nbsp; </p>     <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>MARTA S. TABARES </b><i>    <br>   Departamento de Informática, Escuela de Ingeniería de Antioquia, Envigado, <a href="mailto:pfmstabare@eia.edu.co">pfmstabare@eia.edu.co</a> </i> </font></p>     <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>RAQUEL  ANAYA </b><i>    <br>  Escuela de Ingeniería, Departamento de Sistemas, Universidad EAFIT, Medellín</i> </font></p>     <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>FERNANDO ARANGO </b>    <br>   <i>Escuela de Sistemas e Informática, Universidad  Nacional de Colombia, Medellín</i></font></p>     <p align="center">&nbsp; </p>     ]]></body>
<body><![CDATA[<p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Recibido       para revisar octubre 20 de 2006, aceptado abril 27 de 2007, versión final  julio 20 de 2007</b></font></p>     <p align="center">&nbsp; </p> <hr>      <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><i>RESUMEN:</i> </b>La      Ingeniería de Rrequisitos Orientada a Aspectos provee  enfoques para la elicitación y especificación de los asuntos y asuntos transversales  en etapas tempranas de desarrollo de software. Este artículo presenta un  caso de estudio para evaluar un modelo de la separación multidimensional  de asuntos orientados a aspectos. Con el caso de estudio, se revisan sus  características para la elicitación, análisis y trazabilidad de requisitos,  así como algunas limitaciones del modelo y cómo este puede ser adaptado al  proceso de desarrollo. Además, planteamos un conjunto de argumentos que podrían  promover el desarrollo y evolución de este modelo. </font></p>      <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><i>PALABRAS CLAVE:</i></b> asuntos,      separación de asuntos, asuntos transversales,  requisitos funcionales, requisitos no funcionales, RF, RNF, ingeniería de  requisitos, modelo de requisitos, aspectos tempranos, ingeniería de requisitos  orientada a aspectos, DSOA.</font></p>      <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><i>ABSTRACT: </i></b>Aspect-oriented Requirement Engineering provides approaches  for eliciting and specifying the concerns and crosscutting concerns in the  early stages of software development. In this paper, we present a case study  in order to assess a model of the aspect-oriented multidimensional separation  of concerns. With the case study, we review their features for elicitation,  analysis and traceability of requirements, as well as some limitations of  the model and how it can be adapted to the development process. Also, we  discuss some issues that might endorse the development and evolution of this  model.</font></p>      <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><i>KEY WORDS:</i></b> concerns, separation of concerns, crosscutting concerns,  functional requirement, non-functional requirements, FR, NFR, requirement  model, requirement engineering, early aspects, aspect-oriented requirement  engineering, AORE. </font></p>     <hr>      <p>&nbsp;</p>      <p><font size="3" face="Verdana, Arial, Helvetica, sans-serif"><b>1. INTRODUCCIÓN </b></font></p>      <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">La separación      de asuntos (<i>separation of concerns</i>) ha sido tratada  ampliamente en la ingeniería de software y específicamente por la ingeniería  de requisitos. Está orientada hacia la descomposición de los dominios del  problema y de la solución, con el fin de reducir la complejidad, eliminar  fallas de interpretación, mejorar la relación entre usuarios y </font></p>      <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">desarrolladores,      y estructurar sistemas complejos a través de subsistemas,  módulos o elementos simples de una forma más natural [1, 2].Para soportar  dicha separación, diferentes enfoques de ingeniería de requisitos han creado  modelos que son considerados buenas prácticas para la elicitación y análisis  de los requisitos [3, 4, 5, 6, 7]. Los requisitos pueden ser separados de  acuerdo a diferentes criterios; generalmente, </font></p>         ]]></body>
<body><![CDATA[<p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">los analistan      parten de los modelos de procesos del negocio y hacen la discriminación  de acuerdo a las funciones del dominio del problema para así  identificar los requisitos funcionales, no funcionales y restricciones, básicamente.  Muchas veces se logra una separación mayor identificando reglas de negocio,  requisitos de información y servicios, para determinar con mayor exactitud  la arquitectura del sistema desde fases tempranas de desarrollo.</font></p>      <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Es posible también lograr otro tipo de separación      identificando los requisitos que cruzan a otros; estos son llamados <i>asuntos transversales </i>(<i>crosscutting  concerns</i>). Comúnmente son difíciles de factorizar y soportar en módulos  separados ya que se encuentran dispersos (<i>scattering</i>) o enmarañados  (<i>tangling</i>) en diferentes asuntos o requisitos del sistema. Los requisitos  más comunes que tienen esta naturaleza transversal son los que representan  atributos de calidad del sistema. Por ejemplo, los requisitos asociados al  asunto (<i>concern</i>) de “seguridad”, la mayoría de veces no son elicitados  en etapas tempranas o son descritos de forma solapada en los requisitos funcionales  y consecuentemente este asunto no logra ser separado fácilmente en una clase  o método en posteriores fases del ciclo de vida. </font></p>      <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">La separación      de este tipo de asuntos es tratada por el Desarrollo de Software Orientado      a Aspectos (AOSD – <i>Aspect Oriented Software Development, www.aosd.net</i>).  Esta disciplina nace inicialmente como modelo de programación y rápidamente  se percibe su potencialidad como enfoque útil en las fases tempranas del  desarrollo [8, 9, 10, 11]. Es asi como surgen diferentes aproximaciones orientadas  a aspectos que apoyan la elicitación y análisis de requisitos de software  [14] y se constituye la Ingeniería de Requisitos Orientada a Aspectos (AORE  - Aspect oriented Requirement Engineering, <i>www.early-aspects.net</i>). </font></p>      <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">El objetivo a      lograr en este artículo es evaluar, por medio de un caso de  estudio, el enfoque de la separación multidimensional de asuntos orientados  a aspectos [12]. Esta experiencia permitirá divulgar sus características  más relevantes de elicitación, análisis y trazabilidad de requisitos, sus  limitaciones y las posibilidades de adaptación y uso en el proceso de desarrollo  de software. </font></p>      <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">El artículo está estructurado de la siguiente forma: Sección 2 describe  las bases teóricas del modelo. Sección 3 presenta el análisis del caso de  estudio desde la perspectiva del modelo. Finalmente en la sección 4 se presentan  conclusiones y trabajos futuros.</font></p>      <p>&nbsp;</p>      <p><font size="3" face="Verdana, Arial, Helvetica, sans-serif"><b>2. MODELO        DE INGENIERÍA    DE REQUISITOS ORIENTADO A ASPECTOS AORE</b></font></p>      <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">AORE es un modelo      para el tratamiento de requisitos que enfatiza el tratamiento de intereses      transversales[11, 12]. Este modelo usa la técnica de PREview  basada en viewpoints con un mecanismo de composición basado en XML (bajo  la herramienta ARCaDe). Un asunto es definido como un conjunto coherente  de requisitos; los asuntos transversales son identificables en matrices donde  es posible establecer cuándo algunos de sus requisitos influencian de manera  positiva (<i>colabora)</i> o afectan de manera negativa <i>(restringe)</i> otros  asuntos. La aproximación está orientada principalmente a:</font></p>  <ul>        <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Identificar, separar      y componer asuntos transversales. </font></li>        <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Soportar el establecimiento      de compen-saciones (<i>trade-off</i>) tempranas entre asuntos transversales      y requisitos que se sobreponen .</font></li>        ]]></body>
<body><![CDATA[<li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Negociar y tomar      decisiones entre grupos de participantes (<i>stakeholders</i>).</font></li>      </ul>      <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">La aproximación es refinada por Moreira et al. en [13] y adaptada desde  una perspectiva multidimensional para tratar los asuntos en un “espacio de  asuntos”  de forma uniforme sin importar la naturaleza de sus requisitos, funcionales  o no funcionales. Posteriormente, el modelo es soportado por PROBE, un framework  para verificar con lógica temporal las reglas de composición [18] (ver Figura  1).</font></p>         <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><a name="fig01"></a>Figura 1</b>:      Un esquema conceptual de la aproximación AORE    <br>      <b>Figure 1</b>: A conceptual schema  of the AORE approach</font></p>  <font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>2.1 El Proceso de AORE    <br>  </b>La aproximación desarrolla el modelo AORE  en un proceso determinado por cinco actividades (ver Figura 2): </font>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><i>1. Identificar y especificar asuntos</i></b>.    Para esta actividad se utilizan técnicas de separación de requisitos como: <i>viewpoints</i> [3],    casos de usos [4], y orientación a objetivos [5], entre otras. Su especificación  es realizada en XML.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><i>2. Identificar relaciones de grano grueso entre asuntos</i></b>.    Se buscan las posibles influencias entre los asuntos. Estos asuntos son  relacionados entre sí en una matriz.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><i>3. Especificar          las proyecciones de los asuntos usando reglas de composición</i></b>.    Se especifican las relaciones entre los asuntos con base en las influencias    encontradas entre los requisitos. Esta especificación (XML) se realiza a  través de reglas de composición.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><i>4. Manejo de conflictos entre asuntos</i></b><i>.</i> Actividad    conformada por un conjunto de acciones que llevan a la solución de conflictos  ocasionados por las contribuciones entre asuntos.</font></p>     ]]></body>
<body><![CDATA[<p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><i>5. Especificación          de las dimensiones de los asuntos</i></b>.    Se decide la manera como los asuntos serán soportados en la arquitectura  con respecto a las dimensiones de influencia y mapeo:</font></p>  <ul>        <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><i>Influencia</i>:      indica en cuales etapas del ciclo de vida afectarán los asuntos; son particulares      a cada proyecto o son determinadas por los desarrolladores.</font></li>        <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><i>Mapeo</i>:        indica los artefactos en los cuales serán correlacionados los asuntos      especificados:</font>      <ul>            <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><i><b>Función</b></i>:          cuando el asunto es posible relacionarlo a nivel de diseño como una clase estándar (o un conjunto de clases) que debe mantener          el control de la relación con otras clases.</font></li>            <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><i><b>Decisión</b></i>:          cuando el asunto es tenido en cuenta sólo para          la toma de decisiones en cualquier etapa del ciclo de vida.</font></li>            <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><i><b>Aspecto</b></i>:          cuando las propiedades de un asunto no pueden ser encapsuladas en una clase          sencilla y estas propiedades podrían estar dispersas          por diferentes clases del núcleo del sistema.</font></li>          </ul>    </li>      </ul>      <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><a name="fig02"></a>Figura 2</b>:      Modelo de ingeniería  de requisitos orientado al tratamiento uniforme de asuntos [11-13]    <br>  <b>Figure 2</b>: Concern-oriented  requirement engineering model [11-13]</font></p>  <font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>2.2 Especificación  De Aore En Arcade    ]]></body>
<body><![CDATA[<br>  </b>La aproximación especifica el detalle de los asuntos, sus requisitos y reglas  de composición en la herramienta ARCaDe. Una instancia del modelo se desarrolla  en la sección 3. </font>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Las    reglas de composición son especificadas para cada asunto (en XML) como    intersecciones composicionales que permiten identificar puntos potenciales    de compensación (trade-off) [12]. Las reglas están compuestas por los requisitos    de cada asunto (<i>requirement concern</i>), las restricciones con la acción    y el operador de tejido correspondiente (<i>constraint action - operator</i>)    y la acción de resultado (<i>Outcome action</i>). Esta última acción toma    gran importancia en la composición, ya que determinará la acción de salida    al realizar el tejido, ya sea por realización satisfactoria de la regla o  porque dicha regla satisface otro asunto.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Las restricciones      de acción definidas en [12 - (Tabla 1)] especifican el    modo en que un requisito puede afectar a otro con el que se relaciona. Así,    es posible establecer las condiciones asociadas al comportamiento que será   adicionado en el momento del tejido. Algunas de las restricciones de acción    definidas son: <i>reforce </i>(reforzar), usada para imponer condición adicional    sobre un conjunto de asuntos; <i>ensure</i> (asegurar), usada para determinar    que una condición para un conjunto de asuntos existentes; <i>provide</i> (proveer),    usada para especificar características adicionales a ser incorporadas en un    conjunto de asuntos; <i>affect</i> (afecta), usado para    especificar que un conjunto de requisitos de un asunto alterará el estado  de otro.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Los operadores      definidos en [12 - (Tabla 2)], permiten establecer la condición    de evento, es decir “<i>el cuándo</i>” se hará el tejido. La diversidad    de operadores lleva a reconocer todos los posibles estados de temporalidad    a los cuales un asunto estará asociado en el momento del tejido. Algunos    de los operadores definidos son: <i>during </i>(durante), describe el intervalo    temporal en el cual un conjunto de requisitos están siendo satisfechos; <i>on </i>(sobre),    describe el punto temporal después que un conjunto de requisitos ha sido    satisfecho; <i>and, or, xor</i> (y, o, o exclusivo), ayudan a la conjunción  y disyunción de requisitos de asuntos.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Los operadores de resultados [12 - (Tabla 3)], permiten representar los  resultados del tejido hecho entre asuntos.</font></p>      <p>&nbsp;</p>      <p><font size="3" face="Verdana, Arial, Helvetica, sans-serif"><b>3. DESARROLLO DEL CASO DE ESTUDIO</b></font></p>      <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">A través del caso de estudio analizamos la aplicabilidad de la aproximación    AORE, sus características de elicitación, análisis y trazabilidad de requisitos.    De igual forma, en cada actividad hacemos un análisis de sus limitaciones y posibilidades de adaptación y uso en el proceso de desarrollo. </font></p>      <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>3.1 Descripción    General Del Problema    <br>  </b>El problema corresponde a un desarrollo orientado    a objetos que se localiza en el Departamento de Mantenimiento de una empresa    [15]. Su función es dar  ayuda en línea a solicitudes de servicios de mantenimiento de edificios. El  usuario afectado por el daño debe diligenciar una solicitud en la cual hace  una descripción del problema; esta podrá ser ingresada a cualquier hora del  día y cualquier día de la semana. Un empleado del área de mantenimiento la  recibe y valida; si está correcta, programa los técnicos para la atención del  servicio en una agenda de servicios. </font></p>      ]]></body>
<body><![CDATA[<p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Cuando se atiende      el servicio, el técnico diligencia una planilla con la información  correspondiente. Una solicitud puede involucrar la ejecución de más de un servicio  para ser terminada. Un servicio de mantenimiento puede ser contratado con una  empresa externa con la debida autorización del jefe de área y del departamento  financiero. Todo el flujo de trabajo de una solicitud de servicio deberá ser  reportado en diferentes estadísticas de servicio. El sistema deberá validar  y autorizar el ingreso al sistema de acuerdo al rol de cada usuario, que a  su vez deberán ser empleados. El sistema deberá soportar muchos usuarios concurrentes.  El jefe del departamento de mantenimiento espera que el sistema tenga un tiempo  de respuesta rápido y que el departamento de sistemas provea constante mantenimiento  al sistema.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Para la elicitación de los asuntos se tuvieron en cuenta artefactos como el  discurso general del problema, diagramas de procesos y casos de uso. A continuación  se muestra el desarrollo del caso de estudio en cada uno de los pasos indicados  por el proceso del modelo.</font></p> <font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>3.2 Identificación Y Especificación De Asuntos    <br> </b>Para la identificación de asuntos es necesario contar con modelos de negocio muy bien definidos y especificados. El uso de aproximaciones orientadas a objetivos (<i>Goal-Oriented Approaches</i>) y orientadas a modelamiento de negocios (<i>business-oriented  modeling</i>), son convenientes. Además, consideramos importante que los participantes  identifiquen asuntos del sistema tales como seguridad, concurrencia, disponibilidad,  entre otros. </font>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Los requisitos deben ser agrupados de acuerdo al contexto funcional determinado   por cada uno de los asunto. Para lograr esto, realizamos varios refinamientos hasta conseguir las agrupaciones correspondientes. </font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Los siguientes asuntos fueron identificados: </font></p> <ul>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Solicitudes</b>:     Diligenciar y verificar información relacionada con solicitudes de servicio.     Inicia el proceso de atención.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Servicios</b>:       Manejar los servicios pendientes; asignación de técnicos, actualización de la agenda     y generación de reporte de servicios.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Gestión         de usuarios</b>:     Administrar usuarios, roles y asignar privilegios a éstos. </font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Seguridad</b>:       Validar el acceso de los usuarios, mostrar información de acuerdo a roles     establecidos y garantizar la integridad de los datos. </font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Disponibilidad</b>:     Habilitar disponibilidad del sistema 24x7.</font></li>       ]]></body>
<body><![CDATA[<li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Compatibilidad</b>:     Interactuar con otros sistemas existentes. </font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Multiacceso</b>:     Soportar múltiples usuarios concurrentes. </font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Soporte al sistema</b>:     Mantener el sistema operativo, la base de datos, la aplicación y otros dispositivos     lógicos y físicos que sean necesarios.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Sistemas externos</b>:     Proveer desde sistemas externos información al sistema de ayuda, para la validación     de usuarios, activos y presupuesto.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Estadísticas de     Gestión</b>: Entregar estadísticas de las solicitudes, servicios y funcionalidades     del mismo.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Contratos: </b>Permitir     la gestión de la contratación de un servicio con una empresa externa.</font></li>     </ul>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">La Figura 3(a)     muestra la especificación del asunto “<i>Servicios</i>”  y en la Figura 3(b) el asunto “<i>Estadísticas de Gestión</i>”, ambos con sus  correspondientes requisitos. Cada asunto y requisito es identificado; si un  requisito necesita ser subdivido en varios requisitos, el requisito más detallado  se identifica conservando el identificador del padre al cual se le adiciona  un nuevo número para formar el identificador del requisito hijo. </font></p>       <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><a name="fig03"></a>Figura 3</b>:     (a) Requisitos del asunto “<b>Servicios</b>”, (b) Requisitos  asunto “<b>Estadísticas de Gestión</b>”    <br>  <b>Figure 3</b>: (a) Requirements  of the “<b>Services</b>” concern, (b) Requirements of the “<b>Management  statistics</b>” concern</font></p>     ]]></body>
<body><![CDATA[<p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Adicionalmente, los asuntos deben ser especificados en plantillas (<i>templates</i>)  que permitan concretar su detalle. e.g. plantillas de <i>viewpoints</i> [3],  casos de uso [4], entre otras. En este caso, nosotros seleccionamos una plantilla  que permitiera preparar los asuntos para el análisis de contribuciones o influencia  de unos con otros, entonces hemos utilizado la plantilla presentada en [17].  Las Tablas 1 y 2 muestran la especificación para dos de los asuntos del caso  de estudio. </font></p>       <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><a name="tab01"></a>Tabla 1.</b> Especificacion del asunto <b>Servicios    <br> Table 1.</b> Specification of the “<b>Services</b>” concern</font></p>     <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><a name="tab02"></a>Tabla 2.</b> Especificacion     del asunto “<b>Soporte al sistema”    <br> Table 2.</b> Specification of “<b>System Support</b>” concern</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Análisis de       la actividad    <br> </b>La elicitación de requisitos es una actividad compleja que depende  de las interacciones entre los participantes. Para el desarrollo de este caso  de estudio, sólo contamos con los documentos de requisitos que habían sido  obtenidos con anterioridad. En la tarea de agrupar los requisitos en asuntos  se encontraron las siguientes dificultades: (a) algunos requisitos estaban  descritos de forma inexacta o confusa, lo que ocacionó que fueran desechados  o agrupados en asuntos diferentes de su función real; (b) algunos requisitos,  si bien estaban descritos correctamente, estos eran agrupables en varios asuntos  a la vez (superposición temprana); (c) otros requisitos eran no agrupables  en ningún asunto, lo que significaba que faltaban asuntos por definir o se  presentaban errores en la descripción del problema o en la elicitación del  requisito. También es posible encontrar asuntos sin requisitos asociados; generalmente son requisitos del sistema que ellos mismos constituyen un asunto.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">En general, esta     actividad es de alto riesgo y requiere de mucho tiempo ya que es necesario     llegar a un buen nivel de descripción de los requisitos.  Es importante resaltar que los analistas deben procurar documentación complementaria  que les permita disminuir factores de riesgo como la ambigüedad y la incompletitud  de los requisitos. Algunas de estas podrían ser, catálogos de requisitos no  funcionales, repositorio de requisitos </font><font size="2" face="Verdana, Arial, Helvetica, sans-serif">funcionales,  catálogos  de reglas de negocio y de asuntos transversales, entre otros [6, 16].</font></p> <font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>3.3 Identificación De Relaciones De Grano Grueso Entre Asuntos    <br> </b>Cuando un asunto tiene una descripción muy general o no tiene requisitos agrupados,  no será fácil percibir la influencia de éste en otros asuntos. Para la identificación  y análisis de relaciones de grano grueso, nosotros hemos tomado la fila <i>contribución</i> de  la plantilla usada en las Tablas 1 y 2. De igual forma el analista puede hacer  uso de las técnicas mencionadas en [12, 13]. </font>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Por   ejemplo, en la Tabla 1 el asunto “<i>Servicios</i>”   es influenciado positivamente por el asunto “<i>Solicitudes</i>”. Esto quiere   decir que los requisitos del asunto “<i>Servicios</i>”   se satisfacen si se cumplen los requisitos del asunto “<i>Solicitudes</i>”.   De forma similar, podemos hacer la siguiente interpretación en la Tabla 2,   el asunto “<i>Soporte al Sistema</i>” es influenciado positivamente por el   asunto “<i>Seguridad</i>” porque si se satisfacen algunos de los requisitos   del asunto “<i>Seguridad</i>”   se garantiza que se cumplen algunos de los requisitos del asunto “<i>Soporte     al Sistema</i>”. Por ejemplo, si se cumple el requisito 1 del asunto “<i>Seguridad</i>” (permitir   el acceso al sistema de ayuda solamente a usuarios autorizados de acuerdo a   roles establecidos), incluyendo su hijo (mostrar la información a los usuarios   de acuerdo a los roles establecidos), se satisface el requisito 1 del asuntno “<i>Soporte     al Sistema</i>” (dar soporte al hardware y al sistema operativo donde corre la aplicación del sistema de ayuda).</font></p>     ]]></body>
<body><![CDATA[<p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Por otro lado,     el asunto “<i>Soporte al Sistema</i>”   está influenciado negativamente por el asunto “<i>Disponibilidad</i>” porque   si se satisfacen todos los requisitos de   éste asunto (el sistema de ayuda debe estar disponible 24x7) se afecta el   cumplimiento de todos los requisitos de <i>“Soporte al Sistema”</i>. Aunque ésta y la anterior   actividad se asemejen a otras actividades de elicitación de requisitos bajo   otros modelos, es importante ser consciente del aporte que este modelo hace para el tratamiento de asuntos y sus requisitos agrupados.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">En la Tabla 3,     se proyecta cada uno de los asuntos en una relación   muchos a muchos. La Tabla se lee de fila a columna, por ejemplo: el asunto <i>Solicitudes</i> (So) influencia sobre los asuntos <i>Servicios (Se),Estadísticas de Gestión (Est)</i> y<i> Contratos(Con)</i>.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Desde una vista     de grano grueso, la influencia de un asunto en otro permite que los analistas     tengan en cuenta situaciones importantes tales como: qué asuntos   deberán ser tratados bajo reglas de composición, el nivel de complejidad del   sistema, el nivel de trazado de los asuntos transversales candidatos y posibles conflictos entre los participantes. </font></p>     <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><a name="tab03"></a>Tabla 3.</b> Matriz de asuntos relacionados    <br>   <b>Table 3.</b> Matrix relating concerns</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Análisis       de la actividad    <br>   </b>Aunque identificar las relaciones entre asuntos   de grano grueso requiere de un trabajo exhaustivo, en este proceso encontramos las siguientes utilidades para la elicitación de requisitos: </font></p> <ul>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><i>Tratar los requisitos     funcionales y no funcionales bajo criterios similares de funcionalidad del     sistema</i>. Es común dejar las tareas de elicitación de requisitos no funcionales     a los arquitectos, pero realmente quien tiene las necesidades exactas sobre     el sistema es el usuario. Por ejemplo, el requisito de seguridad para el     caso de estudio, “<i>permitir el acceso al sistema de ayuda solamente a usuarios       autorizadas de acuerdo a roles establecidos</i>”, no es una necesidad del     desarrollador sino del usuario. Posteriormente, el arquitecto identificará que     atributo de calidad cruzará dicho requisito para transformalo en un componente     del sistema que podrán satisfacer dicha necesidad o en un lineamiento de     arquitectura. Igualmente este tipo de requisitos proveerán a los desarrolladore     criterios de pruebas muy importantes. </font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><i>Verificar         la calidad semántica de los requisitos cuando se está en la tarea de         agruparlos</i>.     Es una tarea extensa y dispendiosa, pero trae beneficios para la transformación     de los requisitos en arte-factos o componentes de software en etapas posteriores. </font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><i>Establecer la influencia     entre asuntos permite realizar control del trazado vertical (dependencia     entre requisitos)</i>. Esta tarea proporciona características de fiabilidad,     exactitud y permite disminuir la complejidad en los modelos de requisitos     y casos de uso que determinen la arquitectura del sistema. </font></li>       ]]></body>
<body><![CDATA[<li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><i>Identificar los asuntos     transversales conduce al aseguramiento de una buena arquitectura del sistema</i>.     El hallar solapamiento temprano tanto de requisitos funcionales como no funcionales,     orienta la identificación de los asuntos transversales. Dos criterios para     su identificación pueden ser: (a) asuntos con funcionalidad independiente     que pueden contribuir con información adicional a otros asuntos; en este     caso podríamos hablar de asuntos como “<i>Seguridad</i>” o “<i>Estadísticas       de Gestión</i>”. (b) asuntos con funcionalidad solapada pero que no es       posible identificarlos de forma independiente de los asuntos sobre los       cuales contribuye (posible dependencia entre requisitos funcionales). </font></li>     </ul> <font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>3.4 Especificación De Los Asuntos Usando Reglas De Composición    <br> </b>Una vez los asuntos han sido cruzados en la matriz (Tabla 3), procedemos a construir las reglas de composición (tejido). La composición es la actividad  más compleja del modelo, pero hace el aporte más importante de la aproximación  a la ingeniería de requisitos. </font>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Para   crear las reglas de composición nos basamos en el solapamiento temprano   inicialmente detectado al nivel de requisitos y registrado al nivel de grano   grueso en la Tabla 3. Esta parte del proceso corresponde a lo que se denomina   intersección composicional. De acuerdo a la experiencia obtenida, la composición puede ser lograda de forma organizada y ágil a través de los siguientes pasos:</font></p> <ol>   <li type="a"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Identificar de la matriz de asuntos     relacionados, los asuntos fuentes (filas) y asuntos destino (columnas).</font></li>   <li type="a"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Para       cada uno de los requisitos del asunto fuente verificar la multiplicidad       de la relación con los requisitos     del asunto destino (ver Figura 4). Los requisitos del asunto fuente que tengan     una multiplicidad de 1:n (uno a muchos) con requisitos del asunto destino se     les asignará la restricción de acción y el operador correspondiente. Este     es un caso de requisito diseminado (<i>scattering</i>) en otros requisitos,     e.g. R<sub>A1</sub>.</font></li>   <li type="a"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Para       cada uno de los requisitos del asunto destino verificar la multiplicidad       de la relación con los requisitos     del asunto fuente. Los requisitos del asunto destino que tengan una multiplicidad     de 1:n con requisitos del asunto fuente se le asigna la restricción de acción     y el operador correspondiente a cada relación o conjunto de relaciones. Este     es un caso de requisito mezclado (<i>tangling</i>) en otros requisitos s,     e.g. R<sub>B4</sub>.</font></li>   <li type="a"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Cuando       algún       requisito de un asunto destino participa de una multiplicidad n:m (muchos       a muchos) se puede considerar que el asunto/requisito es tranversal (candidato)     al asunto/requisitos fuente, e.g. R<sub>B4</sub>. </font></li>     </ol>     <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b> <a name="fig04"></a>Figura 4</b>:     Relación de asuntos y requisitos    <br>   <b>Figure 4</b>: Relationship of the concerns and requirements </font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Por cada composición hallada, se debe determinar qué comportamiento preestablecido  o adicional será  involucrado. El uso de las restricciones de acción no está asociado a algunos  asuntos específicos y son definidas genéricamente; estas ayudarán a que el  analista entienda todas las posibles variables en el tejido de los asuntos  en etapas posteriores. Para el uso de las restricciones de acción y los operadores  hemos creado los siguientes criterios de uso:</font></p> <ul>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Si al realizar       la composición es necesario     que un asunto destino     “adicione” com-portamiento en otro conjunto de asuntos origen, se utilizan     restricciones de acción tales como <i>enforce</i>, <i>provide</i> y <i>affect</i>.     El asunto que provee la información adicional en la composición bajo este tipo     de restricciones de acción es un asunto transversal candidato. </font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> La acción <i>excluir</i> actúa como una excepción     (<i>exception</i>) que puede ocurrir en un asunto fuente cuando un requisito     agrupado en dicho asunto no será ejecutado en el momento de la composición. Ésta     y las restricciones de <i>applied</i> y <i>ensure</i>, pueden orientar a     la declaración de una acción más genérica llamada <i>exception</i> que permita     manejar otro tipo de excepciones de tiempo, satisfacción de cumplimiento de     la regla y de una composición, entre otras.</font></li>       ]]></body>
<body><![CDATA[<li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Los operadores       son usados según la temporalidad     y las secuencias de ejecución de los asuntos en el momento del tejido. Estos     pueden ser asociados a las restricciones de acción según sea la forma como     pueden ser controladas las actividades de los procesos de negocio del problema     tratado.</font></li>     </ul>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Para ilustrar     el caso de estudio, en la Tabla 4 se muestran dos de las reglas de composición     elaboradas para los asuntos “<i>Servicios”</i> y “<i>Disponibilidad”</i>.  El buen entendimiento del uso de operadores en estas reglas es fundamental  para dar significado a la composición ya que estos son la restricción o condición  de la regla.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Análisis de la actividad</b></font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">El análisis de la composición de requisitos no es un tema muy tratado por  los modelos actuales de ingeniería de requisitos. No obstante, el uso de reglas  de composición en etapas tempranas provee algunos de los siguientes beneficios:</font></p> <ul>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Diferenciar     entre dependencia de requisitos y composición de requisitos.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Identificar,       con mayor certeza, en la especificación de los casos de uso, elementos tales como: precondiciones,     postcondiciones, puntos de extensión y flujos alternos; además de relaciones     tipo &lt;&lt;extend&gt;&gt; e &lt;&lt;include&gt;&gt;. </font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Detectar y       evitar futuros acoplamientos entre clases a partir de la correcta definición de las reglas     de composición.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Establecer       relaciones de trazado que puedan conservar el sentido de la composición     desde etapas tempranas.</font></li>     </ul>     ]]></body>
<body><![CDATA[<p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><a name="tab04"></a>Tabla 4.</b> Reglas     de composición para los asuntos <b>Servicios</b> y <b>Disponibilidad    <br> Table 4.</b> Composition rule of the <b>Services</b> and <b>Availability</b> concerns</font></p>       <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>3.5 Manejo De Conflictos    <br> </b>El manejo de conflictos que propone la aproximación se basa en el análisis  de compensaciones. Los pasos a seguir para la identificación y posterior administración de conflictos son:</font></p> <ol>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Refinar la       matriz de asuntos relacionados (Tabla 3), indicando en cada interrelación el tipo de contribución       definitiva que un asunto ejerce sobre otro (ver Tabla 5). Por ejemplo,       el asunto “<i>Servicios”</i> contribuye     positivamente con el asunto “<i>Estadísticas de Gestión</i>” y el asunto “<i>Soporte       al Sistema</i>” restringe (contribuye negativamente) el asunto “<i>Disponibilidad</i>”.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Doblar la matriz       de contribución sobre     su diagonal; ésta actividad permite observar el efecto acumulativo para las     situaciones donde dos asuntos influyen entre sí de manera recíproca (ver Tabla     6). Después de un análisis detallado, si al doblar la matriz se presenta más     de un signo en la misma casilla (denotado en oscuro en la matriz) los signos     de la contribución deben ser iguales. Si la correspondencia es de signos contrarios     se debe revisar la especificación de los requisitos de los asuntos en conflicto,     y se debe tomar alguna de las siguientes decisiones: </font>     <ul>           <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Redactar de nuevo el (los)         requisito(s) de uno o ambos asuntos.</font></li>           <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Subdividir el requisito existente,         para restringir su generalidad.</font></li>           <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Verificar         que el requisito sí pertenezca al asunto en cuestión.</font></li>           <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Eliminar o invalidar el requisito. </font></li>         ]]></body>
<body><![CDATA[</ul>   </li>     </ol>     <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><a name="tab05"></a>Tabla 5.</b> Matriz     de contribución    <br> <b>Table 5.</b> Contribution matrix</font></p>     <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><a name="tab06"></a>Tabla 6.</b> Matriz     de contribución de asuntos doblada  sobre su diagonal    <br>  <b>Table 6.</b> The concern contribution matrix folded along its diagonal</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Como se observa     en la matriz de contribución doblada, los asuntos “<i>Disponibilidad”</i> y “<i>Soporte  al Sistema”</i> se influencian de forma recíproca y de manera negativa. Esto  puede significar que, cuando se satisfacen los requisitos de “<i>Soporte al  Sistema</i>” se penaliza el cumplimiento de  algunos de los requisitos de “<i>Disponibilidad</i>”, y al aumentar la “<i>Disponibilidad</i>” del  sistema el tiempo dedicado al soporte se ve afectado, disminuyendo la posibilidad  del cumplimiento de los requisitos del asunto “<i>Soporte al Sistema</i>”.  Lo contrario ocurre entre “<i>Seguridad</i>”  y “<i>Soporte al Sistema</i>”, para éste caso se garantiza que los requisitos  de “<i>Soporte al Sistema</i>” se cumplan; es decir, si se puede brindar “<i>Seguridad</i>” al  sistema de la solución y al resto de sistemas que interactúan con éste, el  soporte a dicho sistema es menos traumático y difícil.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">El último paso para la negociación consiste en darle un peso a las contribuciones  que tienen signo negativo en la matriz. La persistencia del conflicto debe  ser solucionado según el nivel de importancias que tiene para los participantes.  El peso es un número real entre 0 y 1, y representa la prioridad del asunto  fuente en relación con el asunto destino. Muy importante toma valores entre  (0.8 - 1], importante (0.5 – 0.8], promedio (0.3 – 0.5], no tan importante  (0.1 – 0.3], sin importancia [0, - 0.1] (ver Tabla 7).</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">En la matriz se     observa que no se presenta ningún conflicto entre los asuntos,  pues no hay más de una contribución negativa en diferentes filas en una misma  columna. A la influencia bidireccional negativa entre los asuntos de “<i>Disponibilidad</i>” y “<i>Soporte  al Sistema</i>” se le asignó un peso de 0.7 producto de la negociación  entre los participantes del proyecto. Se consideró que ambos asuntos para el  presente sistema se encuentran en la categoría de importante.</font></p>       <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><a name="tab07"></a>Tabla 7.</b> Matriz     doblada con ponderación en las contribuciones  negativas    ]]></body>
<body><![CDATA[<br>  <b>Table 7.</b> Weighted (folded) negative contribution matrix</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Análisis de la actividad</b></font></p> <ul>    <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif">En     esta parte, el nivel de refinamiento y entendimiento de los requisitos es       mayor lo que permite detectar y corregir errores de la elicitación de requisitos     de los pasos anteriores. Inclusive, es posible llegar a un conjunto de requisitos     que puedan ser agrupados en un nuevo asunto de grano grueso. </font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Esta     buena práctica puede compensar conflictos proporcionados por situaciones tales     como: carencia de definición o desconocimiento de los procesos de negocio que     acompañan los requisitos elicitados, definición errada del alcance del proyecto,     especificación de requisitos no controlada y ausencia del dimensionamiento     de los riesgos, entre otras. </font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Valorar     la importancia del conflicto ayuda a los participantes a reevaluar la verdadera     necesidad y prioridad de los requisitos solicitados. </font></li>     </ul> <font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>3.5 Especificación De Las Dimensiones De Los Asuntos    <br> </b>Con el objetivo de estar cerca de una arquitectura lógica de alto nivel, el  resultado final que arroja el modelo está orientado a determinar cuáles de  los asuntos de grano grueso detectados se convertirán en, aspectos, decisiones  o funciones (ver definiciones en la sección 2); además de determinar su influencia  en posteriores fases del ciclo de vida. En la Tabla 8 se muestra la clasificación  que se le a dado a algunos de los asuntos identificados. </font>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Esta   es una de las tareas más difíciles del modelo ya que la aproximación   no provee criterios explícitos para determinar el tipo de mapeo y su influencia. Para lograr esto nosotros usamos los criterios creados en la actividad 3.4. </font></p>     <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><a name="tab08"></a>Tabla 8.</b> Dimensiones de los asuntos    <br> <b>Table 8.</b> Concern dimensions</font></p>     ]]></body>
<body><![CDATA[<p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Análisis de       la actividad    <br>   </b>Proyectar la disposición de los artefactos y los elementos de modelo desde   el análisis de los requisitos, traer benefición al nivel de la definición de   la arquitectura. De esta forma, nosotros consideramos que es importante que   en la fase influenciada sea posible tipificar los artefactos afectados; por   ejemplo, en la fase de diseño el midleware, los componentes, las relaciones, entre otros, son artefactos que pueden ser afectados por uno o varios asuntos.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">También, la influencia y el mapeo podrán ser usados como vínculos de trazado   con restricción identificada que permitirá controlar los asuntos y sus requisitos tanto hacia delante como hacia atrás en el ciclo de vida de desarrollo.</font></p>     <p>&nbsp;</p>     <p><font size="3" face="Verdana, Arial, Helvetica, sans-serif"><b>4. CONCLUSIONES Y TRABAJOS FUTURO</b></font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Una vez hemos     realizado el aporte crítico en cada una de las actividades del modelo AORE, presentamos  algunas conclusiones generales y trabajos futuros que pueden orientar el uso  de esta aproximación en otras técnicas de ingeniería de requisitos. </font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">La capacidad de     AORE resalta la identificación y análsis de asuntos/requisitos transversales. Esta  práctica no es usual o al menos no evidente cuando se trabaja bajo procesos  de desarrollo de software conocidos, como el proceso unificado (RUP – Rational  Unified Process). Aunque al principio parece difícil y costosa su manipulación,  el modelo provee características para: (a) disminuir la complejidad de desarrollo;  (b) disminuir el riesgo en el diseño e implementación a partir de la solución  de conflictos; (c) controlar y soportar de la trazabilidad de requisitos al  poder inferir vínculos de trazado identificando su influencia y mapeo en posteriores  artefactos o fases del ciclo de vida. Estas características abren la posibilidad  de orientar el manejo de requisitos en nuevos dominios de la ingeniería de  software, como MDA (Model-Driven Architecture) [21], ya que sería posible controlar  la multiplicidad de interelación de los asuntos/requisitos fuente y destino  en modelos CIM (<i>Computation independent model</i>) y su posterior transformación  en modelos PIM (<i>platform independent model</i>) y PSM (<i>platform specific  model</i>).</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">El modelo hace     un aporte muy importante en relación a la separación y composición de asuntos.  RUP dirige la descomposición del problema hacia la funcionalidad (casos de  uso) que debe ser entregada como producto de software. Por la orientación de  los casos de uso, los analistas limitan su especificación a la descripción  de requisitos funcionales. Comúnmente, atributos de calidad, (conocidos también  como requisitos no funcionales), y reglas de negocio que han sido elicitados,  y que podrían ser transversales a muchas funcionalidades, son tratados por  los arquitectos en fases avanzadas del ciclo de vida. </font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Realizando una     separación  orientada por AORE, todo asunto del sistema podría tratarse de manera homogéna  en un espacio multidimensional de concerns. Por ejemplo, Jacobson y Ng en [19],  identifican asuntos transversales procedentes de los requisitos no funcionales  o reglas de negocio representados en casos de uso extendidos. Sousa et al.  [20], presentan casos de uso y relaciones estereotipadas para representarlos  y pueda darse una separación plena de los asuntos que conciernen a muchos otros  sin afectar las funcionalidades básicas.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">La composición en  RUP está dirigida a la agrupación de elementos de modelo (casos de uso y otros)  en paquetes que determinen la arquitectura del sistema y guíen las iteraciones  que permitirán la planificación y estimación del costo de sus productos. La  elaboración de reglas de composición orientada por AORE puede ser obtenida  desde la especificación de cada caso de uso. Es decir, elementos tales como precondiciones,  postcondiciones y puntos de extensión podrían proveer las restricciones de  acción, los operadores y las acciones que deberán ejecutarse una vez se efectue  la composición con los flujos básicos, alternos y subflujos. Así, desde etapas  tempranas, los arquitectos tendrán elementos para proyectar la construcción  o uso de componentes y servicios en una arquitectura de diseño y su posterior  implementación.</font></p>     ]]></body>
<body><![CDATA[<p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Como trabajo futuro  se desarrollarán más casos de estudio bajo éste modelo que permitan: generar  criterios de uso de restricciones de acción, operadores, influencias, correlaciones,  entre otras características. Además consideramos importante formalizar los  criterios de agrupación de requisitos, aplicación de reglas y manejo de conflictos.</font></p>     <p>&nbsp;</p>     <p><font size="3" face="Verdana, Arial, Helvetica, sans-serif"><b>REFERENCIAS</b></font></p>     <!-- ref --><p>   <font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b> [1]</b> DIJKSTRA, E.W. A Discipline of programming, Prentica Hall, Englewood Cliffs, NJ, 1976.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000166&pid=S0012-7353200700030002900001&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><br>   <b>[2]</b> PARNAS, D. On the Criteria To Be Used in Decomposing Systems into Modules. Communications of the ACM, 1053-1058,1972.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000167&pid=S0012-7353200700030002900002&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><br>   <b>[3]</b> SOMMERVILLE, I. Software Engineering, 7 ed: Addision-Wesley, 2004.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000168&pid=S0012-7353200700030002900003&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><br>   <b>[4]</b> JACOBSON, I., CHIRSTERSON, M., JONSSON P. and Overgaard G., Object-Oriented Software Engineering: A Use Case Driven Approach, Addison-Wesley, 1992.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000169&pid=S0012-7353200700030002900004&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><br>   <b>[5]</b> LAMSWEERDE, A. Goal-Oriented Requirements Engineering: A Guided Tour, presented at 5th IEEE International Symposium on Requirements Engineering, 2001.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000170&pid=S0012-7353200700030002900005&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><br>   <b>[6]</b> CHUNG, L., NIXON, B., YU E. and MYLOPOULOS J. Non-Functional Requirements in Software Engineering: Kluwer Academic Publishers, 2000.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000171&pid=S0012-7353200700030002900006&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><br>   <b>[7]</b> LAMSWEERDE, A.V. Goal-Oriented Requirements Engineering: A Roundtrip from Research to Practice, presented at Requirements Engineering (RE 2004), Kyoto, Japan , 2004.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000172&pid=S0012-7353200700030002900007&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><br>   <b>[8]</b> KICZALES, G. HILSDALE, E., HUGUNIN, J., KERSTEN, M., PALM, J. and GRISWOLD W. G. Getting Started with AspectJ. Comm. Of the ACM, v. 44, n. 10, 59-65, 2001.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000173&pid=S0012-7353200700030002900008&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><br>   <b>[9]</b> TARR, P., OSSHER, H., SUTTON, S.M. Jr., N Degrees of Separation: Multidimensional Separation of Concerns 21st Int. Conf. On Software Eng. ACM, 107-119, 1999.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000174&pid=S0012-7353200700030002900009&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><br>   <b>[10]</b> CLARKE, S., BANIASSAD, E., Aspect-Oriented Analysis and Design. The Theme Approach. Addison-Wesley, Object Technology Series, 2005.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000175&pid=S0012-7353200700030002900010&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><br>   <b>[11]</b> RASHID, A., MOREIRA, A. and ARAÚJO, J. Modularisation and Composition   of Aspectual Requirements. AOSD, ACM, 11-20, 2003.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000176&pid=S0012-7353200700030002900011&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><br>   <b>[12]</b> MOREIRA A., ARAUJO J., and RASHID A., “Multi-Dimensional Separation of Concerns in Requirements Engineering,” presented at RE’05   Conference (RE 05), France , 2005.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000177&pid=S0012-7353200700030002900012&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><br>   <b>[13]</b> MOREIRA, A., ARAÚJO, J. and RASHID A. A Concern-Oriented Requirements   Engineering Model. CAISE, LNCS Vol.3520, 293-308, 2005.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000178&pid=S0012-7353200700030002900013&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><br>   <b>[14]</b> CHITCHYAN, R., RASHID, A., SAWYER, P., BAKKER, J., PINTO, M., GARCIA,   A., TEKINERDOGAN, B., CLARKE, S., JACKSON, A., “Survey of Aspect-Oriented Analysis and Design Approaches”,   AOSD-Europe-ULANC-9, AOSD-EUROPE network of excellence. May 2005.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000179&pid=S0012-7353200700030002900014&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><br>   <b>[15]</b> PINEDA, O. Definition, Analysis, and Design for General Services   Software at UNAL Medellín branch. Thesis Degree National University of Colombia   . 2004.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000180&pid=S0012-7353200700030002900015&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><br>   <b>[16]</b> Open Process Framework Repository Organization (OPFRO). <a href="http://www.opfro.org" target="v">http://www.opfro.org</a>.        <!-- ref --><br>   <b>[17]</b> BRITO, I.S., MOREIRA, A. Integrating the NFR framework in a RE   model”. EA 2004: AORE and Architecture Design, workshop 3rd Inter. Conf. on   Aspect-Oriented Software Development, Lancaster, UK, 22-26 2004.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000182&pid=S0012-7353200700030002900017&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><br>   <b>[18]</b> SHMUEL, K., AWAIS, R., From Aspectual Requirements to Proof Obligations for Aspect-Oriented Systems. RE 2004: 48-57.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000183&pid=S0012-7353200700030002900018&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><br>   <b>[19]</b> JACOBSON I. , and NG, P.W., “Aspect-Oriented Software Development with Use Cases”,   Addison Wesley Professional, 2005.    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000184&pid=S0012-7353200700030002900019&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><br>   <b>[20]</b> SOUSA, G., SOARES, S., BORBA P., and Castro J., “Separation of Crosscutting Concerns from Requirements to Design: Adapting the Use Case Driven Approach”, EA’04:   Aspect-Oriented Requirements Engineering and Architecture Design. Workshop   at AOSD 2004, pages 93-102. 2004, Lancaster UK .    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000185&pid=S0012-7353200700030002900020&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><br>   <b>[21]</b> MDA Guide Version 1.0.1. Copyright © 2003 OMG. <a href="http://www.omg.org" target="v">http://www.omg.org</a>. </font></p>      ]]></body><back>
<ref-list>
<ref id="B1">
<label>1</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[DIJKSTRA]]></surname>
<given-names><![CDATA[E.W.]]></given-names>
</name>
</person-group>
<source><![CDATA[A Discipline of programming]]></source>
<year>1976</year>
<publisher-loc><![CDATA[Englewood Cliffs^eNJ NJ]]></publisher-loc>
<publisher-name><![CDATA[Prentica Hall]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B2">
<label>2</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[PARNAS]]></surname>
<given-names><![CDATA[D.]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[On the Criteria To Be Used in Decomposing Systems into Modules]]></article-title>
<source><![CDATA[Communications of the ACM]]></source>
<year>1972</year>
<page-range>1053-1058</page-range></nlm-citation>
</ref>
<ref id="B3">
<label>3</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[SOMMERVILLE]]></surname>
<given-names><![CDATA[I.]]></given-names>
</name>
</person-group>
<source><![CDATA[Software Engineering]]></source>
<year>2004</year>
<edition>7</edition>
<publisher-name><![CDATA[Addision-Wesley]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B4">
<label>4</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[JACOBSON]]></surname>
<given-names><![CDATA[I.]]></given-names>
</name>
<name>
<surname><![CDATA[CHIRSTERSON]]></surname>
<given-names><![CDATA[M.]]></given-names>
</name>
<name>
<surname><![CDATA[JONSSON]]></surname>
<given-names><![CDATA[P.]]></given-names>
</name>
<name>
<surname><![CDATA[Overgaard]]></surname>
<given-names><![CDATA[G.]]></given-names>
</name>
</person-group>
<source><![CDATA[Object-Oriented Software Engineering: A Use Case Driven Approach]]></source>
<year>1992</year>
<publisher-name><![CDATA[Addison-Wesley]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B5">
<label>5</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[LAMSWEERDE]]></surname>
<given-names><![CDATA[A.]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Goal-Oriented Requirements Engineering: A Guided Tour]]></article-title>
<source><![CDATA[]]></source>
<year></year>
<conf-name><![CDATA[ 5th IEEE International Symposium on Requirements Engineering]]></conf-name>
<conf-date>2001</conf-date>
<conf-loc> </conf-loc>
</nlm-citation>
</ref>
<ref id="B6">
<label>6</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[CHUNG]]></surname>
<given-names><![CDATA[L.]]></given-names>
</name>
<name>
<surname><![CDATA[NIXON]]></surname>
<given-names><![CDATA[B.]]></given-names>
</name>
<name>
<surname><![CDATA[YU]]></surname>
<given-names><![CDATA[E.]]></given-names>
</name>
<name>
<surname><![CDATA[MYLOPOULOS]]></surname>
<given-names><![CDATA[J.]]></given-names>
</name>
</person-group>
<source><![CDATA[Non-Functional Requirements in Software Engineering]]></source>
<year>2000</year>
<publisher-name><![CDATA[Kluwer Academic Publishers]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B7">
<label>7</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[LAMSWEERDE]]></surname>
<given-names><![CDATA[A.V.]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Goal-Oriented Requirements Engineering: A Roundtrip from Research to Practice]]></article-title>
<source><![CDATA[]]></source>
<year></year>
<conf-name><![CDATA[ Requirements Engineering (RE 2004)]]></conf-name>
<conf-date>2004</conf-date>
<conf-loc>Kyoto </conf-loc>
</nlm-citation>
</ref>
<ref id="B8">
<label>8</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[KICZALES]]></surname>
<given-names><![CDATA[G.]]></given-names>
</name>
<name>
<surname><![CDATA[HILSDALE]]></surname>
<given-names><![CDATA[E.]]></given-names>
</name>
<name>
<surname><![CDATA[HUGUNIN]]></surname>
<given-names><![CDATA[J.]]></given-names>
</name>
<name>
<surname><![CDATA[KERSTEN]]></surname>
<given-names><![CDATA[M.]]></given-names>
</name>
<name>
<surname><![CDATA[PALM]]></surname>
<given-names><![CDATA[J.]]></given-names>
</name>
<name>
<surname><![CDATA[GRISWOLD]]></surname>
<given-names><![CDATA[W. G.]]></given-names>
</name>
</person-group>
<source><![CDATA[J. Comm. Of the ACM]]></source>
<year>2001</year>
<volume>44</volume>
<numero>10</numero>
<issue>10</issue>
<page-range>59-65</page-range></nlm-citation>
</ref>
<ref id="B9">
<label>9</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[TARR]]></surname>
<given-names><![CDATA[P.]]></given-names>
</name>
<name>
<surname><![CDATA[OSSHER]]></surname>
<given-names><![CDATA[H.]]></given-names>
</name>
<name>
<surname><![CDATA[SUTTON]]></surname>
<given-names><![CDATA[S.M. Jr.]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[N Degrees of Separation: Multidimensional Separation of Concerns]]></article-title>
<source><![CDATA[]]></source>
<year></year>
<conf-name><![CDATA[ 21st Int. Conf. On Software Eng. ACM]]></conf-name>
<conf-date>1999</conf-date>
<conf-loc> </conf-loc>
</nlm-citation>
</ref>
<ref id="B10">
<label>10</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[CLARKE]]></surname>
<given-names><![CDATA[S.]]></given-names>
</name>
<name>
<surname><![CDATA[BANIASSAD]]></surname>
<given-names><![CDATA[E.]]></given-names>
</name>
</person-group>
<source><![CDATA[Aspect-Oriented Analysis and Design: The Theme Approach]]></source>
<year>2005</year>
<publisher-name><![CDATA[Addison-Wesley]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B11">
<label>11</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[RASHID]]></surname>
<given-names><![CDATA[A.]]></given-names>
</name>
<name>
<surname><![CDATA[MOREIRA]]></surname>
<given-names><![CDATA[A.]]></given-names>
</name>
<name>
<surname><![CDATA[ARAÚJO]]></surname>
<given-names><![CDATA[J.]]></given-names>
</name>
</person-group>
<source><![CDATA[Modularisation and Composition of Aspectual Requirements: AOSD]]></source>
<year>2003</year>
<page-range>11-20</page-range></nlm-citation>
</ref>
<ref id="B12">
<label>12</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[MOREIRA]]></surname>
<given-names><![CDATA[A.]]></given-names>
</name>
<name>
<surname><![CDATA[ARAUJO]]></surname>
<given-names><![CDATA[J.]]></given-names>
</name>
<name>
<surname><![CDATA[RASHID]]></surname>
<given-names><![CDATA[A.]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Multi-Dimensional Separation of Concerns in Requirements Engineering]]></article-title>
<source><![CDATA[]]></source>
<year></year>
<conf-name><![CDATA[ RE’05 Conference]]></conf-name>
<conf-date>2005</conf-date>
<conf-loc> </conf-loc>
</nlm-citation>
</ref>
<ref id="B13">
<label>13</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[MOREIRA]]></surname>
<given-names><![CDATA[A.]]></given-names>
</name>
<name>
<surname><![CDATA[ARAÚJO]]></surname>
<given-names><![CDATA[J.]]></given-names>
</name>
<name>
<surname><![CDATA[RASHID]]></surname>
<given-names><![CDATA[A.]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[A Concern-Oriented Requirements Engineering Model]]></article-title>
<source><![CDATA[CAISE, LNCS]]></source>
<year>2005</year>
<volume>3520</volume>
<page-range>293-308</page-range></nlm-citation>
</ref>
<ref id="B14">
<label>14</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[CHITCHYAN]]></surname>
<given-names><![CDATA[R.]]></given-names>
</name>
<name>
<surname><![CDATA[RASHID]]></surname>
<given-names><![CDATA[A.]]></given-names>
</name>
<name>
<surname><![CDATA[SAWYER]]></surname>
<given-names><![CDATA[P.]]></given-names>
</name>
<name>
<surname><![CDATA[BAKKER]]></surname>
<given-names><![CDATA[J.]]></given-names>
</name>
<name>
<surname><![CDATA[PINTO]]></surname>
<given-names><![CDATA[M.]]></given-names>
</name>
<name>
<surname><![CDATA[GARCIA]]></surname>
<given-names><![CDATA[A.]]></given-names>
</name>
<name>
<surname><![CDATA[TEKINERDOGAN]]></surname>
<given-names><![CDATA[B.]]></given-names>
</name>
<name>
<surname><![CDATA[CLARKE]]></surname>
<given-names><![CDATA[S.]]></given-names>
</name>
<name>
<surname><![CDATA[JACKSON]]></surname>
<given-names><![CDATA[A.]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Survey of Aspect-Oriented Analysis and Design Approaches]]></article-title>
<source><![CDATA[]]></source>
<year></year>
<conf-name><![CDATA[ AOSD-Europe-ULANC-9, AOSD-EUROPE network of excellence]]></conf-name>
<conf-date>May 2005</conf-date>
<conf-loc> </conf-loc>
</nlm-citation>
</ref>
<ref id="B15">
<label>15</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[PINEDA]]></surname>
<given-names><![CDATA[O.]]></given-names>
</name>
</person-group>
<source><![CDATA[Definition, Analysis, and Design for General Services Software at UNAL Medellín branch]]></source>
<year></year>
</nlm-citation>
</ref>
<ref id="B16">
<label>16</label><nlm-citation citation-type="">
<source><![CDATA[Open Process Framework Repository Organization]]></source>
<year></year>
</nlm-citation>
</ref>
<ref id="B17">
<label>17</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[BRITO]]></surname>
<given-names><![CDATA[I.S.]]></given-names>
</name>
<name>
<surname><![CDATA[MOREIRA]]></surname>
<given-names><![CDATA[A.]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Integrating the NFR framework in a RE model]]></article-title>
<source><![CDATA[AORE and Architecture Design]]></source>
<year>2004</year>
<conf-name><![CDATA[ workshop 3rd Inter. Conf. on Aspect-Oriented Software Development]]></conf-name>
<conf-loc> </conf-loc>
<page-range>22-26</page-range><publisher-loc><![CDATA[Lancaster ]]></publisher-loc>
</nlm-citation>
</ref>
<ref id="B18">
<label>18</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[SHMUEL]]></surname>
<given-names><![CDATA[K.]]></given-names>
</name>
<name>
<surname><![CDATA[AWAIS]]></surname>
<given-names><![CDATA[R.]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[From Aspectual Requirements to Proof Obligations for Aspect-Oriented Systems]]></article-title>
<source><![CDATA[]]></source>
<year></year>
</nlm-citation>
</ref>
<ref id="B19">
<label>19</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[JACOBSON]]></surname>
<given-names><![CDATA[I.]]></given-names>
</name>
<name>
<surname><![CDATA[NG]]></surname>
<given-names><![CDATA[P.W.]]></given-names>
</name>
</person-group>
<source><![CDATA[Aspect-Oriented Software Development with Use Cases]]></source>
<year>2005</year>
<publisher-name><![CDATA[Addison Wesley Professional]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B20">
<label>20</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[SOUSA]]></surname>
<given-names><![CDATA[G.]]></given-names>
</name>
<name>
<surname><![CDATA[SOARES]]></surname>
<given-names><![CDATA[S.]]></given-names>
</name>
<name>
<surname><![CDATA[BORBA]]></surname>
<given-names><![CDATA[P.]]></given-names>
</name>
<name>
<surname><![CDATA[Castro]]></surname>
<given-names><![CDATA[J.]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Separation of Crosscutting Concerns from Requirements to Design: Adapting the Use Case Driven Approach]]></article-title>
<source><![CDATA[Aspect-Oriented Requirements Engineering and Architecture Design]]></source>
<year>2004</year>
<conf-name><![CDATA[ Workshop at AOSD 2004]]></conf-name>
<conf-loc> </conf-loc>
<page-range>93-102</page-range><publisher-loc><![CDATA[Lancaster ]]></publisher-loc>
</nlm-citation>
</ref>
<ref id="B21">
<label>21</label><nlm-citation citation-type="">
<source><![CDATA[MDA Guide Version 1.0.1]]></source>
<year></year>
</nlm-citation>
</ref>
</ref-list>
</back>
</article>
