Uma Abordagem para Análise de Arquiteturas Usando Propriedades Arquiteturais em SysML
Requisito não funcional, propriedade arquitetural, SysML
As decisões para projetar arquiteturas de software de sistemas são dirigidas basicamente por requisitos funcionais e não funcionais. Requisitos possuem um impacto significante na estrutura geral da arquitetura, pois para construir uma arquitetura de software é necessário que ela esteja em conformidade com as necessidades levantadas, ou seja, que esteja de acordo com os requisitos do sistema. A elaboração da arquitetura que resulta da atividade de design (levando em consideração toda a tomada de decisão pelo arquiteto) não é sempre tão trivial, pois dependendo dos requisitos envolvidos pode ser uma atividade bastante onerosa. Por isto, é importante que ainda durante a fase de design o arquiteto possua os subsídios necessários dos futuros problemas que podem ser ocasionados. A fim de auxiliar a atividade de design e buscar uma forma de amenizar este problema da antecipação dos possíveis problemas a partir da análise da arquitetura, o objetivo central deste trabalho é determinar se é possível relacionar características encontradas na arquitetura, denominadas de propriedades arquiteturais juntamente com os requisitos não funcionais do sistema de forma a antecipar que os critérios de qualidade sejam satisfeitos. A ideia é identificar a relação que existe entre as propriedades arquiteturais e os requisitos não funcionais a fim de estabelecer regras de correspondência que identifique que alterações nas propriedades arquiteturais podem afetar os respectivos requisitos, auxiliando o arquiteto em suas decisões de design. Isto pode ser importante para antecipar critérios de qualidade que se deseja alcançar durante os planejamentos iniciais do sistema. O trabalho tem levantado como proposta as seguintes propriedades arquiteturais: número de elementos, número e tipo de interfaces, número e tipo de conexões e número de portas. Estas propriedades serão investigadas a fim de perceber se causam algum efeito sobre os requisitos de Desempenho, Segurança e Manutenabilidade, sendo medido por suas respectivas métricas de software, tentando encontrar alguma regra de correspondência entre o requisito e a propriedade arquitetural. Com o intuito de analisar as propriedades arquiteturais avaliadas na arquitetura, este trabalho optou por usar a linguagem de modelagem SysML, que é uma linguagem de propósito geral que abrange informações sobre hardware, software, processos e stakeholders, estendida da UML. Assim, será analisado se o uso da SysML permite a inclusão de requisitos e gerar a rastreabilidade das relações entre os elementos arquiteturais, além de permitir modelar comportamento e design de um sistema. Ainda como objeto de pesquisa deste trabalho, também pretende-se responder se o uso da SysML é realmente viável para a representação das propriedades arquiteturais no contexto de sistemas Web.