Buscar

AO2 FAM Paradigmas de Linguagem de Programação

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Pergunta 1
Leia o texto:
 
Você foi designado para gerir um novo projeto da sua empresa.
O projeto implementará um produto pioneiro no mercado, sendo que os requisitos do projeto ainda não estão bem definidos, porém, você já foi informado que não poderá gastar muito tempo no levantamento de tais requisitos. Pelo que você conversou com o solicitante, aparentemente, os módulos serão bem independentes entre si. A boa notícia, é que o usuário estará disponível para atuar no projeto de forma muito próxima à equipe de desenvolvimento. O ponto mais reforçado pelo solicitante do projeto, é que o desenvolvimento precisa ser muito rápido, para que não se perca o timing de lançamento do produto. Outra boa notícia, é que não há restrições quanto ao tamanho da equipe, foi informado que você poderá criar até mais de uma equipe para atuar no projeto.
 
A primeira coisa que você precisará fazer é definir o ciclo de vida a ser utilizado no desenvolvimento do projeto.
Considerando as informações acima, e os conteúdos vistos, assinale a opção correta.
RESPOSTA: O ciclo de vida a ser selecionado é o RAD que é um ciclo de vida incremental, iterativo, com forte paralelismo de atividades e incrementos desenvolvidos ao mesmo tempo, por equipes diferentes.
Pergunta 2
O Project Management Body of Knowledge (PMBOK) é um guia, que contém um conjunto de práticas para gestão de projetos reconhecido internacionalmente. Foi organizado pelo instituto Project Management Institute (PMI). É o guia mais utilizado no mundo, quando o assunto é gestão de projetos.
 
Considerando as informações apresentadas, avalie as afirmações a seguir:
 
I. Segundo o PMBOK, projeto é um empreendimento único com datas de início e fim definidas, que tem como objetivo criar um produto ou serviço também únicos.
II. O PMBOK apresenta 5 grupos de processos: Processos de Inicialização, de Planejamento, de Execução, de Controle e de Encerramento.
III. O PMBOK é organizado em 10 áreas de conhecimento: escopo, tempo, custo, risco, recursos humanos, qualidade, aquisições, integração, comunicações e partes interessadas.
 
É correto o que se afirma em:
RESPOSTA I, II e III.
Pergunta 3
“Quem já trabalha com BPMN pode exportar o seu modelo para BPEL fazendo algumas alterações no modelo, como a definição dos serviços externos ou internos para cada uma das atividades. A especificação BPEL define a sintaxe e semântica da linguagem BPEL, que contém uma variedade de construções de fluxo de processo.”
DEVMEDIA. Introduzindo Business Process Execution Language (BPEL). Disponível em: https://www.devmedia.com.br/introduzindo-business-process-execution-language-bpel/28679. Acesso em 17 de outubro de 2019. Adaptado.
 
Há muitas situações em que a engenharia de software precisa identificar erros ou melhorar os processos de negócio que envolve software, alguns projetos de software utilizam BPEL (Business Process Execution Language) e outros BPMN (Business Process Model and Notation), sendo que a ferramenta mais adequada seria:
I. Implementar Socket, sendo uma ferramenta de fácil uso para o desenvolvedor e todos envolvidos na equipe e não é considerada complexa como BPMN.
PORQUE
II. Utilizar BPMN para ter um modelo de mapeamento de processo parcial ou completo do sistema, assim adaptando ou reformulando o software se necessário.
 
A respeito das asserções, assinale a opção correta:
RESPOSTA: A asserção I é uma proposição falsa, e a II é uma proposição verdadeira.
Pergunta 4
“Programação imperativa é um paradigma de programação que descreve a computação como ações, enunciados ou comandos que mudam o estado (variáveis) de um programa. Muito parecido com o comportamento imperativo das linguagens naturais que expressam ordens, programas imperativos são uma sequência de comandos para o computador executar. O nome do paradigma Imperativo, está ligado ao tempo verbal imperativo, onde o programador diz ao computador: faça isso... Este paradigma de programação se destaca pela simplicidade, uma vez que todo ser humano, ao se programar, o faz imperativamente, baseado na ideia de ações e estados, quase como um programa de computador.”
 
Disponível em: https://pt.wikipedia.org/wiki/Programa%C3%A7%C3%A3o_imperativa (Links para um site externo.). Acesso em: 04/06/2020
 
Considerando as informações apresentadas, avalie as afirmações a seguir:
I. A programação imperativa possui três aspectos elementares: tipos, variáveis e valores.
II. A ordem dos comandos determina a sequência de tempo no programa.
III. Os ramos no programa são decididos por condições através de variáveis.
IV. O programa tem uma sequência, porém a cada if (ou condição) que tiver no programa, um caminho diferente será percorrido dentro do programa.
 
É correto o que se afirma apenas em:
RESPOSTA: I, II, III e IV.
Pergunta 5
“O middleware é o software que se encontra entre o sistema operacional e os aplicativos nele executados. Funcionando de forma essencial como uma camada oculta de tradução, o middleware permite a comunicação e o gerenciamento de dados para aplicativos distribuídos. Muitas vezes, o middleware é chamado de “encanamento”, uma vez que ele conecta dois aplicativos para que os dados e bancos de dados possam ser facilmente transportados através do “cano”.
AZURE, Microsoft. O que é middleware? Disponível em: https://azure.microsoft.com/pt-br/overview/what-is-middleware/. Acesso em: 17 de outubro de 2019. Adaptado
 
Em um projeto de software, a escolha de linguagens de programação envolve diretamente as necessidades do projeto, requisitos e regras de negócios. Imagine que nesse projeto será preciso utilizar duas tecnologias distintas, provavelmente duas linguagens de programação diferentes para desenvolver um software distribuído, especificamente na Web.
O que seria mais importante considerar na tomada dessa decisão?
Avalie as afirmações abaixo:
 
I. A primeira questão são os requisitos do projeto, se for algo obrigatório a tecnologia precisa suportar e executar, por algum meio, a troca de informações. Por exemplo utilizar um middleware ou algo que satisfaça.
 
II. Nesse caso, a integração das tecnologias é essencial para que o projeto tenha sucesso, recursos como middleware seria ideal.
 
III. O projeto precisa utilizar uma tecnologia capaz de interagir com uma plataforma e linguagem de programação, normalmente não há um meio de troca de dados com diferentes tecnologias.
Selecione a opção correta.
RESPOSTA: I e II, apenas.
Pergunta 6
“Arquitetura baseada em componentes descreve uma abordagem da engenharia de software para estrutura e desenvolvimento de sistemas. Apesar de uma certa complexidade para gerir esse tipo de ambiente, na arquitetura baseada em componentes o foco está na decomposição da estrutura da funcionalidade individual ou componente lógico dele expondo a interface de comunicação contendo seus métodos, eventos e propriedades. Isso provê um alto nível de abstração, estrutura principal da orientação a objetos, não focando em questões de protocolos de comunicação e compartilhamento de estado.”
BACCARO, Marco. Arquitetura baseada em Componentes. Disponível em: https://marcobaccaro.wordpress.com/2010/10/05/arquitetura-baseada-em-componentes/. Acesso em 17 de outubro de 2019. Adaptado.
Considerando o texto acima e o conteúdo visto sobre componentes, avalie as seguintes asserções e a relação proposta entre elas:
 
I. A utilização de componentes permite que o sistema final seja tratado como vários “minissistemas”.
 
PORQUE
 
II. A utilização de componentes diminui a complexidade do sistema, permitindo que cada componente tenha como foco uma única funcionalidade.
RESPOSTA: As asserções I e II são proposições verdadeiras, e a II é uma justificativa da I.
Pergunta 7
Leia o Texto:
Engenharia de Software é a criação e a utilização de sólidos princípios de engenharia a fim de obter softwares econômicos, confiáveis e que trabalhem eficientemente. É também a aplicação de uma abordagem sistemática, disciplinada e quantificável para o desenvolvimento, operação e manutenção de software. Utiliza uma estruturaem camadas que deve se apoiar em um compromisso organizacional com a qualidade. A engenharia de software compreende processo, técnicas de gestão, técnicas de modelagem e o uso de ferramentas e principalmente, pessoas.
 
O Swebok aborda a Engenharia de Software por meio de 10 áreas de conhecimento. Destas 10 áreas, pode-se dizer que estão diretamente relacionadas ao desenvolvimento efetivo do software as áreas
RESPOSTA: requisitos, design, construção, teste e manutenção de software, assim como a área de qualidade.
Pergunta 8
“SOA é uma filosofia de TI que visa facilitar a integração entre sistemas, orientando a criação e a disponibilização de soluções modulares e fracamente acopladas baseadas no conceito de serviços”.
CORDEIRO, Eduardo B. Arquitetura Orientada a Serviços. Disponível em: http://blog.iprocess.com.br/2012/10/soa-arquitetura-orientada-a-servicos/. Acessado em 17 de outubro de 2019. Adaptado.
 
Qual dessas opções descrevem melhor o entendimento da arquitetura SOA?
RESPOSTA: SOA é uma arquitetura que organiza a capacidade de distribuir serviços expondo e consumindo funcionalidades como um serviço.
Pergunta 9
“O SWEBOK apresenta a Engenharia de Software como um conjunto de áreas de conhecimentos necessários para se trabalhar com desenvolvimento de software, desde a codificação em si até a gestão de projetos. ”
FARNESE, Augusto Campos. Entenda o SWEBOK, principal referência na Engenharia de Software. Disponível em: http://igti.com.br/blog/swebok-referencia-na-engenharia-de-software/. Acesso em: 18 de outubro de 2019. Adaptado.
Qual desses guias podem ser considerados de uso essencial ao criar projetos de software?
 
I. SWEBOK, guia para engenharia de software. Os processos e modelos são abordados nesse guia voltado para o processo de desenvolvimento de projetos.
 
II. PMBOK, guia utilizado para projetos em geral. É considerado essencial para o gerenciamento no geral, onde aborda as áreas de conhecimentos necessárias para projetos e pode ser utilizado junto com outros guias.
 
III. BABOK, guia de conhecimento para análise de negócio. É considerado essencial em todos os projetos de software que envolva um produto comercial, é um dos principais guias utilizado no desenvolvimento de software.
RESPOSTA: I e II, apenas.
Pergunta 10
“Como a programação declarativa é baseada em dados imutáveis, ela expressa a lógica de uma computação sem descrever exatamente seu fluxo de controle. Dentro do paradigma declarativo, podemos identificar outros paradigmas, como o funcional, o lógico e a programação restritiva. ”
VIEIRA, Leandro F. Paradigmas de Programação: Uma Abordagem Comparativa. Disponível em: https://leandromoh.gitbooks.io/tcc-paradigmas-de-programacao/2_paradigmas_imperativo_e_declarativo/22_paradigma_declarativo.html. Acesso em: 12 de outubro de 2019.
 
Qual dessas definições explica melhor o paradigma declarativo?
RESPOSTA: O paradigma declarativo é baseado apenas na lógica e suas funcionalidades.

Continue navegando