Spelling suggestions: "subject:"projeto arquitetura"" "subject:"projeto arquiteturas""
1 |
STREAM: a systematic process to derive architectural models from requirements modelsLucena, Márcia Jacyntha Nunes Rodrigues 05 March 2010 (has links)
Submitted by Fabio Sobreira Campos da Costa (fabio.sobreira@ufpe.br) on 2016-06-14T14:46:42Z
No. of bitstreams: 2
license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5)
completa.pdf: 3521353 bytes, checksum: 5e3d6b5f886f0a1f26221fd82af32df8 (MD5) / Made available in DSpace on 2016-06-14T14:46:42Z (GMT). No. of bitstreams: 2
license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5)
completa.pdf: 3521353 bytes, checksum: 5e3d6b5f886f0a1f26221fd82af32df8 (MD5)
Previous issue date: 2010-03-05 / Engenharia de Requisitos (ER) e Projeto de Arquitetura de Software (PAS) são atividades
iniciais de um processo de desenvolvimento de software. Desde que sistemas de software
atuais apresentam uma crescente complexidade, diversidade e longevidade, o
desenvolvimento destes sistemas deve considerar o uso de apropriados métodos e
linguagens de modelagens para ER e PAS. Um grande desafio, neste contexto, é o
desenvolvimento de métodos sistemáticos para projetar arquiteturas que satisfaçam
especificações de requisitos. Além disso, com o uso de processos iterativos e incrementais
de desenvolvimento de software considerados como um padrão de fato, uma forte
integração entre atividades de ER e PAS podem facilitar a rastreabilidade e a propagação de
mudanças entre os modelos produzidos nestas atividades. No entanto, muitos passos para
gerar modelos de arquitetura a partir de modelos de requisitos são feitos por intuição ou
conhecimento na arquitetura. Esta tese apresenta STREAM (Strategy for Transition
between Requirements models and Architectural Models – Estratégia para Transição entre
modelos de requisitos e modelos arquiteturais) que é um processo sistemático baseado em
transformações de modelos para gerar modelos arquiteturais a partir de modelos de
requisitos incluindo regras de transformações horizontais e verticais. As regras horizontais
são aplicadas nos modelos de requisitos resultando em modelos intermediários próximos
de modelos arquiteturais. Transformações verticais mapeam estes modelos intermediários
em modelos arquiteturais. As atividades relacionadas ao projeto arquitetural envolvem
seleção e aplicação de padrões arquiteturais que melhor satisfaçam aos requisitos não
funcionais. Em nosso trabalho, modelos de requisitos são descritos usando i* (iStar), uma
linguagem de modelagem orientada a objetivos definida em termos de atores estratégicos e
dependências sociais entre eles. Enquanto que modelos arquiteturais são descritos usando
linguagem de descrição arquitetural Acme que fornece um framework estrutural simples
para representar arquitetura. Requisitos não funcionais são usados para selecionar entre
soluções arquiteturais e determinar os padrões arquiteturais que são aplicados. Dois casos
de estudos são usados para mostrar a viabilidade da nossa abordagem: sistema de
recomendação Web e um sistema de informação Web. / Requirements engineering (RE) and software architecture design (SAD) are initial activities
of a software development process. Since current software systems present increasing
complexity, diversity and longevity, their development must consider the use of proper
methods and modeling languages both for RE and SAD. A great challenge, in this context,
is the development of systematic methods for designing architectures that satisfy
requirements specifications. Besides, with the widely use of iterative and incremental
software development processes as the de facto standard, a strong integration between RE
and SAD activities can facilitate traceability and the propagation of changes between the
models produced in these activities. However, many steps toward generating architecture
models from requirements models are driven by intuition and architectural knowledge.
This thesis presents STREAM (Strategy for Transition between Requirements models and
Architectural Models) that is a systematic process based on model transformations to
generate architectural models from requirements models and includes horizontal and
vertical transformations rules. The horizontal transformations are applied to the
requirements models resulting in intermediary requirements models closer to architectural
models. Vertical transformations map these intermediary models into architectural models.
The activities related to architectural design involves the selection and application of
architectural patterns that best satisfy non-functional requirements. In our process,
requirements models are described using the i* (iStar), a goal oriented modeling language
defined in terms of strategic actors and social dependencies among them. Whereas
architectural models are described using the Acme ADL which provides a simple structural
framework for representing architectures. Non-functional requirements are used to select
among architectural solutions and determine the architectural patterns that are applied.
Two real case studies are used to show the feasibility of our process: a web-based
recommendation system and a web-based information system.
|
2 |
[en] A BLUEPRINT-BASED APPROACH FOR PRIORITIZING AND RANKING CRITICAL CODE ANOMALIES / [pt] UMA ABORDAGEM BASEADA EM BLUEPRINTS PARA PRIORIZAÇÃO E CLASSIFICAÇÃO DE ANOMALIAS DE CÓDIGO CRÍTICASEVERTON TAVARES GUIMARAES 17 January 2017 (has links)
[pt] Sistemas de software estão evoluindo frequentemente devido a diversas requisições de mudanças. A medida que o software evolui, seu tamanho e complexidade aumentam, e consequentemente, sua arquitetura tende a se degradar. Sintomas de degradação arquitetural são por muitas vezes uma consequência direta da inserção progressiva de anomalias de código. Uma anomalia de código é uma estrutura da implementação recorrente que possivelmente indica problemas mais severos no projeto arquitetural. Anomalia de código é considerada crítica quando ela está relacionada problemas estruturais na arquitetura do software. Sua criticidade origina-se da sua influência negativa em uma ampla gama de requisitos não-funcionais. Por exemplo, a presença e anomalias e código críticas dificulta a manutenibilidade e software., ex. uma grande refatoração pode ser necessária para remover um problema arquitetural. Diversas abordagens tem sido propostas para a detecção de anomalias em sistemas de software, mas nenhuma delas suporta eficientemente a priorização e classificação de anomalias de código críticas de acordo com seu impacto na arquitetura. O presente trabalho investiga como a priorização e classificação dessas anomalias críticas de código pode se melhorado com o uso de blueprints arquiteturais. Blueprints arquiteturais são providos pelo arquiteto de software desde estágios iniciais de desenvolvimento do sistema. Blueprints são modelos de projeto informais normalmente definidos para capturar e comunicar as principais decisões de projeto arquitetural. Embora blueprints normalmente sejam incompletos e inconsistentes com respeito a implementação do sistema, eles podem contribuir para o processo de priorização e classificação de anomalias de código críticas. Com o intuito de alcançar nossos objetivos de pesquisa, um conjunto de estudos empíricos foram realizados. O trabalho também propõe e avalia um conjunto de heurísticas para auxiliar desenvolvedores na priorização e classificação de anomalias de código em 3 sistemas de software. Os resultados mostraram uma acurácia média de mais de 60 porcento na priorização e classificação de anomalias de código associadas com problemas arquiteturais nesses sistemas. / [en] Software systems are often evolving due to many changing requirements. As the software evolves, it grows in size and complexity, and consequently, its architecture design tends to degrade. Architecture degradation symptoms are often a direct consequence of the progressive insertion of code anomalies in the software implementation. A code anomaly is a recurring implementation structure that possibly indicates deeper architectural design problems. Code anomaly is considered critical when it is related with a structural problem in the software architecture. Its criticality stems from its negative influence on a wide range of non-functional requirements. For instance, the presence of critical code anomalies hinders software aintainability, i.e. these critical anomalies require wide refactoring in order to remove an architectural problem. Symptoms of architecture degradation have often to be observed in the source code due to the lack of an explicit, formal representation of the software architecture in a project. Many approaches are proposed for detecting code anomalies in software systems, but none of them efficiently support the prioritization and ranking of critical code anomalies according to their architecture impact. Our work investigates how the prioritization and ranking of such critical code anomalies could be improved by using blueprints. Architecture blueprints are usually provided by software architects since the early stages of the system development. Blueprints are informal design models usually defined to capture and communicate key architectural design decisions. Even though blueprints are often incomplete and inconsistent with respect to the underlying implementation, we aim to study if their use can contribute to improve the processes of prioritizing and ranking critical code anomalies. Aiming to address these research goals, a set of empirical studies has been performed. We also proposed and evaluated a set ofheuristics to support developers when prioritizing and ranking code anomalies in 3 software systems. The results showed an average accuracy higher than 60 percent when prioritizing and ranking code anomalies associated with architectural problems in these systems.
|
3 |
Interpretação e disseminação de contexto: filtragem semântica, projeto arquitetural e estudo de caso em saúde / Context reasoning and dissemination: semantic filtering, architectural design and case study in healthMaranhão, Guilherme Melo e 06 May 2015 (has links)
Submitted by Cássia Santos (cassia.bcufg@gmail.com) on 2015-10-23T12:11:54Z
No. of bitstreams: 2
Dissertação - Guilherme Melo e Maranhão - 2015.pdf: 2879073 bytes, checksum: 25e096adcb3251cd2153a4b4c5e41a3a (MD5)
license_rdf: 23148 bytes, checksum: 9da0b6dfac957114c6a7714714b86306 (MD5) / Approved for entry into archive by Luciana Ferreira (lucgeral@gmail.com) on 2015-10-23T13:29:49Z (GMT) No. of bitstreams: 2
Dissertação - Guilherme Melo e Maranhão - 2015.pdf: 2879073 bytes, checksum: 25e096adcb3251cd2153a4b4c5e41a3a (MD5)
license_rdf: 23148 bytes, checksum: 9da0b6dfac957114c6a7714714b86306 (MD5) / Made available in DSpace on 2015-10-23T13:29:49Z (GMT). No. of bitstreams: 2
Dissertação - Guilherme Melo e Maranhão - 2015.pdf: 2879073 bytes, checksum: 25e096adcb3251cd2153a4b4c5e41a3a (MD5)
license_rdf: 23148 bytes, checksum: 9da0b6dfac957114c6a7714714b86306 (MD5)
Previous issue date: 2015-05-06 / Context-aware computing investigates how to seamlessly enable the interaction among
computing devices and the environment, or context, in which they are located in. The literature
has defined the life cycle of context data as composed of four phases: acquisition,
modelling, reasoning and dissemination. These latter two phases have been strongly influenced
by the heterogeneity of published data, as a consequence of the increasing deployment
of sensors. A great challenge reported in the literature has been the development of
mechanisms for handling and reasoning about sensor data, and also for notifying contextaware
applications in an efficient and relevant manner. Aiming to solve this problem, this
research focuses on a new approach for semantic context reasoning and filtering in accordance
with design principles recommended by the literature. As a result of this work,
the main contributions include an extensible and maintainable mechanism for semantic
context filtering; the architectural model of a context reasoning component, called Hermes
Interpreter (HI); the Hermes Base component, which exposes an API for accessing a
publish-subscribe-based communication middleware; and HI’s functional validation and
performance evaluation in a simulated scenario of vital signs monitoring in Intensive Care
Units and wards. This research demonstrated the efficiency of the behaviour of the semantic
filtering mechanism for end users applications. Besides, by increasing the number of
subscribers, it was observed that the response time was acceptable in almost all experiments.
Despite this, it was also verified the high cost of the semantic filtering processing
in comparison with pure context reasoning activities. Regarding the HI component’s architectural
design, this work recommends it as a reusable artifact for researches on the
subject of context reasoning. / A computação sensível a contexto é a área da Ciência da Computação que estuda os meios
para possibilitar a interação entre dispositivos computacionais e o ambiente, ou contexto,
em que estão inseridos. Para promover essa interação, a literatura define quatro etapas para
o ciclo de vida da informação de contexto: aquisição, modelagem, interpretação e disseminação.
Dentre essas etapas, as de interpretação e disseminação têm sido fortemente
impactadas pela heterogeneidade dos dados publicados, resultante da crescente implantação
de sensores. Criar mecanismos para manipular e interpretar essas informações e
depois notificá-las de maneira eficiente e com relevância para as aplicações sensíveis a
contexto tem sido um desafio reportado pela ciência. Diante do problema apresentado,
esse trabalho objetiva alinhar os princípios de projeto recomendados pela literatura com
uma proposta de abordagem para interpretação e filtragem de contexto fundamentados
em modelagem contextual semântica. Portanto, as principais contribuições deste trabalho
incluem um mecanismo extensível e manutenível de filtragem semântica de contexto;
o modelo arquitetural de um componente interpretador de contexto, denominado Hermes
Interpreter, desenvolvido a partir de princípios de projeto defendidos da literatura; o componente
Hermes Base, que expõe API de acesso para um middleware de comunicação,
que opera sob o paradigma publish/subscribe; e por último, validações funcionais e de
desempenho do Hermes Interpreter em cenário de simulação de monitoramento de sinais
vitais de pacientes em UTIs e enfermarias. Por meio delas, comprovou-se a eficiência do
mecanismo de filtragem para notificar de maneira precisa e eficiente os dados relevantes
para os usuários. Além disso, observou-se que, devido a características de implementação,
por maior que seja a quantidade de assinantes, o tempo de resposta foi aceitável em
praticamente todos os experimentos. Apesar disso, constatou-se o alto custo do processamento
de filtros em comparação às atividades puramente de interpretação de contexto.
Por último, o projeto arquitetural do componente constitui um artefato reutilizável para
pesquisas na área de intepretação de contexto.
|
4 |
Projeto arquitetural de serviços de representação e agregação de informações de contexto baseadas em ontologiasMarques, Guilherme Silva 05 September 2016 (has links)
Submitted by Cássia Santos (cassia.bcufg@gmail.com) on 2016-09-23T12:05:51Z
No. of bitstreams: 2
Dissertação - Guilherme Silva Marques - 2016.pdf: 2715063 bytes, checksum: 3bafbdca7ace292dda958959884eaeb3 (MD5)
license_rdf: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5) / Approved for entry into archive by Luciana Ferreira (lucgeral@gmail.com) on 2016-09-26T12:00:37Z (GMT) No. of bitstreams: 2
Dissertação - Guilherme Silva Marques - 2016.pdf: 2715063 bytes, checksum: 3bafbdca7ace292dda958959884eaeb3 (MD5)
license_rdf: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5) / Made available in DSpace on 2016-09-26T12:00:37Z (GMT). No. of bitstreams: 2
Dissertação - Guilherme Silva Marques - 2016.pdf: 2715063 bytes, checksum: 3bafbdca7ace292dda958959884eaeb3 (MD5)
license_rdf: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5)
Previous issue date: 2016-09-05 / Dey et al. [10] define context as the information set that can be used to characterize the status of an entity (e.g. person, place or object relevant to the user-application interaction). Perera et al. [36] propose a context information life cycle in 4 phases: acquisition, modeling, reasoning and dissemination. Context modeling consists in representing the real world in computing and, according to Bettini et al. [2], a good information context modeling mitigates the complexity of context-aware applications. In the context of this work, a systematic review demonstrated that the literature has focused on context information modeling, but with less emphasis on the architectural project. The main problem addressed on this work is the creation and evaluation of architectural projects that work together on the context modeling phase of a Semantic Context-Aware System (SCAS), which uses ontologies as main information modeling technique. This work proposes an architectural solution to two relevant services of the ontology-based context modeling phase: the former represents context information collected through sensors, and the latter aggregates context information represented by the former for a same individual or entity. Both architectural designs were built using well-known architectural styles and design patterns, as well as were evaluated against architectural designs of similar projects. As a result, the main contributions include the architectural designs of ontology-based services for context representation and aggregation as references for the development of SCAS in terms of the context modeling phase. / Contexto é o conjunto de informações que pode ser utilizado para caracterizar a situação de uma entidade (pessoa, lugar ou objeto relevante para a interação usuário-aplicação) [10]. Perera et al. [36] propõem um ciclo de vida para a informação de contexto composto por 4 etapas: aquisição, modelagem, raciocínio e disseminação. A etapa de modelagem de contexto consiste em representar o mundo real na computação. Segundo Bettini et. al. [2] “uma boa modelagem de informação de contexto reduz a complexidade das aplicações sensíveis a contexto”. Um Sistema Sensível ao Contexto Semântico (SSCS) é um sistema computacional que utiliza ontologias que, segundo Gruber [15], é “uma especificação explícita de uma conceitualização”, e consistem em uma das formas de modelar as informações de contexto. Como resultado de uma revisão sistemática feita pelo autor deste trabalho evidenciou que na literatura o foco dos trabalhos tem sido na modelagem da informação de contexto com menor enfoque no uso de projeto arquitetural. Com base nisso, o principal problema endereçado neste trabalho é a criação e avaliação dos projetos arquiteturais que trabalhem em conjunto na modelagem do ciclo de vida de contexto em SSCS. Objetiva-se elaborar uma solução arquitetural para sistemas sensíveis ao contexto semântico baseado em ontologias. Propôs-se neste trabalho o projeto arquitetural para o software de representação ontológica de contexto e para o software de agregação ontológica de contexto. O primeiro representa as informações coletadas através de sensores e o segundo agrega as informações representadas para um mesmo indivíduo ou entidade. Realizou-se, assim, a avaliação dos projetos arquiteturais propostos e explana-se sobre os resultados obtidos, comparando-os com outros projetos existentes na literatura. Com a obtenção dos resultados propostos, espera-se contribuir com a literatura, apresentando projetos arquiteturais e avaliações destes, auxiliando, assim, o desenvolvimento de SSCS no que se refere à modelagem do ciclo de vida de contexto.
|
5 |
Systematic design of adaptive systems: control-based frameworkPIMENTEL, João Henrique Correia 27 February 2015 (has links)
Submitted by Haroudo Xavier Filho (haroudo.xavierfo@ufpe.br) on 2016-03-11T14:00:27Z
No. of bitstreams: 2
license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5)
tese bdtd - jhcp.pdf: 10794622 bytes, checksum: dc412b23838ca5016586548c59128658 (MD5) / Made available in DSpace on 2016-03-11T14:00:27Z (GMT). No. of bitstreams: 2
license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5)
tese bdtd - jhcp.pdf: 10794622 bytes, checksum: dc412b23838ca5016586548c59128658 (MD5)
Previous issue date: 2015-02-27 / CAPES / A number of approaches have been proposed for eliciting, modeling and analyzing requirements for adaptive systems. However, there is still a large gap between such requirements specifications and the actual implementation of adaptive systems. In this thesis we investigate the interplay between requirements and architecture for the development of adaptive systems. Furthermore, we propose the Multi-Level Adaptation for Software Systems (MULAS) framework. This framework is centered on the iterative and incremental refinement of a goal model, towards the creation of a Design Goal Model. This model can then be used at runtime to drive adaptation on a system that is properly instrumented. Moreover, the framework includes a toolsupported process for generating statechart behavioral models from a Design Goal Model. The GATO tool (Goal TO Architecture) allows the creation of the different artifacts of the process, including the automatic generation of base statecharts. The suitability of this approach for developing adaptive systems is illustrated by means of case studies. Empirical results show that the techniques developed to translate enriched goal models onto statecharts are scalable, i.e. they present a good performance even with large models. Furthermore, an experiment with software engineering students indicates that the adoption of this framework by non-experts is feasible and beneficial. / Um grande número de abordagens foram propostas para elicitar, modelar e analisar requisitos para sistemas adaptativos. No entanto, ainda existe uma grande distância entre a especificação de requisitos e a implementação de um sistema adaptativo. Nesta tese foi investigada a interrelação entre requisitos e arquitetura para o desenvolvimento de sistemas adaptativos. Mais especificamente, nós propomos o framework Adaptação Multi-Nível para Sistemas de Software (MULAS, do inglês Multi-Level Adaptation for Software Systems). Este framework é focado no refinamento iterativo e incremental de um modelo de objetivos, em direção à criação de um Modelo de Objetivos de Design (DGM, do inglês Design Goal Model). Este modelo pode então ser utilizado em tempo de execução para se gerenciar a adaptação em um sistema devidamente instrumentado. Ademais, o framework inclui um processo para gerar diagramas de estados a partir do Modelo de Objetivos de Design. Uma ferramenta desenvolvida especificamente para apoiar este framework (GATO, do inglês, Goal TO Architecture) permite criar os diferentes artefatos do processo, incluindo a geração automática de diagrama de estados base. A adequação desta abordagem ao desenvolvimento de sistemas adaptativos é ilustrada através de estudos de caso. Resultados empíricos mostram que as técnicas desenvolvidas para criar diagramas de estados a partir do modelo de objetivos com elementos de design apresentam boa escalabilidade, i.e. possui bom desempenho mesmo no caso de modelos extensos. Adicionalmente, um experimento com estudantes de engenharia de software indica que a adoção do framework por não-especialistas não é apenas possível como também é benéfica.
|
Page generated in 0.0451 seconds