Em um projeto de desenvolvimento de software, a equipe está discutindo qual arquitetura utilizar. Alguns membros argumentam a favor da arquitetura monolítica, enquanto outros defendem a abordagem de microsserviços.
Considerando as abordagens arquiteturais discutidas, marque a alternativa que descreve com precisão uma característica-chave que distingue a arquitetura monolítica da arquitetura de microsserviços.
*A SOA é projetada para minimizar o acoplamento entre os serviços. O acoplamento refere-se à dependência entre componentes de software, e uma das metas da SOA é criar serviços que sejam independentes e que possam ser combinados e reutilizados de forma flexível, reduzindo, assim, o acoplamento entre eles. Isso promove a flexibilidade e a escalabilidade na integração de sistemas e na criação de aplicações baseadas em serviços.
A SOA modela serviços fracamente acoplados, que têm como principal característica:
*Na implementação de uma SOA, geralmente há três interfaces fundamentais para publicação, comunicação e descoberta dos serviços. Essas interfaces desempenham papéis essenciais na criação e no uso dos serviços em um ambiente SOA.
Qual é a alternativa que melhor representa a designação destas três interfaces: Web Services Description Language (WSDL), Universal Description, Discovery and Integration (UDDI) e Simple Object Access Protocol (SOAP)?
*Os padrões arquiteturais desempenham um papel fundamental no desenvolvimento de software, ajudando a organizar e estruturar os componentes de um sistema de forma eficaz. Eles oferecem diretrizes e melhores práticas para lidar com aspectos como separação de preocupações, interação entre componentes e testabilidade. Considere as seguintes afirmações sobre os padrões arquiteturais:
I. O padrão MVC separa a apresentação e a interação dos dados do sistema por meio de três componentes lógicos que interagem entre si: o componente Controlador, que gerencia os dados e as operações associadas a esses dados; o componente Modelo, que define e gerencia a forma como os dados são apresentados ao usuário; e o componente Visão, que gerencia a interação do usuário (teclas e cliques do mouse, por exemplo) e passa essas interações para o Controlador e o Modelo.
II. No padrão MVP, o Presenter é essencialmente o Controller do MVC, e tem como função atualizar a View quando o Model é alterado e sincronizar o Model em relação à View.
III. No contexto do padrão MVVM, é essencial enfatizar que ele é conhecido por promover a testabilidade e a manutenibilidade de aplicativos de interface do usuário, graças à separação clara de responsabilidades entre Model, View e ViewModel.
Qual(is) afirmativa(s) está(ão) correta(s)?
*Em um projeto de desenvolvimento de software, você está trabalhando em uma equipe que busca escolher o padrão arquitetural mais apropriado para garantir uma estrutura organizada, a separação de preocupações e a facilidade de teste de um programa. A equipe está considerando várias opções de padrões arquiteturais para tomar uma decisão informada.
Qual padrão arquitetural é mais apropriado quando se deseja alcançar uma separação clara entre a interface do usuário, a lógica de negócios e a lógica de apresentação, tornando o código mais organizado e facilitando a adaptação a mudanças no projeto?
*Os padrões de projeto facilitam a reutilização de soluções e arquiteturas de softwares orientados a objetos de forma flexível e fácil, reduzindo a complexidade do projeto e resolvendo os problemas.
Considerando os padrões da obra Padrões de Projeto – Soluções reutilizáveis de software orientado a objetos, de Erich Gamma, assinale a alternativa correta:
*Um diagrama de contexto em UML representa o fluxo de informação para dentro e fora do sistema, a interfacedo usuário e o apoio de processamento relevante. Cada uma das entidades se comunica com o sistema-alvo por meio de uma interface.
Sendo assim, quais são os tipos de entidades e/ou componentes necessários durante a elaboração de uma representação do sistema utilizando o diagrama de contexto arquitetural?
*Uma equipe de desenvolvimento está explorando a possibilidade de usar uma arquitetura de microsserviços distribuídos para um projeto global.
Qual é a vantagem da arquitetura de microsserviços distribuídos em comparação com a arquitetura de microsserviços tradicional?
Tanto a composição quanto a implantação de um componente devem ser possíveis sem a necessidade de utilizar outros componentes específicos. Nas situações em que o componente necessita de serviços externos, estes devem ser explicitamente definidos em uma especificação de interface de nome requires.
Essa descrição se refere a qual característica de um componente de software?
*Uma abordagem para implementação que separa os interesses em elementos distintos do programa pode ser considerada com uma boa prática, a partir do momento em que interesses possam ser pensados como uma maneira de organizar requisitos.
Sob a ótica dos stakeholders, os interesses funcionais se caracterizam por:
*Os padrões de projeto facilitam a reutilização de soluções e arquiteturas bem-sucedidas na construção de um projeto com paradigma orientado a objetos (POO), possibilitando trazer ao código organização e, ao programador, habilidade, experiência e um código limpo e padronizado.
Como escolher o melhor padrão a ser utilizado?
*Os padrões de arquitetura desempenham um papel crucial no desenvolvimento de software, facilitando a implementação de soluções para problemas comuns. Ao analisar o padrão de arquitetura MVC, é essencial compreender as responsabilidades dos componentes que o envolvem.
Qual é o papel do componente Controller e como ele contribui para a organização e estruturação de um sistema de software?
*Em muitos casos, o engenheiro de software pode se deparar com ambientes capazes de gerar dificuldades no desenvolvimento de interface. O chão de fábrica é um exemplo clássico, onde a temperatura e ausência de mesas de escritório podem influenciar diversos fatores.
Refletindo sobre isso, que elemento pode ser uma boa solução em ambientes restritivos?
O Enterprise Service Bus (ESB) é uma tecnologia que pode ser usada em projetos de SOA para facilitar a integração de serviços. O ESB atua como uma infraestrutura de middleware que permite a comunicação, a transformação de dados e a orquestração de serviços.
Qual das opções a seguir melhor contextualiza a razão pela qual se pressupõe a criação de um barramento de serviço na SOA?
*Os frameworks são como caixas de ferramentas que possibilitam à equipe de desenvolvimento trabalhar com uma coleção de classes concretas e abstratas aplicadas a uma linguagem orientada a objetos. São basicamente um template com diversas funções que podem ser usadas pelo desenvolvedor.
Sabendo disso, leia as afirmativas a seguir:
I. Entre as características de um framework, estão: linguagem padronizada e documentada, estrutura fixa para facilitar o uso e impedir que a linguagem seja corrompida ou danificada, além de ser de fácil entendimento.
II. Uma das desvantagens em utilizar o framework é a dependência da ferramenta para seguimento do projeto. Caso ela não receba atualizações ou seja descontinuada, prejudicará a manutenção do sistema desenvolvido com o apoio dela.
III. Para que o desenvolvedor trabalhe com um framework, é necessário obter conhecimento técnico acerca da ferramenta, aplicando a cada fase do projeto a estrutura disponibilizada por ele. A maioria dos frameworks não disponibiliza documentação e apoio técnico, sendo esta uma das desvantagens de seu uso.
Qual(is) está(ão) correta(s)?
*A usabilidade aborda principalmente a capacidade cognitiva, perceptiva e motora dos usuários, empregada durante a interação com o sistema.
Das alternativas a seguir, assinale a que representa um fator de usabilidade.
*