Um Tribunal está desenvolvendo um novo módulo de agendamento on-line para facilitar o acesso dos cidadãos aos serviços de atendimento. A equipe de TI decidiu adotar uma abordagem ágil para o desenvolvimento deste módulo, buscando entregas rápidas e feedback constante dos usuários. Considerando a metodologia ágil, o princípio que melhor descreve a prioridade da equipe em entregar funcionalidades prontas para uso em intervalos curtos e frequentes é:
Durante o atendimento a um chamado de suporte em um tribunal, a equipe de TI recebeu a solicitação de um usuário que relatava falhas ao abrir documentos no Microsoft Word e dificuldade de acesso a e-mails corporativos pelo navegador. Após uma análise inicial, constatou-se que o computador apresentava atualizações pendentes. Para resolver adequadamente a situação e restaurar a normalidade com menor impacto no ambiente de trabalho, a equipe deve
Um analista está configurando uma aplicação Spring Boot para atuar como um gateway de API utilizando o Spring Cloud Netflix Zuul. Após adicionar a dependência spring-cloud-starter-netflix-zuul ao projeto, em condições ideais, a anotação que o Analista deve adicionar à classe principal da aplicaçao para habilitar o Zuul Proxy é
A biblioteca Flyway oferece um conjunto de comandos principais que podem ser executados por meio da linha de comando, plugins (como Maven ou Gradle) ou APIs em projetos Java. Um dos comandos é utilizado para remover todas as tabelas, dados e objetos de um ou mais esquemas do banco de dados - exceto a tabela flyway_schema_history, que é excluída e automaticamente recriada após a limpeza. O comando responsável por essa operação é o flyway
Em um projeto Java que utiliza MapStruct com o Maven como sistema de build, é necessário que as implementações das interfaces de mapeamento sejam geradas automaticamente em tempo de compilação. Para isso, além da dependência principal do MapStruct, a dependência que deve ser adicionada no pom.xml para que a geração ocorra corretamente é a
Com a arquitetura "Cloud Native" , os desenvolvedores
podem criar, testar e implantar rapidamente serviços
novos e atuais, o que permite lançar produtos e serviços
com mais rapidez e reduzir o risco de implantações. A
"Cloud Native" oferece diversos benefícios e casos de
uso que impulsionam a inovação e melhoram a
experiência dos usuários. Ao adotá-la, as empresas
podem acelerar o desenvolvimento de novos recursos e
trazer produtos ao mercado mais rapidamente. Uma
vantagem dessa arquitetura refere-se ao uso de
contêineres e a orquestração, que otimizam o consumo
de recursos, reduz custos operacionais e evita
desperdícios.
Essa vantagem pode ser resumida de acordo com a
opção:
No contexto de desenvolvimento de software, qualidade
pode ser entendida como um conjunto de características
a serem satisfeitas, de modo que o produto de software
atenda às necessidades de seus usuários. Entretanto, tal
nível de satisfação nem sempre é alcançado de forma
espontânea, devendo ser continuamente construído.
Nesse sentido, há diversos atributos que visam garantir a
qualidade de software e, enquanto um é definido como a
capacidade do produto de software de ser
compreendido, aprendido, operado e atraente ao
usuário, quando usado sob condições especificadas,
outro é conceituado como a capacidade do produto de
software de apresentar desempenho apropriado, relativo
à quantidade de recursos usados, sob condições
especificadas.
Esses dois atributos são conhecidos, respectivamente,
como:
A metodologia ágil representa uma forma de gerir
projetos, em que se busca a otimização dos processos.
Em vez de seguir um plano rígido, como na gestão
tradicional, na metodologia ágil, pode-se fazer ajustes e
melhorias ao longo do desenvolvimento de projetos,
significando identificar e corrigir falhas rapidamente,
garantindo resultados mais efetivos. Entre os métodos
empregados nessa metodologia, dois são caracterizados
a seguir.
I.Emprega um framework ágil que tem por objetivo
facilitar a colaboração, a adaptação e a entrega de valor
de forma iterativa e incremental, com base em três
pilares fundamentais: transparência, inspeção e
adaptação. Nesse esquema, o trabalho é dividido em
iterações chamadas de Sprints, que geralmente têm
duração de duas a quatro semanas e utiliza artefatos
como o Product Backlog e o Sprint Backlog, além de
reuniões de planejamento, revisão e retrospectiva. Com
um enfoque na auto-organização e na colaboração da
equipe, essa metodologia promove uma abordagem
flexível para lidar com mudanças e busca maximizar o
valor entregue ao cliente.
II.Emprega um esquema que enfatiza a visualização e a
limitação do trabalho em progresso ou Work In Progress
(WIP), além da melhoria contínua do processo. Essa
metodologia utiliza um quadro, no qual as tarefas são
representadas em cartões e movidas pelas diferentes
etapas do fluxo de trabalho.
Os métodos descritos são conhecidos, respectivamente,
como:
As ferramentas para automatização de testes utilizam
recursos especiais para realizar um conjunto de testes
de software. Uma vez que o conjunto de testes é
automatizado, nenhuma intervenção humana é
necessária, por isso, as ferramentas para teste
automatizado são tão importantes. Entre elas, uma é
considerada uma das mais populares no momento,
direcionada à testes de aplicações web pelo browser,
utilizada para teste de regressão, sendo uma ferramenta
gratuita open source, que fornece recursos de
reprodução e gravação para este tipo de teste. Outra,
considerada uma das ferramentas mais completas, ideal
para iniciantes, altamente ajustável e fácil de usar, além
de um IDE completo e APIs abertas para especialistas
em automação, suporta testes de ponta a ponta em
desktop, web e dispositivos móveis. Um detalhe
importante é que essa ferramenta possui versão paga,
mas também a de teste grátis.
Essas ferramentas de testes são conhecidas,
respectivamente, como:
A arquitetura orientada a serviços (SOA) define uma
maneira de tornar os componentes de software
reutilizáveis e interoperáveis por meio de interfaces de
serviço. Os serviços usam padrões comuns de interface
e um padrão de arquitetura, para serem incorporados
rapidamente a novos aplicativos. Entre os componentes
dessa arquitetura, um é o código que cria a lógica para
realizar a função de serviço específica, como a
autenticação de um usuário ou o cálculo de uma fatura,
enquanto que outro define a natureza do serviço e seus
termos e condições associados, como os pré-requisitos
para usar o serviço, o custo do serviço e a qualidade do
serviço prestado.
Esses componentes são, respectivamente: