Questões de Concurso Comentadas sobre engenharia de software
Foram encontradas 12.717 questões
No que se refere aos conceitos de herança múltipla, julgue os itens subsequentes.
I Com a implementação da herança múltipla, é possível simplificar os programas e proporcionar soluções para resolver problemas difíceis.
II Ocorre herança múltipla quando uma classe herda de mais de uma classe, ou seja, existem múltiplas classes‐base (pais) para a classe derivada (filha).
III Na herança múltipla, uma classe herda apenas a estrutura, e não o comportamento de mais de uma classe‐base.
Assinale a alternativa correta.
Na medida em que elas crescem de tamanho, a não utilização de boas técnicas de desenvolvimento acarreta a dificuldade de se fazer manutenção em aplicações.
Alguns conceitos como herança, polimorfismo e encapsulamento são abordados no desenvolvimento de sistemas orientados a objetos.
No desenvolvimento de softwares, há uma regra que torna a vida dos desenvolvedores bem mais simples: os requisitos nunca mudam.
Análise de requisitos, implementação e testes são alguns dos processos que fazem parte do desenvolvimento de sistemas orientados a objetos.
( ) Requisitos dos usuários. ( ) Requisitos éticos. ( ) Requisitos de padrões.
Assinale a alternativa que apresenta a sequência correta de cima para baixo.
Sobre o diagrama de implantação da UML, analise as afirmativas abaixo e dê valores Verdadeiro (V) ou Falso (F).
( ) Mostra o layout físico de um sistema, revelando quais partes do software são executadas em quais partes do hardware.
( ) Define como as máquinas estarão conectadas e através de quais protocolos se comunicarão.
( ) Não deve ser utilizado quando o sistema a ser modelado for ser executado sobre múltiplas camadas.
Assinale a alternativa que apresenta a sequeência correta de cima para baixo.
I. A filosofia defende a satisfação do cliente e a entrega de incremental prévio; equipes de projeto pequenas e altamente motivadas; métodos informais; artefatos de engenharia de software mínimos e, acima de tudo, simplicidade no desenvolvimento geral. Os princípios de desenvolvimento priorizam a entrega, mais que análise e projeto (embora essas atividades não sejam desencorajadas); também priorizam a comunicação ativa e contínua entre desenvolvedores e clientes. II. Sugere uma abordagem sequencial e sistemática para o desenvolvimento de software, começando com o levantamento de necessidades por parte do cliente, avançando pelas fases de planejamento, modelagem, construção, emprego e culminando no suporte contínuo do software concluído. III. Reconhece a importância da comunicação com o cliente e de métodos sequencializados para descrever a visão do cliente sobre um sistema. Enfatiza o importante papel da arquitetura de software e ajuda o arquiteto a manter o foco nas metas corretas, tais como compreensibilidade, confiança em mudanças futuras e reutilização. Sugere um fluxo de processo iterativo e incremental, proporcionando a sensação evolucionária que é essencial no desenvolvimento de software moderno.
Assinale a alternativa em que as definições apresentadas estão corretamente relacionadas às suas respectivas denominações.
I. A UML fornece um suporte semântico e visual robusto baseado na orientação a objeto substituindo uma linguagem de programação. II. Os casos de uso são considerados de importância central para a transição das atividades baseadas em requisitos para as atividades de análise, desenho, implementação, teste do sistema e planejamento dos trabalhos. III. A UML não é uma metodologia ou processo, mas, para empregá-la de modo eficiente e produtivo, é preciso utilizar tanto uma boa ferramenta como uma metodologia, pois a existência de um processo bem gerenciado e bem definido é fundamental para o sucesso de qualquer projeto. IV. A UML representa o sistema em cinco visões: Visão Conceitual, Visão de Caso de Uso, Visão Lógica, Visão Física e Visão de Prototipação.
Estão corretas
Acerca de ferramentas de controle de versão, analise as proposições abaixo.
1) O Subversion é um sistema de controle de versão que foi criado para ter as mesmas funcionalidades do CVS e preservar o mesmo modelo de desenvolvimento, mas sem conter as falhas mais óbvias do CVS.
2) O CVS possui como principal falha de projeto o fato de não dar suporte ao conceito de commit, que foi sanado com a construção do SVN.
3) O Git é um sistema de controle de versão distribuído, no qual, em vez de se fazer um "checkout" da ponta atual do código-fonte, faz-se um "clone" de todo o repositório.
4) Os comandos git svn e git cvs funcionam como pontes bidirecionais, permitindo que o Git funcione como cliente válido de repositórios Subversion ou CVS, respectivamente.
Estão corretas, apenas: