75 results on '"Arquitetura de software"'
Search Results
2. Abordagem para Sistemas de Software de Crescimento Rápido utilizando uma arquitetura por camadas: Escalar uma arquitetura com o mínimo de refactoring.
- Author
-
Correia Pereira, João Filipe and Rosado da Cruz, A. M.
- Abstract
Copyright of CISTI (Iberian Conference on Information Systems & Technologies / Conferência Ibérica de Sistemas e Tecnologias de Informação) Proceedings is the property of Conferencia Iberica de Sistemas Tecnologia de Informacao and its content may not be copied or emailed to multiple sites or posted to a listserv without the copyright holder's express written permission. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)
- Published
- 2023
3. Architectural Diagram for Educational Games on Agile Methodologies.
- Author
-
Pimenta Aragão, Paulo André and Gratão de Souza, Rogéria Cristiane
- Subjects
COMPUTER software development ,SOFTWARE engineering ,UNDERGRADUATES ,COMPUTER programming ,EDUCATIONAL games - Abstract
Copyright of CISTI (Iberian Conference on Information Systems & Technologies / Conferência Ibérica de Sistemas e Tecnologias de Informação) Proceedings is the property of Conferencia Iberica de Sistemas Tecnologia de Informacao and its content may not be copied or emailed to multiple sites or posted to a listserv without the copyright holder's express written permission. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)
- Published
- 2021
4. Recuperación y clasificación de arquitecturas software en GitHub para reutilización, soportado por ontologías.
- Author
-
Ordóñez, Hugo and Ordóñez, Camilo
- Subjects
- *
PRECISION (Information retrieval) , *SOFTWARE architecture , *NATURAL language processing , *WEB-based user interfaces , *ONTOLOGIES (Information retrieval) , *INSTITUTIONAL repositories - Abstract
However, searching for software components on GitHub is currently inefficient, as searches are based on text strings. This paper introduces OntoGitHubSearch as a search model that allows the retrieval and classification of software architectures stored on GitHub. This proposed model retrieves all repositories that match the searched architectural concepts; to provide the search with semantics and context, it implements the domainspecific ontology Architecture Ontology Version 2.0, as well as a natural language processing module to analyze the text in the repository. The repositories are automatically identified and classified according to the text and concepts found in their descriptions. To evaluate the proposed model, we developed a web application called WebOntoGitHubSearch, which allows interaction with users during the search process. The evaluation of the model was carried out with the participation of software developers and architects from several colombian businesses. Information retrieval metrics such as Precision at k. The results obtained during the evaluation process are promising and allow verifying the effectiveness of the proposed model. [ABSTRACT FROM AUTHOR]
- Published
- 2021
- Full Text
- View/download PDF
5. Aumentar as funcionalidades de uma aplicação monolítica recorrendo a micro-serviços
- Author
-
Pereira, João Filipe Correia and Cruz, António Miguel
- Subjects
Monolítica ,Migração ,Modernização de sistemas legados ,Microservices ,Modernization of legacy systems ,Software architecture ,Arquitetura de software ,Monolithic ,Micro-serviços ,Migration - Abstract
Mestrado em Engenharia Informática na Escola Superior de Tecnologia e Gestão do Instituto Politécnico de Viana do Castelo O constante crescimento do número de utilizadores e de novas funcionalidades das aplicações, por exigência do mercado, traz desafios ao crescimento das mesmas, em especial às aplicações monolíticas. Com o aumento de utilizadores a aplicação pode não conseguir responder a todos os pedidos que lhe são solicitados. Com o crescimento de funcionalidades a aplicação fica mais difícil de manter e o desenvolvimento é mais lento. Os micro-serviços apresentam-se como uma alternativa viável, uma vez que dividem uma aplicação monolítica em várias aplicações pequenas, o que faz com que a velocidade de desenvolvimento aumente e que a aplicação escale mais facilmente. Existem aplicações monolíticas legadas, com bastantes anos de desenvolvimento e a urgência que o mercado tem por novas funcionalidades impossibilita que o processo de desenvolvimento das mesmas pare para migrar uma aplicação para micro-serviços. Contudo, continuar a desenvolver nessas aplicações monolíticas fará com que a qualidade de serviço dessas aplicações se degrade com o passar do tempo. Nesta dissertação, é apresentada uma solução para resolver este tipo de problema. A solução passa pela implementação de uma arquitetura híbrida. As novas funcionalidades serão implementadas numa arquitetura de micro-serviços, enquanto as funcionalidades existentes continuarão na arquitetura monolítica existente. À medida que a qualidade de serviço da parte monolítica da aplicação for diminuindo, as funcionalidades que mais impactarem o desempenho serão migradas para a arquitetura de micro-serviços. The constant growth in the number of users and new functionalities of the applications, as required by the market, brings challenges to their growth, especially to monolithic applications. With the increase in users, the application may not be able to respond to all requests that are requested. With the growth of features, the application becomes more difficult to maintain and development is slower. Microservices are a viable alternative, as they divide a monolithic application into several small applications, which increases development speed and makes the application scale more easily. There are legacy monolithic applications, with many years of development and the urgency that the market has for new functionalities makes it impossible for their development process to stop migrating an application to micro-services. However, continuing to develop these monolithic applications will cause the quality of service of these applications to degrade over time. In this dissertation, a solution to solve this type of problem is presented. The solution involves implementing a hybrid architecture. The new features will be implemented in a micro-services architecture, while the existing features will continue in the existing monolithic architecture. As the quality of service of the monolithic part of the application decreases, the functionalities that most impact performance will be migrated to the microservices architecture.
- Published
- 2023
6. Padrões de migração de sistemas legados para arquitetura baseada em microsserviços.
- Author
-
de Carvalho Cintra, Rafael and Vendramel, Wilson
- Subjects
ARCHITECTURAL style ,LEGACY systems ,SOFTWARE architecture ,RELEVANCE ,COMPUTER software - Abstract
Copyright of Computing & System Journal (C&S) / Revista de Sistemas e Computação (RSC) is the property of FACS Servicos Educacionais S.A. and its content may not be copied or emailed to multiple sites or posted to a listserv without the copyright holder's express written permission. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)
- Published
- 2019
- Full Text
- View/download PDF
7. Aspectos iniciais modelados com uma extensão da SYSML
- Author
-
Oliveira, Kênia Santos de, Soares, Michel dos Santos, Maia, Marcelo de Almeida, and Valente, Marco Túlio de Oliveira
- Subjects
Programação orientada a aspectos ,Requirements Engineering ,SysML (Linguagem de modelagem padrão) ,Aspectos ,Software Architecture ,Software - Arquitetura ,Engenharia de requisitos ,CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO [CNPQ] ,Arquitetura de software ,Aspect ,SysML - Abstract
Aspect Oriented Programming has been proposed in order to handle crosscutting concerns in an ecient manner. Initial proposals in this area have been applied to the source code. Subsequently, aspects were considered to be implemented in other phases of software development such as Requirements Engineering and Software Architecture. There are several advantages in identifying aspects at the requirements level and architecture level such as detecting conicts of interest, improving the requirements modularity, reducing costs of software maintenance and preserving the notion of aspects in software development process ensuring traceability. Therefore, the purpose of this work is to develop a model to represent aspects at the requirements level and the architecture level. The requirements model denes the activities of identication of aspect requirements, both functional and non-functional, separation and composition of aspect requirements and identication of conict between aspect requirements. Since dierent stakeholders need to view the system from dierent perspectives, the architecture model allows to represent dierent views considering the representation with aspects. The proposed views are structural, use case + requirements and development. Compared to other analysed approaches, the proposed models in this work represent important characteristics that others models do not represent, such as maintaining traceability of aspects between requirements and the architecture level. In order to represent the models, extensions to the SysML modeling language were proposed. A Programação Orientada a Aspectos foi proposta com o objetivo de manipular interesses transversais de uma maneira eciente. Propostas iniciais nesta área foram aplicadas no código fonte. Posteriormente, aspectos foram considerados para serem aplicados em outras fases do desenvolvimento de software tais como Engenharia de Requisitos e Arquitetura de Software. Há várias vantagens em identicar aspectos no nível de requisitos e no nível arquitetural, tais como detectar inicialmente conitos de interesses, melhorar a modularidade dos requisitos, reduzir custos de manutenção de software e preservar a noção de aspectos no processo de desenvolvimento de software garantindo rastreabilidade. Portanto, o propósito desse trabalho é desenvolver um modelo para representar aspectos no nível de requisitos e no nível arquitetural. O modelo de requisitos dene as atividades de identicação de requisitos aspectuais tanto de origem funcional quanto não-funcional, separação e composição de requisitos e requisitos aspectuais e identicação de conitos entre requisitos aspectuais. Uma vez que diferentes stakeholders necessitam visualizar o sistema a partir de diferentes perspectivas, o modelo de arquitetura permite representar diferentes visões considerando a representação com aspectos. As visões propostas são a estrutural, a de casos de uso + requisitos, e a de desenvolvimento. Em comparação com outras abordagens analisadas, os modelos propostos nesse trabalho cobrem importantes características que os outros modelos não cobrem, como por exemplo, manter a rastreabilidade de aspectos entre os níveis de requisitos e de arquitetura. Para representar os modelos, extensões da linguagem de modelagem SysML foram propostas. Mestre em Ciência da Computação
- Published
- 2022
- Full Text
- View/download PDF
8. Development of a marketing automation platform to integrate online e-commerce services
- Author
-
Gonçalves, Diogo Alexandre Domingues, Machado, José Manuel, and Universidade do Minho
- Subjects
Software architecture ,Arquitetura de software ,Marketing Automation ,e-commerce ,Cloud computing ,Marketing Automático ,Serviços web ,Representational state transfer (REST) ,e-comércio ,Web services ,Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática - Abstract
Dissertação mestrado integrado em Informatics Engineering, E-commerce is continuously expanding which increases market competitiveness. With the increase of plat-forms arrives a need to stand out from the competition, thus creating the necessity to improve marketing strate-gies. Marketing strategies, such as creating personalized birthday emails or registration welcome-emails cannot be done in the traditional way. This idea of creating custom services like sending user-specific emails creates the need for a marketing automation solution. Following this need, its proposed the development of a marketing automation platform with integration with a machine learning engine. This system will be hosted on a cloud and will automate marketing campaigns and provide dents with results from machine learning models., O comércio electrónico está em constante expansão originando maior competitividade no mercado. Com o aumento do número destas plataformas surge a necessidade de se diferenciar da concorrência, criando assim a necessidade de melhorar as estratégias de marketing. As estratégias de marketing como a criação de um email personalizado para aniversários ou emails de boas-vindas após o registo não podem ser feitas da forma tradicional Essa ideia de criar serviços personalizados, como o envio de emails customizados para os utilizadores, cria a necessidade de uma solução de automatização o marketing. Seguindo esta necessidade, proprõe-se o desenvolvimento de uma plataforma de marketing automático com integração com um motor de machine learning. Este sistema será hospedado numa nuvem e terá capacidade de automatizar campanhas de marketing e fornecer aos clientes resultados dos modelos de machine learning.
- Published
- 2022
9. Avaliação de Impacto do SaaS em Contextos Empresarias.
- Author
-
Araújo, Virgínia Maria and Pérez Cota, Manuel
- Abstract
Copyright of CISTI (Iberian Conference on Information Systems & Technologies / Conferência Ibérica de Sistemas e Tecnologias de Informação) Proceedings is the property of Conferencia Iberica de Sistemas Tecnologia de Informacao and its content may not be copied or emailed to multiple sites or posted to a listserv without the copyright holder's express written permission. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)
- Published
- 2016
10. An Investigation of Knowledge Gaps of Graduate Students Regarding Safety-Critical Systems Development: A Controlled Experiment
- Author
-
Ana Isabella Muniz Leite, Lucas Lagoa, Samuel Lopes, Rosana Braga, Pablo Oliveira Antonino, Elisa Yumi Nakagawa, and Publica
- Subjects
safety-critical systems ,software architecture ,software engineering education ,experimental research ,Electrical and Electronic Engineering ,ARQUITETURA DE SOFTWARE ,Education - Abstract
Contribution: This article details the conduction of an experiment to investigate the knowledge that computer science graduate students have about safety-critical systems development, in particular, safety requirements specifications. Future research directions are also discussed. Background: Safety-critical systems have been increasingly used in many critical domains, requiring a rigorous development process as well as certification by regulatory agencies. However, it is not clear whether computer science courses deliver adequate education for students to develop such systems. Experimental research with these students could provide evidence on whether they have the minimum knowledge necessary to develop safety-critical systems. This type of research presents several advantages, such as reproducibility, high-level control, and specific conclusions, but has not been widely adopted to verify learning issues. Research Question: How to measure the understanding of students on safety-critical systems development?
- Published
- 2022
11. Difficulties and challenges in the incorporation of architectural practices.
- Author
-
Hernández Pérez, Flor de Maria and Algeria, Julio Ariel Hurtado
- Subjects
SOFTWARE architecture ,COMPUTER software development - Abstract
Copyright of Sistemas & Telemática is the property of Universidad ICESI and its content may not be copied or emailed to multiple sites or posted to a listserv without the copyright holder's express written permission. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)
- Published
- 2016
- Full Text
- View/download PDF
12. Una estrategia de integración entre planos CAD y Realidad Virtual: estudio de caso aplicado a subestaciones de energía eléctrica
- Author
-
Barreto Junior, Camilo de Lellis, Silva, Paulo Camargos, Silva, Alexandre Carvalho, Lamounier Junior, Edgard Afonso, and Cardoso, Alexandre
- Subjects
Realidad virtual ,Realidade Virtual ,Software architecture ,Integração ,Integration ,Computer-aided design ,Modelagem 3D ,Integración ,Arquitetura de Software ,modelado 3D ,Virtual reality ,Arquitectura de software ,3D modeling - Abstract
Many sectors have benefited from Virtual Reality (VR) technology, such as industries in the application of engineering design review processes. It is widely used in operator training, architecture, engineering, education, simulation and prototyping, as it provides a high level of immersion and fidelity in the representation of information. The current context of the integration between Computer-Aided Design (CAD) and VR presents development and maintenance methods that are too complex, requiring manual interventions making the transfer of information difficult, expressing an immature state of technology. Given this scenario, this work proposes a methodology for integration of CAD and VR floor plans through a software architecture that makes it possible to process the union between the technologies automatically. An research was conducted for related works in order to obtain the state of the art and the technologies in current use, in addition to pointing out the contribution of the proposed methodology. A case study was applied to electric power substations in a Research and Development (R&D) project. Integration tests, Virtual Environment (AV) reconstruction and performance tests were executed. The methodology showed good results as with the integration of CAD floor plans and the Virtual Reality software. In this paper, it is demonstrated that it is possible to adapt the two-dimensional CAD space for representation in a three-dimensional AV, facilitating and improving the design process of virtual substations. Also, the reconstruction process showed a satisfactory performance, completing the tasks in shorter times without manual interventions. Muchos sectores se han beneficiado de la tecnología de Realidad Virtual (RV), como, por ejemplo, las industrias en la aplicación de procesos de revisión de diseños de ingeniería. Se atribuye ampliamente a la formación de operadores, arquitectura, ingeniería, educación, simulación y creación de prototipos, ya que proporciona un alto nivel de inmersión y fidelidad en la representación de la información. El contexto actual de la integración entre el Computer-Aided Design (CAD) y la VR presenta métodos de desarrollo y mantenimiento demasiado complejos, que requieren intervenciones manuales que dificultan la transferencia de información, expresando un estado inmaduro de la tecnología. Ante este escenario, el trabajo propone una metodología de integración entre planos CAD y VR a través de una arquitectura de software que permite realizar la unión entre las tecnologías de forma automática. Se realizó un análisis en trabajos relacionados con el fin de obtener el estado del arte y las tecnologías utilizadas, además de señalar el aporte de la metodología propuesta. A través de un caso de estudio aplicado a subestaciones eléctricas en un proyecto de Investigación y Desarrollo (I+D), se realizaron pruebas de integración, reconstrucción de Ambiente Virtual (AV) y pruebas de desempeño. La metodología arrojó excelentes resultados, la integración entre planos CAD y el software de Realidad Virtual demostró que es posible adaptar el espacio CAD bidimensional para su representación en un AV tridimensional, facilitando y mejorando el proceso de diseño de subestaciones virtuales. Asimismo, el proceso de reconstrucción presentó un desempeño satisfactorio, completando las tareas en tiempos cortos y sin necesidad de procesos manuales de usuario. Muitos setores têm se beneficiado com a tecnologia de Realidade Virtual (RV), como, por exemplo, as indústrias na aplicação em processos de revisão de desenhos de engenharia. É amplamente atribuída ao treinamento de operadores, arquitetura, engenharia, educação, simulação e prototipagem, pois proporciona um alto nível de imersão e fidelidade na representação das informações. O contexto atual sobre a integração entre Computer-Aided Design (CAD) e RV apresenta métodos de desenvolvimento e manutenção demasiadamente complexos, exigindo intervenções manuais que dificultam a transferência das informações, expressando um estado imaturo da tecnologia. Diante deste cenário, o trabalho propõe uma metodologia de integração entre plantas baixas CAD e RV através de uma arquitetura de software que possibilita realizar a união entre as tecnologias de forma automática. Foi realizada uma análise em trabalhos correlatos com a finalidade de obter o estado da arte e as tecnologias que estão sendo utilizadas, além de apontar a contribuição da metodologia proposta. Através de um estudo de caso aplicado a subestações de energia elétrica em um projeto de Pesquisa e Desenvolvimento (P&D), foi realizado testes de integração, reconstrução do Ambiente Virtual (AV) e desempenho. A metodologia apresentou excelentes resultados, a integração entre plantas baixas CAD e o software de Realidade Virtual demonstrou ser possível adequar o espaço bidimensional CAD para representação em um AV tridimensional, facilitando e melhorando o processo de concepção de subestações virtuais. Também, o processo de reconstrução apresentou um desempenho satisfatório, concluindo as tarefas em tempos curtos e sem a necessidade de processos manuais de usuários.
- Published
- 2021
13. EventChain: uma proposta de estilo arquitetural para sistemas orientados a cadeia de eventos na área financeira
- Author
-
Luz, Maicon Azevedo da and Oliveira, Kleinner Silva Farias de
- Subjects
Blockchain ,Software architecture ,Software architectural style ,Arquitetura de software ,Event driven architecture ,Ciências Exatas e da Terra::Ciência da Computação [ACCNPQ] ,Estilo arquitetural de software ,Microsserviços ,Orientado a eventos ,Microservice - Abstract
Submitted by Anna Barbara Alves Beraldine (annabarbara@unisinos.br) on 2021-11-19T13:05:03Z No. of bitstreams: 1 Maicon Azevedo da Luz._.pdf: 10881784 bytes, checksum: de89dfa061a869fc51d30771d083666a (MD5) Made available in DSpace on 2021-11-19T13:05:03Z (GMT). No. of bitstreams: 1 Maicon Azevedo da Luz._.pdf: 10881784 bytes, checksum: de89dfa061a869fc51d30771d083666a (MD5) Previous issue date: 2021-09-09 CAPES - Coordenação de Aperfeiçoamento de Pessoal de Nível Superior Estilos arquiteturais são importantes para engenharia pois são a ponte entre os requisitos e o design de implementação. Tem a função de expressar um conjunto de características de uma arquitetura de software, objetivando fornecer uma visão ampla da comunicação entre os componentes da arquitetura de software, facilitando o reuso e reduzindo a complexidade. Com o crescimento da área financeira, tais empresas empregaram diferentes estilos arquiteturais no desenvolvimento de software visando aumentar a reusabilidade, desempenho e a segurança. A literatura acerca do tópico, porém, carece de estudos que investiguem estilos arquiteturais modernos que possuam foco nas necessidades específicas das arquiteturas de software para o desenvolvimento de aplicações na área financeira, tais como escalabilidade, alta disponibilidade, consistência e integridade das informações. Além disso, em face do recente crescimento dessa área, torne o desenvolvimento de novas aplicações simples e robusto. Esta dissertação, portanto, apresenta o EventChain, o qual trata-se de um estilo arquitetural orientado a cadeia de eventos, que emprega o uso de comunicação assíncrona e Blockchain para o desenvolvimento de aplicações da área financeira. O estilo arquitetural proposto foi avaliado através de duas formas. A primeira sendo a construção de um protótipo com o objetivo de avaliar a viabilidade e demonstrar o seu funcionamento, e a segunda, a aplicação de um questionário de aceitação tecnológica para avaliar a aceitação do estilo arquitetural por profissionais da indústria. Os resultados obtidos mostram que o estilo arquitetural proposto é uma implementação viável, funcional e que atende aos requisitos de sistemas na área financeira. Por fim, conclui-se que o estilo arquitetural representa uma nova abordagem com grande potencial para facilitar o desenvolvimento de novos sistemas na área financeira, que endereça os requisitos específicos e torna flexível a implementação de novas aplicações. Architectural styles are important for engineering as they bridge the gap between requirements and implementation design. Its function is to express a set of features of a software architecture, aiming to provide a broad view of the communication between the components of the software architecture, facilitating reuse and reducing complexity. With the growth of the financial area, such companies employed different architectural styles in software development aiming to increase reusability, performance and security. The literature on the topic, however, lacks studies that investigate modern architectural styles that focus on the specific needs of software architectures for the development of applications in the financial area, such as scalability, high availability, consistency and integrity of information. Also, given the recent growth in this area, make developing new applications simple and robust. This dissertation, therefore, presents the EventChain, which is an architectural style oriented to the chain of events, which employs the use of asynchronous communication and Blockchain for the development of applications in the financial area. The proposed architectural style was evaluated in two ways. The first is the construction of a prototype in order to assess the feasibility and demonstrate its operation, and the second, the application of a technological acceptance questionnaire to assess the acceptance of the architectural style by industry professionals. The results obtained show that the proposed architectural style is a viable, functional implementation that meets the requirements of systems in the financial area. Finally, it is concluded that the architectural style represents a new approach with great potential to facilitate the development of new systems in the financial area, which addresses specific requirements and makes the implementation of new applications flexible.
- Published
- 2021
14. Uma abordagem de linhas de produtos de software para apoiar e-Science
- Author
-
Foschiani, Fernanda Yara dos Santos, 1983, Rubira, Cecília Mary Fischer, 1964, Braga, Rosana Teresinha Vaccare, Martins, Eliane, Universidade Estadual de Campinas. Instituto de Computação, Programa de Pós-Graduação em Ciência da Computação, and UNIVERSIDADE ESTADUAL DE CAMPINAS
- Subjects
Software engineering - Development ,Componente de software ,Software - Desenvolvimento ,Software architecture ,Component software ,Engenharia de linha de produto de software ,Arquitetura de software ,Software reengineering ,Reengenharia de software ,Software product line engineering - Abstract
Orientador: Cecília Mary Fischer Rubira Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação Resumo: Com o aumento da demanda por software no mercado, a fim de reduzir custos e esforço em desenvolvimento e reduzir o tempo de entrega de software, diversas técnicas vêm sendo utilizadas e entre elas estão as Linhas de Produtos de Software (LPS). Por outro lado, os recursos computacionais vêm sendo muito utilizados não são na indústria, mas também em ambientes de pesquisa, facilitando o compartilhamento de dados e serviços computacionais. Este contexto, em que a computação torna-se parte integrante e fundamental para o sucesso na realização de pesquisas científicas, é chamado de e-Science. A diversidade de programas, simuladores e dados computacionais envolvidos em experimentos levam a necessidade de ambientes que forneçam facilidades para o uso e combinação das tecnologias, como por exemplo, ambientes de workflows científicos. A solução proposta nesta dissertação é uma infraestrutura para a execução de workflows científicos, que permite a pesquisadores criarem seus fluxos de trabalho de maneira personalizada, podendo utilizar componentes disponibilizados pela equipe de desenvolvimento, assim como componentes criados por eles mesmos, independentemente da linguagem de programação utilizada. A base para esta infraestrutura é uma linha de produtos baseada em componentes, desenvolvida a partir de sistemas legados. O método proposto para o desenvolvimento da linha de produtos é apoiado pelo arcabouço da Reengenharia Orientada a Características, separado em quatro fases. A primeira fase, Engenharia Reversa do Sistema Legado, extrai informações do código legado a fim de entender o domínio da aplicação e coletar as características que deverão existir na linha de produtos. A segunda fase do método, Análise da LPS, refina o modelo de características obtido na fase anterior e, utilizando técnicas de modelagem do método PLUS, desenvolve artefatos de software baseados em casos de uso. A fase de Projeto da LPS, terceira fase, aplica o método FArM para obter um mapeamento do modelo de características para modelos de arquitetura de linha de produtos baseada em componentes e especifica as interfaces dos componentes, gerando assim a arquitetura final. A quarta e ultima fase trata do desenvolvimento da linha de produtos. Para o desenvolvimento dos componentes foi utilizado o padrão COSMOS* de componentização, e código legado. Foram realizados três estudos de caso: os dois primeiros para avaliar se a solução proxi posta é capaz de substituir o sistema legado e também avaliar o reuso de componentes, e o terceiro estudo para avaliar a capacidade de customização da linha de produtos, a partir da adição de um novo componente desenvolvido em MatLab. Os três estudos apresentaram resultados positivos, indicando que a solução proposta nesta dissertação facilita a modificação da linha de produtos, além de permitir aos pesquisadores a customização de fluxos de trabalho, auxiliando assim o processo de pesquisa científica Abstract: With the increasing demand for software in order to reduce development costs and effort, and to reduce the time-to-market, several techniques are being used, including the Software Product Line (SPL). Computational resources are commonly used in the research field, in order to facilitate data and computational services sharing. The context in which computing becomes a fundamental for the success of scientific research is called e-Science. The systems diversity, simulators and computational data involved in experiments leads to the necessity of environments that provide facilities for technology use and matching, for example the scientific workflow environment. The proposed solution in this thesis is a scientific workflow environment that allows the researchers to create their own personalized workflows, using components provided by the development team as well as components developed by themselves, regardless of the language being used. The basis for this workflow environment is a component based software product line, developed from legacy systems. The proposed method for the software product line development is supported by the Feature-oriented Reengineering framework, which is divided into four steps. The first one, SPL Reverse Engineering, extracts information about the legacy system in order to understand the application domain and collect the features that need to exist in the product line. The second step, SPL Analysis, refines the feature model obtained in the previous step and, using PLUS modeling techniques, develops software assets based on use cases. The SPL Project step, which is the third approach step, applies the FArM method to obtain a mapping of the feature model to architectural components, and specifies the components' interface, creating the final architecture. The last step is the product line development. For the components development we used the COSMOS* model and legacy code. We performed three case studies: two of them to evaluate if the product line is capable of replacing the legacy system and enhance components reuse, and the third one to evaluate the workflow customization capability, by the addition of a component developed in MatLab. All the case studies had a positive result, showing that the proposed solution of this ix thesis facilitates the product line architectures evolution and allows the researchers to customize their workflows, aiding the research process Mestrado Ciência da Computação Mestra em Ciência da Computação
- Published
- 2021
- Full Text
- View/download PDF
15. CosmosLoader
- Author
-
Gayard, Leonel Aguilar, 1983, Rubira, Cecília Mary Fischer, 1964, Gerosa, Marco Aurélio, Martins, Eliane, Universidade Estadual de Campinas. Instituto de Computação, Programa de Pós-Graduação em Ciência da Computação, and UNIVERSIDADE ESTADUAL DE CAMPINAS
- Subjects
Componente de software ,Software architecture ,Component software ,Arquitetura de software - Abstract
Orientador: Cecília Mary Fischer Rubira Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação Resumo: Nos últimos anos, o desenvolvimento baseado em componentes (DBC) e a arquitetura de software emergiram como disciplinas complementares para promover o reuso no desenvolvimento de software. O desenvolvimento baseado em componentes promove o desenvolvimento de componentes reutilizáveis e a formação de novos sistemas de software a partir da integração de componentes existentes. A arquitetura de um sistema de software descreve o sistema em termos de seus componentes arquiteturais, das propriedades destes e das conexões entre eles. Modelos de componentes possibilitam concretizar elementos de DBC como componentes e conectores a partir de conceitos tradicionais de desenvolvimento de software, como por exemplo, orientação a objetos e arquivos, de modo que um conjunto de classes e arquivos complementares podem formar um componente se seguirem as regras do modelo. A adequação a um modelo de componentes oferece benefícios para o sistema de software: por exemplo, o modelo de componentes EJB possibilita que um componente seja implantado em um contêiner e se beneficie do gerenciamento de segurança e transparência de localização oferecidos pelo contêiner; o modelo Cosmos estabelece regras para a criação de componentes baseados em conceitos de linguagens orientadas a objetos, como classes, interfaces e pacotes. Assim, a integração de componentes para a composição de um sistema de software de acordo com uma arquitetura e um modelo de componentes se torna uma atividade importante no desenvolvimento de um novo sistema de software. Uma configuração concreta é um conjunto de determinadas versões de componentes de software conectados de acordo com uma arquitetura. No entanto, observa-se que, se modelos facilitam a criação de componentes de software, ainda é necessário um esforço de desenvolvimento para integrar componentes e formar novos sistemas. O uso de ambientes de desenvolvimento orientados a arquitetura e DBC, e também de ferramentas de automatização, reduzem o esforço necessário para a integração de componentes. O ambiente Bellatrix é um ambiente de desenvolvimento integrado que permite a especificação de elementos arquiteturais e a modelagem de arquiteturas de software. No entanto, ainda existe um hiato entre a arquitetura de um sistema modelada no ambiente Bellatrix e a configuração do sistema a partir de componentes concretos. Esta dissertação apresenta a ferramenta CosmosLoader, que auxilia o gerenciamento de configurações de componentes baseados no modelo Cosmos. A solução proposta se baseia na extensão do ambiente Bellatrix e no modelo de componentes Cosmos* ("Cosmos estrela"), que estende o modelo Cosmos com o conceito de composição hierárquica de componentes. Por fim, são descritos estudos de caso realizados com essas ferramentas Abstract: In the last years, Component-Based Development (CBD) and Software Architecture emerged as complementary disciplines that promote reuse in software development. Component-Based Development promotes the development of reusable software components and the creation of new software systems by integrating existing software components. The architecture of a software system describes such system in terms of its architectural components, their properties and the connections between them. Component models materialize concepts from CBD such as components and connectors from traditional concepts of software development, such as object orientation and files, so that a set of classes and complementary files form a component if they follow the component model's rules. The adequacy to a component model brings benefits to a software system: for instance, the EJB component model allows a component to be deployed to a container and benefit from the security management and location transparency provided by the container; the Cosmos component model allows the creation of components using only concepts from object-oriented languages, such as classes, interfaces and packages. Therefore, the integration of components to compose a new software system according to an architecture and a component model becomes an important activity in the development of a new software system. A concrete configuration is the set of specific versions of software components connected according to an architecture. However, it can be observed that while models ease the creation of software components, a development effort is still necessary to integrate components and form new systems. The use of development environments oriented towards architecture and CBD, and also of automations tools, reduce the effort needed to integrate components. The Bellatrix development environment is an integrated development environment that allows the specification of architectural elements and modeling of software architectures. However, there still is a gap between the architecture of a system modeled in Bellatrix and the configuration of a system from concrete software components. This dissertation presents the CosmosLoader tool, which assists in managing the configuration of components based on the Cosmos model. The proposed solution is based on an extension to the Bellatrix development environment and on the Cosmos* component model ("Cosmos star"), which extends the Cosmos component model with hierarchical composition of components. Finally, case studies using these tools are described Mestrado Ciência da Computação Mestre em Ciência da Computação
- Published
- 2021
- Full Text
- View/download PDF
16. Manufacturing Execution System - Desenvolvimento de Aplicação Tablet em Android
- Author
-
Chicória, Pedro Miguel Gonçalves and Simões, Marco António Machado
- Subjects
produção ,software architecture ,engenharia de requisitos ,manufacturing execution system ,arquitetura de software ,requirements engineering ,production - Published
- 2021
17. hp2FEM
- Author
-
Valente, Gilberto Luis, 1983, Bittencourt, Marco Lúcio, 1964, Cimini Júnior, Carlos Alberto, Borin, Edson, Universidade Estadual de Campinas. Faculdade de Engenharia Mecânica, Programa de Pós-Graduação em Engenharia Mecânica, and UNIVERSIDADE ESTADUAL DE CAMPINAS
- Subjects
Software Architecture ,Finite Element Method ,Framework (Programa de computador) ,Framework ,Arquitetura de software ,Método dos elementos finitos - Abstract
Orientador: Marco Lúcio Bittencourt Dissertação (mestrado) - Universidade Estadual de Campinas, Faculdade de Engenharia Mecânica Resumo: Este trabalho tem como objetivo principal a implementação de uma arquitetura de software para o Método de Elementos Finitos de Alta Ordem (MEF-AO), baseando-se no paradigma de programação orientada a objeto (POO) e no uso de técnicas de otimização de código fonte. O software foi escrito em linguagem C++ e desenvolvido sobre um framework com ferramentas que auxiliaram no desenvolvimento. A modelagem do sistema foi realizada de forma a facilitar e promover o reuso e manutenção do código. Buscou-se, também, a flexibilidade e generalização do MEF-AO ao permitir a variação nos procedimentos da construção das equações e o uso de malhas p não-uniforme. Neste caso, cada elemento pode ser interpolado com uma ordem polinomial diferente, além de permitir o uso de um algoritmo local de solução. Tal característica pode diminuir o número de operações e de armazenamento, pois o número de funções de forma é aumentado apenas onde é necessário o uso de mais pontos para interpolação da malha de solução. No final, o software é avaliado aplicando o problema de projeção para malha de quadrados e hexaedros Abstract: The main objective of this work is the implementation of a software architecture for the High-Order Finite Element Method (HO-FEM), based on the Object Oriented Paradigm (OOP) and on source-code optimization techniques. The software was written in C++ programming language and developed over a framework which provided tools that assisted the implementation. The system was modeled so to promote code reuse and maintainability. Furthermore, the system modeling also provided flexibility and generalization for the HO-FEM by allowing modifications on the procedures for equation assembling and the use of p-non-uniform meshes. In this case, each element can be interpolated with different polynomial order, and allows the application of an algorithm for local solution. Such features can reduce the number of operations for memory allocation, since the number of shape functions is increased only where a higher density of points is needed by the solution mesh. Finally, the software is assessed by applying the projection problem for meshes of squares and hexahedros Mestrado Mecânica dos Sólidos e Projeto Mecânico Mestre em Engenharia Mecânica
- Published
- 2021
- Full Text
- View/download PDF
18. Gerenciamento de firewalls em redes híbridas
- Author
-
Fiorenza, Maurício Martinuzzi, Kreutz, Diego, and Mansilha, Rodrigo Brandão
- Subjects
Firewall management ,Software engineering ,Hybrid networks ,Redes híbridas ,Software architecture ,Engenharia de software ,Arquitetura de software ,Políticas de segurança ,Security policies ,CIENCIAS EXATAS E DA TERRA [CNPQ] ,Gerenciamento de firewalls - Abstract
O gerenciamento de firewalls é um processo desafiador. A configuração incorreta desse tipo de equipamento pode gerar desde brechas de segurança que comprometam as informações trafegadas, até a indisponibilidade de serviços críticos. O processo é especialmente desafiador redes híbridas, que combinam tecnologias convencionais e emergentes, como SDN. O administrador de firewalls de uma rede híbrida precisa conhecer uma combinação potencialmente extensa de vocabulário, sintaxes, semânticas e processos para configurar os firewalls conforme sua intenção. Para facilitar o trabalho dos administradores de redes híbridas, propomos uma arquitetura de software, denominada FWunify, e uma linguagem de representação de intenções de segurança, denominada FWlang. A arquitetura de software visa orientar o desenvolvimento de soluções para gerenciamento de firewalls em redes híbridas através de camadas e módulos que facilitam a manutenabilidade e extensibilidade da solução. Por exemplo, um módulo de tradução de comandos para determinado firewall pode ser adicionado (ou removido) da solução impactando minimamente apenas nas camadas adjacentes. A linguagem FWlang visa simplificar e reduzir o vocabulário necessário para gerenciar um parque híbrido de firewalls através de intenções, que permitem representar configurações de segurança em um nível mais alto e amigável de abstração que o nível de uma política convencional. Para verificar a viabilidade técnica da solução, implementamos uma instância da arquitetura de software FWunify, incluindo a FWlang. Uma avaliação funcional abrangente da FWunify demonstra a sua acurácia de tradução (para comandos de baixo nível utilizados em firewalls) e a sua capacidade de gerenciar políticas em firewalls reais. Através de uma avaliação baseada em datasets reais, demonstramos que a FWlang pode propiciar uma redução de até 72% no número de termos utilizados para descrever um determinado tipo de políticas. Por fim, avaliamos aspectos subjetivos, como intuitividade e complexidade, da FWlang através de um questionário respondido por administradores de sistemas. Managing firewalls is a challenging process. The incorrect configuration of this type of equipment can generate problems ranging from security breaches that compromise the information transmitted to the unavailability of critical services. The process is especially challenging for hybrid networks, which combine conventional and emerging technologies such as SDN. The firewall administrator of a hybrid network needs to know a potentially extensive combination of vocabulary, syntax, semantics and processes to configure the firewalls according to their intention. To facilitate the work of hybrid network administrators, we propose a software architecture, called FWunify, and a language for representing security intentions, called FWlang. The software architecture aims to guide the development of solutions for managing firewalls in hybrid networks through layers and modules that facilitate the maintainability and extensibility of the solution. For example, a command translation module for a given firewall can be added (or removed) from the solution with minimal impact only on adjacent layers. The FWlang language aims to simplify and reduce the vocabulary needed to manage a hybrid park of firewalls through intentions, which allow representing security configurations at a higher and more friendly level of abstraction than the level of a conventional policy. To verify the technical feasibility of the solution, we implemented an instance of the FWunify software architecture, including FWlang. A comprehensive functional assessment of FWunify demonstrates its accuracy for translating (for low-level commands used in firewalls) and its ability to manage policies across real firewalls. Through an assessment based on real datasets, we demonstrate that FWlang can provide a reduction of up to 72% in the number of terms used to describe a given type of policy. Finally, we evaluate subjective aspects, such as intuitiveness and complexity, of FWlang through a questionnaire answered by system administrators.
- Published
- 2021
19. Data analysis and recommender system architecture for e-commerce platforms
- Author
-
Cunha, Gil Fernando Ferreira da, Peixoto, Hugo, Machado, José Manuel, and Universidade do Minho
- Subjects
Análise de dados ,Software architecture ,Data analysis ,Arquitetura de software ,Comércio eletrônico ,e-commerce ,Recommender system ,Business intelligence ,Sistema de recomendação ,Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática - Abstract
Dissertação de mestrado integrado em Engenharia Informática, E-commerce is constantly expanding, leading to greater market competitiveness. The number of online platforms offering products or services is increasing; so there is a growing need for companies to stand out from the competition, which leads to the application of various marketing strategies. However, not all are adequate and mismanagement, as well as a bad investment of these strategies, may prejudice companies. Hence the implementation of recommendation systems in e-commerce platforms, as a safe and economical strategy. By investing in a good recommendation mechanism, one can provide better user experience, taking his interests into account. As a result, more traffic on the platforms is ensured, which may result in a higher sales rate and, consequently, a higher number of revenues. However, to develop a recommendation system, the first step must consist in obtaining information about the sales platform, where data about its users and products/services form the basis of recom mendations. But not all information is useful, which can influence the accuracy of the forecasting models used by the system to produce results. Following this perspective, a data analysis methodology is proposed, as well as an architecture of a recommendation system, which allows to extract and treat relevant data, in order to integrate a recommendation engine for most e-commerce platforms., O comércio eletrónico (e-commerce) está em constante expansão, o que leva a uma maior competitividade no mercado. Existem cada vez mais plataformas de venda online e, consequentemente, há uma crescente necessidade das empresas se destacarem da concorrência, o que leva à aplicação das mais variadas estratégias de marketing. Porém, nem todas são adequadas e uma má gestão e investimento destas estratégias pode causar prejuízo às empresas. Daí surge a implementação de sistemas de recomendação nas plataformas de venda, como uma estratégia segura e económica. Ao investir num bom mecanismo de recomendação, é possível proporcionar uma melhor experiência para o utilizador, tendo em conta os seus interesses. Desta forma, assegura-se um maior tráfego nas plataformas, o que poderá resultar numa maior taxa de vendas e, consequentemente, num maior número de receitas. No entanto, para desenvolver um sistema de recomendação é necessário, em primeiro lugar, obter informação sobre a plataforma de vendas, onde os dados sobre os seus utilizadores e produtos/serviços constituem a base das recomendações. Mas nem toda a informação é útil, o que pode influenciar a acurácia do modelos de previsões utilizado pelo sistema. Seguindo esta perspetiva, propõe-se uma metodologia de análise de dados, assim como uma arquitetura de um sistema de recomendação, que permitam extrair e tratar dados relevantes de modo a integrar um motor de recomendação para a generalidade das plataformas de e-commerce.
- Published
- 2021
20. A Micro Frontends Solution – Analyzing quality attributes
- Author
-
Silva, Ricardo Alexandre Pinto da and Azevedo, Isabel de Fátima Silva
- Subjects
Module federation ,Client-side composition ,Frontend microservices ,Micro frontends ,Software architecture ,Arquitetura de software ,Micro-serviços no frontend ,Composição - Abstract
Submitted by Ana Maria de Sousa Rebelo (amsr@isep.ipp.pt) on 2021-09-13T09:20:22Z No. of bitstreams: 1 DM_RicardoSilva_2021_MEI.pdf: 6031374 bytes, checksum: 0163ca361698bbbb2f84343852711a85 (MD5) Approved for entry into archive by Ana Maria de Sousa Rebelo (amsr@isep.ipp.pt) on 2021-09-13T09:21:18Z (GMT) No. of bitstreams: 1 DM_RicardoSilva_2021_MEI.pdf: 6031374 bytes, checksum: 0163ca361698bbbb2f84343852711a85 (MD5) Made available in DSpace on 2021-09-13T09:21:18Z (GMT). No. of bitstreams: 1 DM_RicardoSilva_2021_MEI.pdf: 6031374 bytes, checksum: 0163ca361698bbbb2f84343852711a85 (MD5) Previous issue date: 2021
- Published
- 2021
21. A method for monitoring the coupling evolution of microservice-based architectures
- Author
-
Daniel R.F. Apolinário, Breno B.N. de França, DANIEL RODRIGO DE F APOLINARIO, CNPTIA, and BRENO B. N. DE FRANÇA, Unicamp.
- Subjects
Maintainability ,Coupling metrics ,Software engineering ,General Computer Science ,Microservices ,Software architecture ,Arquitetura de software ,Engenharia de software ,Software evolution ,Métricas de acoplamento ,Microsserviços ,Evolução de software - Abstract
The microservice architecture is claimed to satisfy ongoing software development demands, such as resilience, flexibility, and velocity. However, developing applications based on microservices also brings some drawbacks, such as the increased software operational complexity. Recent studies have also pointed out the lack of methods to prevent problems related to the maintainability of these solutions. Disregarding established design principles during the software evolution may lead to the so-called architectural erosion, which can end up in a condition of unfeasible maintenance. As microservices can be considered a new architecture style, there are few initiatives to monitoring the evolution of software microservice-based architectures. In this paper, we introduce the SYMBIOTE method for monitoring the coupling evolution of microservice-based systems. More specifically, this method collects coupling metrics during runtime (staging or production environments) and monitors them throughout software evolution. The longitudinal analysis of the collected measures allows detecting an upward trend in coupling metrics that could represent signs of architectural degradation. To develop the proposed method, we performed an experimental analysis of the coupling metrics behavior using artificially generated data. The results of these experiment revealed the metrics behavior in different scenarios, providing insights to develop the analysis method for the identification of architectural degradation. We evaluated the SYMBIOTE method in a real-case open source project called Spinnaker. The results obtained in this evaluation show the relationship between architectural changes and upward trends in coupling metrics for most of the analyzed release intervals. Therefore, the first version of SYMBIOTE has shown potential to detect signs of architectural degradation during the evolution of microservice-based architectures. Made available in DSpace on 2021-12-13T13:01:00Z (GMT). No. of bitstreams: 1 AP-Method-monitoring-coupling-2021.pdf: 2771345 bytes, checksum: bbf8364f58b8e1301a33015f92914381 (MD5) Previous issue date: 2021 Article number: 17.
- Published
- 2021
22. Sistema de informação laboratorial para o COVID-19
- Author
-
Rocha, Bruno Daniel Alves and Martins, António Constantino Lopes
- Subjects
Clean Architecture ,Healthcare ,Software architecture ,Sistema de informação ,Arquitetura de software ,COVID-19 ,Cuidados de saúde ,LIS ,LIMS ,Laboratório ,Information system ,Laboratory - Abstract
Submitted by Ana Maria de Sousa Rebelo (amsr@isep.ipp.pt) on 2022-01-03T17:22:16Z No. of bitstreams: 1 DM_BrunoRocha_2021_MEI.pdf: 4950367 bytes, checksum: d9ff63b90460474dd2fd9724164988e4 (MD5) Approved for entry into archive by Ana Maria de Sousa Rebelo (amsr@isep.ipp.pt) on 2022-01-03T17:22:35Z (GMT) No. of bitstreams: 1 DM_BrunoRocha_2021_MEI.pdf: 4950367 bytes, checksum: d9ff63b90460474dd2fd9724164988e4 (MD5) Made available in DSpace on 2022-01-03T17:22:35Z (GMT). No. of bitstreams: 1 DM_BrunoRocha_2021_MEI.pdf: 4950367 bytes, checksum: d9ff63b90460474dd2fd9724164988e4 (MD5) Previous issue date: 2021
- Published
- 2021
23. Proveniência de dados distribuída: computação em nuvem e blockchains para fomentar controle de privacidade, confiança e confiabilidade
- Author
-
Lautert, Filipe, Gomes Junior, Luiz Celso, Pigatto, Daniel Fernando, Maziero, Carlos Alberto, and Berardi, Rita Cristina Galarraga
- Subjects
Ciência da Computação ,CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO [CNPQ] ,Software architecture ,Web applications ,Electronic data processing - Distributed processing ,Interface de programas aplicativos (Software) ,Reliability ,Aplicações Web ,Proteção de dados ,Computação em nuvem ,Sistemas de recuperação da informação ,Confiabilidade ,Arquitetura de software ,Cloud computing ,Application Program Interfaces (Computer software) ,Processamento eletrônico de dados - Processamento distribuído ,Data protection - Abstract
Sistemas para Proveniência de Dados permitem o rastreamento da origem e evolução da informação, melhorando a confiança entre as partes. Este é um requisito importante para uma ampla gama de aplicações, como vigilância sanitária de alimentos, cadeias de abastecimento e monitoramento de surtos epidêmicos, entre outros. Muitas dessas aplicações são inerentemente distribuídas e exigem altos níveis de privacidade e confiança. Computação em névoa e Blockchains são soluções tecnológicas recentes que nasceram de avanços da computação em nuvem e distribuída. A computação em névoa concentra-se em trazer a nuvem para mais perto do usuário final, enquanto Blockchain fornece transparência sem uma entidade centralizada. Ambos podem ser complementares, com a computação em névoa distribuindo dados e o armazenamento, enquanto o Blockchain mantém a consistência e confiabilidade. Este trabalho descreve uma arquitetura que permite o rastreamento da proveniência dos dados em uma camada de névoa distribuída. Blockchains são empregados para fornecer transparência, e cada nó da névoa tem controle sobre o que é tornado público na nuvem. Por meio de serviços que mantêm as informações consistentes entre todas as partes interessadas, a arquitetura proposta permite proveniência de dados rápida e confiável para clientes executando na névoa. As informações do sistema estão associadas a uma prova de autenticidade, e os autores têm controle sobre a publicação dessas informações. A arquitetura foi desenvolvida com base no modelo de proveniência Prov definido pelo W3C, simplificando a adoção da solução. Foi desenvolvida uma aplicação composta por um cliente e uma API restful que é capaz de armazenar e compartilhar informações de proveniência em um Blockchain usando padrões abertos. São relatados resultados de testes extensivos demonstrando que a arquitetura proposta tem um desempenho adequado em vários cenários de recursos e diferentes níveis de confiabilidade de rede. Data Provenance systems enable tracking of the origin and evolution of information, improving trust among parties. This is an important requirement for a wide range of applications such as food safety, supply chains, and monitoring of epidemic outbreaks. Many of these applications are inherently distributed and require high levels of privacy and trust. Fog computing and Blockchains are recent technological solutions that were born from advancements in Cloud and distributed computing. Fog computing focuses on bringing the Cloud closer to the edge user while Blockchain provides transparency without a trusted centralized entity. Both can be complimentary as Fog computing spreads the data and computer storage while Blockchain can keep it consistent and trustworthy. This dissertation describes an architecture that allows the tracking of data provenance in a widearea distributed Fog layer. While Blockchains are employed to provide transparency, each Fog node has control over what is made public on the Cloud. The architecture proposed in this paper enables fast and reliable data provenance for clients executing in the Fog node using software services that keep the information consistent across all interested parties in the Cloud. Information in the system is associated with a proof of authenticity, but authors have control over the eventual publication of such information.The architecture was built upon the well established provenance model W3C Prov, which simplifies adoption of the framework. An application was developed consisting of a client and a restful API that is able to store and share provenance information in a Blockchain using open standards. Results from extensive tests are reported showing that the proposed architecture performs adequately in several scenarios of varying resources and levels of network reliability.
- Published
- 2020
24. HMS: UMA ARQUITETURA PARA AUTOMAÇÃO RESIDENCIAL ABERTA INDEPENDENTE DE TECNOLOGIA DE REDE.
- Author
-
Francisco, Lucas and Manrique Trevisani, Kleber
- Subjects
HOME automation ,COMPUTER network architectures ,COMPUTER software ,ELECTRONIC equipment ,HOUSEHOLD electronics ,JAVA programming language - Abstract
Copyright of Colloquium Exactarum is the property of Asociacao Prudentina de Educacao e Cultura (APEC) and its content may not be copied or emailed to multiple sites or posted to a listserv without the copyright holder's express written permission. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)
- Published
- 2013
- Full Text
- View/download PDF
25. Uma proposta de Arquitetura de Software para Construção e Integração de Ambientes Virtuais de Aprendizagem.
- Author
-
Sizo, Amanda Monteiro, Del Pino Lino, Adriano, and Favero, Eloi Luiz
- Subjects
SOFTWARE architecture ,COURSEWARE ,WEB services ,COMPUTER software development ,COMPUTER programming management ,INFORMATION technology - Abstract
Copyright of RISTI: Iberian Journal on Information Systems & Technologies / Revista Ibérica de Sistemas e Tecnologias de Informação is the property of Associacao Iberica de Sistemas e Tecnologias de Informacao (AISTI) and its content may not be copied or emailed to multiple sites or posted to a listserv without the copyright holder's express written permission. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)
- Published
- 2010
26. Arquitetura para conexão de ambiente virtual de aprendizagem com tecnologias inteligentes: interpretação automática das interações do aprendiz
- Author
-
Missaglia, Nelson, Costa, Ivanir, Larieira, Cláudio Luis Carvalho, Vanalle, Rosangela Maria, and Gaspar, Marcos Antônio
- Subjects
software architecture ,concentration ,smart technologies ,concentração ,interações ,arquitetura de software ,distant learning ,interactions ,eye tracking ,ensino à distância ,tecnologias inteligentes ,SISTEMAS DE COMPUTACAO [CIENCIA DA COMPUTACAO] ,EAD ,movimento dos olhos ,expressões faciais ,e-learning ,facial expression - Abstract
Submitted by Nadir Basilio (nadirsb@uninove.br) on 2022-08-15T16:23:59Z No. of bitstreams: 1 Nelson Missaglia.pdf: 3034685 bytes, checksum: c716f999981d36794b4eae925a85a0c8 (MD5) Made available in DSpace on 2022-08-15T16:23:59Z (GMT). No. of bitstreams: 1 Nelson Missaglia.pdf: 3034685 bytes, checksum: c716f999981d36794b4eae925a85a0c8 (MD5) Previous issue date: 2020-01-28 Distance learning has gained notoriety in society, mainly due to the technological advances observed in personal equipment use and the ease of access to the digital bases of academic content. Considering these facts, it can be state that there is interest in obtaining in real time feedback from the learner / student in the virtual learning environment (VLE). In order to achieve this feedback, it is necessary to use intelligent mechanisms that are able to monitor the interactions of the learner with the VLE. In this context, this work aims to develop an VLE x Intelligent Technology communication architecture and a guide for the application of these technologies in the VLE environment. As a research methodology, a Systematic Literature Review was carried out, which provide the absence of an architecture solution that allow the integration of the learning environment and the intelligent environment. The architecture developed was proved by the execution of a proof of concept (POC), which implemented, will allow the realization of evaluations and decision making in real time regarding the concentration and learning by the learners in the use of learning objects (LO). O ensino à distância vem ganhando notoriedade na sociedade, principalmente em função dos avanços tecnológicos observados nos equipamentos de uso pessoal e na facilidade de acesso às bases digitais de conteúdos acadêmicos. Considerando-se esses fatos pode-se afirmar que existe interesse na obtenção de retorno dessa aprendizagem, em tempo real, por parte do aprendiz/aluno no Ambiente Virtual de Aprendizagem (AVA). Portanto, torna-se necessário a utilização de Tecnologias Inteligentes que sejam capazes de monitorar as interações do aprendiz/aluno com o AVA. Nesse contexto, este trabalho tem como objetivo desenvolver uma arquitetura de comunicação do AVA com as Tecnologias Inteligentes e um guia de orientação na utilização dessa arquitetura. Para a sustentação metodológica dessa pesquisa foi realizada uma Revisão Sistemática da Literatura (SLR) que comprovou a ausência de uma solução de arquitetura que permita a integração do ambiente de aprendizagem com as tecnologias inteligentes. A arquitetura desenvolvida foi provada pela execução de uma prova de conceito (POC), que implementada, permitirá a realização de avaliações e tomadas de decisão em tempo real quanto a concentração e aprendizado por parte dos aprendizes no uso dos objetos de aprendizagem (OA) do AVA.
- Published
- 2020
27. Sistema de apoio à decisão baseado em regras para pricing
- Author
-
Parente, Nelson Arieira, Machado, José Manuel, and Universidade do Minho
- Subjects
Padrões de desenho ,Motores de regras ,Rule engines ,Software architecture ,Arquitetura de software ,E-commerce ,Design patterns ,Decision support systems ,Sistemas de apoio à decisão ,Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática - Abstract
Dissertação de mestrado em Engenharia Informática, Desde os primórdios dos tempos que o ser humano procura optimizar e automatizar todos os processos que se apresentam como morosos e repetitivos. O processo de pricing de produtos nos retalhistas é um sistema complexo e que consome tempo ao processo interno dos mesmos. Este projeto de investigação tem como objectivo o desenvolvimento de uma plataforma que seja capaz de optimizar e automatizar o processo de pricing de produtos, tendo como base um modelo baseado em múltiplas regras. Com o aumento do volume de vendas online, surgem, no âmbito do processo de pricing, diversos problemas relativos aos processos associados à expansão de uma plataforma de E-commerce. Aparece assim, a necessidade de um sistema capaz de responder a estes problemas e auxiliar na eficácia, rapidez e tomada de decisão de quem lida diariamente com esta questão complexa. Assim, propõe-se o desenvolvimento de um sistema que deverá ser capaz de auxiliar a tomada de decisão na definição do preço de venda dos produtos comercializados em qualquer plataforma de E-commerce. A solução que é desenvolvida ao longo deste projeto de investigação, terá que ser passível de gerir, em tempo real, o processo de pricing de um retalhista, bem como auxiliar na decisão da definição de preços. O foco deste projeto de investigação será dado a sistemas de apoio à decisão orientados a modelos, uma vez que é de extrema importância a versatilidade e a adaptação do sistema a múltiplos contextos e variáveis. Como tal, e de forma a responder às questões de investigação que orientam este projeto de investigação, estrutura-se o conteúdo em quatro capítulos fundamentais: o Estado da Arte, a Metodologia de investigação e Ferramentas de desenvolvimento, o Desenvolvimento do trabalho e as Conclusões. Durante o capítulo dedicado ao Estado da Arte abordam-se definições e conceitos essenciais ao capítulo de Desenvolvimento deste projeto, tal como o conceito de Sistemas de Apoio à Decisão, a definição do conceito de Motores de Regras e de Algoritmos de Inferência. Para estruturar a forma como se irá conduzir este projeto de investigação, no capítulo de Metodologia e Ferramentas de Desenvolvimento, apresenta-se a metodologia de investigação e as ferramentas de desenvolvimento aplicadas neste estudo, tal como o ambiente no qual a solução final foi desenvolvida. O capítulo de Desenvolvimento define-se pela exposição da investigação e lógica aplicada no desenvolvimento de um Sistema de apoio à Decisão para o Processo de pricing. Por último, o capítulo em que se expõem as conclusões deste projeto de investigação, tem como objectivo analisar os princípios teóricos que servem de base a provas de conceito, seguindo-se pela exposição da análise SWOT. O desenvolvimento desta análise é enquadrado na metodologia de investigação definida inicialmente, Design Research, avaliando a solução desenvolvida de modo a perceber se os requisitos iniciais foram cumpridos. Assim, e de forma a concluir esta investigação, e relacionar todos os conceitos abordados e tecnologias utilizadas, as questões de investigação são respondidas de forma a expor a viabilidade da solução apresentada., Since the dawn of time, human beings have sought to optimize and automate all processes that are slow and repetitive. The product pricing process for retailers is a complex system that consumes time for their internal process. This research project aims to develop a platform that is capable of optimizing and automating the product pricing process, based on a model based on multiple rules. With the increase in online sales volume, several pricing problems arise as part of the pricing process associated with the expansion of an E-commerce platform. Thus arises the need for a system capable of responding to these problems and assisting in the effectiveness, speed and decision making of those who deal with this complex issue on a daily basis. Thus, it is proposed to develop a system that should be able to assist decision making in defining the selling price of products sold on any E-commerce platform. The solution that is developed throughout this research project will have to be able to manage, in real time, the pricing process of a retailer, as well as assist in deciding pricing. The focus of this research project will be on model-driven decision support systems, as the versatility and adaptation of the system to multiple contexts and variables is of utmost importance. As such, and in order to answer the research questions that guide this research project, the content is structured into four fundamental chapters: State of the Art, Research Methodology and Development Tools, Work Development and Conclusions. The State of the Art chapter addresses definitions and concepts that are essential to the Development chapter of this project, such as the concept of Decision Support Systems, the definition of the concept of Rule Engines and Inference Algorithms. To structure how this research project will be conducted, in the Methodology and Development Tools chapter, we present the research methodology and development tools ap plied in this study, as well as the environment in which the final solution was developed. The Development chapter is defined by the research and logic applied in the development of a Decision Support System for the Pricing Process. Finally, the chapter in which the conclusions of this research project are presented aims to analyze the theoretical principles that underlie proofs of concept, followed by the presentation of a SWOT analysis. The development of this analysis is framed in the initially defined research methodology, Design Research, evaluating the developed solution in order to understand if the initial requirements were met. Thus, in order to conclude this research, and relate all the concepts covered and tech nologies used, the research questions are answered in order to expose the viability of the presented solution.
- Published
- 2020
28. Monitoramento da evolução do acoplamento de arquiteturas baseadas em microsserviços : um método para detectar indícios de erosão arquitetural
- Author
-
Apolinário, Daniel Rodrigo de Freitas, 1979, França, Breno Bernard Nicolau de, 1983, Santos, Paulo Sérgio Medeiros dos, Buzato, Luiz Eduardo, Universidade Estadual de Campinas. Instituto de Computação, Programa de Pós-Graduação em Ciência da Computação, and UNIVERSIDADE ESTADUAL DE CAMPINAS
- Subjects
Software engineering ,Coupling metrics ,Software - Maintenance ,Software architecture ,Arquitetura de software ,Engenharia de software ,Software evolution ,Métricas de acoplamento ,Software - Manutenção ,Evolução de software - Abstract
Orientador: Breno Bernard Nicolau de França Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação Resumo: Entregar software com mais rapidez e frequência tem sido fundamental em um mundo cada vez mais digital e com consumidores mais exigentes. De forma crescente, a indústria tem adotado a arquitetura de microsserviços devido ao pressuposto de que esse estilo arquitetural atende às demandas de desenvolvimento de software atuais, tais como resiliência, flexibilidade e velocidade. No entanto, desenvolver aplicações baseadas em microsserviços também traz algumas desvantagens, como por exemplo o aumento da complexidade operacional do software. Estudos recentes também apontam a falta de métodos para prevenir problemas relacionados à manutenibilidade de soluções baseadas neste estilo arquitetural. Problemas arquiteturais comumente causam perda de manutenibilidade do software. Desconsiderar bons princípios de design durante a evolução do software pode levá-lo ao que chamamos de erosão arquitetural, o que pode tornar inviável sua manutenção. Monitorar a qualidade interna do software é fundamental para evitar a degradação da arquitetura. No entanto, existem poucas iniciativas para monitorar a evolução de software baseado em arquiteturas de microsserviços. Este trabalho tem o objetivo de desenvolver um método para monitorar a evolução de arquiteturas baseadas em microsserviços e identificar tendências de aumento no acoplamento entre serviços, permitindo assim que arquitetos de software possam tomar decisões de manutenção com antecedência. Para isso, definimos um conjunto de métricas de acoplamento baseado em métricas de sistemas orientados a serviços encontradas na literatura. O método SYMBIOTE captura as dependências entre os microsserviços de uma aplicação em tempo de execução (ambiente de homologação ou produção). A partir dessas informações, ele constrói um grafo de dependência, no qual os nós representam serviços e as arestas representam dependências diretas. As métricas de acoplamento são calculadas a partir deste grafo e monitoradas ao longo do tempo para identificar tendências de aumento significativas, as quais podem ser sinais de degradação arquitetural. Apresentamos os resultados de um experimento realizado a partir de dados gerados artificialmente que revelou o comportamento das métricas em diferentes cenários e contribuiu para o desenvolvimento de um método de análise das métricas cujo intuito é identificar indícios de degradação arquitetural. No experimento, observamos que três de quatro métricas mostraram uma correlação significativa com mudanças feitas intencionalmente na arquitetura. O SYMBIOTE usa quatro métricas em conjunto para indicar a existência de um problema arquitetural. Avaliamos o método SYMBIOTE na aplicação Spinnaker, que é um caso real disponível no repositório GitHub. A avaliação forneceu evidências sobre a viabilidade de executar o método em sistemas baseados em microsserviços construídos com tecnologias comumente usadas hoje (como Kubernetes e Docker) sem a necessidade de instrumentar o código. Os resultados obtidos na avaliação do Spinnaker mostram a relação entre mudanças arquiteturais e a tendência de aumento dos valores das métricas de acoplamento na maioria dos intervalos de releases analisados. Portanto, a primeira versão de SYMBIOTE mostrou potencial para detectar sinais de degradação arquitetural durante a evolução de arquiteturas baseadas em microsserviços Abstract: Delivering software faster and with higher frequency has been imperative in a progressively digital world with increasingly demanding consumers. The industry has been increasingly adopting the microservice architecture due to claims that this architectural style satisfies ongoing software development demands, such as resilience, flexibility, and velocity. However, developing applications based on microservices also brings some drawbacks, such as the increased software operational complexity. Recent studies have also pointed out the lack of methods to prevent problems related to the maintainability of the solutions based on this architectural style. Architectural issues are common causes of poor software maintainability. Disregarding established design principles during the software evolution may lead to the so-called architectural erosion, which can end up in a condition of unfeasible maintenance. Monitoring the software internal quality is crucial in preventing architectural degradation. However, there are few initiatives to monitoring the evolution of software microservice-based architectures. This work aims to develop a method to monitor the evolution of microservices-based architectures and identify trends in increasing coupling between services, allowing software architects to take maintenance decisions as soon as possible. For that, we defined a coupling metrics suite based on service-oriented metrics from literature. The SYMBIOTE method captures dependencies between microservices of an application in run time (staging or production environment). From this information, it builds a dependency graph, in which nodes represent services and edges represent direct dependencies. Coupling metrics are calculated from this graph and monitored over time to identify significant upward trends that may be signs of architectural degradation. We present the results of an experiment with artificially-generated data that revealed the behavior of the metrics in different scenarios, and collaborated for the development of a analysis method of the metrics for the identification of indications of architectural degradation. In the experiment, we observed that three out of four metrics showed a significant correlation with intentional changes in architecture. SYMBIOTE uses four metrics in a combined way to indicate the occurrence of an architectural problem. We evaluated SYMBIOTE method in a real case application called Spinnaker available at GitHub repository. The evaluation provided evidence on the feasibility of executing the method in microservice-based systems built with commonly used technologies today (such as Kubernetes, Docker) without the need for code instrumentation. The results obtained in the Spinnaker evaluation show the relationship between architectural changes and upward trend in the values of the coupling metrics in most of the analyzed release intervals. Therefore, the first version of SYMBIOTE has shown potential to detect signs of architectural degradation during the evolution of microservice-based architectures Mestrado Ciência da Computação Mestre em Ciência da Computação
- Published
- 2020
29. Generating adaptation plans based on quality models for cloud platforms
- Author
-
Silva, Jorge Luiz Machado da, 1987, Rubira, Cecília Mary Fischer, 1964, França, Breno Bernard Nicolau de, 1983, Canedo, Edna Dias, Madeira, Edmundo Roberto Mauro, Universidade Estadual de Campinas. Instituto de Computação, Programa de Pós-Graduação em Ciência da Computação, and UNIVERSIDADE ESTADUAL DE CAMPINAS
- Subjects
Computação em nuvem ,Confiabilidade ,Software architecture ,Arquitetura de software ,Sistemas de computação adaptativos ,Cloud computing ,Adaptive computing systems ,Reliability - Abstract
Orientadores: Cecília Mary Fischer RubiBreno Bernard Nicolau de França Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação Resumo: A computação em nuvem trouxe inúmeros benefícios em termos de custo e escala, oferecendo serviços de suporte ao provisionamento de infraestrutura que visam o processamento e armazenamento de dados, de acordo com as demandas das aplicações. Nesse ambiente, a trustworthiness pode ser definida como qualidades ou características de um serviço e seu provedor que os tornam confiáveis; entretanto, a garantia dessa propriedade não é trivial. Primeiro porque, de maneira geral a trustworthiness não é composta por um único atributo de qualidade, mas pela combinação de vários atributos, como data privacy, performance, reliability, etc. Segundo porque, os clientes podem observar em tempo de execução uma mudança no nível de trustworthiness exigido por sua aplicação, devido à degradação do serviço em nuvem. Portanto, uma das principais barreiras é garantir as propriedades não funcionais de trustworthiness on-the-fly. Este trabalho apresenta uma solução que monitora em tempo de execução um conjunto de atributos de qualidade de uma determinada aplicação e gera planos de adaptação para certificar que uma quantidade adequada de recursos seja fornecida pela nuvem para manter seu nível de trustworthiness. A solução é baseada em modelos de qualidade para cálculo de métricas associadas a cada requisito não funcional e sua combinação em diferentes tipos de níveis de trustworthiness. A principal contribuição da solução é fornecer uma abordagem que lida com vários requisitos ao mesmo tempo (ou simultaneamente) durante o tempo de execução, a fim de adaptar os recursos da nuvem para manter o nível de trustworthiness exigido pela aplicação. A solução foi avaliada por dois estudos de viabilidade considerando um cenário onde o nível de trustworthiness da aplicação era composto por dois atributos (data privacy e performance) e o outro com três (data privacy, performance e reliability). Os resultados mostraram que a abordagem é viável em termos de execução dos planos de adaptação em tempo de execução para certificar o nível de trustworthiness exigido pela aplicação Abstract: Cloud computing brought up several benefits concerning cost and scale, offering support services for infrastructure provisioning targeting data processing and storage according to application demands. In this environment, trustworthiness can be defined as the qualities or characteristics of a service and its provider that make them reliable; however, the assurance of this property is not trivial. First because, in general, trustworthiness is not composed by a single quality attribute, but by the combination of multiple attributes, such as data privacy, performance, reliability, etc. Second, during runtime clients can experience a change of the trustworthiness level required by their application due to the degradation of the cloud service. Hence, one of the main barriers is to warrant the nonfunctional properties of trustworthiness during runtime. This work presents a solution that monitors during runtime the set of quality attributes of a specific application and generates adaptation plans in order to certify that an adequate resource amount be provided by the cloud in order to keep its trustworthiness level. The solution is based on quality models to compute the metric associated to each non functional requirement and their combination them into different types of trustworthiness levels. The main contribution of the solution is to provide an approach which deals with multiple requirements at the same time (or simultaneously) during runtime in order to adapt the cloud resources to keep the trustworthiness level required by the application. The solution was evaluated by two experiments considering a scenario where the application's trustworthiness level consisted of two attributes (data privacy and performance) and the other with three (data privacy, performance and reliability). The results have shown that the approach is feasible in terms of implementing the adaptation plans at the time of execution to certify the level of trustworthiness required by the application Mestrado Ciência da Computação Mestre em Ciência da Computação
- Published
- 2020
30. Building and monitoring an event-driven microservices ecosystem
- Author
-
Santos, Pedro Aguiar Sousa Moreira dos and Sampaio, Adelaide Isabel Santos Vieira Braga
- Subjects
Observability ,Microservices ,Monitoring ,Microserviço ,Monitorização ,Software architecture ,Arquitetura de software ,Choreography ,Coreografia - Abstract
Submitted by Ana Rebelo (amsr@isep.ipp.pt) on 2021-02-17T14:50:21Z No. of bitstreams: 1 DM_PedroSantos_2020_MEI.pdf: 8823809 bytes, checksum: f8a2f119973be2df5e5f5e5204bdd87a (MD5) Approved for entry into archive by Ana Rebelo (amsr@isep.ipp.pt) on 2021-02-17T14:50:54Z (GMT) No. of bitstreams: 1 DM_PedroSantos_2020_MEI.pdf: 8823809 bytes, checksum: f8a2f119973be2df5e5f5e5204bdd87a (MD5) Made available in DSpace on 2021-02-17T14:50:54Z (GMT). No. of bitstreams: 1 DM_PedroSantos_2020_MEI.pdf: 8823809 bytes, checksum: f8a2f119973be2df5e5f5e5204bdd87a (MD5) Previous issue date: 2020
- Published
- 2020
31. Desenvolvimento Web Orientado a Micro Frontends
- Author
-
Bastos, João Pedro da Silva and Sousa, Paulo Alexandre Gandra de
- Subjects
Micro frontends ,Software architecture ,Arquitetura de software ,Desenvolvimento web ,Web development ,Software organization ,Organização de software - Abstract
Submitted by Ana Rebelo (amsr@isep.ipp.pt) on 2020-09-07T11:19:19Z No. of bitstreams: 1 DM_JoaoBastos_2020_MEI.pdf: 10727225 bytes, checksum: 795173cae1059b46a4e958f8e042db06 (MD5) Approved for entry into archive by Ana Rebelo (amsr@isep.ipp.pt) on 2020-09-07T11:19:48Z (GMT) No. of bitstreams: 1 DM_JoaoBastos_2020_MEI.pdf: 10727225 bytes, checksum: 795173cae1059b46a4e958f8e042db06 (MD5) Made available in DSpace on 2020-09-07T11:19:48Z (GMT). No. of bitstreams: 1 DM_JoaoBastos_2020_MEI.pdf: 10727225 bytes, checksum: 795173cae1059b46a4e958f8e042db06 (MD5) Previous issue date: 2020
- Published
- 2020
32. A Reference Framework for Designing High-Level Assistive Technology Solutions
- Author
-
Cardoso, Rafael Cunha and Tavares, Tatiana Aires
- Subjects
Arcabouços ,Software engineering ,Frameworks ,CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO [CNPQ] ,Software architecture ,Tecnologia assistiva ,Human-computer interaction ,Assistive technology ,Interação humano-computador ,Engenharia de software ,Arquitetura de software ,Computação ,Iom ,Processo de desenvolvimento - Abstract
Submitted by Aline Batista (alinehb.ufpel@gmail.com) on 2020-07-14T20:26:31Z No. of bitstreams: 2 license_rdf: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5) Tese_Rafael_Cunha_Cardoso.pdf: 10461012 bytes, checksum: 7f7d03940f80e24eb6dc26bbde840f30 (MD5) Approved for entry into archive by Aline Batista (alinehb.ufpel@gmail.com) on 2020-07-16T03:09:18Z (GMT) No. of bitstreams: 2 Tese_Rafael_Cunha_Cardoso.pdf: 10461012 bytes, checksum: 7f7d03940f80e24eb6dc26bbde840f30 (MD5) license_rdf: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5) Made available in DSpace on 2020-07-16T03:09:28Z (GMT). No. of bitstreams: 2 Tese_Rafael_Cunha_Cardoso.pdf: 10461012 bytes, checksum: 7f7d03940f80e24eb6dc26bbde840f30 (MD5) license_rdf: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5) Previous issue date: 2019-12-13 Sem bolsa Estima-se que em 2018 existam no mundo cerca de um bilhão de pessoas com algum tipo de limitação física ou cognitiva. Neste cenário, o provimento de soluções que simplifiquem e auxiliem a inclusão destas pessoas se torna uma questão muito relevante e desafiadora. Em especial, isto ocorre quando as soluções envolvem o desenvolvimento de software e hardware específicos, como é o caso da Tecnologia Assistiva (TA) de alto nível. Por exemplo, o dispositivo IOM (Interface Óculos Mouse) provê uma forma alternativa para que pessoas com movimentos da cabeça preservados utilizem computadores por meio de movimentos da cabeça. No entanto, a concepção desse tipo de solução acaba sendo dificultada, já que é preciso conhecer profundamente o funcionamento destas TA. Neste sentido, o desenvolvimento de estruturas de software reutilizáveis pode beneficiar este processo, pois, viabilizam a representação de diferentes aplicações, por meio da abstração das principais características e propriedades de um domínio particular. Dessa forma, é possível atender a demandas específicas presentes na construção de soluções assistivas. Este trabalho destaca o processo de concepção e um modelo reutilizável de software orientado a TA. Os elementos essenciais que compõem este modelo foram identificados a partir de duas etapas metodológicas. A primeira, de natureza teórica, consistiu em um mapeamento sistemático de literatura, o qual permitiu a caracterização do estado da arte da área de pesquisa, e por um estudo sobre dispositivos de interação consolidados no mercado. A etapa prática da metodologia, por sua vez, foi composta por quatro ciclos de desenvolvimento de aplicações utilizando o objeto de estudo (IOM) em diferentes contextos de uso. Os resultados oriundos destas etapas serviram de insumo para o projeto e desenvolvimento de um arcabouço de software para dar suporte a criação de soluções de TA de alto nível, mais especificamente, envolvendo o dispositivo IOM. Adicionalmente, a experiência construtiva permitiu evidenciar características inerentes ao processo de TA como um todo, possibilitando a ampliação do modelo desenvolvido para outros cenários. It is estimated that by 2018, there are around one billion people in the world with some physical or cognitive limitation. In this scenario, providing solutions that simplify and assist the inclusion of these people in the society becomes a very relevant and challenging issue. This challenge is especially real when solutions of this nature involve the development of specific software and hardware, as in the case of highlevel Assistive Technology (AT). For example, the IOM (acronym for Interface Óculos Mouse, in Portuguese) device provides an alternative way for persons with preserved head movements to using computers through head movements. However, the process of developing this type of solution is complicated, since it is necessary to know the functioning of these ATs deeply. In this sense, the development of reusable software frameworks can benefit this process. They make it possible, through the abstraction of the main characteristics and properties of a specific domain, the representation of different applications. Thus, it is possible to meet the particular demands present in the construction of assistive solutions. This work highlights the design process and a reusable TA-oriented software model. The essential elements that make up this model were identified from two methodological steps. The first, with a theoretical nature, consisted of a systematic literature mapping, which allowed the characterization of the research area’s state of the art, and a study on interaction devices consolidated in the market. The practical step of the methodology, in turn, was composed of four application development cycles using the object of study (IOM) in different contexts of use. The results from these two steps served as inputs for designing and developing a software framework to support the development of high-level AT solutions, more specifically involving the IOM device. Additionally, the valuable experience allowed us to highlight characteristics inherent to the AT process as a whole, providing the expansion of the developed model to other scenarios.
- Published
- 2019
33. A Gamified Application Architecture for Chronic Kidney Disease Monitoring and Treatment
- Author
-
Silva, Carlos Antonio Fernandes da, Silva, Leandro Dias da, César Sobrinho, Álvaro Alvares de Carvalho, Medeiros, Leonardo Melo de, and Silva, Lenardo Chaves e
- Subjects
Gamificação ,Software Architecture ,Chronic Kidney Disease ,CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO [CNPQ] ,Arquitetura de software ,Insuficiência renal crônica ,Gamification - Abstract
Chronic Kidney Disease (CKD) is characterized by the need for permanent and continuous treatment. Data available in 2017 by the Brazilian Society of Nephrology, the estimated total number of patients undergoing analytical treatment in Brazil, were 126,583. In this context, we address some computational applications focusing on supporting the therapeutic treatment of CKD. However, to date, no software architecture has been found in the literature, considering the various factors that CKD patients may exhibit, seeking a change in the lifestyle of patients by conducting incentives and activities related to the evaluation of nephrologists. Against this background, gamification is a useful tool for providing game mechanisms to encourage patients to adhere to DRC treatment, challenges, and real-world rewards, similar to a digital game. In this paper, a gamified application architecture Project is published focusing on the monitoring and treatment of DRC at different stages. Architectural components were used by an extractive and embedded approach as part of the defined architecture. An architecture assessment was conducted with healthcare professionals and a software developer with a scenario-based approach. An application prototype was implemented using web technologies to present a scenario of using the proposed architecture. CAPES - Coordenação de Aperfeiçoamento de Pessoal de Nível Superior A Doença Renal Crônica (DRC) é caracterizada pela necessidade de tratamento permanente e contínuo. Considerando dados disponibilizados em 2017 pela Sociedade Brasileira de Nefrologia, o número total estimado de pacientes em tratamento de diálise no Brasil foi de 126.583. Neste contexto, encontram-se no mercado algumas aplicações computacionais com foco no apoio ao tratamento terapêutico da DRC. Porém, até o presente momento, não foi constatada na literatura nenhuma arquitetura de software considerando os diversos estágios que o portador da DRC pode apresentar, buscando a mudança de estilo de vida de pacientes pela realização de incentivos e atividades associadas às recomendações de nefrologistas. Diante deste cenário, a gamificação é uma ferramenta útil para a disponibilização de mecanismos dos jogos para incentivar a adesão de pacientes ao tratamento de DRC, proporcionando desafios e recompensas no mundo real, de maneira similar a um jogo digital. Neste trabalho é apresentada uma arquitetura de aplicação gamificada com foco no monitoramento e tratamento da DRC em diferentes estágios. Componentes arquiteturais foram identificados por meio de uma abordagem extrativa e incorporados como parte da arquitetura definida. Uma avaliação da arquitetura foi realizada com profissionais da área da saúde e um desenvolvedor de software, com uma abordagem baseada em cenários. Um protótipo de aplicação foi implementado utilizando tecnologias Web para apresentar um cenário de uso da arquitetura proposta.
- Published
- 2019
34. Avalia??o da recupera??o arquitetural de vis?es modulares de software a partir de t?cnicas de agrupamento
- Author
-
Silva, Douglas Eder Uno and Bittencourt, Roberto Almeida
- Subjects
software architecture ,metrics ,recupera??o arquitetural ,avalia??o experimental ,evolution of software ,TEORIA DA COMPUTACAO [CIENCIA DA COMPUTACAO] ,m?tricas ,cumulative architecture ,arquitetura de software ,experimental evaluation ,evolu??o de software ,vis?o modular ,modular vision - Abstract
Submitted by Verena Pereira (verenagoncalves@uefs.br) on 2019-05-27T21:56:17Z No. of bitstreams: 1 Dissertacao_Mestrado_Douglas_Silva_Versao_Final_Completa.pdf: 3141068 bytes, checksum: 78658f8d2933aba5b1fddaa41e057ae0 (MD5) Made available in DSpace on 2019-05-27T21:56:17Z (GMT). No. of bitstreams: 1 Dissertacao_Mestrado_Douglas_Silva_Versao_Final_Completa.pdf: 3141068 bytes, checksum: 78658f8d2933aba5b1fddaa41e057ae0 (MD5) Previous issue date: 2019-02-14 Architecture module views of software are made up of modules with distinct functional responsibilities but with dependencies between them. Previous work has evaluated architecture recovery techniques of module views in order to better understand their strengths and weaknesses. In this context, different similarity metrics are used to evaluate such techniques, especially those based on clustering algorithms. However, few studies try to evaluate whether such metrics accurately capture the similarities between two clusters. Among the similarity metrics in the literature, we can cite examples from both the field of software engineering and from other fields (e.g., classification). This work evaluates six cluster similarity metrics through intrinsic quality and stability metrics and the use of software architecture models proposed by developers. To do so, we used the dimensions of stability and authoritativeness, in accordance with what has been discussed in the literature. For authoritativeness, the concentration statistics of the MeCl metric were higher, in comparison with the other similarity metrics. However, in the absence of architectural models, the Purity metric shows better results. As architecture models are very relevant to software engineers, we understand that the MeCl metric is the most appropriate. For stability, all metrics have values close to unity, despite the presence of outliers. Here as well, the MeCl metric was considered the best because of its superiority in this item. Being better in both dimensions, especially in authoritativeness, we decided to use the MeCl metric as the basis for comparison of clustering algorithms. We compared, using the MeCl metric, four agglomerative clustering algorithms in the context of four software systems. For both authoritativeness and stability, the SL90 algorithm produced higher values in two of the four systems studied by comparing the data series generated by all algorithms. In this case, the SL90 agglomerative algorithm was the best. In conclusion, we empirically realized that the MeCl metric is the best metric to measure group similarity; regarding the clustering algorithms, no algorithm exceeds the others in all comparisons, although SL90 presented better results in two of the four systems we analyzed Vis?es arquiteturais modulares de software s?o formadas por m?dulos com responsabilidades distintas mas com depend?ncias entre si. Diversos trabalhos avaliam as t?cnicas de recupera??o arquitetural de vis?es modulares para entender melhor seus pontos fortes e fracos. Neste contexto, diferentes m?tricas de similaridade s?o utilizadas para avaliar tais t?cnicas, especialmente as que usam algoritmos de agrupamento. Contudo, poucos trabalhos avaliam se tais m?tricas realmente capturam de maneira fidedigna as similaridades entre dois agrupamentos. Dentre as m?tricas de similaridade existentes na literatura, pode-se citar m?tricas tanto da ?rea da engenharia de software quanto de outras ?reas (e.g., classifica??o). Este trabalho avalia seis m?tricas de similaridade de agrupamentos atrav?s de medidas intr?nsecas de qualidade e estabilidade e da utiliza??o de modelos arquiteturais propostos por desenvolvedores. Para tanto, usamos as dimens?es de estabilidade e autoridade, em conformidade com a literatura. Para a autoridade, as estat?sticas de concentra??o da m?trica MeCl foram maiores, em compara??o com as demais m?tricas de similaridade. Contudo, na aus?ncia de modelos arquiteturais, a m?trica Pureza apresenta melhores resultados. Como os modelos arquiteturais s?o muito relevantes para os engenheiros de software, entendemos que a m?trica MeCl ? a mais adequada. Para a estabilidade, todas as m?tricas apresentam valores pr?ximos da unidade, apesar da presen?a de \textit{outliers}. Aqui tamb?m, a m?trica MeCl foi considerada a melhor devido ? sua superioridade neste item. Sendo melhor nas duas dimens?es, especialmente em autoridade, usamos a m?trica MeCl como base para compara??o de algoritmos de agrupamento. Comparamos, usando a m?trica MeCl, quatro algoritmos de agrupamento aglomerativos no contexto de quatro sistemas de software. Tanto para a autoridade quanto a estabilidade, o algoritmo SL90 gerou valores mais altos em dois dos quatro sistemas estudados ao comparar as s?ries de dados geradas por todos os algoritmos. Neste caso, o algoritmo aglomerativo SL90 foi o melhor. Em conclus?o, percebemos empiricamente que a m?trica MeCl ? a melhor m?trica para medir similaridade de agrupamentos; j? em rela??o aos algoritmos de agrupamento, nenhum algoritmo supera os demais em todas as compara??es, apesar de o SL90 ter apresentado melhores resultados em dois dos quatro sistemas analisados
- Published
- 2019
35. Software development for monitoring and supporting intralogistics vehicles: From a laboratory prototype to an industrial prototype
- Author
-
Fernandes, Ana Esmeralda Alves, Fernandes, João M., Machado, Toni Daniel Neto, and Universidade do Minho
- Subjects
software architecture ,industry ,interfaces gráficos ,logistics ,arquitetura de software ,veículos autónomos ,software design ,protótipo ,microservices ,design de software ,user interfaces ,desenvolvimento de software ,software development ,ComputingMilieux_COMPUTERSANDEDUCATION ,prototype ,autonomous vehicles ,GeneralLiterature_REFERENCE(e.g.,dictionaries,encyclopedias,glossaries) ,microsserviços, logística ,indústria - Abstract
Master dissertation in Computer Science, Technological progress and advancements are constant and natural. The extreme impact and the daily use of everything related to technology on everyone’s day to day life is irrefutable. The inclusion of robots and automated vehicles and machines is increasing because of the advantages linked to their use. This reality led to the beginning of a project, Smart Autonomous Mobile Units (SAMU), included in the iFactory program which comes from a partnership between Bosch Car Multimedia (CM), and University of Minho. The project consists of the automation of specific industrial vehicles used in the movement of materials and finished products that support the intralogistics processes. This dissertation presents the software process behind the transformation of a Laboratory Prototype to an Industrial Prototype. A laboratory prototype was the result of the previous stages of development since this prototype was created and tested only in a controlled environment. For the next step of the SAMU project, the Proof of Concept, it is mandatory to increase the maturity level of this prototype. The PoC will be performed on a real industrial environment having a lot more adversities than the prior tests setting where everything was under control. On the Bosch Braga plant the autonomous vehicles have to interact with manually-driven vehicles as well. For this reason, the necessity of creating a system that could coordinate the allocation of logistic services to each vehicle had to emerge. A new solution was structured and developed following the basics of software design and architecture to modify and complement the former system with all the functions it is required to have. The final solution for the central platform of the industrial prototype is composed of seven microservices and each of them have a different purpose and business logic behind. The improvement of the central platform led to the development of new functionalities, such as the organization of the vehicles’ fleet and the visualization of the vehicles dynamically moving across their area of operation. The created solution was proven, by the results, to be functioning properly and as intended. The use of microservices reinforces their advantages for this specific context, since the deployment becomes easier and their maintenance is more straightforward. Another important aspect is that the addition of new functionalities is also a more effortless process. Considering that the previous solution was being developed with microservices the preservation of this type of architecture was the right answer for the continuation of development., O progresso a nível tecnológico é algo constante e natural. É evidente e irrefutável o ex-tremo impacto e uso diário das várias inovações nesta área no dia-a-dia de cada um. A inclusão de robôs e a automatização de máquinas é cada vez mais procurada devido às várias vantagens inerentes à sua utilização. Esta realidade levou ao início de um projeto, Smart Autonomous Mobile Units (SAMU), insirido no programa iFactory proveniente de uma parceria entre a Universidade do Minho e a Bosch Car Multimedia (CM). O projeto consiste na automatização de veículos indus-triais usados no movimento de materiais e produto acabado apoiando assim os processos intralogisticos. Esta dissertação apresenta o processo por detrás da transformação de um protótipo de laboratório num protótipo industrial. Um protótipo de laboratório foi o resultado obtido nas anteriores fases de desenvolvimento, uma vez que foi criado e testado apenas num ambiente controlado. Para a próxima etapa, a Prova de conceito, é obrigatório aumentar o nível de maturidade deste protótipo. A PoC será realizado num ambiente industrial real, com muito mais adversidades do a localização dos testes anteriores, onde tudo estava sob controlo. Na fábrica da Bosch Braga, os veículos autónomos também tém de interagir com veículos conduzidos manualmente. Por este motivo, surgiu a necessidade de criar um sistema que pudesse coordenar a alocação de serviços de logística a cada veículo. Uma nova solução foi estruturada e desenvolvida seguindo os conceitos básicos de design e arquitetura de scitzvare para modificar e complementar o sistema anterior com todas as funções necessárias. A solução final para a plataforma central do protótipo industrial é composta por sete microsserviços e cada um deles tem uma finalidade e lógica de negócio diferente. A melhoria da plataforma central leva ao desenvolvimento de novas funcionali-dades, como a organização da frota de veículos e a visualização dos veículos que se deslo-cam dinamicamente na sua área de operação. A solução criada provou, pelos resultados, estar a funcionar corretamente e conforme o planeado. O uso de microsserviços reforça as suas vantagens para este contexto específico, uma vez que o deployment se torna mais fácil e a manutenção é mais direta. Outro aspecto importante é que a adição de novas funcionalidades também se torna num processo mais fácil. Considerando que o sistema anterior estava a ser desenvolvido com microsserviços, a preservação deste tipo de arquitetura foi a solução certa a continuação do desenvolvimento.
- Published
- 2019
36. An educational process for requirements extraction and use case modeling based on problem-based learning and knowledge acquisition
- Author
-
Vasques, Dildre Georgiana, 1971, Santos, Glaucia Schnoeller dos, 1992, Gomes, Franciene Duarte, 1979, Garcia-Nunes, Pedro Ivo, 1988, SBSI'19: Brazilian Symposium on Information Systems (15. : 2019 : Aracaju, SE), and UNIVERSIDADE ESTADUAL DE CAMPINAS
- Subjects
Mergers and acquisitions ,Pedagogical practices ,Gestão do conhecimento ,Knowledge management ,Software architecture ,Arquitetura de software ,Artigo original - Abstract
The performance of Software Engineering professionals is related,among other factors, to adequate knowledge management practices.Specifically, business vision modeling, requirements, and use-caseextraction are central elements in Software Engineering, since theyreflect the needs, specificities and functionalities to be consideredat the software development stage. All these activities are relatedto knowledge acquisition and modeling. The goal of this work is toimplement an educational process based on knowledge acquisitionthat assists in more dynamic and active pedagogical practices. Thisprocess was tested with software engineering students. The resultsshowed advantages in the adoption of a strategy using principles ofknowledge acquisition and modeling. It is possible to conclude thatthe introduction of the process in the classroom improves students'performance in business vision modeling and in the extraction ofuse cases and requirements Fechado
- Published
- 2019
37. Single board computer classification for boarding of cyber physical systems based on architecture 5C
- Author
-
Maciel, Braian Konzgen and Goncalves, Eder Mateus Nunes
- Subjects
Computer engineering ,OPC UA protocol ,Indústria 4.0 ,Communication ,Cyber physical systems ,Software architecture ,Engenharia de computação ,Arquitetura de software ,Single board computer ,Protocolo OPC UA ,Industry 4.0 ,Comunicação - Abstract
A Indústria 4.0, ou manufatura avançada, está promovendo uma nova revolução industrial através da integração de tecnologias computacionais e de comunicação. O desenvolvimento dos Sistemas Ciberfísicos e o emprego da Internet das Coisas e Serviços podem ser considerados como peças chave para o desenvolvimento dessa revolução. Quanto aos Sistemas Ciberfísicos (CPS), a arquitetura 5C apresenta-se como uma das mais relevantes na literatura, mas apenas enumera as funções necessárias a constituição de um CPS, sem dar maiores detalhes de desenvolvimento e implementação. Por outro lado, a utilização do Computador de Placa Única (Single Board Computer - SBC) já encontra aplicações em diversas áreas como controle industrial de eletrônicos de consumo, instrumentos médicos, comunicação em rede, automóveis e outros dispositivos portáteis. O presente trabalho tem por objetivo principal, classificar dispositivos SBC que ofereçam suporte a implementações que atendam aos requisitos da Industria 4.0, mais especificamente como plataforma de hardware para a arquitetura 5C. Essa classificação e feita a partir da definição de um conjunto de funções mínimo que estes dispositivos devem oferecer para que possam ser integrados a uma rede de dispositivos CPS. Um estudo de caso demonstra quais são essas funcionalidades mínimas e o uso de alguns SBCs dentro destas condições. Industry 4.0, or advanced manufacturing, is promoting a new industrial revolution through the integration of computing and communication technologies. The development of Cyber Physical Systems (CPS) and the use of the Internet of Things and Services can be seen as key to the development of this new revolution. As for Cyber Physical Systems, the 5C architecture is one of the most relevant in the literature, but only lists the functions necessary to build CPS, without giving further development and implementation details. On the other hand, the use of Single Board Computer (SBC), already finds applications in industrial control of consumer electronics, medical instruments, network communication, automobiles and other portable devices. The main objective of this work is to classify SBC devices that support implementations that meet the requirements of Industry 4.0, more specifically as hardware platform for the 5C architecture. This classification is made from the definition of a minimum set of functions that these devices must offer so that they can be integrated into a network of CPS devices. A case study demonstrates what these minimum functionalities are and the use of some SBCs within these conditions.
- Published
- 2019
38. Development of a reconfigurable holonic multiagent architecture applied to the smart parking scenario
- Author
-
Castro, Lucas Fernando Souza de, Alves, Gleifer Vaz, Borges, André Pinz, Leitão, Paulo Jorge Pinto, Bordini, Rafael Heitor, and Morais, Erikson Freitas de
- Subjects
Estacionamento de automóveis ,Intelligent agents (Computer software) ,Expert systems (Computer science) ,Ciência da Computação ,Agentes inteligentes (Software) ,Sistemas especialistas (Computação) ,Computer system failures ,CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO [CNPQ] ,Software architecture ,Arquitetura de software ,Automobile parking ,Falhas de sistemas de computação - Abstract
As características presentes em um estacionamento inteligente apontam a utilização de Sistemas Multiagentes (SMA) como tendência devido a dinamicidade desse ambiente. Dentro da área de SMAs, a utilização de agentes holônicos (Sistemas Multiagentes Holônicos - SMAH) proporciona ao sistema um nível maior de adaptação em face das mudanças do ambiente devido a forma em que os agentes estão estabelecidos. As mudanças no ambiente podem ocorrer devido a falha dos agentes e alterações organizacionais no ambiente (e.g disposição dos agentes). Portanto, almeja-se que uma arquitetura destinada ao processo de alocação de vagas em um estacionamento deve lidar com essas mudanças de modo que o processo de requisição e uso das vagas não seja afetado para os motoristas. Assim o presente trabalho apresenta o desenvolvimento de uma arquitetura multiagente holônica e reconfigurável aplicada ao cenário de estacionamentos inteligente denominada MAPS-HOLO (MultiAgent Parking System - Holonic). A característica de reconfigurável dá-se ao fato de que a arquitetura pode alterar sua estrutura de acordo com eventuais falhas que os agentes possam apresentar. Essa alteração de estrutura ocorre na maneira de como os agentes estão organizados e de como o SMAH é governado, podendo ser alterado de centralizado (head-body) para descentralizado (body-body). Além disso, a MAPS-HOLO utiliza o JaCaMo, o qual é um framework destinado ao desenvolvimento de SMAs sub-dividido em três camadas: Linguagem Jason (programação de agentes), Framework Cartago (programação dos artefatos e ambiente) e Moise (programação normativa dos agentes). Embora o enfoque da arquitetura seja vagas de estacionamento, a MAPS-HOLO pode ser usada para qualquer recurso alocável por um custo e tempo . Por exemplo: recurso computacional (grid), vaga para bicicleta, alocação de tarefas, etc. O principal enfoque desse trabalho é o desenvolvimento da arquitetura multiagente holônica reconfigurável para alocação das vagas de estacionamento aos motoristas, mas além desse destaca-se os seguintes objetivos: i) Desenvolvimento de planos para recuperação de falhas dos agentes em um SMAH; ii) Verificação do uso do JaCaMo em um contexto holônico; iii) Análise e comparação dos modos de governo do SMAH. Ao fim do desenvolvimento da MAPS-HOLO , pode-se concluir que um SMAH é capaz de lidar com o processo de requisição de vagas de estacionamento. Além disso, a arquitetura é capaz de lidar com as falhas nos agentes ao passo que obteve resultados superiores em média quando comparados ao método de clonagem de agentes oferecido pelo JaCaMo. Por fim, por meio do JaCaMo é possível a implementação de um SMAH, contudo alguns ajustes na linguagem Jason e no Moise são necessários para um suporte completo ao desenvolvimento de SMAHs. The characteristics in a smart parking indicate the usage of Multiagent Systems as a trend due to the dynamism of this environment. In the MAS field, the usage of holonic agents (Holonic Multiagent Systems - HMAS) provides to the system a high level of adaptation towards the changes that take place in the environment according to the arrangement of agents. The environment might suffer some changes due to some agent failure and also different organizational settings. Therefore, an architecture designed to assign parking spaces in a smart parking is expected to deal with these changes so that the process of requisition and usage of parking spaces is not affected by the drivers. Thus the present work shows the development of a reconfigurable holonic multiagent architecture applied to the intelligent parking lot called MAPS-HOLO (MultiAgent Parking System - Holonic). We say that our architecture is reconfigurable because it may adapt its structure depending on some flaws from its agents. The MAPS-HOLO architecture will have its structure reconfigured in terms of how the agents are organized and how the HMAS government works, it may vary from a centralized (head-body) to a decentralized (body-body) organization. Besides, the MAPS-HOLO runs in JaCaMo, which is a framework to the development of MAS subdivided into three layers: Jason language (agent programming), Cartago Framework (artifacts and environment programming) and Moise (normative programming of agents). Although the focus of the architecture is parking spaces, the MAPS-HOLO could be extended to work with any allocable resource, as long as it has a given cost C and a time T, for example, a computational resource (grid), bike spaces, task allocation, among others. Our major goal is to develop a reconfigurable holonic multiagent architecture in order to assign parking spaces to drivers. Furthermore, we highlight some additional outcomes that we are looking forward to obtaining: i) Development of recovery plans for agent failures; ii) Application of JaCaMo framework in a holonic system; iii) Analysis and comparison of different government policies in the HMAS. After the development of MAPS-HOLO , we can say the HMAS deal with the parking space assigning process. Further, the architecture handles with the agent’s failures whereas MAPS-HOLO got in average higher results compared to agent cloning provided by JaCaMo. Finally, it is possible to develop an HMAS through JaCaMo. However, some improvements on Jason and Moise are required to a full HMAS development support.
- Published
- 2018
39. Produção de mapa de disparidade: uma proposta de arquitetura e desenvolvimento de um método de refinamento
- Author
-
Vieira, Gabriel da Silva, Soares, Fabrizzio Alphonsus Alves de Melo Nunes, Laureano, Gustavo Teodoro, and Pedrini, Hélio
- Subjects
Visão estéreo ,Mapa de disparidade ,Métodos de cálculo de disparidade ,Software architecture ,Disparity methods ,Projeto de software ,Arquitetura de software ,Disparity map ,Software design ,Stereo vision ,CIENCIA DA COMPUTACAO [CIENCIAS EXATAS E DA TERRA] - Abstract
Mapas de disparidade são elementos cruciais em sistemas de visão estéreo. Navegação autônoma, reconstrução 3D e mobilidade são exemplos de área de pesquisa que utilizam mapas de disparidade como elementos-chave. Embora muitos trabalhos têm sido feitos na área de visão estéreo, ainda assim, não é trivial construir sistemas estéreos com aplicação de conceitos como reutilização e escopo extensível. Neste estudo, exploramos essa lacuna e apresentamos uma arquitetura de software capaz de acomodar diferentes métodos de visão estéreo através de uma estrutura bem definida. Inicialmente, cenários que ilustram usos de mapa de disparidade são introduzidos e uma arquitetura que fomenta reutilização de código é apresentada. Dessa forma, um Framework de Cálculo de Disparidade (FCD) é apresentado e seus componentes são discutidos a fim de especificar a sua estrutura. Em seguida, um protótipo que segue a arquitetura proposta é apresentado e alguns casos de teste são preparados e executados. Além disso, métodos de cálculo de disparidade foram implementados para propostas de validação e para avaliar o método de refinamento de disparidade proposto pelos autores. Esse método de refinamento, chamado de Checagem de Consistência de Segmento (CCS), foi projetado para aumentar a robustez de algoritmos de combinação estéreo. Trata-se de um método que utiliza um processo de segmentação preliminar, análise estatística de áreas definidas e função ponderada de suporte para encontrar e preencher disparidades marcadas como desconhecidas. Os resultados dos experimentos realizados apontam que o FCD pode satisfazer diferentes cenários sob demanda. Além disso, os resultados mostram que o método CCS é uma abordagem eficiente que pode trazer certos melhoramentos em mapas de disparidade, como reduzir a medida de erro no cálculo de correspondências estéreo. Disparity maps are key components of a stereo vision system. Autonomous navigation, 3D reconstruction, and mobility are examples of areas of research which use disparity maps as an important element. Although a lot of work has been done in the stereo vision field, it is not easy to build stereo systems with concepts such as reuse and extensible scope. In this study, we explore this gap and it presents a software architecture that can accommodate different stereo methods through a standard structure. Firstly, it introduces some scenarios that illustrate use cases of disparity maps and it shows a novel architecture that foments code reuse. A Disparity Computation Framework (DCF) is presented and we discuss how its components are structured. Then we developed a prototype which closely follows the proposal architecture and we prepared some test cases to be performed. Furthermore, we have implemented disparity methods for validation purposes and to evaluate our disparity refinement method. This refinement method, named as Segmented Consistency Check (SCC), was designed to increase the robustness of stereo matching algorithms. It consists of a segmentation process, statistical analysis of grouping areas and a support weighted function to find and to fill in unknown disparities. The experimental results show that the DCF can satisfy different scenarios on-demand. Besides, they show that SCC method is an efficient approach that can make some enhancements in disparity maps, as reducing the disparity error measure. Outro
- Published
- 2018
40. Processo e modelo para identifica??o dos principais stakeholders de sistema-de-sistemas acknowledged
- Author
-
Balen, Mateus Presotto and Marczak, Sabrina dos Santos
- Subjects
Requirements Engineering ,Modelo ,Identify of Stakeholders ,System-of-Systems ,Processo ,Arquitetura de Software ,Process ,Software Architecture ,Identifica??o de Stakeholder ,Engenharia de Requisitos ,TEORIA DA COMPUTACAO [CIENCIA DA COMPUTACAO] ,Stakeholder ,Sistema-de-Sistemas ,Model - Abstract
Sistemas de software t?m se tornado maiores e mais complexos com consider?vel dissemina??o em muitas ?reas. Devido ? necessidade de se tornarem mais abrangentes, eventualmente, os sistemas operacionalmente e gerencialmente independentes tendem a interoperar entre eles. Esta integra??o entre sistemas independentes com natureza evolutiva e geograficamente distribu?do resulta uma classe de sistemas chamada Sistema-de-Sistemas. Uma vez que a Arquitetura de Software define a estrutura base de um sistema e a Engenharia de Requisitos identifica as funcionalidades necess?rias para um sistema, entende-se que essas atividades s?o essenciais para qualquer sistema, assim tornando a identifica??o dos stakeholders de um sistema uma atividade primordial para elicitar os requisitos necess?rios e, consequentemente, construir o sistema com as funcionalidades esperadas. Esta disserta??o apresenta um processo e um modelo para a identifica??o dos principais stakeholders de Sistema-de-Sistemas Acknowledged com o intuito de minimizar os problemas causados nas defini??es dos requisitos do sistema e da arquitetura de software por desconhecer os principais stakeholders. Software systems have become larger and more complex with considerable dissemination in many industries. Due to the need to become more comprehensive, eventually, operationally and managerially independent systems tend to interoperate with themselves. This integration between independent systems with evolutionary nature and geographically distributed results a class of systems called System-of-Systems. Considering that the architeture of software defines a base structure of a system and the engineering of requirements identifieds the necessary functionalities for a system, these activities are essential for any system, as a consequence, the identification of the stakeholders of a system becomes a primordial activity to elicit the necessary requirements and consequently build the system with the expected functionalities. This study preesents a process and a model for the identification of the main stakeholders of Acknowledged System-of-Systems with the objective of minimizing the problems caused in the definitions of requirements system and software architecture in thus category system.
- Published
- 2018
41. Stimuli-SoS: a model-based approach to derive stimuli generators for simulations of systems-of-systems software architectures
- Author
-
Elisa Yumi Nakagawa, Lina Garcés, Carlos Eduardo de Barros Paes, Valdemar Vicente Graciano Neto, Flavio Oquendo, Wallace Manzano, Milena Guessi, ArchWare, Institut de Recherche en Informatique et Systèmes Aléatoires (IRISA), Université de Rennes 1 (UR1), Université de Rennes (UNIV-RENNES)-Université de Rennes (UNIV-RENNES)-Institut National des Sciences Appliquées - Rennes (INSA Rennes), Institut National des Sciences Appliquées (INSA)-Université de Rennes (UNIV-RENNES)-Institut National des Sciences Appliquées (INSA)-Université de Bretagne Sud (UBS)-École normale supérieure - Rennes (ENS Rennes)-Institut National de Recherche en Informatique et en Automatique (Inria)-Télécom Bretagne-CentraleSupélec-Centre National de la Recherche Scientifique (CNRS)-Université de Rennes 1 (UR1), Institut National des Sciences Appliquées (INSA)-Université de Rennes (UNIV-RENNES)-Institut National des Sciences Appliquées (INSA)-Université de Bretagne Sud (UBS)-École normale supérieure - Rennes (ENS Rennes)-Institut National de Recherche en Informatique et en Automatique (Inria)-Télécom Bretagne-CentraleSupélec-Centre National de la Recherche Scientifique (CNRS), Universidade de São Paulo (USP), Institut National des Sciences Appliquées - Rennes (INSA Rennes), Institut National des Sciences Appliquées (INSA)-Université de Rennes (UNIV-RENNES)-Institut National des Sciences Appliquées (INSA)-Université de Rennes (UNIV-RENNES)-Université de Bretagne Sud (UBS)-Centre National de la Recherche Scientifique (CNRS)-École normale supérieure - Rennes (ENS Rennes)-Institut National de Recherche en Informatique et en Automatique (Inria)-Télécom Bretagne-Université de Rennes 1 (UR1), Université de Rennes (UNIV-RENNES)-CentraleSupélec-Institut National des Sciences Appliquées - Rennes (INSA Rennes), Université de Rennes (UNIV-RENNES)-CentraleSupélec, Université de Rennes (UR)-Institut National des Sciences Appliquées - Rennes (INSA Rennes), Institut National des Sciences Appliquées (INSA)-Institut National des Sciences Appliquées (INSA)-Université de Bretagne Sud (UBS)-École normale supérieure - Rennes (ENS Rennes)-Institut National de Recherche en Informatique et en Automatique (Inria)-Télécom Bretagne-CentraleSupélec-Centre National de la Recherche Scientifique (CNRS)-Université de Rennes (UR)-Institut National des Sciences Appliquées - Rennes (INSA Rennes), Institut National des Sciences Appliquées (INSA)-Institut National des Sciences Appliquées (INSA)-Université de Bretagne Sud (UBS)-École normale supérieure - Rennes (ENS Rennes)-Institut National de Recherche en Informatique et en Automatique (Inria)-Télécom Bretagne-CentraleSupélec-Centre National de la Recherche Scientifique (CNRS), and Universidade de São Paulo = University of São Paulo (USP)
- Subjects
DEVS ,lcsh:Computer engineering. Computer hardware ,General Computer Science ,Computer science ,Distributed computing ,Model transformation ,Real-time computing ,0211 other engineering and technologies ,Automatic generation ,lcsh:TK7885-7895 ,02 engineering and technology ,[INFO.INFO-SE]Computer Science [cs]/Software Engineering [cs.SE] ,lcsh:QA75.5-76.95 ,Systems-of-systems ,Software ,0202 electrical engineering, electronic engineering, information engineering ,ARQUITETURA DE SOFTWARE ,ComputingMilieux_MISCELLANEOUS ,computer.programming_language ,System of systems ,021103 operations research ,Event (computing) ,business.industry ,Software architecture ,020207 software engineering ,Data structure ,Automation ,13. Climate action ,TheoryofComputation_LOGICSANDMEANINGSOFPROGRAMS ,lcsh:Electronic computers. Computer science ,business ,computer ,Simulation - Abstract
Background Systems-of-systems (SoS) are alliances of independent and interoperable software-intensive systems. SoS often support critical domains, being required to exhibit a reliable operation, specially because people’s safety relies on their services. In this direction, simulations enable the validation of different operational scenarios in a controlled environment, allowing a benchmarking of its response as well as revealing possible breaches that could lead to failures. However, simulations are traditionally manual, demanding a high level of human intervention, being costly and error-prone. A stimuli generator could aid in by continuously providing data to trigger a SoS simulation and maintaining its operation. Methods We established a model-based approach termed Stimuli-SoS to support the creation of stimuli generators to be used in SoS simulations. Stimuli-SoS uses software architecture descriptions for automating the creation of such generators. Specifically, this approach transforms SoSADL, a formal architectural description language for SoS, into dynamic models expressed in DEVS, a simulation formalism. We carried out a case study in which Stimuli-SoS was used to automatically produce stimuli generators for a simulation of a flood monitoring SoS. Results We run simulations of a SoS architectural configuration with 69 constituent systems, i.e., 42 sensors, 9 crowdsourcing systems, and 18 drones. Stimuli generators were automatically generated for each type of constituent. These stimuli generators were capable of receiving the input data from the database and generating the expected stimuli for the constituents, allowing to simulate constituent systems interoperations into the flood monitoring SoS. Using Stimuli-SoS, we simulated 38 days of flood monitoring in little more than 6 h. Stimuli generators correctly forwarded data to the simulation, which was able to reproduce 29 flood alerts triggered by the SoS during a flooding event. In particular, Stimuli-SoS is almost 65 times more productive than a manual approach to producing data for the same type of simulation. Conclusions Our approach succeeded in automatically deriving a functional stimuli generator that can reproduce environmental conditions for simulating a SoS. In particular, we presented new contributions regarding productivity and automation for the use of a model-based approach in SoS engineering.
- Published
- 2017
- Full Text
- View/download PDF
42. Visualization of monitoring data of quality requirements contextualized with the software architecture
- Author
-
Ferreira Neto, Marcos José, Brito, Patrick Henrique da Silva, Santos Neto, Baldoino Fonseca dos, and Moraes, Regina Lúcia de Oliveira
- Subjects
Data visualization ,Requisitos de qualidade ,Software – Visualização ,Software architecture ,CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO [CNPQ] ,Arquitetura de software ,Requisitos não-funcionais ,Quality requirements ,Non-Functional requirements ,Monitoração de requisitos ,Software visualization tool - Abstract
The problem of the large volume of data is present in the software industry, especially in the software monitoring log data, which is generated in real time, as the software is used. Some factors make it difficult to manually analyze log data. One is the large volume of data generated; another factor that makes it difficult to manually analyze the logs and the fact that they are usually scattered in one or several log files, presenting itself in a disorderly way. For this reason, a manual log analysis has been shown as an error-prone activity. Therefore, it is necessary to use some computational tool to support log analysis. In addition, in order to have a good interpretation of the analyzed data, it is necessary to contextualize them with abstract software models, such as software architecture. This work aims to develop a visualization approach to facilitate the data analysis process of monitoring the requirements of quality, efficiency and reliability, providing a greater contextualization with abstractions of the software architecture and a tool, called VisRQ, supporting this approach. This tool was evaluated by a semi-structured experiment, in which the users analyzed the monitoring logs and answered questionnaires in order to verify the fulfillment of the desired requirements. We also evaluated the tool learning time and whether it makes the log analysis process more accurate and faster. The experiments participants were students of the Informatics technical course of the Federal Institute of Alagoas - Campus Arapiraca and of the course of Computer Science of the Federal University of Alagoas - Campus Arapiraca, besides some professionals that work with Information Technology. The tool acceptance was positive, according to the responses of the evaluative experiment, 100% of the participants stated that they prefer to use the VisRQ tool instead of the previous process that is less automated and 97.6% considered that it facilitates the analysis process. The experiment shows that the log analysis process using VisRQ tool is more efficient, besides allowing the visualization of information about the nonfunctional requirements in a contextualized way with diagrams of the software architecture. O problema do grande volume de dados está presente na indústria de software, em especial nos dados de log de monitoramento de software, que são gerados em tempo real, à medida que o software é utilizado. Alguns fatores dificultam consideravelmente a análise manual dos dados de log. Um deles é o grande volume de dados gerado; outro fator que dificulta a análise manual dos logs é o fato de estarem, normalmente, espalhados em um ou vários arquivos de registro, apresentando-se de forma desordenada. Por essa razão, a análise manual dos logs tem se mostrado uma atividade propensa a erros. Sendo assim, se faz necessário utilizar alguma ferramenta computacional para apoiar a análise dos logs. Além disso, para se ter uma boa interpretação dos dados analisados é necessário contextualizá-los com modelos abstratos do software, tais como por exemplo a arquitetura de software. Esse trabalho tem como objetivo desenvolver uma abordagem de visualização para facilitar o processo de análise de dados de monitoramento dos requisitos de qualidade (eficiência e confiabilidade), proporcionando uma maior contextualização com abstrações da arquitetura do software e uma ferramenta, chamada VisRQ, com suporte a essa abordagem. Tal ferramenta foi avaliada por um experimento semi-estruturado, em que os usuários analisaram os logs de monitoramento e responderam questionários visando aferir o atendimento dos requisitos desejados. Também foram avaliados o tempo de aprendizado da ferramenta e se ela torna o processo de análise dos logs mais preciso e rápido. Os participantes do experimento foram discentes do curso técnico de Informática do Instituto Federal de Alagoas - Campus Arapiraca e do curso de Ciência da Computação daUniversidade Federal de Alagoas - Campus Arapiraca, além de alguns profissionais formados que trabalham com Tecnologia da Informação. A aceitação da ferramenta foi positiva, conforme as respostas do experimento avaliativo, 100% dos participantes afirmaramque preferem utilizar a ferramenta VisRQ em vez do processo anterior que é menos automatizado e 97,6% consideraram que ela facilita o processo de análise. O experimento mostra que o processo de análise dos logs envolvendo a ferramenta VisRQ émais eficiente, além de permitir a visualização das informações sobre os requisitos não-funcionais de forma contextualizada com diagramas da arquitetura de software.
- Published
- 2017
43. Software project for internationalization in signal languages
- Author
-
Rodrigues, Paulo Marcos Soares, Rodrigues, Cassio Leonardo, Chaveiro, Neuma, Lucena, Fabio Nogueira de, and Duarte, Soraya Bianca Reis
- Subjects
Internacionalização ,ENGENHARIA DE SOFTWARE [METODOLOGIA E TECNICAS DA COMPUTACAO] ,Surdo ,Software architecture ,Arquitetura de software ,Projeto de software ,Internationalization ,Sign language ,Software design ,Deaf ,Línguas de sinais - Abstract
Este trabalho tem como objetivo desenvolver um projeto de software que permita a internacionalização em relação às diversas línguas de sinais existentes. A Língua de Sinais, além de ser um sistema linguístico, é um elemento de constituição do sujeito surdo, agregando sua identidade e cultura. Por isso é tão importante que os conteúdos dos sistema informatizados possam estar disponíveis também em línguas de sinais. A partir de uma revisão sistemática da literatura que evidenciou a ausência de métodos, ferramentas ou técnicas que fizessem referências a internacionalização de softwares para línguas de sinais, foi elaborado uma arquitetura de alto-nível e um projeto detalhado contemplando os principais requisitos de qualidade. Os requisitos foram extraídos com a ajuda de professores, alunos e interpretes surdos e ouvintes da Faculdade de Letras/Libras da Universidade Federal de Goiás (UFG). Como estudo de caso foi escolhido uma aplicação Web do questionário de qualidade de vida, originalmente proposto pela Organização Mundial da Saúde traduzido para Libras pela Faculdade Letras da Universidade Federal de Goiás (UFG), em parceria com a Universidade Federal do Rio Grande do Sul (UFRGS). Após a adequação da aplicação à internacionalização para língua de sinais, foi realizado uma análise estática de três versões da aplicação. A versão original, uma versão adequada a internacionalização para línguas de sinais e uma terceira versão com a adição de mais de uma língua de sinal. As análises buscaram determinar os efeitos qualitativos da adequação da aplicação original para a internacionalização para línguas de sinais e da adição de novas traduções a uma aplicação já adequada a arquitetura proposta. This work aims to develop a software design that allows internationalization in relation to the different sign languages. The Sign Language, besides being a linguistic system, is an element of constitution of the deaf subject, adding its identity and culture. By this reason, it is so important that the contents of the computerized systems can also be available in sign languages. From a systematic review of the literature that showed the absence of methods, tools or techniques that made references to the internationalization of software for sign languages, a high-level architecture and a detailed design were elaborated contemplating the main requirements of quality. The requirements were extracted with the help of teachers, students and deaf interpreters and listeners of the Faculdade de Letras / Libras of the Universidade Federal de Goiás (UFG). The case study is a Web application of the questionnaire about quality of life, wich was originally proposed by the World Health Organization, translated to Libras by the Letters Faculty of the Federal University of Goiás (UFG), in partnership with the Federal University of Rio Grande do Sul UFRGS). After the adaptation of the application to the internationalization for sign language, a static analysis of three versions of the application was performed. The original version, a version suitable for internationalization for sign languages and a third version with the addition of more than one sign language. The analyzes sought to determine the qualitative effects of the appropriateness of the original application for the internationalization for sign languages and the addition of new translations to an application already suitable to the proposed architecture.
- Published
- 2017
44. Aiki ecosystem architecture : uma proposta de arquitetura de ecossistema de software de referência para a área de saúde
- Author
-
Siqueira, Otávio Manoel Pereira and Oliveira, Adicinéia Aparecida de
- Subjects
Interaction ,Software architecture ,Engenharia de software ,Arquitetura de software ,Padrões ,Programas de computador ,Sistemas de comunicação em banda larga ,Patterns ,CIENCIA DA COMPUTACAO [CIENCIAS EXATAS E DA TERRA] ,Software ,Ecossistema de software ,Interação ,Software ecosystem - Abstract
The rising pressure for enhancing the quality of healthcare services, as well as the need to reduce costs, has led healthcare organizations to increasingly use Information and Communication Technologies (ICT), through the development and the adoption of Healthcare Information Systems (HIS) for different purposes. As a result, the technological environment of these organizations has grown in size and complexity. However, deploying and adopting HIS is not always an easy task. The existence of innumerable patterns, often difficult to use, of legacy systems and a constantly changing environment present major challenges. In addition, the SIS shortage causes that the healthcare organizations cannot create all the solutions they need, making the acquisition of third-party SIS inevitable. Concepts such as Software Architecture and Software Ecosystems can assist in the management of these environments. In this context, this paper presents the AiKi Ecosystem Architecture, a reference ecosystem architecture, which aims to define rules for creating and adopting HIS in healthcare organizations, as well as to establish criteria for the interaction between HIS and people, who are part of this environment. An analysis, through an application, was made at the University Hospital of the Federal University of Sergipe, demonstrating the use and viability of the proposed architecture. A crescente pressão pelo aumento da qualidade dos serviços de saúde, bem como a necessidade de redução dos custos, obriga as organizações de saúde a utilizarem, cada vez mais, as Tecnologias da Informação e Comunicação (TIC), desenvolvendo e adotando Sistemas de Informação em Saúde (SIS) para os mais diferentes fins. Assim, o ambiente tecnológico das organizações cresce em tamanho e complexidade. Entretanto, a implantação e adoção de SIS nem sempre é uma tarefa de fácil execução. A existência de inúmeros padrões, muitas vezes difíceis de serem utilizados, de sistemas legados e de um ambiente em constante transformação representam grandes desafios. Adicionalmente, as organizações de saúde encontram dificuldades na criação das soluções necessárias, sendo inevitável a aquisição de SIS construídos por terceiros. Conceitos como Arquitetura de Software e Ecossistemas de Software podem auxiliar no gerenciamento desses ambientes. Nesse contexto, este trabalho apresenta a AiKi Ecosystem Architecture, uma Arquitetura de Ecossistema de Software de referência, que tem como objetivo definir regras para a criação e adoção de SIS em organizações de saúde, bem como estabelecer critérios para a interação entre os SIS e as pessoas que fazem parte desse ambiente. Uma análise, realizada por meio de uma aplicação, foi executada no Hospital Universitário da Universidade Federal de Sergipe, exemplificando a utilização e viabilidade da arquitetura proposta. São Cristóvão, SE
- Published
- 2017
45. Uma técnica baseada em SysML para modelar a arquitetura de sistemas embarcados de tempo real
- Author
-
Ribeiro, Quelita Araújo Diniz da Silva and Soares, Michel dos Santos
- Subjects
Unified Modeling Language (UML) ,Architecture Analysis and Design Language (AADL) ,Inteligência competitiva ,Software architecture ,Engenharia de software ,Arquitetura de software ,Programas de computador ,SysML ,Ciência da computação ,Architecture Description Language (ADL) ,CIENCIA DA COMPUTACAO [CIENCIAS EXATAS E DA TERRA] - Abstract
Coordenação de Aperfeiçoamento de Pessoal de Nível Superior - CAPES Architectural specification of real-time software systems is an activity that conveys analysis, knowledge and understanding of both the application domain and the parties involved in software construction. Architecture plays a key role in communication between stakeholders, in addition to planning the entire architectural process involved in the project. However, Architecture Description Languages (ADLs) have not been widely used in the industry. Another limiting factor for the e ff ective use of ADLs is the di ffi culty of these languages in e ff ectively expressing the architecture of complex systems. Considering this situation of di ffi culty in the e ff ective use of ADLs, the UML has been used in recent years to model the architecture. However, UML can not represent the important characteristics pertinent to real-time systems, such as security or real-time constraints. One of the advantages of the UML is the extensibility allowing the creation of profiles. In this sense, this work proposes using Systems Modeling Language (SysML), a UML profile, to model real-time systems architecture in two automotive systems, the airbag control system and the light control system. The objective of this work is to use UML and SysML to model and document the architecture and design of requirements traceability between software and systems elements, increasing the understanding of the project among the parties involved, and finally presenting SysML as a language for description of real-time software architecture. The ADL Architecture Analysis and Design Language (AADL) and SysML languages were compared to show the advantages of SysML. As a result, it was noticed that abstract features such as conditional deviations, loop, characteristics that are related to reality and consequently to the system can not be described in AADL. SysML has proved to be relevant in the context of architecture description, analysis, classification and modeling of real-time systems. The SysML Requirements diagram explicitly shows the various types of relationships between di ff erent requirements, the Block diagram enables the global view of the systems involved in a single project, the Internal Block diagram allows the internal view of the system under construction, the Activity diagram considers the behavioral view of the system. SysML concepts, articulated in the SysML Requirements, Activities, Blocks and Internal Blocks diagrams, are complementary, covering the purposes needed to describe the architecture of real-time systems. It is concluded that the proposed UML and SysML join technique provides elements to describe software requirements and their relationships with the system, to manage changes, to evolve and to trace requirements more easily, in addition to the communication being e ff ectively carried out between the stakeholders. This is important for the development of real-time systems because of the diversity of people / teams involved and influencing a wide range of design decisions. A especificação da arquitetura de sistemas de software de tempo real é uma atividade que depreende análise, conhecimento e compreensão tanto do domínio da aplicação quanto das partes envolvidas na construção do software. A arquitetura tem um papel primordial na comunicação entre os stakeholders, além do planejamento de todo o processo arquitetural envolvido no projeto. Contudo, as Linguagens de Descrição de Arquiteturas (ADLs) não têm sido amplamente usadas na indústria. Outro fator limitador para o uso efetivo de ADLs é a dificuldade dessas linguagens em expressar efetivamente a arquitetura de sistemas complexos. Considerando essa situação de dificuldade do uso efetivo de ADLs, a UML tem sido utilizada nos últimos anos para modelagem da arquitetura. No entanto, a UML não consegue representar características importantes pertinentes a sistemas de tempo real, tais como segurança ou restrições de tempo real. Uma das vantagens da UML é a capacidade de extensão permitindo a criação de profiles. Neste sentido, este trabalho apresenta a Systems Modeling Language (SysML), um profile da UML, para modelagem da arquitetura de sistemas de tempo real em dois sistemas automotivos, o sistema de controle de airbag e o sistema de controle de faróis. Neste trabalho tem-se como objetivos utilizar a UML e a SysML para modelagem e documentação da arquitetura e delineamento de rastreabilidade de requisitos entre software e sistema, ampliando o entendimento do projeto entre as partes envolvidas, e por fim apresentar a SysML como uma linguagem para descrição da arquitetura de software de tempo real. As linguagens SysML e a ADL Architecture Analysis & Design Language (AADL) foram comparadas para mostrar as vantagens da SysML. Como resultado, foi percebido que características abstratas, tais como tomadas de decisão, repetição de uma funcionalidade (loop), características que são relacionadas a realidade e, consequentemente, ao sistema, não podem ser descritas em AADL. A SysML mostrou-se relevante no contexto da descrição, análise, classificação e modelagem de arquitetura para sistemas de tempo real. O diagrama de Requisitos da SysML mostra explicitamente os diversos tipos de relacionamentos entre diferentes requisitos, o diagrama de Blocos viabiliza a visão global dos sistemas envolvidos num único projeto, o diagrama de Blocos Internos possibilita a visão interna do sistema em construção, o diagrama de Atividades considera a visão comportamental do sistema. Os conceitos de SysML, articulados nos diagramas de Requisitos, Atividades, Blocos e Blocos Internos da SysML são complementares cobrindo os propósitos necessários para a descrição da arquitetura de sistemas de tempo real. Conclui-se que a técnica proposta da junção de UML e SysML fornece elementos para descrever requisitos de software e seus relacionamentos com o sistema, gerenciar mudanças, evoluir e rastrear requisitos mais facilmente, além da comunicação ser efetivamente realizada entre os stakeholders. Este aspecto é importante ao desenvolvimento de sistemas de tempo real, por causa da diversidade de pessoas / equipes envolvidas e que influenciam uma ampla série de decisões de projeto.
- Published
- 2017
46. Techniques of autonomous and self-adaptive systems to support dynamic software product lines
- Author
-
Jane Dirce Alves Sandim Eleutério, Rubira, Cecília Mary Fischer, 1964, Almeida, Eduardo Santana de, Werner, Claudia Maria Lima, Vieira, Marco Paulo Amorin, França, Breno Bernard Nicolau de, Universidade Estadual de Campinas. Instituto de Computação, Programa de Pós-Graduação em Ciência da Computação, and UNIVERSIDADE ESTADUAL DE CAMPINAS
- Subjects
Linhas de produto de software ,Computação autônoma ,Software architecture ,Sistemas de computação adaptativos ,Arquitetura de software ,Autonomic computing ,Software product lines ,Adaptive computing systems - Abstract
Orientador: Cecília Mary Fischer Rubira Tese (doutorado) - Universidade Estadual de Campinas, Instituto de Computação Resumo: Cada vez mais, os sistemas modernos necessitam ter a capacidade de se autoadaptar às mudanças que ocorrem tanto no seu contexto de execução, quanto nas necessidades dos usuários. Pode-se citar, como exemplos de sistemas que exigem tal capacidade, as aplicações para dispositivos móveis, que precisam lidar com mudanças no ambiente, e os sistemas orientados a serviços, que precisam substituir serviços não confiáveis rapidamente interferindo minimamente na sua execução. Nesse contexto, Linha de Produtos de Software Dinâmica é uma abordagem de engenharia de software que pode ser utilizada para desenvolver sistemas autoadaptáveis baseados em comunalidades e variabilidades para uma família de sistemas similares. Entretanto, pesquisas recentes relataram que muitas soluções para linhas de produtos dinâmicas não conseguem cumprir todos os requisitos de adaptabilidade do sistema e, em muitos casos, elas são individualmente desenvolvidas e sem padronização. A solução proposta nesta tese aborda o estudo de técnicas de desenvolvimento de sistemas autônomos e autoadaptativos e sua aplicação na melhoria das capacidades dinâmicas de linhas de produtos. Este trabalho envolve: (i) a definição de uma taxonomia em duas dimensões, autoadaptação e variabilidade, para abordar questões técnicas básicas do projeto e desenvolvimento de linhas de produtos dinâmicas; (ii) um modelo de referência que define diretrizes e processos de desenvolvimento para linhas de produtos de software dinâmicas com apoio para um mecanismo de variabilidade dinâmica eficaz; e (iii) uma infraestrutura de implantação autoadaptativa estendida para atender ao modelo de referência, acompanhada de uma ferramenta de apoio. Um estudo de caso foi conduzido para avaliar a viabilidade do modelo de referência proposto apoiado por ferramental para construir uma linha de produtos para duas plataformas diferentes, Android e JavaFX, através da medição da sobrecarga de processamento imposta pelo processo de adaptação. O estudo apresentou resultados promissores, indicando que a solução é eficiente para apoiar a construção de linhas de produtos de software dinâmicas Abstract: Modern systems need to be able to self-adapt to changes in user needs, and changes affecting the system itself or its environment. Examples of systems demanding self-adaptive capabilities include mobile devices applications, which should deal with environmental changes and service-oriented systems, which should replace unreliable services on-the-fly. In this context, dynamic software product line is an engineering approach for developing self-adaptive systems based on commonalities and variabilities for a family of similar systems. However, researchers have reported many DSPL solutions fail to meet all system¿s adaptability requirements, and in many cases, they are developed in ad hoc manner. The solution proposed in this thesis deals with the study of autonomous and self-adaptive systems development techniques and their application in the improvement of the dynamic capacities of product lines. Thus, this work encompasses: (i) the definition of a two-dimension taxonomy to address basic technical issues in the design and development of dynamic product lines; (ii) a reference model that provides guidelines and development processes for dynamic software product lines with support to an effective dynamic variability mechanism; and (iii) a self-adaptive deployment infrastructure extended to meet the reference model, providing tooling support. We conducted a case study to evaluate our tool-based reference model in the development of a dynamic software product line for the Android platform and for JavaFX technology. Using the case study, we evaluated the feasibility of the solution by measuring the overhead imposed by the adaptation process. The study presented promising results, which indicate our solution is efficient to support the development of dynamic software product lines Doutorado Ciência da Computação Doutora em Ciência da Computação
- Published
- 2017
47. Redes Neurais Convolucionais Profundas na Detecção de Plantas Daninhas em Lavoura de Soja
- Author
-
Ferreira, Alessandro dos Santos and Pistori, Hemerson
- Subjects
Redes Neurais (Computação) ,Software Architecture ,Artificial Intelligence ,Neural Networks (Computer Science) ,Inteligência Artificial ,Arquitetura de Software - Abstract
Ervas daninhas são plantas indesejadas que crescem em culturas agrícolas, como as de soja, competindo por diversos fatores como luz e água e causando prejuízos às lavouras. O objetivo deste trabalho foi utilizar Redes Neurais Convolucionais para realizar a detecção de ervas daninhas em imagens de lavouras de soja e classificar essas ervas daninhas entre gramíneas e folhas largas, visando direcionar o herbicida específico ao tipo de erva daninha detectado. Para esse objetivo foi realizada uma plantação de soja em Campo Grande, Mato Grosso do Sul, Brasil e com o uso do drone Phantom DJI 3 Professional foi capturado um grande número de imagens da cultura. Com essas fotografias foi construído um banco de imagens contendo mais de quinze mil imagens do solo, soja e ervas daninhas de folhas largas e gramíneas. As Redes Neurais Convolucionais utilizadas representam uma arquitetura de Aprendizado Profundo que vêm alcançando notável destaque no reconhecimento de imagens. Para o treinamento da Rede Neural foi utilizada a arquitetura CaffeNet, disponível no software Caffe, que consiste de uma replicação da conhecida rede AlexNet, que venceu a competição ImageNet LSRVC de 2012. Foi implementado também um software, Pynovisão, que através do uso do segmentador SLIC Superpixel, ajudou na construção de um banco de imagens robusto e na classificação das imagens utilizando o modelo treinado pelo software Caffe. Para comparar os resultados da Rede Neural Convolucional, foram utilizados os algoritmos Máquina de Vetores de Suporte, AdaBoost e Florestas Aleatórias em conjunto com uma coleção de extratores de atributos de forma, cor e textura. Como resultado, utilizando as Redes Neurais Convolucionais, este trabalho obteve precisão acima de 98% na detecção de ervas daninhas de folhas largas e gramíneas em relação ao solo e a soja, com média de precisão entre todas as imagens superior a 99%. ABSTRACT - Weeds are undesirable plants that grow in agricultural crops, such as soybean crops, competing for elements such as sunlight and water, causing losses to crop yields. The objective of this work was to use Convolutional Neural Networks (ConvNets or CNNs) to perform weed detection in soybean crop images and classify these weeds among grass and broadleaf, aiming to apply the specific herbicide to weed detected. For this purpose, a soybean plantation was carried out in Campo Grande, Mato Grosso do Sul, Brazil, and the Phantom DJI 3 Professional drone was used to capture a large number of crop images. With these photographs, an image database was created containing over fifteen thousand images of the soil, soybean, broadleaf and grass weeds. The Convolutional Neural Networks used in this work represent a Deep Learning architecture that has achieved remarkable success in image recognition. For the training of Neural Network the CaffeNet architecture was used. Available in Caffe software, it consists of a replication of the well known AlexNet, network which won the ImageNet Large Scale Visual Recognition Challenge 2012 (ILSVRC2012). A software was also developed, Pynovisão, which through the use of the superpixel segmentation algorithm SLIC, was used to build a robust image dataset and classify images using the model trained by Caffe software. In order to compare the results of ConvNets, Support Vector Machines, AdaBoost and Random Forests were used in conjunction with a collection of shape, color and texture feature extraction techniques. As a result, this work achieved above 98% accuracy using ConvNets in the detection of broadleaf and grass weeds in relation to soil and soybean, with an accuracy average between all images above 99%.
- Published
- 2017
48. Uma arquitetura de software para implementação de um EHR utilizando SOA considerando a interoperabilidade entre sistemas legados
- Author
-
Lima, Josimar de Souza, Soares, Michel dos Santos, and Oliveira, Adicinéia Aparecida de
- Subjects
Sistemas de recuperação da informação (saúde pública) ,Sistemas de recuperação da informação ,EHR ,Health information systems ,Sistemas de informação em saúde ,Software architecture ,Arquitetura de software ,Software (desenvolvimento) ,SOA ,Computação ,CIENCIA DA COMPUTACAO [CIENCIAS EXATAS E DA TERRA] - Abstract
In today’s world, information systems are increasingly necessary for organizations to continue to provide their services with quality. These systems have become increasingly heterogeneous and complex. Executing them in an integrated manner with other systems has become a prerequisite. Due to the existence of legacy systems with stored data that needs to be maintained, the integration between systems is impaired. This situation is aggravated when it comes to health information systems because there are specific laws that require that data need to kept for decades. One well-known health information system is the Electronic Health Record (EHR). The EHR system is the electronic record of the patient’s health consisting of information coming from di erent systems. These systems are often developed by di erent companies and use di erent technologies. With this in mind, the use of a Service-Oriented Architecture (SOA) becomes very useful, since it is a solution capable of integrating heterogeneous structures using specific standards such as web services. However, designing SOA-based systems is not a trivial task. A robust and well-defined architecture is crucial to the success of applications based on SOA paradigm. Therefore, this study aimed to present a software architecture for the development of an EHR system based on SOA considering interoperability between legacy systems. Thus, a set of research methods were applied. Initially, a literature review was conducted in order to find relevant papers that could help in the development of applications in healthcare. This review was bounded on the studies related to EHR systems. The review of these studies aimed to first build a base of knowledge about problems, di culties and challenges regarding the implementation of EHR systems. The analysis of the literature showed that there was a deficiency in precisely defining a specific architecture for the development of EHR systems.The architecture is used a case study in order to test the applicability of the same. The object of this study was the University Hospital of the Federal University of Sergipe where it was developed an EHR system prototype. The architecture proposed in this work was of fundamental importance to the development of the EHR system prototype. The proposed architecture has enabled communication between the EHR system prototype and applications that mimicked the Legacies systems. Among the limitations of the case study, that were not possible to be used to the real legacy systems to the achievement of architecture tests. Applications were created that simulated real systems. However, these simulations did not a ect the result of the study which showed how to satisfactorily creating a software architecture based on SOA for building an EHR system considering interoperability between legacy system. No mundo atual, sistemas de informação são cada vez mais necessários para que organizações continuem prestando seus serviços com qualidade. Estes sistemas têm se tornado cada vez mais heterogêneos e complexos. Funcionar de maneira integrada com outros sistemas passou a ser um pré-requisito. Devido à existência de sistemas legados com dados armazenados que precisam ser mantidos, a integração entre sistemas fica prejudicada. Essa situação é agravada quando se trata de sistemas de informação em saúde pois existem legislações específicas que exigem que os dados sejam mantidos por décadas. Um sistema de informação em saúde bem conhecido é o Electronic Health Record (EHR). O sistema EHR é o registro eletrônico de saúde do paciente composto por informações vindas de diversos sistemas. Estes sistemas muitas vezes são desenvolvidos por empresas diferentes e utilizam tecnologias diferentes. Com isso em mente, o uso de uma Service-Oriented Architecture (SOA) se torna bastante útil, visto que é uma solução capaz de integrar estruturas heterogêneas utilizando padrões específicos como por exemplo web services. No entanto, projetar sistemas baseados em SOA não é uma tarefa trivial. Uma arquitetura robusta e bem definida é crucial para o sucesso de aplicações baseadas no paradigma SOA. Por essa razão, este trabalho teve como objetivo apresentar uma arquitetura de software para desenvolvimento de um sistema EHR baseado em SOA considerando a interoperabilidade entre sistemas legados. Para tanto, um conjunto de métodos de pesquisa foram aplicados. Inicialmente foi realizada uma revisão da literatura com o intuito de encontrar trabalhos relevantes que pudessem auxiliar no desenvolvimento de aplicações na área de saúde. Esta revisão foi delimitada a estudos relacionados aos sistemas EHR. A revisão destes estudos visou primeiramente construir uma base de conhecimento a respeito de problemas, dificuldades e desafios em relação a implementação de sistemas EHR. A análise da literatura mostrou que existia uma deficiência justamente na definição de uma arquitetura específica para o desenvolvimento de sistemas EHR. Assim, foi definida uma arquitetura de implementação e esta foi utilizada em um estudo de caso com o objetivo de testar a aplicabilidade da mesma. O objeto deste estudo foi o Hospital Universitário da Universidade Federal de Sergipe onde foi desenvolvido um protótipo de sistema EHR. A arquitetura proposta neste trabalho foi de fundamental importância para o desenvolvimento do protótipo de sistema EHR. A arquitetura proposta permitiu a comunicação entre o protótipo de sistema EHR e as aplicações que simularam os sistemas legados. Entre as limitações do estudo de caso, destaca-se a não utilização de sistemas legados reais para a realização dos testes da arquitetura. Foram criadas aplicações que simularam os sistemas reais. No entanto, estas simulações não interferiram no resultado do estudo que mostrou de maneira satisfatória a criação de uma arquitetura de software baseada em SOA para construção de um sistema EHR considerando a interoperabilidade entre sistema legados.
- Published
- 2016
49. Uma solução de implantação auto-adaptativa para plataformas Android
- Author
-
Cupe Casquina, Junior, 1989, Rubira, Cecília Mary Fischer, 1964, Tizzei, Leonardo Pondian, Martins, Eliane, Universidade Estadual de Campinas. Instituto de Computação, Programa de Pós-Graduação em Ciência da Computação, and UNIVERSIDADE ESTADUAL DE CAMPINAS
- Subjects
Componente de software ,Linhas de produto de software ,Software architecture ,Arquitetura de software ,Software component ,Software product lines - Abstract
Orientador: Cecília Mary Fischer Rubira Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação Resumo: Os dispositivos móveis, hoje em dia, fornecem recursos semelhantes aos de um computador pessoal de uma década atrás, permitindo o desenvolvimento de aplicações complexas. Consequentemente, essas aplicações móveis podem exigir tolerar falhas em tempo de execução. No entanto, a maioria das aplicações móveis de hoje são implantados usando configurações estáticas, tornando difícil tolerar falhas durante a sua execução. Nós propomos uma infraestrutura de implantação auto-adaptativa para lidar com este problema. A nossa solução oferece um circuito autônomo que administra o modelo de configuração atual da aplicação usando um modelo de características dinâmico associado com o modelo arquitetônico da mesma. Em tempo de execução, de acordo com a seleção dinâmica de características, o modelo arquitetônico implantado na plataforma se re-configura para fornecer uma nova solução. Uma aplicação Android foi implementada utilizando a solução proposta, e durante sua execução, a disponibilidade de serviços foi alterada, de tal forma que sua configuração corrente foi dinamicamente alterada para tolerar a indisponibilidade dos serviços Abstract: Mobile devices, nowadays, provide similar capabilities as a personal computer of a decade ago, allowing the development of complex applications. Consequently, these mobile applications may require tolerating failures at runtime. However, most of the today¿s mobile applications are deployed using static configurations, making difficult to tolerate failure during their execution. We propose an adaptive deployment infrastructure to deal with this problem. Our solution offers an autonomic loop that manages the current configuration model of the application using a dynamic feature model associated with the architectural model. During runtime, according to the dynamic feature selection, the deployed architectural model can be modified to provide a new deployment solution. An Android application was implemented using the proposed solution, and during its execution, the services availability was altered so that its current configuration was changed dynamically in order to tolerate the unavailability of services Mestrado Ciência da Computação Mestre em Ciência da Computação CNPQ 131830/2013-9
- Published
- 2016
50. A qualitative study on software architecture in the development of real systems
- Author
-
MELO, Izabela Vanessa de Almeida., GUERRERO, Dalton Dario Serey., MASSONI, Tiago Lima., BITTENCOURT, Roberto Almeida., and VALENTE, Marco Túlio de Oliveira.
- Subjects
Architectural Conformity - Computation ,Conformidade arquitetural - Computação ,Software architecture ,Ciência da Computação ,Engenharia de software ,Arquitetura de software ,Software Engineering - Abstract
Submitted by Johnny Rodrigues (johnnyrodrigues@ufcg.edu.br) on 2018-05-08T17:28:24Z No. of bitstreams: 1 IZABELA VANESSA DE ALMEIDA MELO - DISSERTAÇÃO PPGCC 2015..pdf: 3198472 bytes, checksum: 824f30587ab3b750011a08d2e5d6019a (MD5) Made available in DSpace on 2018-05-08T17:28:24Z (GMT). No. of bitstreams: 1 IZABELA VANESSA DE ALMEIDA MELO - DISSERTAÇÃO PPGCC 2015..pdf: 3198472 bytes, checksum: 824f30587ab3b750011a08d2e5d6019a (MD5) Previous issue date: 2015-09-10 Desde os anos 90 a comunidade científica desempenha esforços para estudar e evoluir aspectos relacionados à Arquitetura de Software, aumentando seu volume de publicação a partir de 1999. O aumento significativo das publicações nos últimos anos demonstra a importância e preocupação que a academia tem com relação a essa área. Porém, a partir da troca de experiência entre pesquisadores e profissionais da área, percebe-se que a indústria não parece conhecer/utilizar o que é proposto pela academia. O contexto teórico sobre arquitetura de software, documentação arquitetural e verificação de conformidade arquitetural já é conhecido no meio acadêmico. Porém, qual é o contexto deles dentro da indústria? Como os profissionais definem o termo "arquitetura desoftware"? Como os profissionais realizam (se realizam) a documentação arquitetural? Como realizam (se realizam) a verificação de conformidade arquitetural? O que eles pensam sobre ferramentas de apoio à verificação de conformidade arquitetural? Para responder essas questões, realizamos um estudo qualitativo dividido em 3 etapas. Primeiro, aplicamos um survey exploratório com o objetivo de entender o ambiente prático para ter uma noção sobre o contexto em foco. Enviamos o questionário para 149 profissionais e 4 grupos de discussão, obtendo uma taxa de resposta de 24,1%. Na segunda etapa entrevistamos 14 profissionais voluntários que responderam o survey exploratório (taxa de resposta de 40%). O objetivo desta etapa foi nos aprofundarmos no contexto em foco. Por fim, nossa última etapa consistiu de um survey confirmatório. Enviamos o questionário para os usuários do GitHub que possuem endereços de e-mail visíveis e tem mais de 100 seguidores (obtivemos uma taxa de resposta de 7,74%). Como resultados principais, observamos que não há uma única definição para o termo "arquitetura de software", dependendo de fatores desde a experiência do profissional até a empresa em que trabalham. Além disso, existem documentações arquiteturais, mas, a sua maioria não é rigorosa, formal e não é atualizada. Nem todos realizam verificação de conformidade arquitetural, e, quando realizam, normalmente é feita de forma manual. Os principais motivos para a não documentação e/ou verificação são falta de tempo ou falta de necessidade. Porfim, as ferramentas de apoio à verificação de conformidade arquitetural não são muito utilizadas e/ou conhecidas. Since the 90’s a big effort has been applied in the academy to study and evolve aspects related to Software Architecture, increasing the amount of publications from 1999 to the present-day. The significant rise in the number of publications in the last few years shows how much importance and concern academia gives to this particular area. However, after discussing what has been experienced by researchers and professionals of this area, it is possible to notice that the industry does not know/use what is proposed in the academy. The theoretical context about software architecture, architectural documentation and architectural conformance checking is already known. However, what about the practical/industrial context? How do the professionals define “software architecture”? How do they document (if they do) the architecture? How do they perform (if they do) architectural conformance checking? What do they think about support tools for architectural conformance checking? Aiming to answer these questions, we performed a 3-step qualitative study. Firstly, we applied an exploratory survey with the goal of understanding the practical environment and having a better notion about the context of our study. We sent the survey to 149 professionals and 4 discussion groups, getting 24.1% of response rate. In the second phase we interviewed 14 volunteered professionals who responded the exploratory survey (response rate of 40%). In this phase we wanted to deeply understand the context of your study. Finally, the last phase consisted of a confirmatory survey which goal was to confirm our findings. We sent the survey to GitHub users with public e-mails and more than 100 followers, getting 7.74% of response rate. As main results we observed that there is not a single definition of“software architecture” and that it depends on several factors, as the professional’s experience and the company in which he/she works. The architecture is sometimes documented but, most of the time, the documentation is incomplete, informal and outdated. In many cases, architectural conformance checking is not performed or it is performed manually. The main reasons for not documenting or verifying the architecture are lack of time and/or need. Finally, the support tools for architectural conformance checking are not often used and not well known.
- Published
- 2015
Catalog
Discovery Service for Jio Institute Digital Library
For full access to our library's resources, please sign in.