<?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>0798-4065</journal-id>
<journal-title><![CDATA[Revista de la Facultad de Ingeniería Universidad Central de Venezuela]]></journal-title>
<abbrev-journal-title><![CDATA[Rev. Fac. Ing. UCV]]></abbrev-journal-title>
<issn>0798-4065</issn>
<publisher>
<publisher-name><![CDATA[Universidad Central de Venezuela]]></publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id>S0798-40652010000100008</article-id>
<title-group>
<article-title xml:lang="es"><![CDATA[Comparación de métodos para la arquitectura del software: Un marco de referencia para un método arquitectónico unificado]]></article-title>
<article-title xml:lang="en"><![CDATA[Comparison of software architecture methods: A framework for a unified architecture method]]></article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname><![CDATA[Losavio]]></surname>
<given-names><![CDATA[Francisca]]></given-names>
</name>
<xref ref-type="aff" rid="A01"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname><![CDATA[Guillén-Drija]]></surname>
<given-names><![CDATA[Christian]]></given-names>
</name>
<xref ref-type="aff" rid="A02"/>
</contrib>
</contrib-group>
<aff id="A01">
<institution><![CDATA[,Universidad Central de Venezuela Facultad de Ciencias Escuela de Computación]]></institution>
<addr-line><![CDATA[Caracas ]]></addr-line>
</aff>
<aff id="A02">
<institution><![CDATA[,Universidad Pedagógica Experimental Libertador Instituto Pedagógico de Miranda J.M. Siso Martínez ]]></institution>
<addr-line><![CDATA[ Miranda]]></addr-line>
<country>Venezuela</country>
</aff>
<pub-date pub-type="pub">
<day>00</day>
<month>03</month>
<year>2010</year>
</pub-date>
<pub-date pub-type="epub">
<day>00</day>
<month>03</month>
<year>2010</year>
</pub-date>
<volume>25</volume>
<numero>1</numero>
<fpage>71</fpage>
<lpage>87</lpage>
<copyright-statement/>
<copyright-year/>
<self-uri xlink:href="http://ve.scielo.org/scielo.php?script=sci_arttext&amp;pid=S0798-40652010000100008&amp;lng=en&amp;nrm=iso"></self-uri><self-uri xlink:href="http://ve.scielo.org/scielo.php?script=sci_abstract&amp;pid=S0798-40652010000100008&amp;lng=en&amp;nrm=iso"></self-uri><self-uri xlink:href="http://ve.scielo.org/scielo.php?script=sci_pdf&amp;pid=S0798-40652010000100008&amp;lng=en&amp;nrm=iso"></self-uri><abstract abstract-type="short" xml:lang="es"><p><![CDATA[Debido a la relevancia que ha adquirido la visión arquitectónica del software en el proceso de desarrollo, se han propuesto diversos métodos, tanto de diseño como de evaluación arquitectónica. Cada uno de ellos se fundamenta en conceptos que pueden ser equivalentes, complementarios o alternativos. Un estudio comparativo de tales métodos favorece la identificación de los procedimientos y actividades que mejor respondan al complejo proceso de generar una arquitectura en función de un conjunto de requisitos iníciales. Este trabajo presenta un marco de comparación que luego es aplicado tanto a métodos de diseño arquitectónico como a métodos de evaluación arquitectónica, identificándose un conjunto de características que consideramos deseables en un método de diseño arquitectónico. Con base en tales características, presentamos una primera versión de un método unificado que contempla el proceso completo de diseño arquitectónico]]></p></abstract>
<abstract abstract-type="short" xml:lang="en"><p><![CDATA[Due to the growing interest in the current development of the architectural vision of software, a great number of architectural design and evaluation methods have been proposed. They are generally based on equivalent, complementary or alternative concepts. A comparative study of such methods allows us to determine procedures and activities that satisfy the process of generating architecture in terms of the initial set of requirements. In this paper, we present a comparative framework which is applied to architectural design methods as well as architectural evaluation methods. We obtained a set of desirable characteristics in an architectural design method. Based on those characteristics, a first draft of a framework for a unified method that contemplates the whole design process is presented]]></p></abstract>
<kwd-group>
<kwd lng="es"><![CDATA[Arquitectura de software]]></kwd>
<kwd lng="es"><![CDATA[Calidad de software]]></kwd>
<kwd lng="es"><![CDATA[Métodos de diseño arquitectónico]]></kwd>
<kwd lng="es"><![CDATA[Métodos de evaluación arquitectónica]]></kwd>
<kwd lng="es"><![CDATA[Características de calidad]]></kwd>
<kwd lng="en"><![CDATA[Software architecture]]></kwd>
<kwd lng="en"><![CDATA[Software quality]]></kwd>
<kwd lng="en"><![CDATA[Architectural design methods]]></kwd>
<kwd lng="en"><![CDATA[Architecture evaluation methods]]></kwd>
<kwd lng="en"><![CDATA[Quality characteristics]]></kwd>
</kwd-group>
</article-meta>
</front><body><![CDATA[ <p ALIGN="center" style="line-height: 100%"><font face="Verdana" size="3"><span style="mso-fareast-font-family: Times New Roman; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA"><b><span style="mso-fareast-font-family: Times New Roman; mso-bidi-font-family: Times New Roman; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA">Comparación de métodos para la arquitectura del software:</span></b> <b><span style="mso-fareast-font-family: Times New Roman; mso-bidi-font-family: Times New Roman; mso-ansi-language: ES; mso-fareast-language: ES; mso-bidi-language: AR-SA">Un marco de referencia para un método arquitectónico unificado</span></b></span></font></p>     <p ALIGN="center" style="line-height: 100%"><font size="2" face="Verdana">Francisca Losavio<sup>1</sup>, Christian Guillén-Drija<sup>2</sup></font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana"><sup>1</sup>Universidad Central de Venezuela. Facultad de Ciencias. Escuela de Computación. Centro ISYS. Apdo. 47567. Los Chaguaramos. 1041-A. Caracas. e-mail: <a href="mailto:flosav@cantv.net">flosav@cantv.net</a></font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana"><sup>2</sup>Universidad Pedagógica Experimental Libertador, Instituto Pedagógico de Miranda “J.M. Siso Martínez”, La Urbina. Estado Miranda. Venezuela. e-mail: <a href="mailto:cguillen@ipmjmsm.upel.edu.ve">cguillen@ipmjmsm.upel.edu.ve</a></font></p>     <p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">RESUMEN</font></b></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">Debido a la relevancia que ha adquirido la visión arquitectónica del software en el proceso de desarrollo, se han propuesto diversos métodos, tanto de diseño como de evaluación arquitectónica. Cada uno de ellos se fundamenta en conceptos que pueden ser equivalentes, complementarios o alternativos. Un estudio comparativo de tales métodos favorece la identificación de los procedimientos y actividades que mejor respondan al complejo proceso de generar una arquitectura en función de un conjunto de requisitos iníciales. Este trabajo presenta un marco de comparación que luego es aplicado tanto a métodos de diseño arquitectónico como a métodos de evaluación arquitectónica, identificándose un conjunto de características que consideramos deseables en un método de diseño arquitectónico. Con base en tales características, presentamos una primera versión de un método unificado que contempla el proceso completo de diseño arquitectónico.</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana"><b>Palabras clave:</b> Arquitectura de software, Calidad de software, Métodos de diseño arquitectónico, Métodos de evaluación arquitectónica, Características de calidad.</font></p>     <p ALIGN="center" style="line-height: 100%"><b><font size="2" face="Verdana"><span lang="EN-US" style="mso-fareast-font-family: Times New Roman; mso-ansi-language: EN-US; mso-fareast-language: ES; mso-bidi-language: AR-SA">Comparison of software architecture methods: A framework for a unified architecture method</span></font></b></p>     <p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">ABSTRACT</font></b></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">Due to the growing interest in the current development of the architectural vision of software, a great number of architectural design and evaluation methods have been proposed. They are generally based on equivalent, complementary or alternative concepts. A comparative study of such methods allows us to determine procedures and activities that satisfy the process of generating architecture in terms of the initial set of requirements. In this paper, we present a comparative framework which is applied to architectural design methods as well as architectural evaluation methods. We obtained a set of desirable characteristics in an architectural design method. Based on those characteristics, a first draft of a framework for a unified method that contemplates the whole design process is presented.</font></p>     ]]></body>
<body><![CDATA[<p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana"><b>Keywords: </b>Software architecture, Software quality, Architectural design methods, Architecture evaluation methods, Quality characteristics.</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">Recibido: abril de 2009 &nbsp; Recibido en forma final revisado: diciembre de 2009</font></p>     <p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">INTRODUCCIÓN</font></b></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">Los métodos de diseño arquitectónico y los métodos de evaluación arquitectónica consideran la concepción de un sistema de software a un alto nivel de abstracción, con base en una visión arquitectónica. Algunos de estos métodos tienen como objetivo la generación de una arquitectura que responda a un conjunto de requisitos iniciales. Otros están dirigidos a evaluar configuraciones arquitectónicas ya existentes para escoger la mejor de acuerdo a un conjunto de requisitos. Todos se ubican en las fases tempranas del proceso de diseño de software y en la actualidad son considerados parte esencial del mismo. En el transcurso de este trabajo nos referiremos a ambas categorías como <i>métodos arquitectónicos</i>.</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">El objetivo de este trabajo ha sido el de comparar un conjunto de métodos arquitectónicos para identificar semejanzas y diferencias, así como explorar las heurísticas subyacentes en cada propuesta. A partir de este estudio comparativo se obtuvo un conjunto de características que proponemos como deseables en un método de diseño arquitectónico basado en características de calidad. Más que realizar una evaluación de los métodos involucrados, lo que implica un proceso de valoración en función de un conjunto de criterios previamente definido, nuestra intención es realizar una comparación y clasificación de las propuestas existentes, que nos permita identificar las características más notorias en cada caso. Para la selección de los criterios de comparación, nos basamos en el estudio de varias propuestas realizadas en este sentido. Aunado a lo anterior, complementamos el cuerpo de criterios de comparación agregando otros que consideramos importantes en función de las problemáticas antes mencionadas. Finalmente, con base en el conjunto de características consideradas como deseables, se propone una primera versión de un marco conceptual, de referencia o framework que contemple un método de diseño arquitectónico, constituyéndose éste en una estructura unificadora que especifica los diferentes elementos del proceso completo de diseño arquitectónico.</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">Este artículo contiene, además de la introducción y las conclusiones, 4 secciones más: la sección 2, describe brevemente algunos trabajos en los que se comparan métodos centrados en la arquitectura de software; la sección 3, presenta un marco de comparación; la sección 4, el conjunto de características que hemos considerado como deseables en un método de diseño arquitectónico; y por último, la sección 5, propone la primera versión de un marco conceptual para un método de diseño arquitectónico unificado.</font></p>     <p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">ANTECEDENTES</font></b></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">Varios son los esfuerzos realizados con el fin de comparar métodos, tanto de diseño como de evaluación arquitectónica. Por una parte, se pueden nombrar los trabajos de: Obbink <i>et al</i>. (2007); Tekinerdogan &amp; Mehmet (2000), Losavio <i>et al</i>. (2001), los cuales comparan métodos de diseño arquitectónico. Por otra parte, podemos mencionar los trabajos de: Hammer <i>et al</i>. (2002); Kazman &amp; Nord (2003); Dobrica &amp; Niemelä (2002); Babar <i>et al</i>. (2004); Babar &amp; Gorton (2004); y Grimán <i>et al</i>. (2006), en los que se comparan los métodos de evaluación arquitectónica. Por último, Thiel (2005) ejecuta un ejercicio de comparación tanto de métodos de diseño como de métodos de evaluación.</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">En cuanto a la comparación de métodos de diseño arquitectónico, Losavio <i>et al</i>. (2001) aplican DESMET (Kitchenham, 1996), para determinar la técnica de evaluación más idónea aplicable a un conjunto de métodos de diseño. Al usar entonces el análisis a través del filtrado de características identifican los aspectos generales que deberían estar contenidos en un método de diseño arquitectónico basado en atributos de calidad. Como resultado, obtienen los criterios contenidos en la <a href="#tab1"> tabla 1</a>. Obbink <i>et al</i>. (2007), proponen la necesidad de identificar las similitudes entre los métodos de diseño con el objetivo de obtener un modelo general. Los investigadores llegan a la conclusión de que un método de diseño debe contemplar actividades de análisis de requisitos y de evaluación. Tales actividades son entonces utilizadas como criterios para comparar varios métodos. Por su parte, Tekinerdogan &amp; Mehmet (2000) proponen una clasificación de los distintos enfoques de diseño arquitectónico según las fuentes utilizadas para la identificación de las abstracciones arquitectónicas claves. En dicha clasificación se identifican tres enfoques fundamentales: los centrados en artefactos, los centrados en casos de uso y los centrados en el dominio. Con respecto a los métodos de evaluación arquitectónica, Dobrica &amp; Niemelä (2002), proponen un conjunto de criterios para su comparación y caracterización, pero sin ofrecer una definición de los mismos. Sin embargo, asocian interrogantes a cada uno de los criterios que conforman el marco de comparación, por lo que se puede al menos inferir el significado de cada uno de estos (<a href="#tab2">tabla 2</a>).</font></p>     <p ALIGN="center" style="line-height: 100%"><a name="tab1"><img border="0" src="/img/fbpe/rfiucv/v25n1/art08tab1.gif" width="580" height="333"></a></p>     
]]></body>
<body><![CDATA[<p ALIGN="center" style="line-height: 100%"><a name="tab2"><img border="0" src="/img/fbpe/rfiucv/v25n1/art08tab2.gif" width="573" height="865"></a></p>     
<p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">Babar <i>et al</i>. (2004), reconocen que el trabajo de Dobrica &amp; Niemelä (2002) es el primer esfuerzo estructurado para proponer una taxonomía en esta línea de investigación, sin embargo, señalan que estos no explican claramente los componentes de su marco de comparación, ni justifican explícitamente las razones por las cuales los incluyen, infiriendo que los mismos pueden ser considerados como características deseables en un método. Posteriormente Babar &amp; Gorton (2004), reorganizan los criterios dentro de cuatro categorías: contexto, participantes o stakeholders, contenidos y confiabilidad. En la <a href="#tab3"> tabla 3</a>, se muestran las dos versiones del marco de comparación. Se puede observar que las dos versiones son muy similares, excepto que en la segunda se omite el criterio repositorio de experiencia y se agregan los criterios: entradas y salidas, dominio de aplicación y beneficios. Hammer <i>et al</i>. (2002) proponen un marco de comparación, pero no presentan argumentos que sustenten la inclusión de los criterios que lo componen, ni tampoco las definiciones de los mismos. No obstante, se puede inferir el significado de cada uno de estos criterios (<a href="#tab4">tabla 4</a>). Grimán <i>et al</i>. (2006) aplican un análisis de características a tres métodos de evaluación arquitectónica a través de un caso de estudio, obteniendo como resultado un conjunto de 49 métricas agrupadas en características y subcaracterísticas (<a href="#tab5">tabla 5</a>).</font></p>     <p ALIGN="center" style="line-height: 100%"><a name="tab3"><img border="0" src="/img/fbpe/rfiucv/v25n1/art08tab3.gif" width="578" height="447"></a></p>     
<p ALIGN="center" style="line-height: 100%"><a name="tab4"><img border="0" src="/img/fbpe/rfiucv/v25n1/art08tab4.gif" width="577" height="439"></a></p>     
<p ALIGN="center" style="line-height: 100%"><a name="tab5"><img border="0" src="/img/fbpe/rfiucv/v25n1/art08tab5.gif" width="572" height="329"></a></p>     
<p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">Por último, Thiel (2005) realiza una comparación tanto de métodos de evaluación como de métodos de diseño (<a href="#tab6">tabla 6</a>). En dicha comparación se evidencia la existencia de criterios que son aplicados por igual, tanto a los métodos de evaluación como a los métodos de diseño.</font></p>     <p ALIGN="center" style="line-height: 100%"><a name="tab6"><img border="0" src="/img/fbpe/rfiucv/v25n1/art08tab6.gif" width="574" height="446"></a></p>     
<p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">MARCO DE COMPARACIÓN</font></b></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">En este trabajo se han seleccionado los siguientes métodos: SAAM (Scenario-Based Analysis of Software Architecture) (Bass <i>et al</i>. 2003); ALPSM (Architecture Level Prediction of Software Maintenance) (Bengtsson &amp; Bosch, 1999); AQA (Architecture Quality Assessment) (Hilliard II <i>et al</i>. 1997); SAE (Software Architecture Evaluation) (AT&amp;T, 1993); FAAM (Family-Architecture Analysis Method) (Dolan, 2001); ASAAM (Scenario-Based Analysis of Software Architecture) (Tekinerdogan, 2003); ALMA (Architecture Level Modifiability Analysis) (Bengtsson <i>et al</i>. 2004); QAW (Quality Attribute Workshps) (Barbacci <i>et al</i>. 2003); ATAM (Architecture Tradeoff Analysis Method) (Clements <i>et al</i>. 2002); PASA (Performance Assessment of Software Architectures) (Connie &amp; Williams, 2002); ARID (Active Reviews for Intermediate Designs) (Clements, 2000); CBSP (Grünbacher <i>et al</i>. 2003); PRESKRIPTOR (Brandozzi &amp; Perry, 2002); VAP (Visual Architecture Process) (Bredemeyer &amp; Malan, 2005); CBAM-WIN WIN (Cost Benefit Analysis Method, combinado con el método de negociación de requisitos WIN WIN) (In <i>et al</i>. 2001); ABD (Architecture Based Design) (Bass <i>et al</i>. 2000); SACAM (Software Architecture Comparison Analysis Method) (Bachmann <i>et al</i>. 2003);SARM (Software Architecture Reengineering Method) (Bengtsson &amp; Bosch, 1998); Bosch (2000); Proteus (Chung <i>et al</i>. 2002); Lamsweerde (2003); MECABIC (Método de Evaluación de Arquitecturas de Software Basadas en Componentes) (González <i>et al</i>. 2005); Losavio-Chirinos- Lévy-Ramdane Cherif (2003); CBAM (Cost Benefit Analysis Method) (Asundi &amp; Kazman, 2001); QUADRAD (Quality-Driven Architecture Development) (Thiel, 2005); ADD (Attribute-Driven Design) (Bass <i>et al</i>. 2003); ASAA (Applied Software Architecture Approach) (Hofmeister <i>et al</i>. 2000.</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">Una revisión de los distintos enfoques mencionados en la sección anterior ha permitido proponer un marco de comparación propio, el cual se presenta a continuación junto con los resultados obtenidos al ser aplicado al conjunto de métodos seleccionados. Esta propuesta intenta comparar los métodos centrados en la visión arquitectónica del software desde dos perspectivas: la primera toma en cuenta las disciplinas propias del proceso de diseño arquitectónico; y la segunda considera un conjunto de elementos comunes al proceso general del desarrollo del software. En la <a href="#fig1"> figura 1</a> se muestra un esquema de los criterios de comparación adoptados.</font></p>     ]]></body>
<body><![CDATA[<p ALIGN="center" style="line-height: 100%"><a name="fig1"><img border="0" src="/img/fbpe/rfiucv/v25n1/art08fig1.gif" width="579" height="370"></a></p>     
<p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">Disciplinas inherentes al proceso de diseño arquitectónico</font></b></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">A continuación se presentan cinco disciplinas o conjunto de actividades básicas consideradas como esenciales y que deben estar presentes en cualquier proceso de diseño arquitectónico. Estas son:</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana"><b>a. Descripción de la arquitectura:</b> se refiere a las formas a través de las cuales el arquitecto de software expresa distintos aspectos de la arquitectura tales como la estructura, relaciones y comportamientos de cada uno de los componentes involucrados. Los criterios que permitieron comparar a los distintos métodos estudiados desde la perspectiva de esta disciplina fueron: mecanismos de descripción arquitectónica y conceptos arquitectónicos subyacentes.</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana"><b>b. Actualización de la base de conocimientos:</b> esta disciplina se refiere a la manera a través de la cual se registra la información obtenida como consecuencia de la aplicación del método a nuevos proyectos. Tal registro permite la reutilización de información de experiencias previas, lo que a su vez permite realizar ajustes en el desarrollo de las actividades y técnicas que conforman el método.</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana"><b>c. Análisis de las propiedades de calidad:</b> donde los aspectos relevantes a considerar son los mecanismos propuestos por cada método para el levantamiento y para la evaluación de las propiedades no funcionales. Otro aspecto que es importante considerar es si el método está dirigido a tratar sólo una propiedad de calidad o si por el contrario, analiza múltiples propiedades al unísono.</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana"><b>d. Generación de la arquitectura:</b> se refiere a la identificación de los mecanismos a través de los cuales, la información capturada es analizada en virtud de los objetivos del método. Para la comparación de los métodos seleccionados, desde la perspectiva de esta disciplina, se tomaron en cuenta los siguientes aspectos: mecanismos de análisis y mecanismos de generación arquitectónica.</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana"><b>e. Transformación arquitectónica:</b> disciplina centrada en la transformación de una arquitectura con el objetivo de responder a requisitos de calidad.</font></p>     <p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">DESCRIPCIÓN DE LA ARQUITECTURA</font></b></p>     <p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">Mecanismos de descripción arquitectónica</font></b></p>     ]]></body>
<body><![CDATA[<p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">Un método de diseño arquitectónico se caracteriza por mantener un nivel de abstracción acorde con la visión arquitectónica del software, en la que se obvian detalles propios de las fases en donde se ejecuta un diseño detallado del sistema. Contar con una notación con la semántica necesaria para expresar los elementos arquitectónicamente significativos es vital para el mantenimiento del nivel de abstracción adecuado al momento de identificar las soluciones arquitectónicas. Usualmente, una notación responde a formas de expresar una arquitectura conocida como vistas arquitectónicas. Una revisión de este criterio en el conjunto de métodos seleccionados arroja como resultado la identificación de cuatro grupos fundamentales (<a href="#tab7">tabla 7</a>). Un primer grupo incluye a los métodos que exigen la descripción de las arquitecturas por medio de vistas. Entendiéndose por vista a un modelo que muestra determinados aspectos del sistema (Krutchen, 1995). En un segundo grupo, podemos incluir a aquellos que exigen o al menos reconocen la necesidad de utilizar el estándar UML como notación. Un tercer grupo incluye a los métodos que proponen una notación propia y un cuarto grupo está constituido por los métodos que no ofrecen indicaciones con respecto a formas de expresar la arquitectura. Es recomendable que un método de diseño arquitectónico cuente con <b>mecanismos de descripción arquitectónica</b>. Tales mecanismos deberían fundamentarse en la medida de lo posible en estándares. El uso de una notación particular podría implicar una curva de aprendizaje más pronunciada influyendo en la facilidad de uso del método. Una alternativa podría ser el uso de UML2.0, pues considera algunos conceptos reconocidos como importantes dentro de la comunidad de arquitectos.</font></p>     <p ALIGN="center" style="line-height: 100%"><a name="tab7"><img border="0" src="/img/fbpe/rfiucv/v25n1/art08tab7.gif" width="579" height="176"></a></p>     
<p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">Conceptos arquitectónicos estructurales subyacentes</font></b></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">Los conceptos arquitectónicos estructurales comúnmente aceptados son: componentes, conectores, estilos arquitectónicos, patrones, puertos, interfaces y vistas. Estos conceptos son utilizados para ocultar detalles de implementación y de diseño detallado. En la <a href="#tab8"> tabla 8</a> se pueden observar los conceptos asumidos por cada método estudiado.</font></p>     <p ALIGN="center" style="line-height: 100%"><a name="tab8"><img border="0" src="/img/fbpe/rfiucv/v25n1/art08tab8.gif" width="578" height="682"></a></p>     
<p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">ACTUALIZACIÓN DE LA BASE DE CONOCIMIENTOS</font></b></p>     <p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">Actividades colectivas</font></b></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">La mayoría de los métodos estudiados evidencia un alto grado de dependencia con respecto a la opinión de los expertos. Cada uno de estos, posee un área de experticia que puede ayudar a identificar las soluciones más idóneas, por lo que su participación durante el proceso de diseño arquitectónico debe realizarse de forma tal que las distintas opiniones y puntos de vista puedan ser contrastados. Como resultado de la comparación se identifican cinco grupos: el primero incluye a los métodos en los que todas las actividades son explícitamente grupales. En el segundo, podemos ubicar a aquellos métodos en los que la mayoría de las actividades son realizadas de manera grupal. En un tercer grupo se incluyen a los métodos en los que sólo algunas actividades son presentadas como grupales. En un cuarto grupo, se ubican a aquellos métodos en los que todas las actividades pueden ser realizadas de manera individual o grupal. Finalmente, un quinto grupo incluye a los métodos en los que no fue posible determinar cuáles actividades eran grupales o individuales (<a href="#tab9">tabla 9</a>).</font></p>     <p ALIGN="center" style="line-height: 100%"><a name="tab9"><img border="0" src="/img/fbpe/rfiucv/v25n1/art08tab9.gif" width="576" height="159"></a></p>     
<p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">Reutilización de información</font></b></p>     ]]></body>
<body><![CDATA[<p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">La reutilización de información se apoya en actividades y artefactos que registren la experticia adquirida por la organización durante la aplicación de un método a distintos casos o proyectos. Lo anterior adquiere gran importancia cuando la ejecución del método se realiza en el contexto de un dominio de aplicación específico o en el caso de empresas dedicadas a la generación de familias de productos. El registro del conocimiento adquirido, debería ejecutarse paralelamente a la aplicación del método.</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">En relación a este aspecto, únicamente los métodos FAAM, ATAM, ABD y Bosch incluyen actividades dirigidas en tal dirección. La reutilización debería ser en dos sentidos: en relación al desarrollo del método en sí; y en relación al conocimiento adquirido sobre los mecanismos y soluciones arquitectónicas probadas por la organización.</font></p>     <p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">ANÁLISIS DE LAS PROPIEDADES DE CALIDAD</font></b></p>     <p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">Mecanismos para el levantamiento de requisitos de calidad</font></b></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">Se refiere a la heurística para la identificación y especificación de las propiedades de calidad asociadas a los requisitos funcionales y no funcionales. Estos requisitos deben haber sido levantados y especificados, por ejemplo, en un documento SRS (Software Requirements Specification), utilizado comúnmente, por lo tanto esta disciplina puede incluirse con facilidad en la ingeniería de requisitos. Los requisitos de calidad deben ser analizados para determinar la idoneidad de una arquitectura con respecto a estos o para decidir entre varias alternativas arquitectónicas. En el ámbito del diseño arquitectónico, tales requisitos son el punto de partida para la generación de una arquitectura inicial o se constituyen en directrices para una transformación arquitectónica.</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">La comparación de los métodos seleccionados muestra que, en la mayoría, el mecanismo de levantamiento de requisitos más utilizado es la generación de escenarios, seguido por el análisis de casos de uso y la construcción de modelos de calidad que pueden estar representados por modelos de objetivos o por un árbol de utilidad. En la <a href="#tab10"> tabla 10</a> se puede observar que algunos de los métodos estudiados combinan los mecanismos mencionados.</font></p>     <p ALIGN="center" style="line-height: 100%"><a name="tab10"><img border="0" src="/img/fbpe/rfiucv/v25n1/art08tab10.gif" width="574" height="227"></a></p>     
<p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">Enfoques de evaluación de requisitos de calidad</font></b></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">En general los enfoques de evaluación de atributos de calidad que utilizan los distintos métodos pueden ser: análisis de escenarios, simulación, modelos matemáticos y razonamiento basado en la experiencia (Bosch, 2000). En la evaluación basada en el análisis de escenarios, un conjunto de estos es desarrollado para expresar de forma más concreta los requisitos de calidad. La simulación se puede realizar a través de la utilización de un ADL que esté soportado por herramientas capaces de generar modelos de simulación. Por otra parte, los modelos matemáticos pueden ser una alternativa a la simulación; sin embargo ambos pueden coexistir. El cuarto enfoque tiene un componente subjetivo alto, lo cual no debería conducir a menospreciarlo, puesto que la mayoría de los arquitectos experimentados han adquirido una capacidad para intuir aspectos potencialmente problemáticos en un diseño. El problema realmente no está en la subjetividad de cada especialista sino más bien en que tales opiniones sean argumentadas de manera objetiva para que puedan ser valoradas por otros especialistas. Técnicas de votación y tormenta de ideas permiten que la pertinencia de las distintas argumentaciones pueda ser contrastada para lograr un cuerpo de decisiones sólidamente sustentadas. La <a href="#tab11"> tabla 11</a> resume los enfoques identificados en los métodos estudiados.</font></p>     <p ALIGN="center" style="line-height: 100%"><a name="tab11"><img border="0" src="/img/fbpe/rfiucv/v25n1/art08tab11.gif" width="573" height="213"></a></p>     
]]></body>
<body><![CDATA[<p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">Cantidad de requisitos de calidad considerados</font></b></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">Un método puede considerar la evaluación de un único atributo de calidad, o varios atributos al mismo tiempo. Una revisión de varios atributos de calidad podría implicar una mayor complejidad en las actividades de análisis, demandando una mayor participación de distintos especialistas y la necesaria negociación entre estos, así como la documentación de los efectos que unos atributos tengan sobre otros.</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">A este respecto, se identifica un primer grupo integrado por métodos que contemplan distintos atributos de calidad. En dicho grupo tenemos a los siguientes métodos: QAW, ATAM, CBSP, PROCESO PRESKRIPTOR, VAP, CBAM-WIN WIN, ABD, SACAM, SARM, Bosch, MECABIC, Losavio-Chirinos-Levy-Ramdane Cherif, CBAM, QUADRAD, Lamsweerde y ADD. En un segundo grupo tenemos a aquellos métodos que consideran a uno o a unos pocos atributos de calidad. Este grupo está integrado por los siguientes métodos: SAAM, ALPSM, AQA, SAE, FAAM, ASAAM, ALMA, PASA y Proteus. ASAA se refiere a “factores” que influyen en la arquitectura. En el caso de ARID, por su propia naturaleza, no se hace referencia a los atributos de calidad, puesto que su objetivo es evaluar diseños detallados de unidades de software coherentes tales como módulos o componentes, lo que implica un nivel de abstracción muy bajo con respecto a los otros métodos estudiados.</font></p>     <p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">GENERACIÓN DE LA ARQUITECTURA</font></b></p>     <p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">Mecanismos de análisis</font></b></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">La <a href="#tab12"> tabla 12</a> muestra un resumen de los mecanismos de análisis a través de los cuales se busca encontrar posibles soluciones. En este trabajo se han identificado los siguientes: análisis de escenarios, análisis de vistas arquitectónicas, análisis de casos de uso, generación de especificaciones, listas de chequeo o cuestionarios, análisis de efectos colaterales (tradeoff), estimaciones cuantitativas, entre otros.</font></p>     <p ALIGN="center" style="line-height: 100%"><a name="tab12"><img border="0" src="/img/fbpe/rfiucv/v25n1/art08tab12.gif" width="367" height="384"></a></p>     
<p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">Generación arquitectónica</font></b></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">Los mecanismos de generación arquitectónica son los que posibilitan la estructuración de una arquitectura base. Entre los métodos de diseño arquitectónico, se identifican aquellos que proponen mecanismos que intentan dar un carácter más formal a los modelos generados y que además utilizan una heurística basada en la derivación progresiva de los componentes, topología y demás propiedades de una arquitectura. De los métodos estudiados, CBSP, PRESKRIPTOR y el método propuesto por Lamsweerde, muestran esta tendencia. En otros métodos no se indican claramente los mecanismos que permitan la transición progresiva y sistemática desde un conjunto de requisitos hasta una primera propuesta arquitectónica.</font></p>     <p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">TRANSFORMACIÓN ARQUITECTÓNICA</font></b></p>     ]]></body>
<body><![CDATA[<p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">Usualmente, la evaluación de una arquitectura resulta en la identificación de fortalezas y debilidades en esta. Si existen aspectos riesgosos, estos deben ser resueltos a través de un proceso de transformación arquitectónica que consiste en un rediseño de la misma. Tal transformación se lleva a cabo a través de la aplicación de mecanismos o patrones arquitectónicos, convirtiendo requisitos en funcionalidades o distribuyendo responsabilidades entre los componentes de la arquitectura (Bosch, 2000).</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">Como es de esperarse, ninguno de los métodos de evaluación contempla algún tipo de transformación arquitectónica. En cuanto a los métodos de diseño, SARM, hace referencia explícitamente a la transformación arquitectónica, proponiendo cinco categorías de transformaciones: estilos arquitectónicos, patrones arquitectónicos, patrones de diseño conversión de requisitos en funcionalidades y distribución de requisitos. Igualmente, en Bosch se contemplan como mecanismos de transformación a los estilos arquitectónicos, patrones arquitectónicos y patrones de diseño. En el método de Losavio-Chirinos-Levy-Ramdane Cherif únicamente se hace referencia a los patrones arquitectónicos; así como en CBAM se hace referencia a estrategias arquitectónicas. En QUADRAD se producen transformaciones por medio de la aplicación de decisiones arquitectónicas. En ADD, el sistema se descompone recursivamente en módulos.</font></p>     <p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">ELEMENTOS COMUNES AL PROCESO GENERAL DEL DESARROLLO DEL SOFTWARE</font></b></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">A continuación se presentan algunos elementos que en general están presentes en cualquier proceso de desarrollo de software.</font></p>     <p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">Objetivos</font></b></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">Muchos métodos comparten un objetivo general, como puede ser identificar requisitos, evaluar o diseñar una arquitectura. Sin embargo, un conjunto de métodos de evaluación o de diseño se diferencia entre sí por los objetivos específicos que persigue (<a href="#tab13">tabla 13</a>).</font></p>     <p ALIGN="center" style="line-height: 100%"><a name="tab13"><img border="0" src="/img/fbpe/rfiucv/v25n1/art08tab13.gif" width="570" height="244"></a></p>     
<p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">Entregables finales</font></b></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">Una comparación de los métodos estudiados, evidencia que el entregable final que más se genera es precisamente la arquitectura (en 14 de los 27 métodos estudiados), seguida de los enfoques arquitectónicos (10/27). Junto a estos se pueden nombrar los siguientes: lista de riesgos (7/27), puntos sensibles (7/27), lista de fortalezas (6/27), requisitos de calidad (5/27) y lista de restricciones (4/27).</font></p>     <p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">Descripción de roles en la aplicación del método</font></b></p>     ]]></body>
<body><![CDATA[<p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">La descripción de los roles que intervienen en la aplicación de un método son importantes, pues ayuda a la distribución de responsabilidades propias del método; además, favorece la aplicabilidad del mismo en situaciones reales. En lo referente a este aspecto, encontramos que la gran mayoría de los métodos estudiados no especifica detalladamente los roles de los participantes. La <a href="#tab14"> tabla 14</a> muestra un resumen de los resultados obtenidos.</font></p>     <p ALIGN="center" style="line-height: 100%"><a name="tab14"><img border="0" src="/img/fbpe/rfiucv/v25n1/art08tab14.gif" width="579" height="206"></a></p>     
<p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana"><b>Descripción detallada de los tipos de stakeholders</b></font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">Es importante disponer de los perfiles de los distintos interesados (stakeholders) de los cuales se necesita su participación en el método. Cada especialista posee una experticia puede nutrir determinados aspectos de la arquitectura.</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">En relación a este aspecto, los siguientes métodos no describen explícitamente los tipos de stakeholder participantes: ASAAM, ALMA, PASA, CBSP, SACAM, SARM, BOSH, Proteus, Lamsweerde, Losavio-Chirinos-Levy-Ramdane Cherif, ADD y ASAA. En este caso, podría inferirse que el tipo stakeholder que participa es el arquitecto de software. Por otra parte, APSM y CBAM utilizan el término stakeholders en general, dejando a criterio del equipo los tipos que se consideren necesarios según las características del sistema a desarrollar. Los métodos PRESKRIPTOR, VAP y CBAM-WIN WIN, únicamente hacen referencia a los arquitectos de software, mientras que ABD, sólo hace mención a los diseñadores. Los métodos AQA y MECABIC, mencionan a los evaluadores de software y a los arquitectos de software, mientras que ARID menciona a los ingenieros de software y a los arquitectos. Los métodos SAAM, SAE, FAAM, QUADRAD nombran varios stakeholders. Específicamente, SAAM demanda la participación del usuario final, cliente, especialista en mercadeo, administrador de sistema, mantenedor, desarrollador y archirecto. SAE, menciona a los desarrolladores, arquitectos y administradores de proyecto. FAAM presenta una descripción bien detallada de los stakeholders, colocando especial énfasis en el redimensionamiento de las tareas de cada uno en el contexto de la evaluación de arquitecturas de la familia de sistemas de información. QUADRAD hace referencia a los siguientes stakerholders: arquitecto, ingeniero de requisitos, ejecutivo de negocios, equipo de evaluadores, y de manera general a los interesados en el sistema. QAW nombra algunos stakeholders aunque no se ofrece una descripción detallada de las responsabilidades de estos. Finalmente, un caso especial lo constituye ATAM, pues proporciona la descripción más completa de los distintos tipos de stakeholders que pueden participar en el método.</font></p>     <p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">Identificación de objetos de análisis</font></b></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">Constituyen las entidades sobre las que se centran las actividades de análisis. Estos objetos están determinados por los objetivos del método y por la infraestructura conceptual sobre la cual este se fundamenta.</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">En el caso de los métodos de evaluación, los objetos de análisis son en general la arquitectura y su respuesta frente a un grupo de requisitos de calidad. Lo anterior es complementado en muchos casos con el análisis de las relaciones entre los atributos de calidad y mecanismos arquitectónicos. En el caso de los métodos de diseño, los objetos de análisis vienen dados por un conjunto de requisitos (funcionales y no funcionales). Junto al análisis de requisitos de calidad, las relaciones entre estos, es también objeto de análisis en muchos casos.</font></p>     <p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">Inclusión de actividades para el seguimiento (trazabilidad)</font></b></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">Parece conveniente otorgar un carácter más holístico al diseño arquitectónico dentro del proceso de desarrollo. Aunque éste se centra en el ámbito de la solución del problema, debería trascenderlo para extenderse hacia la ingeniería de requisitos y al unísono hacia las fases posteriores de diseño detallado. Los métodos de diseño arquitectónico deberían contemplar actividades que permitan al arquitecto realizar el seguimiento de las decisiones tomadas durante esta fase en las subsecuentes actividades propias del diseño detallado del sistema. En este sentido, únicamente AQA, SAE y VAP hacen alguna propuesta. En el primer caso, se hace referencia a la posibilidad de que los arquitectos utilicen los entregables finales para realizar las modificaciones necesarias que disminuyan los riesgos identificados, sin que esto sea obligatorio. Por otra parte, en SAE se genera un reporte final que resume las fortalezas y debilidades de la arquitectura. De igual forma, VAP establece actividades de seguimiento en la fase de despliegue arquitectónico.</font></p>     ]]></body>
<body><![CDATA[<p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">CARACTERÍSTICAS DESEABLES EN UN MÉTODO DE DISEÑO ARQUITECTÓNICO</font></b></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">Del marco de comparación propuesto se ha inferido un conjunto de características deseables en un método de diseño arquitectónico, a saber:</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">1. Poseer un modelo conceptual de la arquitectura: el cuerpo de conceptos sobre los que se fundamenta el método debe contemplar todas las definiciones que son universalmente aceptadas en el área de la arquitectura de software, preferiblemente estándares.</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">2. Tratar explícitamente los requisitos no funcionales: de estos depende fundamentalmente el diseño arquitectónico final del sistema.</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">3. Proporcionar mecanismos de derivación arquitectónica: que permitan al arquitecto de software convertir un conjunto de requisitos en elementos de valor arquitectónico.</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">4. Aplicar mecanismos de descripción arquitectónica con el nivel de abstracción adecuado.</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">5. Tener como objetivo el logro de cualquier combinación de características de calidad en general.</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">6. Proporcionar actividades de negociación entre los especialistas involucrados (Stakeholders).</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">7. Proporcionar actividades de transformación arquitectónica para satisfacer el modelo de calidad del sistema.</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">8. Estar apoyado por herramientas de software que auxilien al arquitecto en la recolección de datos.</font></p>     ]]></body>
<body><![CDATA[<p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">9. Estar validado: como resultado de la aplicación del método a varios casos.</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">10.Ser fácil de usar: característica que es favorecida si el método cuenta con un marco conceptual sencillo.</font></p>     <p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">UNA PROPUESTA DE PROCESO DE DISEÑO ARQUITECTÓNICO</font></b></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">Como resultado de la comparación de los distintos métodos arquitectónicos, se propone una primera versión de un marco conceptual para un método de diseño arquitectónico. La <a href="#fig2"> figura 2</a> muestra los artefactos o productos que se obtienen en cada etapa del marco conceptual propuesto para este proceso. A continuación se describen las etapas del mismo.</font></p>     <p ALIGN="center" style="line-height: 100%"><a name="fig2"><img border="0" src="/img/fbpe/rfiucv/v25n1/art08fig2.gif" width="571" height="356"></a></p>     
<p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana"><b>Etapa de preparación: </b>en la que se organizan los requisitos. Se supone la existencia previa de un conjunto de requisitos. Esta etapa se divide en dos actividades:</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">a. Generación del Modelo de Casos de uso: compuesto por el diagrama de casos de uso y una especificación detallada de los mismos. A través de las relaciones extend, incluye y use, se originan casos de uso específicos arquitectónicamente significativos.</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">b. Generación del Modelo de Calidad: cuyo objetivo es capturar los requisitos no funcionales del sistema. Para esto, se puede partir de los atributos que fueron identificados y asignados a los casos de uso durante su especificación. El artefacto final debe ser un <i>árbol de calidad</i> (Kazman <i>et al</i>. 1998). Este se refina hasta que en las hojas se encuentren escenarios en los que, según el criterio de los especialistas; se pongan de manifiesto todos los atributos identificados. Posteriormente, se clasifican los escenarios ubicados en las hojas según la taxonomía de artefactos CBSP propuesta por Grünbacher <i>et al</i>. (2003). Esta taxonomía está compuesta por las siguientes categorías: artefactos que involucran componentes (C); artefactos relacionados con propiedades de componentes (CP); artefactos que involucran a un conector (B); artefactos que involucran a una amplia sección de componentes del sistema (S); artefactos relacionados con propiedades de un conector (BP) y artefactos relacionados con propiedades del sistema (SP).</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana"><b>Etapa de derivación arquitectónica:</b> en esta etapa se genera una arquitectura base sobre la cual se pueden realizar transformaciones, para así lograr que ésta responda a los requisitos. Se compone de dos actividades:</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">a. Generación del modelo de componentes: partiendo del modelo de casos de uso y del modelo de calidad. En primer lugar, se toman los casos de uso ubicados como hojas del diagrama de casos de uso y se les asigna un componente, expresado en UML. Por otra parte, se hace algo similar a partir del modelo de calidad expresado en el árbol de calidad; a cada escenario hoja, clasificado como un artefacto C, se le asigna un componente, mientras que a los que se les ha clasificado como artefactos CP, se les intenta ubicar como propiedades de los componentes.</font></p>     ]]></body>
<body><![CDATA[<p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">b. Generación del modelo CC (modelo de componentesconectores): lo que se logra asignando relaciones entre los componentes generados en la actividad anterior. Tales relaciones pueden derivarse en conectores o en relaciones de composición. Por otra parte, a los escenarios que en el árbol de calidad fueron clasificados como artefactos B, se les asignan conectores que a su vez son asignados a los componentes existentes. A los escenarios que se identificaron como artefactos BP, se les intenta ubicar como propiedades de los conectores.</font></p> <b>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">Etapa de refinamiento arquitectónico (agrupa las siguientes</font></b><font size="2" face="Verdana"> </font><b><font size="2" face="Verdana">actividades):</font></p> </b>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">a. Identificación de subsistemas, estilos y patrones: lo que se logra a partir de los escenarios identificados como artefactos S o SP. Igualmente se determina la estructura interna de tales subsistemas a partir de los componentes identificados en el modelo CC.</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">b. Identificar los estilos y/o patrones arquitectónicos que respondan a los artefactos SP.</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">c. Aplicación de estilos y patrones arquitectónicos: una vez identificados se aplican al modelo CC, lo que transformará la arquitectura para conseguir responder a los requisitos de calidad. El resultado es la arquitectura base.</font></p>     <p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">Etapa de resolución de resonancias arquitectónicas (compuesta por las siguientes actividades):</font></b></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">a. Evaluación de la arquitectura: se valida la arquitectura según ATAM (Kazman <i>et al</i>. 1998). Como resultado, se generan los siguientes entregables: un conjunto de riesgos; un conjunto de fortalezas; un conjunto de aspectos sensibles y efectos colaterales; una lista de enfoques y mecanismos arquitectónicos.</font></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">b. Transformación de arquitectónica: Si el conjunto de riesgos es notable, entonces se deben aplicar los enfoques y mecanismos arquitectónicos que permitan solucionarlos, lo que conduciría a una transformación de la arquitectura obtenida.</font></p>     <p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">CONCLUSIONES</font></b></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">La comparación realizada permitió identificar un cuerpo de características deseables en un método de diseño arquitectónico. A partir de éstas se ha propuesto un método de diseño arquitectónico que integra distintas propuestas que se han realizado alrededor del diseño arquitectónico colocando énfasis en la coherencia entre los distintos entregables generados en cada etapa, el tratamiento de los atributos de calidad, y la apropiada selección de mecanismos de descripción que aseguren la correcta comunicación entre los distintos especialistas.</font></p>     ]]></body>
<body><![CDATA[<p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">Por otra parte no se ha realizado una evaluación de métodos, sin embargo, el conjunto de características deseables puede ser aplicado en este ámbito. En futuros trabajos se refinarán tales características para obtener métricas de permitan su aplicación en este sentido. Actualmente, el método está siendo aplicado a un caso de estudio en el área de los Sistemas Tutoriales Inteligentes y también al diseño arquitectónico de aplicaciones basadas en servicios web.</font></p>     <p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">AGRADECIMIENTO</font></b></p>     <p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">Los autores agradecen altamente a los árbitros por sus observaciones y aportes constructivos y al Consejo de desarrollo científico y Humanístico (CDCH) de la Universidad Central de Venezuela por haber financiado parcialmente esta investigación.</font></p>     <p ALIGN="justify" style="line-height: 100%"><b><font size="2" face="Verdana">REFERENCIAS</font></b></p>     <!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">1. Asundi, J. &amp; Kazman, R. (2001). A Foundation for the Economic Analysis of Software Architectures. Third International Workshop on Economics-Driven Software Engineering Research, s/n.</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=1865554&pid=S0798-4065201000010000800001&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">2. AT&amp;T (1993). Best Current Practices: Software Architecture Validation, s/n.</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=1865555&pid=S0798-4065201000010000800002&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">3. Babar, M. &amp; Gorton, I. (2004). Comparison of scenariobased software architecture evaluation methods. Nacional ICT Australia Ltd. and University of New South Wales, Australia, s/n.</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=1865556&pid=S0798-4065201000010000800003&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">4. Babar, M., Jeffery, R., Zhu, L. (2004). A Framework for Classifying and Comparing Software Architecture Evaluation Methods. Nacional ICT Australia Ltd. And University of New South Wales, Australia, s/n.</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=1865557&pid=S0798-4065201000010000800004&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">5. Bachmann, F., Stoermer, C., Verhoef, C. (2003). SACAM: The Software Architecture Comparison Analysis Method. CMU/SEI-2003-TR-006. Carnegie Mellon Software Engineering Insitute. Pittsburg, s/n.</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=1865558&pid=S0798-4065201000010000800005&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">6. Barbacci, M., Ellison, R., Lattanze, A., Stafford, J., Weinstock, C., Wood, W. (2003). Quality Attribute Workshps (QAWs). CMU/ SEI-2003-TR-016. Carnegie Mellon Software Engineering Insitute. Pittsburg, s/n.</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=1865559&pid=S0798-4065201000010000800006&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">7. Bass, L., Chastek, G., Donohoe, P., Peruzzi, F. (2000). The Architecture Based Design Method. CMU/SEI-2000- TR-001. Carnegie Mellon Software Engineering Insitute. Pittsburg, s/n.</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=1865560&pid=S0798-4065201000010000800007&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">8. Bass, L., Clements, P., Kazman, R. (2003). Software Architecture in Practice. Massachusetts: Addison-Wesley. Segunda edición, p. 560.</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=1865561&pid=S0798-4065201000010000800008&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">9. Bengtsson, P. &amp; Bosch, J. (1998). Scenario-based Software Architecture Reengineering. Proceedings of the 5th International Conference on Software Reuse, IEEE, Victoria, Canada, pp. 308-317.</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=1865562&pid=S0798-4065201000010000800009&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">10. Bengtsson, P. &amp; Bosch, J. (1999). Architecture-Level Prediction of software Maintenance. Proceedings of 3rd EuroMicro Conference on Maintenance and Reengineering, Los Alamitos, CA: IEEE Cs Press, pp. 139-147.</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=1865563&pid=S0798-4065201000010000800010&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">11. Bengtsson, P., Bosch, J., Lassing, N., Van Vliet, H. (2004). Architecture-level modifiability analysis (ALMA). The journal of systems and software, (69): 129-147.</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=1865564&pid=S0798-4065201000010000800011&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">12. Bosch, J. (2000). Design &amp; Use of Software Architecture. Addison-Wesley, p. 354.</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=1865565&pid=S0798-4065201000010000800012&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">13. Brandozzi, M. &amp; Perry, D. (2002). Architectural Prescriptions for Dependable Systems. ICSE WADS 2.</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=1865566&pid=S0798-4065201000010000800013&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">14. Bredemeyer, D. &amp; Malan, R. (2005). The Visual Architecting Process. Bredemeyer Consulting. s/n.</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=1865567&pid=S0798-4065201000010000800014&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">15. Chung, L., Cooper, K., Yi, A. (2002). Developing Adaptable Software Architectures Using Design Patterns: a NFR Approach. Departament of Computer Science, University of Texas at Dallas.</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=1865568&pid=S0798-4065201000010000800015&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">16. Clements, P. (2000). Active Reviews for Intermediate Designs. CMU/SEI-2000-TN-009. Carnegie Mellon Software Engineering Insitute. Pittsburg, s/n.</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=1865569&pid=S0798-4065201000010000800016&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">17. Clements, P., Kazman, R., Klein, M. (2002). Evaluating Software Architecture: Methods and Case Studies. Boston: Addison-Wesley, p. 447.</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=1865570&pid=S0798-4065201000010000800017&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">18. Connie, S. &amp; Williams, L. (2002). PASASM: A Method for the Performance Assessment of Software Architectures. Software Engineering Research and Performance Engineering Services, s/n.</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=1865571&pid=S0798-4065201000010000800018&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">19. Dobrica, L. &amp; NiemelÄ, E. (2002). A Survey on Software Architecture Analysis Methods. IEEE transactions on Software Engineering; (28)7.</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=1865572&pid=S0798-4065201000010000800019&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">20. Dolan, T. (2001). Architecture Assessment of Information- System Families. Tesis de Doctorado. Technische Universiteit Eindhoven, Holanda.</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=1865573&pid=S0798-4065201000010000800020&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">21. González, A., Grimán, A., Mendoza, L., Mijares, M., Pérez, M. (2005). Método de Evaluación de Arquitecturas de Software Basadas en Componentes (MECABIC). Universidad Simón Bolívar, s/n.</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=1865574&pid=S0798-4065201000010000800021&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">22. Grimán, A., Pérez, M., Mendoza, L., Losavio, F. (2006). Feature Analysis for Architectural Evaluation Methods. Journal of Systems &amp; Software, Elsevier Science (North Holland) (79)6: pp. 871-888.</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=1865575&pid=S0798-4065201000010000800022&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">23. Grunbacher, P., Egyed, A., Medvidovic, N. (2003). Reconciling Software Requirements and Architecture: The CBSP Approach. 2nd International Workshop on Traceability In Emerging Forms of Software Engineering (TEFSE) with ASE 2003, Montreal, Canada, s/n.</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=1865576&pid=S0798-4065201000010000800023&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">24. Hammer, D., Ionita, M., Obbink, H. (2002). Scenario- Based Software Architecture Evaluation Methods: An Overview, s/n.</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=1865577&pid=S0798-4065201000010000800024&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">25. Hilliard, I., Kurland, R., Litvintchouk, S. (1997). MITRE’s Architecture Quality Assessment. Software Engineering &amp; Economics Conference. The MITRE Corporation, s/n.</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=1865578&pid=S0798-4065201000010000800025&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">26. Hofmeister, C., Nord, R., Soni, D. (2000). Applied Software Architecture. Addison-Wesley, p. 387.</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=1865579&pid=S0798-4065201000010000800026&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">27. Kazman, H.R., &amp; Olson, D. (2001). From Requirements Negotiation to Software Architectural Decisions, s/n.</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=1865580&pid=S0798-4065201000010000800027&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">28. ISO/IEC 9126-1. (2001) Quality characteristics and guidelines for their use. International Organisation for Standardisation / International Electrotechnical Commission, s/n.</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=1865581&pid=S0798-4065201000010000800028&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">29. Kazman, R. &amp; Nord, R. (2003). A Life-Cycle View of Architecture Analysis and Design Methods. CMU/SEI- 2003-TN-026, s/n.</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=1865582&pid=S0798-4065201000010000800029&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">30. Kazman, R., Klein, M., Barbacci, T., Longstaff, H., Lipson, H., Carriere, J. (1998). The Architecture Tradeoff Analyisis Method. IEEE, ICECCS, s/n.</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=1865583&pid=S0798-4065201000010000800030&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">31. Kitchenham, B. (1996). DESMET: A Method for Evaluating Software Engineering Methods and Tools. Departament of Computer Science. University of Keele. U.K., s/n.</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=1865584&pid=S0798-4065201000010000800031&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">32. Krutchen, P. (1995). Architectural Blueprints—The “4+1” View Model of Software Architecture. Rational Software Corp. IEEE Software 12 (6):p. 42-50.</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=1865585&pid=S0798-4065201000010000800032&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">33. Lamsweerde, A. (2003). From System Goals to Software Architecture. Formal Methods for Software Architectures. Springer-Verlag, s/n.</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=1865586&pid=S0798-4065201000010000800033&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">34. Losavio, F., Chirinos, L., Lévy, N., Ramdane-Cherif, A. (2003). Quality Characteristics for Software Architecture. Journal of Object Technology (JOT). Vol 2, No. 2, pp.133-150, <a href="http://www.jot.fm/issues/issue_2003_03/article2">http://www.jot.fm/issues/issue_2003_03/article2</a>. s/n.</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=1865587&pid=S0798-4065201000010000800034&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">35. Losavio, F., Chirinos, L., Pérez, M. (2001). Feature Analysis for quality-based architectural design methods. XI Encuentro Chileno de Computación, Jornadas Chilenas de Computación 2001 (SCCC), Punta Arenas (Magallanes), Chile, 5-10 Noviembre, proceedings CD-rom, <a href="http://www.umag.cl/ec">www.umag.cl/ec</a>. s/n.</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=1865588&pid=S0798-4065201000010000800035&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">36. Obbink, H., Nord, R., Kruchten, P., Hofmeister, C., America, P., Ran, A. (2007). A general model of software architecture design derived from five industrial approaches. The Journal of Systems and Software (80):106- 126.</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=1865589&pid=S0798-4065201000010000800036&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">37. OMG (Object Management Group) (2005a). Unified Modeling Language: Superstructure. version 2.0. formal/ 05-07-04, s/n.</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=1865590&pid=S0798-4065201000010000800037&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">38. OMG (Object Management Group) (2005b). Software Process Engineering Metamodel Specification. Version 1.1.formal/05-01-06, s/n.</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=1865591&pid=S0798-4065201000010000800038&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">39. Tekinerdogan, B. &amp; Mehmet, A. (2000). Classifying and Evaluating Architecture Design Methods. TRESE Group, Department of Computer Science, University of Twente, s/n.</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=1865592&pid=S0798-4065201000010000800039&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">40. Tekinerdogan, B. (2003). ASAAM: Aspectual Software Architecture Analysis Method. Turkey: Departament of Computer Engineering, Bilkent University, s/n.</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=1865593&pid=S0798-4065201000010000800040&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p ALIGN="justify" style="line-height: 100%"><font size="2" face="Verdana">41. Thiel, S. (2005). Framework to Improve the Architecture Quality of Software-Intensive Systems. Tesis de Doctorado. Universität Duisburg-Essen, Alemania, s/n.</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=1865594&pid=S0798-4065201000010000800041&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --> ]]></body>
<back>
<ref-list>
<ref id="B1">
<label>1</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Asundi]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
<name>
<surname><![CDATA[Kazman]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
</person-group>
<source><![CDATA[A Foundation for the Economic Analysis of Software Architectures]]></source>
<year>2001</year>
</nlm-citation>
</ref>
<ref id="B2">
<label>2</label><nlm-citation citation-type="">
<collab>AT& T</collab>
<source><![CDATA[Best Current Practices: Software Architecture Validation]]></source>
<year>1993</year>
</nlm-citation>
</ref>
<ref id="B3">
<label>3</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Babar]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[Gorton]]></surname>
<given-names><![CDATA[I]]></given-names>
</name>
</person-group>
<source><![CDATA[Comparison of scenariobased software architecture evaluation methods]]></source>
<year>2004</year>
<publisher-name><![CDATA[Nacional ICT Australia Ltd. and University of New South Wales]]></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[Babar]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[Jeffery]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
<name>
<surname><![CDATA[Zhu]]></surname>
<given-names><![CDATA[L]]></given-names>
</name>
</person-group>
<source><![CDATA[A Framework for Classifying and Comparing Software Architecture Evaluation Methods]]></source>
<year>2004</year>
<publisher-name><![CDATA[Nacional ICT Australia Ltd. And University of New South Wales]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B5">
<label>5</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Bachmann]]></surname>
<given-names><![CDATA[F]]></given-names>
</name>
<name>
<surname><![CDATA[Stoermer]]></surname>
<given-names><![CDATA[C]]></given-names>
</name>
<name>
<surname><![CDATA[Verhoef]]></surname>
<given-names><![CDATA[C]]></given-names>
</name>
</person-group>
<source><![CDATA[SACAM: The Software Architecture Comparison Analysis Method]]></source>
<year>2003</year>
</nlm-citation>
</ref>
<ref id="B6">
<label>6</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Barbacci]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[Ellison]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
<name>
<surname><![CDATA[Lattanze]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
<name>
<surname><![CDATA[Stafford]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
<name>
<surname><![CDATA[Weinstock]]></surname>
<given-names><![CDATA[C]]></given-names>
</name>
<name>
<surname><![CDATA[Wood]]></surname>
<given-names><![CDATA[W]]></given-names>
</name>
</person-group>
<source><![CDATA[Quality Attribute Workshps (QAWs)]]></source>
<year>2003</year>
<publisher-name><![CDATA[Carnegie Mellon Software Engineering Insitute]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B7">
<label>7</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Bass]]></surname>
<given-names><![CDATA[L]]></given-names>
</name>
<name>
<surname><![CDATA[Chastek]]></surname>
<given-names><![CDATA[G]]></given-names>
</name>
<name>
<surname><![CDATA[Donohoe]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
<name>
<surname><![CDATA[Peruzzi]]></surname>
<given-names><![CDATA[F]]></given-names>
</name>
</person-group>
<source><![CDATA[The Architecture Based Design Method]]></source>
<year>2000</year>
<publisher-name><![CDATA[Carnegie Mellon Software Engineering Insitute]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B8">
<label>8</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Bass]]></surname>
<given-names><![CDATA[L]]></given-names>
</name>
<name>
<surname><![CDATA[Clements]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
<name>
<surname><![CDATA[Kazman]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
</person-group>
<source><![CDATA[oftware Architecture in Practice]]></source>
<year>2003</year>
<edition>Segunda</edition>
<page-range>560</page-range><publisher-loc><![CDATA[Massachusetts ]]></publisher-loc>
<publisher-name><![CDATA[Addison-Wesley]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B9">
<label>9</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Bengtsson]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
<name>
<surname><![CDATA[Bosch]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<source><![CDATA[Scenario-based Software Architecture Reengineering]]></source>
<year>1998</year>
<conf-name><![CDATA[ Proceedings of the 5th International Conference on Software Reuse]]></conf-name>
<conf-loc> </conf-loc>
<page-range>308-317</page-range><publisher-loc><![CDATA[Victoria ]]></publisher-loc>
</nlm-citation>
</ref>
<ref id="B10">
<label>10</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Bengtsson]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
<name>
<surname><![CDATA[Bosch]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<source><![CDATA[Architecture-Level Prediction of software Maintenance]]></source>
<year>1999</year>
<conf-name><![CDATA[ Proceedings of 3rd EuroMicro Conference on Maintenance and Reengineering]]></conf-name>
<conf-loc> </conf-loc>
<page-range>139-147</page-range><publisher-name><![CDATA[IEEE Cs Press]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B11">
<label>11</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Bengtsson]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
<name>
<surname><![CDATA[Bosch]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
<name>
<surname><![CDATA[Lassing]]></surname>
<given-names><![CDATA[N]]></given-names>
</name>
<name>
<surname><![CDATA[Van Vliet]]></surname>
<given-names><![CDATA[H]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Architecture-level modifiability analysis (ALMA)]]></article-title>
<source><![CDATA[The journal of systems and software]]></source>
<year>2004</year>
<volume>69</volume>
<page-range>129-147</page-range></nlm-citation>
</ref>
<ref id="B12">
<label>12</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Bosch]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<source><![CDATA[Design & Use of Software Architecture]]></source>
<year>2000</year>
<page-range>354</page-range><publisher-name><![CDATA[Addison-Wesley]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B13">
<label>13</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Brandozzi]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[Perry]]></surname>
<given-names><![CDATA[D]]></given-names>
</name>
</person-group>
<source><![CDATA[Architectural Prescriptions for Dependable Systems]]></source>
<year>2002</year>
</nlm-citation>
</ref>
<ref id="B14">
<label>14</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Bredemeyer]]></surname>
<given-names><![CDATA[D]]></given-names>
</name>
<name>
<surname><![CDATA[Malan]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
</person-group>
<source><![CDATA[The Visual Architecting Process: Bredemeyer Consulting]]></source>
<year>2005</year>
</nlm-citation>
</ref>
<ref id="B15">
<label>15</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[Cooper]]></surname>
<given-names><![CDATA[K]]></given-names>
</name>
<name>
<surname><![CDATA[Yi]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
</person-group>
<source><![CDATA[Developing Adaptable Software Architectures Using Design Patterns: a NFR Approach]]></source>
<year>2002</year>
<publisher-name><![CDATA[Departament of Computer Science, University of Texas at Dallas]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B16">
<label>16</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Clements]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
</person-group>
<source><![CDATA[Active Reviews for Intermediate Designs]]></source>
<year>2000</year>
<publisher-name><![CDATA[Carnegie Mellon Software Engineering Insitute]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B17">
<label>17</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Clements]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
<name>
<surname><![CDATA[Kazman]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
<name>
<surname><![CDATA[Klein]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
</person-group>
<source><![CDATA[Evaluating Software Architecture: Methods and Case Studies]]></source>
<year>2002</year>
<page-range>447</page-range><publisher-loc><![CDATA[Boston ]]></publisher-loc>
<publisher-name><![CDATA[Addison-Wesley]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B18">
<label>18</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Connie]]></surname>
<given-names><![CDATA[S]]></given-names>
</name>
<name>
<surname><![CDATA[Williams]]></surname>
<given-names><![CDATA[L]]></given-names>
</name>
</person-group>
<source><![CDATA[PASASM: A Method for the Performance Assessment of Software Architectures]]></source>
<year>2002</year>
</nlm-citation>
</ref>
<ref id="B19">
<label>19</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Dobrica]]></surname>
<given-names><![CDATA[L]]></given-names>
</name>
<name>
<surname><![CDATA[NiemelÄ]]></surname>
<given-names><![CDATA[E]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[A Survey on Software Architecture Analysis Methods]]></article-title>
<source><![CDATA[IEEE transactions on Software Engineering]]></source>
<year>2002</year>
<volume>28</volume>
<numero>7</numero>
<issue>7</issue>
</nlm-citation>
</ref>
<ref id="B20">
<label>20</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Dolan]]></surname>
<given-names><![CDATA[T]]></given-names>
</name>
</person-group>
<source><![CDATA[Architecture Assessment of Information- System Families]]></source>
<year>2001</year>
</nlm-citation>
</ref>
<ref id="B21">
<label>21</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[González]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
<name>
<surname><![CDATA[Grimán]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
<name>
<surname><![CDATA[Mendoza]]></surname>
<given-names><![CDATA[L]]></given-names>
</name>
<name>
<surname><![CDATA[Mijares]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[Pérez]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
</person-group>
<source><![CDATA[Método de Evaluación de Arquitecturas de Software Basadas en Componentes (MECABIC)]]></source>
<year>2005</year>
<publisher-name><![CDATA[Universidad Simón Bolívar]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B22">
<label>22</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Grimán]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
<name>
<surname><![CDATA[Pérez]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[Mendoza]]></surname>
<given-names><![CDATA[L]]></given-names>
</name>
<name>
<surname><![CDATA[Losavio]]></surname>
<given-names><![CDATA[F]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Feature Analysis for Architectural Evaluation Methods]]></article-title>
<source><![CDATA[Journal of Systems & Software]]></source>
<year>2006</year>
<volume>79</volume>
<numero>6</numero>
<issue>6</issue>
<page-range>871-888</page-range><publisher-name><![CDATA[Elsevier Science]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B23">
<label>23</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Grunbacher]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
<name>
<surname><![CDATA[Egyed]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
<name>
<surname><![CDATA[Medvidovic]]></surname>
<given-names><![CDATA[N]]></given-names>
</name>
</person-group>
<source><![CDATA[Reconciling Software Requirements and Architecture: The CBSP Approach]]></source>
<year>2003</year>
<conf-name><![CDATA[ 2nd International Workshop on Traceability In Emerging Forms of Software Engineering (TEFSE)]]></conf-name>
<conf-loc> </conf-loc>
<publisher-loc><![CDATA[Montreal ]]></publisher-loc>
</nlm-citation>
</ref>
<ref id="B24">
<label>24</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Hammer]]></surname>
<given-names><![CDATA[D]]></given-names>
</name>
<name>
<surname><![CDATA[Ionita]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[Obbink]]></surname>
<given-names><![CDATA[H]]></given-names>
</name>
</person-group>
<source><![CDATA[Scenario- Based Software Architecture Evaluation Methods: An Overview]]></source>
<year>2002</year>
</nlm-citation>
</ref>
<ref id="B25">
<label>25</label><nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Hilliard]]></surname>
<given-names><![CDATA[I]]></given-names>
</name>
<name>
<surname><![CDATA[Kurland]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
<name>
<surname><![CDATA[Litvintchouk]]></surname>
<given-names><![CDATA[S]]></given-names>
</name>
</person-group>
<source><![CDATA[MITRE’s Architecture Quality Assessment]]></source>
<year>1997</year>
<conf-name><![CDATA[ Software Engineering & Economics Conference]]></conf-name>
<conf-loc> </conf-loc>
<publisher-name><![CDATA[The MITRE Corporation]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B26">
<label>26</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Hofmeister]]></surname>
<given-names><![CDATA[C]]></given-names>
</name>
<name>
<surname><![CDATA[Nord]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
<name>
<surname><![CDATA[Soni]]></surname>
<given-names><![CDATA[D]]></given-names>
</name>
</person-group>
<source><![CDATA[Applied Software Architecture]]></source>
<year>2000</year>
<page-range>387</page-range><publisher-name><![CDATA[Addison-Wesley]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B27">
<label>27</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Kazman]]></surname>
<given-names><![CDATA[H.R]]></given-names>
</name>
<name>
<surname><![CDATA[Olson]]></surname>
<given-names><![CDATA[D]]></given-names>
</name>
</person-group>
<source><![CDATA[From Requirements Negotiation to Software Architectural Decisions]]></source>
<year>2001</year>
</nlm-citation>
</ref>
<ref id="B28">
<label>28</label><nlm-citation citation-type="">
<source><![CDATA[Quality characteristics and guidelines for their use]]></source>
<year>2001</year>
</nlm-citation>
</ref>
<ref id="B29">
<label>29</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Kazman]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
<name>
<surname><![CDATA[Nord]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
</person-group>
<source><![CDATA[A Life-Cycle View of Architecture Analysis and Design Methods]]></source>
<year>2003</year>
</nlm-citation>
</ref>
<ref id="B30">
<label>30</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Kazman]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
<name>
<surname><![CDATA[Klein]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[Barbacci]]></surname>
<given-names><![CDATA[T]]></given-names>
</name>
<name>
<surname><![CDATA[Longstaff]]></surname>
<given-names><![CDATA[H]]></given-names>
</name>
<name>
<surname><![CDATA[Lipson]]></surname>
<given-names><![CDATA[H]]></given-names>
</name>
<name>
<surname><![CDATA[Carriere]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<source><![CDATA[The Architecture Tradeoff Analyisis Method]]></source>
<year>1998</year>
<publisher-name><![CDATA[IEEE, ICECCS]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B31">
<label>31</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Kitchenham]]></surname>
<given-names><![CDATA[B]]></given-names>
</name>
</person-group>
<source><![CDATA[DESMET: A Method for Evaluating Software Engineering Methods and Tools]]></source>
<year>1996</year>
<publisher-loc><![CDATA[^eU.K U.K]]></publisher-loc>
<publisher-name><![CDATA[Departament of Computer Science. University of Keele.]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B32">
<label>32</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Krutchen]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Architectural Blueprints-The “4+1” View Model of Software Architecture]]></article-title>
<source><![CDATA[IEEE Software]]></source>
<year>1995</year>
<volume>12</volume>
<numero>6</numero>
<issue>6</issue>
<page-range>42-50</page-range></nlm-citation>
</ref>
<ref id="B33">
<label>33</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Lamsweerde]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
</person-group>
<source><![CDATA[From System Goals to Software Architecture: Formal Methods for Software Architectures]]></source>
<year>2003</year>
<publisher-name><![CDATA[Springer-Verlag]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B34">
<label>34</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Losavio]]></surname>
<given-names><![CDATA[F]]></given-names>
</name>
<name>
<surname><![CDATA[Chirinos]]></surname>
<given-names><![CDATA[L]]></given-names>
</name>
<name>
<surname><![CDATA[Lévy]]></surname>
<given-names><![CDATA[N]]></given-names>
</name>
<name>
<surname><![CDATA[Ramdane-Cherif]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Quality Characteristics for Software Architecture]]></article-title>
<source><![CDATA[Journal of Object Technology (JOT)]]></source>
<year>2003</year>
<volume>2</volume>
<numero>2</numero>
<issue>2</issue>
<page-range>133-150</page-range></nlm-citation>
</ref>
<ref id="B35">
<label>35</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Losavio]]></surname>
<given-names><![CDATA[F]]></given-names>
</name>
<name>
<surname><![CDATA[Chirinos]]></surname>
<given-names><![CDATA[L]]></given-names>
</name>
<name>
<surname><![CDATA[Pérez]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
</person-group>
<source><![CDATA[Feature Analysis for quality-based architectural design methods]]></source>
<year>2001</year>
</nlm-citation>
</ref>
<ref id="B36">
<label>36</label><nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Obbink]]></surname>
<given-names><![CDATA[H]]></given-names>
</name>
<name>
<surname><![CDATA[Nord]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
<name>
<surname><![CDATA[Kruchten]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
<name>
<surname><![CDATA[Hofmeister]]></surname>
<given-names><![CDATA[C]]></given-names>
</name>
<name>
<surname><![CDATA[America]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
<name>
<surname><![CDATA[Ran]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[A general model of software architecture design derived from five industrial approaches]]></article-title>
<source><![CDATA[The Journal of Systems and Software]]></source>
<year>2007</year>
<volume>80</volume>
<page-range>106- 126</page-range></nlm-citation>
</ref>
<ref id="B37">
<label>37</label><nlm-citation citation-type="">
<collab>OMG (Object Management Group)</collab>
<source><![CDATA[Unified Modeling Language: Superstructure. version 2.0]]></source>
<year>2005</year>
<month>a</month>
</nlm-citation>
</ref>
<ref id="B38">
<label>38</label><nlm-citation citation-type="">
<collab>OMG (Object Management Group)</collab>
<source><![CDATA[Software Process Engineering Metamodel Specification: Version 1.1.formal]]></source>
<year>2005</year>
<month>b</month>
</nlm-citation>
</ref>
<ref id="B39">
<label>39</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Tekinerdogan]]></surname>
<given-names><![CDATA[B]]></given-names>
</name>
<name>
<surname><![CDATA[Mehmet]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
</person-group>
<source><![CDATA[Classifying and Evaluating Architecture Design Methods]]></source>
<year>2000</year>
<publisher-name><![CDATA[TRESE Group, Department of Computer Science, University of Twente]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B40">
<label>40</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Tekinerdogan]]></surname>
<given-names><![CDATA[B]]></given-names>
</name>
</person-group>
<source><![CDATA[ASAAM: Aspectual Software Architecture Analysis Method]]></source>
<year>2003</year>
<publisher-loc><![CDATA[Turkey ]]></publisher-loc>
<publisher-name><![CDATA[Departament of Computer Engineering, Bilkent University]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B41">
<label>41</label><nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Thiel]]></surname>
<given-names><![CDATA[S]]></given-names>
</name>
</person-group>
<source><![CDATA[Framework to Improve the Architecture Quality of Software-Intensive Systems]]></source>
<year>2005</year>
</nlm-citation>
</ref>
</ref-list>
</back>
</article>
