Summary: | A abordagem de linha de produto de software (LP) tem como objetivo principal promover a geração de produtos específicos de um determinado domínio com base na reutilização de uma infraestrutura central, chamada núcleo de artefatos. Um dos principais artefatos do núcleo de uma LP é a Arquitetura de LP (ALP), que representa a abstração de todas as arquiteturas de sistemas únicos que podem ser gerados, para um domínio específico. Avaliações de ALP são importantes, pois permitem aumentar a produtividade e a qualidade dos produtos da LP, bem como, seus resultados permitem a análise de metas de negócio e de retorno de investimento. Este trabalho propõe um método sistemático para avaliação de ALP, o SystEM-PLA (a Systematic Evaluation Method for Software Product Line Architectures). Tal método considera modelos de ALP em UML, por ser uma notação amplamente conhecida e consolidada. SystEM-PLA é composto por um metaprocesso de avaliação, diretrizes que guiam o usuário em como avaliar uma ALP e métricas básicas para modelos UML e atributos de qualidade. O método utiliza a abordagem SMarty (Stereotype-based Management of Variability), para gerenciar variabilidades em LP baseadas em UML. Análises de trade-off com o objetivo de priorizar atributos de qualidade para o desenvolvimento e evolução dos produtos de uma LP são realizadas com base na aplicação e coleta das métricas do SystEM-PLA em configurações de uma ALP. As métricas propostas para os atributos de qualidade complexidade e extensibilidade foram validadas por meio de um estudo experimental. Evidências indicaram a viabilidade de aplicação do método SystEM-PLA na indústria com base em um estudo experimental realizado com profissionais de uma empresa de grande porte no setor de desenvolvimento de software === The software product line (PL) approach aims at promoting the generation of specific products from a particular domain based on the reuse of a central infra-structure, so-called core assets. One of the main assets of a PL is the PL Architecture (PLA) that represents the abstraction of all possible single-product architectures that can be generated for a particular domain. PLA evaluations are important due to allow the increasing of the productivity and the quality of PL products, as well as their results allow business drivers and return on investment analyzes. This work proposes a Systematic Evaluation Method for Software Product Line Architectures, the SystEM-PLA. This method takes into account UML models with PLA variability explicitly represented, since UML is a widely known and consolidated notation. SystEM-PLA is composed of an evaluation meta-process, guidelines that drive the user on how to evaluate a PLA, and basic and quality attribute metrics. This method uses the proposed approach Stereotype-based Management of Variability (SMarty) to manage variabilities in UML-based PLs. Trade-off analyses to prioritize quality attributes for the development and evolution of PL products are carried out based on the application and collection of the SystEM-PLA metrics from PLA configurations. The quality attribute metrics were validated trough an experimental study. Evidences indicated the SystEM-PLA application feasibility in industry based on an experimental study, planned and conducted with professionals from a large software development organization
|