Prévia do material em texto
Livro Eletrônico Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital Diego Carvalho CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 1 de 213 SUMÁRIO PÁGINA - Apresentação 01 - Lista de Exercícios Comentados 134 - Gabarito 213 Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 2 de 213 EXERCÍCIOS CESGRANRIO UNIFIED MODELING LANGUAGE 1. (CESGRANRIO - 2010 – PETROBRÁS - Analista de Sistemas – B) Em relação aos diagramas utilizados na UML 2.0, a) o diagrama de estrutura composta serve para ilustrar a arquitetura de um sistema, mostrando o agrupamento de suas classes. b) o diagrama de pacotes enfatiza a apresentação das classes do ambiente modelado, de acordo com um conjunto de eventos. c) o diagrama de implantação é usado para sistemas distribuídos e permite apresentar a topologia de uma rede de máquinas e qual processo cada máquina vai rodar. d) o diagrama de colaboração tem o objetivo de mostrar como as mensagens entre os objetos são trocadas no decorrer do tempo para a realização de uma operação. e) o diagrama de sequência mostra o contexto de uma interação, inclusive os objetos e seus relacionamentos pertinentes a uma interação particular. Comentários: (a) Errado. Na verdade, essa é a função do Diagrama de Pacotes; (b) Errado. Na verdade, essa é a função do Diagrama de Estrutura Composta; (c) Correto. O Diagrama de Implantação é usado em sistemas distribuídos? Sim, é usado nesse contexto mesmo. Ele permite apresentar a topologia de uma rede de máquinas e qual processo cada máquina vai rodar? Sim, ele serve exatamente para isso; (d) Errado. Na verdade, essa é a função do Diagrama de Sequência; (e) Errado. Na verdade, essa é a função do Diagrama de Colaboração (Comunicação). Gabarito: C 2. (CESGRANRIO – 2014 – EPE – Analista de Gestão Corporativa - Tecnologia de Informação) Caso os desenvolvedores decidam usar a notação UML, qual Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 3 de 213 diagrama é adequado para representar esse ciclo de vida, incluindo os estados e a passagem de um estado para outro? a) b) c) d) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 4 de 213 e) Comentários: A questão pede “incluindo os estados e a passagem de um estado para outro”, logo o único diagrama que trata disso é o Diagrama de (Máquina de) Estados. Gabarito: D 3. (CESGRANRIO – 2014 – EPE – Analista de Gestão Corporativa - Tecnologia de Informação) Qual a forma correta de descrever a associação entre um objeto “Venda” e um objeto “Item de Venda”, em um diagrama de classes UML, para manter a semântica existente no relacionamento entre as entidades de mesmo nome no diagrama de entidades e relacionamentos do SCL? a) b) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 5 de 213 c) d) e) Comentários: A associação entre Venda e Item de Venda é um Composição, em que a Entidade Todo é a Venda e a entidade Parte é Item de Venda, pois um item de venda não existe sem uma venda. Logo, Diamante Cheio do lado de Venda. Gabarito: A Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 6 de 213 4. (CESGRANRIO – 2014 – EPE – Analista de Gestão Corporativa - Tecnologia de Informação) Uma equipe de desenvolvimento de software escolheu utilizar a análise orientada a objeto, seguindo a notação UML, para desenvolver um projeto razoavelmente complexo. Em certo ponto do projeto, ficou clara a necessidade de representar quais elementos externos interagem com que funcionalidades do sistema, em um nível alto de abstração. Qual o diagrama destinado para representar essas interações? a) Diagrama de Casos de Uso b) Diagrama de Colaboração c) Diagrama de Fluxo de Dados d) Diagrama de Interface com o Usuário e) Diagrama de Sequência Comentários: O diagrama de casos de uso corresponde a uma visão externa do sistema e representa graficamente os atores, os casos de uso, e os relacionamentos entre estes elementos. Ele tem como objetivo ilustrar em um nível alto de abstração quais elementos externos interagem com que funcionalidades do sistema, ou seja, a finalidade de um diagrama de caso de uso é apresentar um tipo de diagrama de contexto que apresenta os elementos externos de um sistema e as maneiras segundo as quais eles as utilizam. Gabarito: A 5. (CESGRANRIO – 2014 – FINEP – Analista – Desenvolvimento de Sistemas) Um fragmento combinado é um elemento da UML frequentemente empregado na construção de diagramas de sequência. Dentre os diferentes tipos de operadores de fragmentos combinados encontra-se: a) if b) while c) case d) for e) par Comentários: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 7 de 213 Nos diagramas de seqüência, fragmentos combinados são agrupamentos lógicos representados por um retângulo, que contém as estruturas condicionais que afetam o fluxo de mensagens. Um fragmento combinado contém operandos de interação e é definido pelo operador de interação. O operador Par define que o fragmento representa uma execução paralela de dois ou mais comportamentos. Vamos relembrar os operadores: Gabarito: E 6. (CESGRANRIO – 2014 – FINEP – Analista – Desenvolvimento de Sistemas) O sistema de informação responsável pelo registro civil de um estado brasileiro possui uma função para registrar as informações necessárias sobre um cidadão que precisa obter uma carteira de identidade. Através dessa função, são registrados no sistema informações tais como: o nome, a data de nascimento, os nomes dos pais e o local de nascimento desse cidadão. No ato do cadastramentodescrito acima, o funcionário que opera o sistema pergunta ao cidadão se ele deseja registrar que ele é doador de órgãos para transplante. Caso a resposta seja afirmativa, o funcionário seleciona essa opção no formulário de registro, o que fará com que o sistema abra um formulário para que o funcionário registre informações fornecidas pelo cidadão, tais como: tipo sanguíneo, doenças preexistentes, etc. Baseado apenas no que foi descrito acima, qual diagrama de casos de uso descreve adequadamente as funcionalidades disponibilizadas pelo sistema de informação em questão? a) Alt – Alternativas Break – Quebra Ignore – Ignorar Opt – Opção Critical - Região Crítica Consider – Considerar Par – Paralelo Ne - Negativo Seq – Seqüência Fraca Loop – Laço Assertion – Afirmação Strict – Seqüência Estrita Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 8 de 213 b) c) d) e) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 9 de 213 Comentários: Vejamos as diferenças entre a Inclusão, Extensão e Generalização: - Inclusão: Quando o caso de uso A “inclui” o caso de uso B, significa que sempre que o caso de uso A for executado, o caso de uso B também será executado. A direção do relacionamento é do caso de uso que está incluindo para o caso de uso incluído. - Extensão: Quando o caso de uso B estende o caso de uso A, significa que quando o caso de uso A for executado, o caso de uso B poderá (poderá – talvez não seja) ser executado também. A direção do relacionamento é do caso de uso extensor (aqui o caso de uso B) para o caso de uso estendido (caso de uso A). - Generalização: Quando o caso de uso B generaliza o caso de uso C isso significa que, além de fazer tudo que nele está especificado (ele = B), ele também executará tudo que está especificado no caso de uso C. A direção do relacionamento é sempre do generalizador (aqui o caso de uso B) para o generalizado (caso de uso C). No caso da questão, observe que o funcionário registra o cidadão, mas não necessariamente o registra como doador. Logo, trata-se de uma extensão! Gabarito: A 7. (CESGRANRIO – 2014 – IBGE – Analista – Análise e Desenvolvimento de Aplicações) Em Análise de Sistemas, a UML é uma: a) metodologia que determina como deve ser realizada a análise de requisitos de sistemas complexos. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 10 de 213 b) metodologia de desenvolvimento de sistemas que inclui desde a análise de requisitos até a especificação de testes do sistema com modelos orientados a objetos. c) notação para o projeto físico de sistemas que usam linguagens orientadas a objetos como o Java e o C++. d) linguagem de modelagem que usa os conceitos de orientação a objetos para permitir a especificação de sistemas em diversos níveis de abstração. e) notação para facilitar representação visual de padrões de projeto e desenvolvimento da estrutura lógica de programas em plataformas de objetos distribuídas. Comentários: UML é sigla para Unified Modeling Language, ou seja, é uma linguagem de modelagem que utiliza conceitos de orientação a objetos para permitir a especificação de sistemas em diversos níveis de abstração. Gabarito: D 8. (CESGRANRIO – 2014 – LIQUIGÁS – Profissional Júnior – Análise de Sistemas) Devido à complexidade de um sistema de informação, o líder de projeto solicitou a um analista de sistemas a criação de diagramas que ilustrem os passos que compõem os casos de uso desse sistema, incluindo a sequência principal e todas as sequências alternativas. Para atender a essa solicitação, o analista deve criar diagramas de: a) classes b) atividades c) componentes d) objetos e) estados Comentários: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 11 de 213 O Diagrama de Atividades tem como objetivo principal a especificação do comportamento do software, do ponto de vista funcional, ou seja, das suas funcionalidades. Gabarito: B 9. (CESGRANRIO – 2014 – LIQUIGÁS – Profissional Júnior – Análise de Sistemas) Em um modelo de casos de uso, o tipo de relação a ser estabelecido entre um ator e um caso de uso é o de: a) associação b) composição c) dependência d) extensão e) generalização Comentários: Entre Ator e Casos de Uso só há Associação. Gabarito: A 10. (CESGRANRIO – 2014 – LIQUIGÁS – Profissional Júnior – Análise de Sistemas) Seja o seguinte diagrama UML 2: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 12 de 213 Que tipo de diagrama é esse? a) Diagrama de objetos b) Diagrama de tempo c) Diagrama de estados d) Diagrama de comunicação e) Diagrama de colaboração Comentários: O Diagrama de comunicação expõe o livre posicionamento dos participantes, o vínculo entre os participantes, uma numeração para mostrar a sequência de mensagens. No UML 1.x, era chamado de Diagrama de Colaboração. Gabarito: D 11. (CESGRANRIO – 2013 – LIQUIGÁS – Profissional Júnior – Análise de Sistemas) No diagrama de sequência UML a seguir, existem 5 mensagens, numeradas de 1 a 5. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 13 de 213 Qual delas representa uma mensagem assíncrona? a) 1 b) 2 c) 3 d) 4 e) 5 Comentários: Pessoal, só relembrando: : Mensagem Sincrona : Mensagem Assíncrona Gabarito: D 12. (CESGRANRIO – 2013 – LIQUIGÁS – Profissional Júnior – Análise de Sistemas) A Figura a seguir representa uma classe UML: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 14 de 213 Quantas propriedades (features) estáticas essa classe possui?a) 0 b) 1 c) 2 d) 3 e) 4 Comentários: Vejamos a notação para atributos e métodos de classes em UML: - atributo ~ atributo # atributo + atributo atributo atributo Privado Pacote Protegido Público Abstrato (itálico) Estático (sublinhado) Logo, não temos nenhuma propriedade estática. Gabarito: A 13. (CESGRANRIO – 2013 – BNDES – Profissional Básico – Análise de Sistemas – Desenvolvimento) Considere, em um primeiro sentido, que “pedreiros trabalham em construção civil” e, em sentido contrário, que “a construção civil emprega pedreiros”. Na análise orientada a objetos com notação UML (Unified Modeling Language), o exemplo mencionado, de acordo com o modelo objeto, está relacionado a uma a) inversão de classes e instâncias em um mesmo método b) conexão de objetos das mesmas classes c) relação entre atividade e entidade Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 15 de 213 d) reciprocidade de informação e) independência funcional Comentários: Questão bem confusa e de difícil interpretação, mas podemos pensar que são duas formas de ver a relação entre pedreiros e a construção civil, de tal forma que a construção é uma composição de pedreiros, pois sem eles não há construção, logo representa a conexão dos objetos da classe pedreiro com os objetos da classe contrução civil. Sério, que questão horrível! Gabarito: B 14. (CESGRANRIO – 2012 – EPE – Analista de Gestão Corporativa – Tecnologia da Informação) Considere o diagrama de estados a seguir, apresentado na notação da UML. Esse diagrama representa uma máquina de lavar roupas, que possui dois botões, On e Off, para ligar e desligar a máquina, respectivamente. Nesse diagrama, há uma variável n, cujo valor é alterado em determinadas situações. Considere que o sistema se encontra no estado inicial e que o botão “On” é pressionado duas vezes consecutivas. Em seguida, o botão “Off” é pressionado por duas vezes também consecutivas e, finalmente, o botão “On” é novamente pressionado uma única vez. Qual o valor da variável n após essa sequência de eventos? a) 0 b) 1 c) 2 d) 3 e) 4 Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 16 de 213 Comentários: Vamos analisar cada execução passo-a-passo: I. A variável n inicia com valor 0; II. Ao pressionar ON, o valor passa a: n = 1 (Exit) -> n = n + 1 (ON), logo n = 2, mas ao retornar ao estado Ligado, o valor de N é “setado” para 0, logo n= 0; III. Ao pressionar ON, novamente, repete-se o passo II, logo n = 0; IV. Ao pressionar OFF, há transição para o estado desligado, então: n = 1 (Exit) -> n = 2 (OFF), n = 0 (Entra no estado desligado); V. Ao pressionar OFF novamente: n = 2 (OFF) -> n = 0 (Entrada no estado desligado); VI. Ao pressionar ON: n = 2 (Saída do estado desligado) -> n = 1 (ON) -> n= 0 (Entrada no estado ligado) Logo, n = 0 ao final das execuções. Gabarito: A 15. (CESGRANRIO – 2012 – CHESF – Profissional de Nível Superior) Um robô foi construído para andar em um grid cujas posições são indicadas por pares ordenados (x,y), onde x e y são números inteiros. Esse robô recebe como comando uma string binária e funciona segundo a máquina de estado a seguir, descrita em UML 2.3. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 17 de 213 Iniciando na posição (0,0), o robô recebeu a string binária 111011110100010100. Em que posição o robô parou? a) (0,2) b) (0,4) c) (2,0) d) (2,2) e) (4,0) Comentários: Questão bem simples, vamos fazer passo a passo: Início P 1 -> V 1 -> VP 1 -> (0,0) (0,0) (0,0) (0,1) VP 0 -> PS 1 -> P 1 -> V 1 -> (0,2) (0,2) (0,2) (0,2) VP 1 -> VP 0 -> PS 1 -> P 0 -> (0,3) (0,4) (0,4) (0,4) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 18 de 213 H 0 -> HM 0 -> PS 1 -> P 0 -> (0,4) (-1,4) (-1,4) (-1,4) H 1 -> HP 0 -> PS 0 -> Fim (-1,4) (0,4) (0,4) (0,4) Gabarito: B 16. (CESGRANRIO – 2012 – Petrobras - Analista de Sistemas Júnior - Engenharia de Software) Seja o seguinte diagrama de classes UML: Qual conjunto de classes e interfaces Java é compatível com os elementos de modelagem existentes nesse diagrama? a) package PKGB; public interface X3 { public abstract int opA(); public abstract double opB(int z); } package PKGA; import PKGB.X3; public class A implements X3 { int a1; double a2; private C[] c; public void ma01(int x) { // código irrelevante } public int opA() { Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 19 de 213 // código irrelevante } } package PKGA; public class B extends A { int b1; String b2; public void ma01(int x) { // código irrelevante } public double opB(int y) { // código irrelevante } public int opA() { // código irrelevante } } package PKGA; public class C { private int c1; private String c2; public double mc01(double a, double b) { // código irrelevante } public String mc02(String str, int ini, int param4) { // código irrelevante } } b) package PKGB; public interface X3 { public abstract int opA(); public abstract double opB(int z); } package PKGA; import java.util.*; public class A { int a1; double a2; Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 20 de 213 private List<C> lc; public void ma01(int x) { // código irrelevante } public int opA() { // código irrelevante } } package PKGA; importPKGB.X3; public class B extends A implements X3 { int b1; String b2; public void ma01(int x) { // código irrelevante } public double opB(int y) { // código irrelevante } public int opA() { // código irrelevante } } package PKGA; import java.util.*; public class C { private int c1; private String c2; private List<A> la; public double mc01(double a, double b) { // código irrelevante } public String mc02(String str, int ini, int param4) { // código irrelevante } } c) package PKGB; Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 21 de 213 public interface X3 { public abstract int opA(); public abstract double opB(int z); } package PKGA; import java.util.*; public class A { private int a1; private double a2; private List<C> lc; public void ma01(int x) { // código irrelevante } public int opA() { // código irrelevante } } package PKGA; import PKGB.X3; public class B extends A implements X3 { private int b1; private String b2; public void ma01(int x) { // código irrelevante } public double opB(int y) { // código irrelevante } public int opA() { // código irrelevante } } package PKGA; public class C { private int c1; private String c2; public double mc01(double a, double b) { // código irrelevante } public String mc02(String str, int ini, int param4) { Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 22 de 213 // código irrelevante } } d) package PKGB; public interface X3 { public abstract int opA(); public abstract double opB(int z); } package PKGA; public class A { int a1; double a2; private C[] c; public void ma01(int x) { // código irrelevante } public int opA() { // código irrelevante } } package PKGA; import PKGB.X3; public class B extends A implements X3 { int b1; String b2; public void ma01(int x) { // código irrelevante } public double opB(int y) { // código irrelevante } public int opA() { // código irrelevante } } package PKGA; public class C { private int c1; Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 23 de 213 private String c2; public double mc01(double a, double b) { // código irrelevante } public String mc02(String str, int ini, int param4) { // código irrelevante } } e) package PKGB; public interface X3 { public abstract int opA(); public abstract double opB(int z); } package PKGA; import java.util.*; public class A { int a1; double a2; List<C> lc; public void ma01(int x) { // código irrelevante } public int opA() { // código irrelevante } } package PKGA; import PKGB.X3; public class B implements A extends X3 { int b1; String b2; public void ma01(int x) { // código irrelevante } public double opB(int y) { // código irrelevante } public int opA() { Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 24 de 213 // código irrelevante } } package PKGA; public class C { private int c1; private String c2; public double mc01(double a, double b) { // código irrelevante } public String mc02(String str, int ini, int param4) { // código irrelevante } } Comentários: Primeiramente devemos entender os relacionamentos existentes: A tem referência para um array objetos da Classe C, privados. B é Especialização da Classe A e implementa a interface K3 do PKGB. Agora vamos analisar cada opção. (a) Errada. Não é A que implementa a interface K3 e sim B; (b) Errada. C está com referência para um array de Objetos que extendem a Classe A; (c) Errada. OS atributos a1 e a2 não são privado e sim default; (d) Correta; (e) Errada. A classe B extende a classe A e implementa a interface K3, além disso o Array de C deve ser privado. Gabarito: D 17. (CESGRANRIO – 2012 – BNDES – Petrobras - Analista de Sistemas Júnior - Engenharia de Software) Um restaurante contratou uma equipe para desenvolver um sistema de informação que auxilie nas tarefas diárias do negócio. Após um levantamento inicial, a equipe listou os seguintes requisitos: ▪ O caixa será responsável por encerrar uma conta e registrar o pagamento da mesma; ▪ Caso o pagamento seja feito com cheque, será necessário que o sistema do restaurante se comunique com o sistema de consulta de cheques do Serviço de Proteção ao Lojista para obter informações sobre o cliente; Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 25 de 213 ▪ Caso o pagamento seja feito com cartão de crédito, será necessário que o sistema do restaurante se comunique com o sistema da administradora do cartão para obter autorização; ▪ Apenas o gerente terá acesso à função de estorno do valor pago. Caso a despesa tenha sido paga com cartão, seránecessário se comunicar com o sistema da administradora; ▪ Tanto o sistema da administradora de cartões como o de consulta de cheques serão acessados via web service; ▪ O gerente também poderá encerrar uma conta. Qual diagrama de caso de uso descreve adequadamente os requisitos acima? a) b) c) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 26 de 213 d) e) Comentários: Devemos entender o que os requisitos querem nos dizer. Se tanto o gerente quanto o caixa terão as mesmas funções básicas, com o gerente tendo funções exclusivas, então gerente é generalização de caixa, logo as alternativas A e B são eliminadas. Em seguida devemos perceber que há dois atores externos, o Sistema de Consulta de Cheques e o Sistema de Administradora de Cartões, logo eliminamos a alternativa E que não contempla esses atores. O conceito de web service está ligado Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 27 de 213 a aspectos de implementação e não tem representação em UML, logo a Letra D está eliminada também. Por fim, nos resta a opção correta letra C. Gabarito: C 18. (CESGRANRIO – 2016 – IBGE – Supervisor de Pesquisas – Tecnologia de Informação e Comunicação) A Figura a seguir exibe um diagrama E-R. Qual diagrama de classes conceituais UML é semanticamente equivalente ao diagrama acima? a) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 28 de 213 b) c) d) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 29 de 213 e) Comentários: Primeiro vamos representar cada uma das entidades A, B e C bem como dos relacionamentos R, S e T. Para isso, temos que representar os atributos de cada um deles. Notem que A-C possuem um relacionamento N:N e, nesse caso, devemos ter uma Entidade Associativa (S). Notem que B-B também possuem um relacionamento N:N, mas esse relacionamento possui um atributo t1. Logo, temos uma Associação Qualificada T da Entidade B que representa uma associação que se distingue das demais e cujo atributo só faz sentido com a existência da associação. Agora temos que representar as associações entre as entidades: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 30 de 213 Gabarito: E 19. (CESGRANRIO – 2016 – IBGE – Supervisor de Pesquisas – Tecnologia de Informação e Comunicação) Qual diagrama UML contém uma associação ternária ou uma associação equivalente a uma ternária? a) b) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 31 de 213 c) d) e) Comentários: Para que aconteça uma relação ternária, mais de duas entidades devem estar relacionadas. Numa representação R2, isso é representado por um losango com três entidades participantes. A equivalência em UML está melhor representada pela Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 32 de 213 primeira opção, pois as entidades A e B tem um relacionamento R1 que por sua vez se relaciona com C através de uma relacionamento R2. A dúvida que poderia aparecer seria quanto a última opção, contudo repare que embora exista o relacionamento V1 materializado, este não tem nenhuma ligação com o relacionamento V2. Gabarito: A 20. (CESGRANRIO – 2016 – UNIRIO – Técnico em Tecnologia de Informação) Qual notação gráfica é usada em diagramas de sequência UML para representar uma mensagem cuja origem é conhecida, mas cujo destino se encontra fora do escopo das interações descritas por esses diagramas? a) b) c) d) e) Comentários: (a) Mensagem enviada de um destinatário desconhecido; (b) Mensagem enviada para um destinatário desconhecido; (c) Mensagem Sincrona; (d) Mensagem assíncrona; (e) Mensagem de Resposta. Gabarito: B 21. (CESGRANRIO – 2016 – UNIRIO – Técnico em Tecnologia de Informação) No modelo de caso de uso da UML, o único tipo de relação permitido entre atores é: a) associação b) dependência c) extend d) include e) generalização Comentários: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 33 de 213 O único tipo de relacionamento entre atores em UML é a generalização. Desta forma, os casos de uso de B são também casos de uso de A e A tem seus próprios casos de uso. Gabarito: E 22. (CESGRANRIO – 2016 – UNIRIO – Técnico em Tecnologia de Informação) A Figura a seguir exibe um diagrama de classes UML. O retângulo onde se lê a letra X, adjacente à classe A, indica que a associação entre A e B é: a) navegável de A para B b) navegável de B para A c) derivada d) qualificada e) uma agregação Comentários: Trata-se de uma associação qualificada em UML. Um qualificador é um atributo ou um conjunto de atributos cujos valores servem para partir o conjunto de instâncias associadas ao longo de uma associação. Os qualificadores são atributos da associação. Ele é representado graficamente por um retângulo na extremidade da associação. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.brPág. 34 de 213 O retângulo qualificador faz parte da associação e não dos qualificadores que contém. O qualificador é posicionado no extremo da classe de origem. Uma instância da classe de origem, junto de um valor do qualificador, permite selecionar univocamente um subconjunto das instâncias da classe de destino, isto é, da classe do outro extremo da associação. A multiplicidade afeta o destino da cardinalidade das instâncias da classe de destino, com base no par de informações: instância de origem e valor do qualificador. Os valores comuns são: 0..1: um único valor pode ser selecionado ou, eventualmente, nenhum; 1: um único valor tem de ser selecionado; *: o valor do qualificador é um índice que agrega as instâncias de destino em diferentes subconjuntos. Gabarito: D 23. (CESGRANRIO – 2016 – UNIRIO – Técnico em Tecnologia de Informação) Qual diagrama UML contém uma composição? a) b) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 35 de 213 c) d) e) Comentários: (a) Herança\Generalização; (b) Dependência; (c) Assocaição; (d) Composição. O todo contém as partes (e não referências para as partes). Quando o todo desaparece, todas as partes também desaparecem; (e) Agregação é uma associação em que um objeto é parte de outro, de tal forma que a parte pode existir sem o todo. Lembrem-se: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 36 de 213 Gabarito: D 24. (CESGRANRIO – 2016 – UNIRIO – Técnico em Tecnologia de Informação) Uma empresa que possui um site de vendas de produtos na Web desenvolveu um sistema de informação para registrar suas vendas e controlar a entrega das mesmas. Os seguintes dados são manipulados por esse sistema: ▪ Cliente – todos os clientes precisam estar cadastrados no sistema para que possam realizar compras. Sobre um cliente precisa-se conhecer o login, a senha de login, o nome e o número do CPF. ▪ Produtos – todos os produtos precisam estar cadastrados no sistema para que possam ser comprados pelos clientes. Sobre um produto precisa-se registrar o código de identificação, uma descrição, o preço de venda e a quantidade disponível para compra. ▪ Transportadoras – todas as transportadoras precisam estar cadastradas no sistema para que possam ser escolhidas para entregar as compras dos clientes. Sobre uma transportadora precisa-se registrar o código de identificação, o nome e o número do CNPJ. ▪ sistema deve registrar a quantidade de cada produto que faz parte de uma compra, a data da compra e o endereço de entrega da mesma. Além disso, ele deve registrar a transportadora escolhida pelo cliente para realizar a entrega. Qual diagrama de classes conceituais UML descreve corretamente o negócio descrito acima, sem apresentar incompletudes e redundâncias? a) IMPORTANTE Observem que o Relacionamento de Composição é representado por uma linha sólida com um diamante cheio na classe compositora. Pessoal, quando eu aprendi isso, decorei assim: Diamante Cheio = Composição. Portanto, Diamante Vazio = Agregação. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 37 de 213 b) c) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 38 de 213 d) e) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 39 de 213 Comentários: Primeiro, notem que toda vez que a questão diz que algo precisa estar cadastrado no sistema, nós podemos considerar que se trata de uma entidade que precisa ser persistida, logo seriam classes. Qual o erro da Letra B? Transportadora não se relaciona com o produto, mas com a compra; Qual o erro da Letra C? Ele considera Transportadora como um atributo da compra e, não, uma entidade; Qual o erro da Letra D? A questão diz que o sistema deve registrar a quantidade de cada produto que faz parte de uma compra, ou seja, a quantidade é um atributo do relacionamento PRODUTO-COMPRA e, não, PRODUTO-COMPRA-CLIENTE, portanto tem que estar em uma entidade associativa; Qual o erro da Letra E? A questão diz que o sistema deve registrar a quantidade de cada produto que faz parte de uma compra, ou seja, a quantidade é um atributo do relacionamento PRODUTO-COMPRA e, não, PRODUTO-COMPRA-CLIENTE, portanto tem que estar em uma entidade associativa. Galera, eu honestamente não gosto dessa questão. A maneira que é descrita a parte final é desleixada e deixa ambígua a modelagem. Gabarito: A 25. (CESGRANRIO – 2014 – CEFET-RJ – Técnico em Tecnologia de Informação) Uma faculdade decidiu alterar seu sistema acadêmico, atualmente escrito em Delphi, Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 40 de 213 para aceitar uma interface Web. Para isso, decidiu adotar as tecnologias Ajax e PHP. A primeira parte do trabalho será alterar o subsistema de avaliação, chamado de NOTAS. O modelo de dados atual desse subsistema é bastante simples, e é descrito pelo modelo diagrama a seguir, que usa a notação IDEF1X. Qual modelo de classes UML apresenta associações entre as classes que representam relacionamentos equivalentes àqueles existentes entre as entidades do mesmo nome no DER do sistema Notas? a) b) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 41 de 213 c) d) e) Comentários: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.brPág. 42 de 213 Vejamos a definição de uma composição: - A Composição é uma agregação mais forte; nela, a existência da Parte NÃO faz sentido se o Todo não existir. - O losango preenchido fica posicionado do lado do Todo. Voltando à questão, vamos pensar: Aluno, Turma e Prova TÊM nota, logo o TODO é Aluno, Turma e Prova e a PARTE é nota. (1) Faz sentido a entidade Nota continuar existindo sem que a entidade Turma exista? Não! Galera Nota não existe sem Aluno, Turma e Prova – logo isso é uma Composição. Portanto a representação é uma linha sólida com um diamante cheio do lado do todo... Letra A. Gabarito: A 26. (CESGRANRIO – 2014 – CEFET-RJ – Técnico em Tecnologia de Informação) Uma universidade decidiu alterar seu sistema acadêmico, atualmente escrito em Delphi, para aceitar uma interface Web. Para isso, decidiu adotar as tecnologias Ajax e PHP. A primeira parte do trabalho será alterar o subsistema de avaliação, chamado de NOTAS. O modelo de dados atual desse subsistema é bastante simples, e é descrito pelo modelo diagrama a seguir, que usa a notação da Engenharia da Informação. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 43 de 213 Para reconstruir a representação em DER dos dados do subsistema NOTAS de acordo com um Diagrama de Classes de UML, como deve ser representada a associação entre uma classe Nota e uma classe Turma, de forma a manter significado equivalente ao do relacionamento entre as entidades de mesmo nome? a) b) c) d) e) Comentários: O relacionamento entre Nota e Turma é 1:N - uma turma tem zero ou várias notas, mas uma nota é de necessariamente uma turma. Essa modelagem é meio esquisita, mas representa que a nota que compõe a turma e não o contrário. Logo, losango preenchido do lado da Turma. Gabarito: B 27. (CESGRANRIO – 2014 – CEFET-RJ – Técnico em Tecnologia de Informação) Qual diagrama de estados UML não possui erros sintáticos nem erros semânticos? a) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 44 de 213 b) c) d) e) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 45 de 213 Comentários: (b) Não pode haver dois nós de início (distintos); (c) Não há definido evento, guarda ou ação de transição do estado ST1 para o ST2 nem do ST1 para o ST3; (d) Não pode haver condição de guarda (booleana) do nó de início para o estado inicial; (e) Não pode haver transição do nó de final para um estado intermediário. Gabarito: A 28. (CESGRANRIO – 2014 – Banco da Amazônia – Técnico em Tecnologia de Informação) Considere as seguintes regras, que devem ser observadas por um sistema de informação: 1. Um carnê possui muitos boletos de pagamento. 2. Cada boleto pode ter sido pago ou não. Caso ele tenha sido pago, é necessário que se conheça o banco em que o pagamento foi realizado. 3. Um boleto é parte integrante de apenas um carnê, que, por sua vez, é composto por ao menos um boleto. 4. Caso um carnê seja excluído do sistema, todos os boletos que o compõem também deverão ser excluídos. Qual diagrama de classes UML representa adequadamente as regras descritas acima? a) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 46 de 213 b) c) d) e) Comentários: Galera, observando a quarta informação, temos que – caso um carnê seja excluído do sistema – todos os boletos que o compõem também deverão ser excluídos. Dessa forma, sabemos que o relacionamento entre Boleto e Carnê é uma Composição, i.e., um boleto não existe sem um carnê ou a parte não existe sem o todo. O único item que representa corretamente a composição é o Item C. Gabarito: C 29. (CESGRANRIO – 2014 – Banco da Amazônia – Técnico em Tecnologia de Informação) Seja o seguinte diagrama de sequência UML: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 47 de 213 Qual mensagem é do tipo lost message? a) 1 b) 2 c) 3 d) 4 e) 5 Comentários: A mensagem vinda de TA não chega a TB, logo se trata de uma Lost Message. Gabarito: B 30. (CESGRANRIO – 2016 – UNIRIO – Técnico em Tecnologia de Informação) Qual diagrama UML contém uma composição? a) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 48 de 213 b) c) d) e) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 49 de 213 Comentários: (a) Herança\Generalização; (b) Dependência; (c) Associação; (d) Composição. Lembrem-se do Diamante Cheio = Composição; (e) Agregação. Gabarito: D 31. (CESGRANRIO – 2012 – EPE – Analista de Gestão Corporativa – Tecnologia da Informação) Considere um sistema de software que foi modelado com o seguinte diagrama de casos de uso: Ator 2 pode participar em interações com esse sistema que envolvam comportamentos do(s) caso(s) de uso: a) W, apenas. b) W e X, apenas. c) V e W, apenas. d) U, W, X, Y e Z, apenas. e) U, V, W, X, Y e Z. Comentários: Por se tratar de uma Herença entre o Ator 1 (Pai) e o Ator 2 (Filho), todos os casos de uso com os quais o Ator 1 participar, o Ator 2 (Filho) também participará. Assim, devemos definir quais interações o Ator 1 tem e somá-las às interações do Ator 2. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 50 de 213 O Ator 1 tem interaçõescom o caso de uso X, que é uma generalização de Y e Z, logo o Ator 1 tem interações com X, Y e Z. Além disso o caso de uso Z tem uma relação de inclusão com o caso de uso U, logo o Ator 1 também tem interação com este. Assim, o Ator 1 se tem interações com X, Y, Z e U. O Ator 2 além das interações do Ator 1, tem interações com o caso de uso W e sua extensão V (observe que a questão pergunta quais interações o Ator 2 pode se envolver). Logo, ele tem interações com X, Y, Z, U, W e V. Gabarito: E 32. (CESGRANRIO – 2014 – LIQUIGÁS – Profissional Júnior – Análise de Sistemas) Qual diagrama UML está em conformidade com os artefatos normalmente produzidos pela disciplina de análise e especificação de requisitos? a) Diagrama de classes contendo as classes de domínio e as classes do subsistema responsável pela persistência dos dados. b) Diagrama de sequência que ilustre as interações entre os componentes de um framework da camada de apresentação e os objetos controladores de casos de uso. c) Diagrama de estados que ilustre a visão externa do comportamento de um sistema. d) Diagrama de componentes que mostre como as classes de domínio estão distribuídas pelos componentes de um sistema. e) Diagrama de implantação que ilustre os nós da rede de computadores do cliente e a distribuição dos componentes por esses nós. Comentários: Pessoal, esta questão está bem ruim, mas vamos ver cada opção: (a) Fase de Projeto da solução; (b) Fase de Implementação da solução e codificação; (c) Fase inicial para entender os fluxos do sistema e seus estados; (d) Fase de Implementação da solução e codificação; (e) Fase Final antes da entrega. Gabarito: C Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 51 de 213 ACERTEI ERREI Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 52 de 213 EXERCÍCIOS ESAF UNIFIED MODELING LANGUAGE 1. (ESAF - 2008 – BACEN – Analista de Sistemas) A UML inclui diagramas de interação para ilustrar como os objetos interagem por meio de mensagens. Os diagramas de interação constituem uma generalização de dois tipos de diagramas especializados na UML: Diagrama de Seqüência e Diagrama de Comunicação. Assinale a sentença que se refere exclusivamente a um Diagrama de Comunicação. a) Cada mensagem entre objetos é representada com uma expressão de mensagem em linha sólida, com seta cheia, entres as linhas de vida verticais. b) A notação UML para chamadas assíncronas é uma mensagem com seta traçada. c) Os participantes da linha da vida devem representar um objeto, não uma coleção. d) A ordem das mensagens é ilustrada com números de seqüência. e) A barra de especificação de execução indica o foco de controle. Comentários: (a) Linha de Vida é exclusividade do Diagrama de Sequência; (b) Notação para chamadas assíncronas se referem exclusivamente ao Diagrama de Sequência; Linha de Vida novamente é exclusividade do Diagrama de Sequência; (d) Perfeito, a ordem das mensagens é ilustrada com números de sequência; (e) Barra de Especificação é exclusiva do Diagrama de Sequência. Gabarito: D 2. (ESAF - 2010 – SUSEP – Analista de Sistemas) O Diagrama de Estado mostra: a) os estados expressos que os objetos de uma dada classe podem assumir e as transformações entre pares de classes b) os estados admissíveis que os atributos de uma dada classe podem modificar e os pares de estados mais relevantes. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 53 de 213 c) os estados de atualização que os objetos de qualquer classe podem assumir e as transições permitidas entre instâncias. d) os estados admissíveis que os objetos de uma dada classe podem assumir e as transições permitidas entre pares de estados. e) os estados coerentes com os objetos priorizados e as restrições de transições entre pares de estados. Comentários: Conforme vimos em aula, ele mostra os estados admissíveis que os objetos de uma dada classe podem assumir e as transições permitidas entre pares de estados. Gabarito: D 3. (ESAF - 2012 – CGU – Analista de Sistemas) Para indicar a visibilidade da propriedade, a UML: a) incorpora um prefixo a um nome de atributo ou nome de operação. b) incorpora um sufixo a um nome de atributo ou origem de operação. c) gera um nome de atributo e nome de transação totalmente distinto do anterior. d) duplica nome de atributo ou nome de operação. e) sublinha o nome de atributo ou nome de operação. Comentários: A UML incorpora um prefixo (+, -, ~, #) a um nome de atributo ou nome de operação (método). Gabarito: A 4. (ESAF - 2010 – MPOG – Analista de Sistemas) Na UML – Unified Modelling Language: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 54 de 213 a) um atributo representa operações entre objetos. b) um atributo representa informações sobre um objeto. c) um atributo possui várias classes. d) não existem atributos não numéricos. e) atributos são classes abstratas. Comentários: Um atributo representa informações (dados) sobre um objeto – trata-se do estado de um objeto. Gabarito: B 5. (ESAF - 2012 – CGU – Analista de Sistemas) Uma associação em UML representa: a) uma população variada de relações (engagements) de redundâncias entre instâncias de classe. b) uma população variada de vínculos (links) de relacionamentos entre instâncias de classe. c) uma classificação de vínculos (links) de relacionamentos entre classes de atributos. d) uma população constante de valores (values) de relacionamentos quantitativos entre atributos de instâncias. e) uma estrutura de equivalências (equal features) entre relacionamentos de instâncias de posicionamento de classes. Comentários: Conforme vimos em aula, uma associação é um relacionamento estrutural entre objetos e especifica os objetos de uma classe que estão ligados a objetos de outra classe. Em outras palavras, uma população variada de vínculos (links) de relacionamentos entre instâncias de classes (objetos). Gabarito: B Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 55 de 213 6. (ESAF - 2012 – CGU – Analista de Sistemas) Quanto ao uso dediagramas na UML para a modelagem de objetos é correto afirmar que o Diagrama de Seqüência: a) descreve a funcionalidade do sistema percebida por atores externos. b) apresenta a interação de seqüência de tempo dos objetos que participam na interação. c) apresenta a interação de seqüência de atores que participam na interação. d) descreve a funcionalidade do sistema percebida por atores internos. e) apresenta a interação de seqüência estática de pacotes, relacionamentos e instâncias. Comentários: O Diagrama de Sequência é um diagrama de interação que captura o comportamento de um único cenário, mostrando vários exemplos de objetos e mensagens que são trocadas dentro de caso de uso. Ele modela a interação entre os objetos, permitindo a visualização da execução de um ponto específico da aplicação, com ênfase na ordem temporal. Conforme vimos em aula, ele apresenta a interação de sequência de tempo dos objetos que participam na interação. Gabarito: B ACERTEI ERREI Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 56 de 213 EXERCÍCIOS FCC UNIFIED MODELING LANGUAGE 1. (FCC - 2010 – DPE/SP – Análise de Sistemas) Na UML os diagramas servem para capturar diferentes visões do sistema. NÂO é um diagrama UML: a) Diagrama de Métodos. b) Diagrama de Classes. c) Diagrama de Objetos. d) Diagrama de Sequência. e) Diagrama de Estados. Comentários: Conforme vimos em aula, não existe Diagrama de Métodos. Gabarito: A 2. (FCC- 2012 – TRE/PI – Análise de Sistemas – IV) Um diagrama de objetos é um tipo especial de diagrama, composto por objetos e seus vínculos, que compartilha as mesmas propriedades comuns a todos os outros diagramas. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 57 de 213 Comentários: Diagramas de Objetos podem ser vistos como especiais por serem uma instância do Diagrama de Classes ou por conterem valores específicos ao objeto em si. Ele, de fato, é composto de objetos e seus vínculos e compartilha as mesmas propriedades comuns a todos os outros diagramas. Professor, que propriedades? Grady Booch afirma: “Um diagrama de objetos é um tipo especial de diagrama e compartilha as mesmas propriedades comuns a todos os outros diagramas – ou seja, um nome e o conteúdo gráfico que formam uma projeção em um modelo. O que distingue um diagrama de objetos de todos os outros tipos de diagramas é o seu conteúdo particular”. Gabarito: C 3. (FCC – 2008 – TCE/AL - Análise de Sistemas) Um diagrama de objetos: a) tem a mesma função que um diagrama de atividades diferenciando deste apenas na representação gráfica. b) capta um conjunto de abstrações como um grupo de interesse e em tal contexto expõe sua semântica e seus relacionamentos com outras abstrações existentes nesse grupo da mesma forma que em um diagrama de classes. c) exibe um único conjunto de objetos relacionados uns com os outros em um determinado momento. d) mostra a seqüência de execução de atividades entre objetos relacionados, no tempo, e a duração de cada objeto por meio de linhas de vida. e) exibe diversos conjuntos de objetos relacionados uns com os outros em um determinado momento. Comentários: (a) Não, completamente errado! Um diagrama é estrutural com o objetivo de modelar o fluxo de atividades de um sistema e o outro é comportamental com o objetivo de modelar o relacionamento entre objetos de um sistema em um dado instante de execução; (b) Galera... já ouviram falar em gerador de lero-lero? Pois é, Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 58 de 213 nada nesse item faz sentido! (c) Perfeito, é exatamente isso! Por que ele diz um único conjunto de objetos? Porque são apenas aqueles objetos instanciados em um dado momento da modelagem; (d) Sequência de execução de atividades? No tempo? Linhas de vida? Trata-se de Diagrama de Sequência; (e) Na verdade, é apenas um conjunto de objetos relacionados em um determinado momento. Gabarito: C 4. (FCC- 2009 – MEC – Análise de Sistemas) A UML define em sua versão 2.0, treze tipos de diagramas. Acerca do Diagrama de Objetos da UML, assinale a alternativa correta: a) O Diagrama de Objetos mostra a configuração de nós de processamento em tempo de execução. b) O Diagrama de Objetos representa retratos estáticos de instâncias de itens encontrados em diagramas de classes. c) O Diagrama de Objetos representa uma visão dinâmica da interface entre objetos e funcionalidades do sistema. d) O Diagrama de Objetos tem por propósito focalizar um fluxo de atividades que ocorrem internamente em um processamento, dentro de um período de tempo. e) O Diagrama de Objetos descreve o comportamento de objetos como reação a eventos discretos, por meio de sequências de estados e ações que ocorrem durante sua vida. Comentários: Costuma-se dizer que o diagrama de objetos representa uma fotografia estática do sistema em um dado momento de execução, portanto esses diagramas não refletem o sistema genericamente, mas de forma específica – em um determinado instante. Como ele mostra instâncias, em vez de classes, ele é frequentemente chamado Diagrama de Instâncias. (a) Diagrama de Implantação; (b) Perfeito; (c) Diagrama de Estrutura Composta; (d) Diagrama de Tempo; (e) Diagrama de Máquina de Estados. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 59 de 213 Gabarito: B 5. (FCC - 2011 - TCE-PR - Analista de Controle - Informática) Em UML 2.3, o Diagrama de Perfil é um diagrama pertencente à categoria Diagrama de: a) Estrutura estática, sendo usado para mostrar a estrutura de um sistema sob o nível mais baixo dos classificadores. b) Comportamento e mostra a estrutura interna de um classificador e o comportamento de uma colaboração. c) Comportamento, descrevendo a estrutura interna de uma classe e as colaborações que esta estrutura torna possível. d) Comportamento, sendo utilizado para descrever o hardware utilizado em implementações de sistemas e os ambientes de execução. e) Estruturas, que opera no nível metamodelo permitindo definir estereótipos personalizados, valores etiquetados e restrições. Comentários: Diagramas Estruturais: representam aspectos estáticos do sistema sob diversas visões diferentes. Em outras palavras, esses diagramas apresentam a estrutura do sistema inalterada há qualquer momento por não levarem em consideração o tempo em sua representação. São eles: Componente, Classes, Implantação, Perfil, Objetos, Estrutura Composta e Pacotes. O Diagrama de Perfilpermite representar esses novos elementos, operando no nível de metamodelos. Imaginem que eu quero utilizar a UML para representar uma rede de computadores. A UML tem símbolos para representar roteadores, switches, etc? Não! Para tal, podem-se utilizar estereótipos. Como? Ora, eu desenho um retângulo e escrevo nele a expressão <<roteador>> ou <<switch>>. Conforme vimos em aula, trata-se de um Diagrama Estrutural! Ademais, ele realmente opera no nível de metamodelo para definir estereótipos, etc. Gabarito: E Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 60 de 213 6. (FCC – 2014 – TRT/1 – Analista de Sistemas) Diagramas de casos de uso constituem-se em um tipo de diagrama definido na UML. Segundo a UML 2.4.1, em um diagrama de casos de uso, a) um ator pode ser representado apenas pelo símbolo do “stick man”. b) só pode haver representado um único ator. c) o número de atores e de casos de uso sempre deve ser o mesmo. d) só pode haver representado um único caso de uso. e) um ator pode ser representado pelo “stick man” ou por um retângulo com a expressão <<actor>>. Comentários: A UML oferece diversos estereótipos padronizados, podemos citar <<interface>>, <<extends>> e <<include>>. No entanto, vamos supor que haja um relacionamento Pessoa saca Dinheiro. Não há um estereótipo <<sacar>>, todavia ele pode ser criado e representado usando Diagramas de Perfil por meio da expressão <<estereótipo>>. Continuando: se eu não quiser representar um ator por meio de um stickman, eu posso utilizar um retângulo com o nome <<ator>> ou <<stickman>>. Conforme vimos em aula, um Diagrama de Casos de Uso pode ter diversos atores e diversos casos de uso, inclusive pode ter mais de um ator por caso de uso! E como representar um caso de uso? Ora, através de um stickman ou através de estereótipos, i.e., um retângulo com o nome <<actor>>. Gabarito: E 7. (FCC - 2013 – TRT/12 - Análise de Sistemas) A UML é utilizada para modelar sistemas orientados a objetos. Um de seus diagramas é usado como técnica para descrever lógica de procedimento, processo de negócio e fluxo de trabalho. Esse diagrama, de várias formas, desempenha um papel semelhante aos fluxogramas, mas a principal diferença entre esse diagrama e a notação de fluxograma é que o diagrama suporta comportamento paralelo. O diagrama citado é o de: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 61 de 213 a) Máquina de Estados. b) Atividades c) Sequência. d) Distribuição e) Componentes. Comentários: O Diagrama de Atividades descreve lógica de procedimento, processo de negócio e fluxos de trabalho. De várias formas, eles desempenham um papel semelhante aos fluxogramas, mas se diferenciam, pois suportam comportamentos paralelos. Mas o que é uma atividade? É um comportamento parametrizado representado como um fluxo coordenado de ações. Conforme vimos em aula, trata-se claramente do Diagrama de Atividades. Gabarito: B 8. (FCC - 2014 – AL/PE - Análise de Sistemas) Visibilidade refere-se à capacidade de um método referenciar uma característica de outra classe. Num diagrama de classes da UML 2.0 a visibilidade é indicada com um prefixo representado pelos caracteres: I. # II. + III. ~ IV. - Os tipos de visibilidade definidos de I a IV são correta e respectivamente: a) private - public - protected - package b) public - private - package - protected c) private - package - public - protected d) protected - public - package - private e) package - protected - private - public Comentários: MODIFICADOR CLASSE SUBCLASSE PACOTE TODOS UML PÚBLICO + X X X X Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 62 de 213 PROTEGIDO # X X PACOTE ~ X X PRIVADO – X JAVA PÚBLICO + X X X X PROTEGIDO # X X X DEFAULT ~ X X PRIVADO - X Conforme vimos em aula, já é possível matar a questão pelo primeiro item – Protegido (#). Gabarito: D 9. (FCC - 2013 – TRT/12 - Análise de Sistemas) A especificação UML 2.5 define dois tipos principais de diagramas UML: structure diagrams e behavior diagrams. Behavior diagrams mostram o comportamento dinâmico dos objetos em um sistema, que pode ser descrito como uma série de mudanças no sistema no decorrer do tempo. São exemplos de Behavior diagrams os diagramas de a) Comunicação, Fluxo de Informação e Objeto. b) Comunicação, Deployment e Máquina de Estado. c) Temporização, Componente e Atividade. d) Sequência, Caso de Uso e Atividade. e) Classe, Atividade e Sequência. Comentários: Diagramas Comportamentais: representam aspectos dinâmicos do sistema como um conjunto de mudanças no tempo. Podemos dizer em outras palavras que esses diagramas apresentam como os processos do programa se relacionam com o passar do tempo. São eles: Máquina de Estados, Casos de Uso, Atividade, Sequência, Comunicação, Interação Geral e Tempo. Conforme vimos em aula, são Diagramas Comportamentais: Sequência, Casos de Uso e Atividade. Gabarito: D Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 63 de 213 10. (FCC - 2013 – AL/RN - Análise de Sistemas) Os diagramas UML podem ser divididos em dois grandes grupos, Diagramas Estruturais e Diagramas Comportamentais. Analise a lista de diagramas abaixo: I. Componentes. II. Comunicação. III. Implantação. IV. Caso de Uso. V. Classes. VI. Estados. São Diagramas Comportamentais APENAS os descritos em a) III, IV e V. b) I, IV e V. c) II, V e VI. d) I, II e V. e) II, IV e VI. Comentários: Diagramas Comportamentais: representam aspectos dinâmicos do sistema como um conjunto de mudanças no tempo. Podemos dizer em outras palavras que esses diagramas apresentam como os processos do programa se relacionam com o passar do tempo. São eles: Máquina de Estados, Casos de Uso, Atividade, Sequência, Comunicação, Interação Geral e Tempo. Conforme vimos em aula, são Diagramas Comportamentais: Comunicação, Caso de Uso e Estados. Gabarito: E 11. (FCC - 2012 – TRF/2 - Análise de Sistemas) Uma classe pode relacionar-se com outras de diferentes maneiras, utilizando notações gráficas, tais como: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 64 de 213 I, II e III referem-se,respectivamente, aos tipos: a) associação, composição e generalização. b) generalização, composição e associação. c) composição, generalização e agregação. d) associação, agregação e composição. e) agregação, associação e generalização. Comentários: IMPORTANTE Observem que o Relacionamento de Composição é representado por uma linha sólida com um diamante cheio na classe compositora. Pessoal, quando eu aprendi isso, decorei assim: Diamante Cheio = Composição. Portanto, Diamante Vazio = Agregação. Conforme vimos em aula, Diamante Cheio é Composição; Diamante Vazio é Agregação; e sem diamante algum é associação. Gabarito: D 12. (FCC - 2012 – TRF/2 - Análise de Sistemas) A UML 2.0 divide os diagramas em duas categorias, estruturais e de comportamento. São exemplos de diagramas estruturais e de comportamento, respectivamente, os diagramas de: a) classe e atividades. b) comunicação e sequência. c) componentes e objetos. d) máquinas de estado e casos de uso. e) casos de uso e sequência. Comentários: Diagramas Estruturais: representam aspectos estáticos do sistema sob diversas visões diferentes. Em outras palavras, esses diagramas apresentam a estrutura do sistema inalterada há qualquer momento por não levarem em consideração o tempo em sua representação. São eles: Componente, Classes, Implantação, Perfil, Objetos, Estrutura Composta e Pacotes. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 65 de 213 Diagramas Comportamentais: representam aspectos dinâmicos do sistema como um conjunto de mudanças no tempo. Podemos dizer em outras palavras que esses diagramas apresentam como os processos do programa se relacionam com o passar do tempo. São eles: Máquina de Estados, Casos de Uso, Atividade, Sequência, Comunicação, Interação Geral e Tempo. Conforme vimos em aula, Diagrama de Classes é Estrutural e Diagrama de Atividades é Comportamental. Gabarito: A 13. (FCC - 2012 – TJ/PE - Análise de Sistemas) Considere C = comportamental e E = estrutural. Os diagramas de componentes, objetos, comunicação e estrutura composta são, respectivamente, categorizados como: a) C; C; E; C. b) C; C; E; E. c) C; E; E; C. d) E; E; C; C. e) E; E; C; E. Comentários: Diagramas Estruturais: representam aspectos estáticos do sistema sob diversas visões diferentes. Em outras palavras, esses diagramas apresentam a estrutura do sistema inalterada há qualquer momento por não levarem em consideração o tempo em sua representação. São eles: Componente, Classes, Implantação, Perfil, Objetos, Estrutura Composta e Pacotes. Diagramas Comportamentais: representam aspectos dinâmicos do sistema como um conjunto de mudanças no tempo. Podemos dizer em outras palavras que esses diagramas apresentam como os processos do programa se relacionam com o passar do tempo. São eles: Máquina de Estados, Casos de Uso, Atividade, Sequência, Comunicação, Interação Geral e Tempo. Conforme vimos em aula, os Diagramas de Componente (E); Objetos (E); Comunicação (C); e Estrutura Composta (E). Gabarito: E Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 66 de 213 14. (FCC - 2011 – TRT/19 - Análise de Sistemas) Considere: E = estruturais e C = comportamentais. Os diagramas de comunicação, pacotes, implantação e componentes são, respectivamente, a) C; E; E; E. b) C; C; E; E. c) C; E; E; C. d) E; C; C; C. e) E; C; E; C. Comentários: Diagramas Estruturais: representam aspectos estáticos do sistema sob diversas visões diferentes. Em outras palavras, esses diagramas apresentam a estrutura do sistema inalterada há qualquer momento por não levarem em consideração o tempo em sua representação. São eles: Componente, Classes, Implantação, Perfil, Objetos, Estrutura Composta e Pacotes. Diagramas Comportamentais: representam aspectos dinâmicos do sistema como um conjunto de mudanças no tempo. Podemos dizer em outras palavras que esses diagramas apresentam como os processos do programa se relacionam com o passar do tempo. São eles: Máquina de Estados, Casos de Uso, Atividade, Sequência, Comunicação, Interação Geral e Tempo. Conforme vimos em aula, os Diagramas de Comunicação (C); Pacotes (E); Implantação (E); e Componentes (E). Gabarito: A 15. (FCC - 2012 – TJ/PE - Análise de Sistemas) Considere o seguinte diagrama UML: O número 1 e símbolo 1..* que aparecem ao lado das classes Nota Fiscal e Itens se referem à restrição de: a) herança. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 67 de 213 b) agregação. c) identidade. d) multiplicidade. e) polimorfismo. Comentários: Relacionamento de Associação: relacionamento estrutural entre objetos e especifica os objetos de uma classe que estão ligados a objetos de outra classe. São eles: ▪ Simples: é um tipo de relacionamento mais forte que o relacionamento de dependência e indica que uma instância de um elemento está ligada à instância de outro elemento. São representados por uma linha sólida com ou sem setas de navegabilidade. Ademais, pode haver nomes para a associação e indicação de multiplicidade. Conforme vimos na nota de rodapé da aula, trata-se da multiplicidade – responsável por representar a informação dos limites inferior e superior da quantidade de objetos aos quais outro objeto pode estar associado. Gabarito: D 16. (FCC - 2012 – TRE/CE - Análise de Sistemas) Na UML 2.0, representam comportamentos de um sistema, os diagramas de: a) comunicação e de caso de uso. b) sequência e de implantação. c) componentes e de atividades. d) pacotes e de componentes. e) atividades e de implantação. Comentários: Diagramas Comportamentais: representam aspectos dinâmicos do sistema como um conjunto de mudanças no tempo. Podemos dizer em outras palavras que esses diagramas apresentam como os processos do programa se relacionam com o passar do tempo. São eles: Máquina de Estados, Casos de Uso, Atividade, Sequência, Comunicação, Interação Geral e Tempo. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 68 de 213 Conforme vimos em aula, trata-se de Diagramas Comportamentais: Comunicação e Casos de Uso. Gabarito: A 17. (FCC - 2012 – TRE/CE - Análise de Sistemas) Em UML, os diagramas de Caso de Uso tem por objetivo: a) representar os atributos e operações de uma classe ou objeto. b) mostrar o fluxo de mensagens de uma atividade do sistema para outra. c) capturar funcionalidades e requerimentos do sistema. d) exibir uma interação entre um conjunto de objetos e seus relacionamentos. e) representar o estadoou situação em que um objeto pode se encontrar no decorrer da execução de processos de um sistema. Comentários: Casos de Uso são uma técnica para captar os requisitos funcionais de um sistema. Eles servem para descrever as interações de usuários com o sistema, fornecendo uma narrativa sobre como o sistema é utilizado. E o que é um cenário? Cenário é uma instância de caso de uso, i.e., uma sequência de passos que descreve uma interação entre um usuário e o sistema. Conforme vimos em aula, os Diagramas de Caso de Uso capturam funcionalidades e requerimentos do sistema. Vamos às outras opções: (a) Diagrama de Classes; (b) Diagrama de Atividades; (d) Diagrama de Comunicação; (e) Diagrama de Máquina de Estados. Gabarito: C 18. (FCC - 2011 – TRT/19 - Análise de Sistemas) Na versão 2.0 da UML, costuma conter elementos tais como: ações, bifurcações, ramificações e fluxos. Trata-se do diagrama de: a) máquina de estados. b) implantação. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 69 de 213 c) sequência. d) atividades. e) artefatos. Comentários: Como apresenta a imagem abaixo, a Swimlane agrupa as atividades e as organizam de acordo com suas respectivas responsabilidades, com o auxílio de ações, bifurcações, fluxos e ramificações. São representadas como duas linhas paralelas, horizontais ou verticais, e seu nome em uma das extremidades. Qualquer nó de atividade entre essas linhas é considerado contido dentro de uma partição. Conforme vimos em aula, trata-se do Diagrama de Atividades. Gabarito: D 19. (FCC - 2011 – TRE/AP - Análise de Sistemas) São, respectivamente, dois diagramas estruturais e dois comportamentais: a) Package, Interaction Overview, Timing e Deployment. b) Component, Deployment, Activity e State Machine. c) Composite Structure, Package, Component e Communication. d) State Machine, Object, Use Case e Composite Structure. e) Object, Interaction Overview, Use Case e Activity. Comentários: Diagramas Estruturais: representam aspectos estáticos do sistema sob diversas visões diferentes. Em outras palavras, esses diagramas apresentam a estrutura do sistema inalterada há qualquer momento por não levarem em consideração o tempo em sua representação. São eles: Componente, Classes, Implantação, Perfil, Objetos, Estrutura Composta e Pacotes. Diagramas Comportamentais: representam aspectos dinâmicos do sistema como um conjunto de mudanças no tempo. Podemos dizer em outras palavras que esses diagramas apresentam como os processos do programa se relacionam com o passar do tempo. São eles: Máquina de Estados, Casos de Uso, Atividade, Sequência, Comunicação, Interação Geral e Tempo. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 70 de 213 Conforme vimos em aula, são dois Diagramas Estruturais: Component (Componente) e Deployment (Implantação). São dois Diagramas Comportamentais: Activity (Atividade) e State Machine (Máquina de Estados). Gabarito: B 20. (FCC - 2011 – TRE/AP - Análise de Sistemas) Os casos de uso podem ser organizados pela especificação de relacionamentos de: a) evento, ramificação e inclusão. b) composição, inclusão e extensão. c) agregação, extensão e bifurcação. d) generalização, inclusão e extensão. e) herança, composição e autorrelacionamento. Comentários: Comunicação Extensão Inclusão Herança Entre Casos de Uso X X X Entre Atores X Entre Casos de Uso e Atores X Conforme vimos em aula, trata-se da Extensão, Inclusão e Herança (Generalização). Gabarito: D 21. (FCC - 2011 – INFRAERO - Análise de Sistemas) Para captar os requisitos funcionais de um sistema pode- se utilizar a UML. O diagrama mais adequado para essa finalidade é o diagrama de: a) casos de uso. b) atividades. c) colaboração. d) classes. e) comunicações. Comentários: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 71 de 213 Casos de Uso são uma técnica para captar os requisitos funcionais de um sistema. Eles servem para descrever as interações de usuários com o sistema, fornecendo uma narrativa sobre como o sistema é utilizado. E o que é um cenário? Cenário é uma instância de caso de uso, i.e., uma sequência de passos que descreve uma interação entre um usuário e o sistema. Conforme vimos em aula, para capturar requisitos funcionais, recomenda-se utilizar o Diagrama de Casos de Uso. Gabarito: A 22. (FCC - 2011 – INFRAERO - Análise de Sistemas) Na notação UML, um nome entre ângulos (ex. <<nome>>), colocado acima do nome de outro elemento, é utilizado para a representação gráfica de: a) objeto. b) função. c) multiplicidade. d) operação. e) estereótipo. Comentários: Estereótipos permitem adaptar ou personalizar modelos com construções específicas para um domínio, plataforma ou método de desenvolvimento particular. Trocando em miúdos, é um mecanismo de extensão que dá mais poder e flexibilidade à UML. Podemos ter estereótipos de dois tipos: predefinidos pela linguagem ou definidos pela equipe de desenvolvimento. Como assim, professor? Estereótipos predefinidos já vêm nativamente na linguagem (Ex: <<interface>>, <<document>>, <<control>>, <<entity>>). No entanto, a equipe de desenvolvimento pode criar seus próprios estereótipos! Como? Basta colocar o nome do elemento delimitado pelos símbolos << e >>. Além disso, os estereótipos podem ser definidos textualmente ou graficamente. Conforme vimos em aula, essa notação representa um estereótipo. Gabarito: E Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 72 de 213 23. (FCC - 2011 – INFRAERO - Análise de Sistemas) Qualquer descendente do classificador é capaz de usar a característica; sua especificação é antecedida pelo símbolo #. A definição trata da visibilidade usada na notação UML, de nível: a) público. b) privado. c) pacote. d) protegido. e) dependente. Comentários: MODIFICADOR CLASSE SUBCLASSE PACOTE TODOS UML PÚBLICO + X X X X PROTEGIDO # X X PACOTE ~ X X PRIVADO – X JAVA PÚBLICO + X X X X PROTEGIDO # X X X DEFAULT ~ X X PRIVADO - X Conforme vimos em aula, trata-se da Visibilidade Protegida. Gabarito: D 24. (FCC - 2011 – INFRAERO - Análise de Sistemas) Como exemplo, a classe CarroImportado (em itálico) é escrita desta forma na UML para especificar que tal classe: a) é concreta. b) pode não apresentar instâncias diretas. c) herda características de mais de uma classe mãe. d) herda características de apenas uma classe mãe. e) se relaciona com ela mesma. Comentários: DiegoCarvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 73 de 213 Galera, agora vamos responder a algumas perguntas relevantes. Professor, como se representa um atributo estático na UML? Bem, basta sublinhar o nome do atributo! Professor, como se representa uma operação abstrata? Bem, basta escrever seu nome em itálico! E como se representa uma operação estática? Bem, basta escrever seu nome sublinhado! Conforme vimos em aula, itálico significa que é uma classe abstrata, logo ela não pode apresentar instâncias diretas. Gabarito: B 25. (FCC - 2011 – TRT/01 - Análise de Sistemas) Na UML 2.0, os diagramas de objeto, de componente, de atividade e de comunicação são, respectivamente, do tipo (considere E para Estrutural e C para Comportamental): a) C; C; C; E. b) C; C; E; E. c) C; E; E; C. d) E; C; E; C. e) E; E; C; C. Comentários: Diagramas Estruturais: representam aspectos estáticos do sistema sob diversas visões diferentes. Em outras palavras, esses diagramas apresentam a estrutura do sistema inalterada há qualquer momento por não levarem em consideração o tempo em sua representação. São eles: Componente, Classes, Implantação, Perfil, Objetos, Estrutura Composta e Pacotes. Diagramas Comportamentais: representam aspectos dinâmicos do sistema como um conjunto de mudanças no tempo. Podemos dizer em outras palavras que esses diagramas apresentam como os processos do programa se relacionam com o passar do tempo. São eles: Máquina de Estados, Casos de Uso, Atividade, Sequência, Comunicação, Interação Geral e Tempo. Conforme vimos em aula, os Diagramas de Objeto (E); Componente (E); Atividade (C); e Comunicação (C). Gabarito: E Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 74 de 213 26. (FCC - 2011 – TRT/24 - Análise de Sistemas) Na UML, o relacionamento entre uma superclasse e suas subclasses é denominado: a) generalização. b) decomposição. c) agregação composta. d) agregação não composta. e) dependência. Comentários: Relacionamento de Generalização/Especialização (Herança): indica que a subclasse é uma especialização da superclasse ou que a superclasse é uma generalização da subclasse. Qualquer instância da subclasse é também uma instância da superclasse. É conhecido como relacionamento de herança, relacionamento de extensão ou relacionamento “é-um”. Conforme vimos em aula, trata-se da Generalização/Especialização (Herança). Gabarito: A 27. (FCC - 2011 – TRT/24 - Análise de Sistemas) Na UML, especifica-se que uma classe é abstrata escrevendo seu nome: a) só com a inicial em letra maiúscula. b) todo com letras maiúsculas. c) em itálico. d) em negrito. e) grifado. Comentários: Galera, agora vamos responder a algumas perguntas relevantes. Professor, como se representa um atributo estático na UML? Bem, basta sublinhar o nome do atributo! Professor, como se representa uma operação abstrata? Bem, basta escrever seu nome em itálico! E como se representa uma operação estática? Bem, basta escrever seu nome sublinhado! Conforme vimos em aula, deve vir em itálico. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 75 de 213 Gabarito: C 28. (FCC - 2011 – TRE/RN - Análise de Sistemas) Frequentemente usado para modelagem de sistemas de tempo real. Descreve como um sistema responde aos estímulos internos e externos. Mostra as diferentes situações do sistema e os estímulos que provocam transições de uma para outra situação. Trata-se do modelo de: a) eventos. b) agregação de objetos. c) dados. d) fluxo de dados. e) máquina de estado. Comentários: Também conhecido como Diagrama de Transição de Estados, apresenta diversos estados possíveis de um objeto no decorrer da execução de processos de um sistema. Dessa forma, um objeto pode passar de um estado inicial para um estado final, por meio de uma transição, quando ocorre algum evento ou estímulo interno ou externo ao sistema. Conforme vimos em aula, trata-se do Modelo (ou Diagrama) de Máquina de Estados. Gabarito: E 29. (FCC - 2011 – TRE/RN - Análise de Sistemas) São organizadas em uma hierarquia, com as classes de objetos mais genéricas no topo, as quais legam seus atributos às classes mais especializadas. Trata-se: a) da hierarquia de herança. b) do modelo relacional. c) da gestão hierárquica. d) do modelo sequencial. e) da especificação funcional. Comentários: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 76 de 213 ▪ Relacionamento de Herança: relacionamento entre atores, utilizado quando o ator filho é um uma especificação do ator genérico. É bastante útil para definir sobreposição de papéis entre atores e é representado com uma linha sólida com um triângulo no ator genérico. Na imagem abaixo, Vendedor é especialização de Pessoa. É representado por uma linha com um triângulo. Conforme vimos em aula, trata-se da hierarquia de herança. Gabarito: A 30. (FCC - 2011 – CAIXA - Análise de Sistemas) Um detalhe importante que deve ser especificado para os atributos e operações das classes é a visibilidade. Desta forma, os símbolos: + (sinal de mais), # (sinal de número), - (sinal de menos) e ~ (til) correspondem respectivamente a: a) público, pacote, privado e protegido. b) público, protegido, privado e pacote. c) privado, protegido, público e pacote. d) privado, pacote, público e protegido. e) pacote, protegido, privado e público. Comentários: MODIFICADOR CLASSE SUBCLASSE PACOTE TODOS UML PÚBLICO + X X X X PROTEGIDO # X X PACOTE ~ X X PRIVADO – X JAVA PÚBLICO + X X X X PROTEGIDO # X X X DEFAULT ~ X X PRIVADO - X Conforme vimos em aula, é Público, Protegido, Privado e Pacote. Gabarito: B Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 77 de 213 31. (FCC - 2010 – TRT/22 - Análise de Sistemas) A modelagem de instâncias de itens contidos em diagramas de classes é feita pelo diagrama de: a) sequência. b) pacotes. c) casos de uso. d) objetos. e) componentes. Comentários: Costuma-se dizer que o diagrama de objetos representa uma fotografia estática do sistema em um dado momento de execução, portanto esses diagramas não refletem o sistema genericamente, mas de forma específica – em um determinadoinstante. Como ele mostra instâncias, em vez de classes, ele é frequentemente chamado Diagrama de Instâncias. Conforme vimos em aula, trata-se do Diagrama de Objetos. Gabarito: D 32. (FCC - 2010 – TRT/22 - Análise de Sistemas) Na UML 2.0 NÃO se trata de um dos diagramas de interação, o: a) Sequence. b) Deployment. c) Interaction Overview. d) Timing. e) Communication. Comentários: ▪ Diagramas de Interação: são diagramas comportamentais que consideram o relacionamento dinâmico e colaborativo entre os objetos do sistema e suas trocas de informações. Eles enfatizam o controle de fluxo e dados entre as coisas do sistema que estão sendo modeladas (Ex: Objetos). São eles: Sequência, Comunicação, Interação Geral e Tempo. Conforme vimos em aula, o Diagrama de Implantação (Deployment) não é um Diagrama de Interação. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 78 de 213 Gabarito: B 33. (FCC - 2010 – TRT/22 - Análise de Sistemas) Na taxonomia dos diagramas de estrutura (S) e de comportamento (C) da UML, os diagramas de Pacote, Classe, Sequência e Objeto são, respectivamente, de a) S, S, C e S. b) S, S, C e C. c) S, C, S e C. d) C, S, C e S. e) C, C, S e C. Comentários: Diagramas Estruturais: representam aspectos estáticos do sistema sob diversas visões diferentes. Em outras palavras, esses diagramas apresentam a estrutura do sistema inalterada há qualquer momento por não levarem em consideração o tempo em sua representação. São eles: Componente, Classes, Implantação, Perfil, Objetos, Estrutura Composta e Pacotes. Diagramas Comportamentais: representam aspectos dinâmicos do sistema como um conjunto de mudanças no tempo. Podemos dizer em outras palavras que esses diagramas apresentam como os processos do programa se relacionam com o passar do tempo. São eles: Máquina de Estados, Casos de Uso, Atividade, Sequência, Comunicação, Interação Geral e Tempo. Conforme vimos em aula, os Diagramas de Pacote (S); Classe (S); Sequência (C); e Objeto (S). Gabarito: A 34. (FCC - 2010 – MPE/RN - Análise de Sistemas) Na UML, um relacionamento entre superclasses (classesmãe) e subclasses (classes-filha), é uma: a) associação. b) dependência. c) composição. d) agregação. e) generalização. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 79 de 213 Comentários: Relacionamento de Generalização/Especialização (Herança): indica que a subclasse é uma especialização da superclasse ou que a superclasse é uma generalização da subclasse. Qualquer instância da subclasse é também uma instância da superclasse. É conhecido como relacionamento de herança, relacionamento de extensão ou relacionamento “é-um”. Conforme vimos em aula, trata-se da Generalização/Especialização (Herança). Gabarito: E 35. (FCC - 2010 – MPE/RN - Análise de Sistemas) Na UML, um relacionamento entre superclasses (classesmãe) e subclasses (classes-filha), é uma: a) associação. b) dependência. c) composição. d) agregação. e) generalização. Comentários: Relacionamento de Generalização/Especialização (Herança): indica que a subclasse é uma especialização da superclasse ou que a superclasse é uma generalização da subclasse. Qualquer instância da subclasse é também uma instância da superclasse. É conhecido como relacionamento de herança, relacionamento de extensão ou relacionamento “é-um”. Conforme vimos em aula, trata-se da Generalização/Especialização (Herança). Gabarito: E 36. (FCC - 2010 – BAHIAGÁS - Análise de Sistemas) Na UML é uma forma de agregação com propriedade bem definida e tempo de vida coincidente da parte com o todo. Trata-se de: a) Generalização. b) Estereótipo. c) Visibilidade. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 80 de 213 d) Composição e) Herança. Comentários: ▪ Composição: é um tipo de agregação, porém mais forte, em que o todo está relacionado às partes de forma dependente. Nesse relacionamento, as partes não têm existência própria. Logo, não existem por si só, i.e., a parte não existe sem o todo. É representado por uma linha com um diamante cheio na extremidade referente ao todo. Quando ele diz que o tempo de vida da parte coincide com o todo, ele quer dizer que não existe parte sem o todo. Logo, trata-se de composição. Gabarito: D 37. (FCC - 2010 – BAHIAGÁS - Análise de Sistemas) É um tipo de diagrama comportamental da UML. Trata-se do Diagrama de: a) Casos de Uso. b) Pacotes. c) Objetos. d) Componentes. e) Classes. Comentários: Diagramas Comportamentais: representam aspectos dinâmicos do sistema como um conjunto de mudanças no tempo. Podemos dizer em outras palavras que esses diagramas apresentam como os processos do programa se relacionam com o passar do tempo. São eles: Máquina de Estados, Casos de Uso, Atividade, Sequência, Comunicação, Interação Geral e Tempo. Conforme vimos em aula, trata-se do Diagrama de Casos de Uso. Gabarito: A 38. (FCC - 2010 – TRF/4 - Análise de Sistemas) Em UML, ele é uma variação do diagrama de classes e utiliza quase a mesma notação, exceto que os objetos são Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 81 de 213 escritos com seus nomes sublinhados e todas as instâncias num relacionamento são mostradas. Trata-se do diagrama de: a) Estado. b) Objetos. c) Sequência. d) Colaboração. e) Atividade. Comentários: O Diagrama de Objetos (ou Diagrama de Instâncias) é uma variação do Diagrama de Classes. Contudo, aqui não se trata da estrutura geral, mas de cada instância específica do sistema. Portanto, no diagrama de objetos não há Pessoa, há “João”. Não há Carro, há “Pálio”. Não há Cachorro, há “Totó”. Entenderam? No diagrama de objetos, personaliza-se cada instância com seus valores. Conforme vimos em aula, trata-se do Diagrama de Objetos. Gabarito: B 39. (FCC - 2010 – SGSA - Análise de Sistemas) Em UML, são diagramas feitos para facilitar a comunicação com os futuros usuários do sistema, e com o cliente, sendo especialmente úteis para determinar os recursos necessários que o sistema deve ter, mas não são adequados para representar o desenho e não podem descrever os mecanismos internos de um sistema. São diagramas de: a) Sequência. b) Colaboração. c) Distribuição. d) Caso de Uso. e) Atividade. Comentários: Casos de Uso são uma técnica para captar os requisitos funcionais de um sistema. Eles servem para descrever as interações de usuários com o sistema, fornecendo uma narrativa sobre como o sistema é utilizado. E o que é umcenário? Cenário é uma instância de caso de uso, i.e., uma sequência de passos que descreve uma interação entre um usuário e o sistema. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 82 de 213 Conforme vimos em aula, trata-se do Diagrama de Casos de Uso. Lembrando que: quando a questão utiliza a palavra "Desenho" é geralmente porque ela traduziu de "Design" – você pode traduzir "Design" como "Desenho" ou "Projeto". De todo modo, é mais adequado representar o Desenho/Projeto por meio do Diagrama de Classes, por exemplo. O Diagrama de Casos de uso é mais utilizado para mostrar a interação entre usuários e sistema – não é possível descrever infraestrutura, tecnologia, paradigmas, etc. Gabarito: D 40. (FCC - 2010 – AL/SP - Análise de Sistemas) Na UML 2.0, o Diagrama de Comunicação e o de Sequência são dois tipos de diagrama de: a) Estrutura Composta. b) Componente. c) Interação. d) Máquina de Estado. e) Objeto. Comentários: ▪ Diagramas de Interação: são diagramas comportamentais que consideram o relacionamento dinâmico e colaborativo entre os objetos do sistema e suas trocas de informações. Eles enfatizam o controle de fluxo e dados entre as coisas do sistema que estão sendo modeladas (Ex: Objetos). São eles: Sequência, Comunicação, Interação Geral e Tempo. Conforme vimos em aula, são Diagramas de Interação. Gabarito: C 41. (FCC - 2010 – METRÔ/SP - Análise de Sistemas) São os meios utilizados para a visualização dos blocos de construção da UML e representam graficamente um conjunto de elementos, além de permitir visualizar o sistema sob diferentes perspectivas. Essa é a definição de: a) Eventos. b) Classes. c) Objetos. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 83 de 213 d) Relacionamentos. e) Diagrama. Comentários: Mas por que utilizar a UML? Bem, Martin Fowler diz que é por conta da comunicação e do entendimento. Um bom diagrama frequentemente pode ajudar uma equipe a entender um problema e transmitir uma ideia. A notação gráfica é um meio termo entre a imprecisão da linguagem natural e o detalhamento excessivo de uma linguagem de programação. Conforme vimos em aula, a questão trata dos diagramas. Gabarito: E 42. (FCC - 2010 – TRT/20 - Análise de Sistemas) São os meios utilizados para a visualização dos blocos de construção da UML e representam graficamente um conjunto de elementos, além de permitir a visualização do sistema sob diferentes perspectivas. Essa é a definição de: a) Relacionamentos. b) Diagrama. c) Eventos. d) Classes. e) Objetos. Comentários: Mas por que utilizar a UML? Bem, Martin Fowler diz que é por conta da comunicação e do entendimento. Um bom diagrama frequentemente pode ajudar uma equipe a entender um problema e transmitir uma ideia. A notação gráfica é um meio termo entre a imprecisão da linguagem natural e o detalhamento excessivo de uma linguagem de programação. Conforme vimos em aula, a questão trata dos diagramas. Gabarito: B 43. (FCC - 2010 – TCM/PA - Análise de Sistemas) De acordo com a OMG, especifica a coordenação de execuções de comportamentos usando um modelo de fluxo Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 84 de 213 de controle e de dados. Modela o comportamento do sistema denotando os caminhos lógicos que um processo pode seguir. Compõe a visão dinâmica da UML o diagrama de: a) estado composto. b) atividades. c) objetos. d) entidades. e) composição. Comentários: Diagramas Comportamentais: representam aspectos dinâmicos do sistema como um conjunto de mudanças no tempo. Podemos dizer em outras palavras que esses diagramas apresentam como os processos do programa se relacionam com o passar do tempo. São eles: Máquina de Estados, Casos de Uso, Atividade, Sequência, Comunicação, Interação Geral e Tempo. Conforme vimos em aula, a visão dinâmica é dada por diversos diagramas – dentro os quais, o diagrama de atividades. Gabarito: B 44. (FCC - 2010 – TCM/PA - Análise de Sistemas) Na UML, a linha de vida (lifeline) é parte integrante do diagrama de: a) artefatos. b) sequência. c) pacotes. d) componentes. e) gráfico de estados. Comentários: O diagrama de sequência possui dois eixos: horizontal e vertical. O primeiro representa os objetos envolvidos e o segundo representa o tempo em que a ação ocorre e é representado por uma linha tracejada (Linha de Vida). A imagem abaixo apresenta o diagrama de sequência de um caso de uso Sacar desde a inserção do cartão até o saldo ser gravado pelo banco. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 85 de 213 Conforme vimos em aula, trata-se do Diagrama de Sequência. Gabarito: B 45. (FCC - 2010 – TCM/PA - Análise de Sistemas) Um relacionamento do tipo todo- parte, no qual a vida da parte depende da vida do todo, é do tipo: a) composição. b) especialização. c) dependência. d) enumeração. e) cardinalidade. Comentários: ▪ Composição: é um tipo de agregação, porém mais forte, em que o todo está relacionado às partes de forma dependente. Nesse relacionamento, as partes não têm existência própria. Logo, não existem por si só, i.e., a parte não existe sem o todo. É representado por uma linha com um diamante cheio na extremidade referente ao todo. Conforme vimos em aula, quando a questão afirma que a parte depende da vida do todo, ela está dizendo que as partes não têm existência própria. Logo, trata-se de uma composição. Gabarito: A 46. (FCC - 2010 – TCM/PA - Análise de Sistemas) O antigo diagrama de colaboração é adotado na UML 2.0 como diagrama de: a) objeto. b) estado. c) iteração. d) implantação. e) comunicação. Comentários: O Diagrama de Comunicação também é uma espécie de diagrama de interação muito semelhante ao diagrama de sequência, mas com ênfase na ordem estrutural Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 86 de 213 e, não, temporal. Em versões anteriores da UML, era conhecido como Diagrama de Colaboração. Mas como é possível verificar a ordem? Ele possui números que identificam a sequência. Conforme vimos em aula, a questão trata do Diagrama de Comunicação. Gabarito: E 47. (FCC - 2009 – TRT/3 - Análise de Sistemas) Um relacionamentoentre classes que usa como notação um diamante preenchido associando, por exemplo, as classes Janela e Moldura, representa: a) um legado. b) um polimorfismo. c) uma generalização. d) uma dependência. e) uma composição. Comentários: IMPORTANTE Observem que o Relacionamento de Composição é representado por uma linha sólida com um diamante cheio na classe compositora. Pessoal, quando eu aprendi isso, decorei assim: Diamante Cheio = Composição. Portanto, Diamante Vazio = Agregação. Conforme vimos em aula, a questão trata da composição. Gabarito: E 48. (FCC - 2009 – TRT/3 - Análise de Sistemas) Como extensão do vocabulário UML, a representação gráfica de um nome entre ângulos (<< >>), colocado acima do nome de outro elemento, representa: a) um pacote. b) um desvio. c) um estereótipo. d) uma agregação. e) uma especialização. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 87 de 213 Comentários: Pode ser classificado também em estereótipos textuais e gráficos: os primeiros devem vir delimitados pelos símbolos << e >>; os segundos devem vir com um ícone que lembre o conceito sendo representado. Essas duas classificações são independentes, logo é possível ter estereótipos gráficos ou textuais sendo predefinidos ou definidos pela equipe de desenvolvimento. Ficou claro agora? Conforme vimos em aula, a questão trata dos estereótipos. Gabarito: C 49. (FCC - 2009 – TRT/7 - Análise de Sistemas) Uma parte física e substituível de um sistema com o qual está em conformidade e proporciona a realização de um conjunto de artefatos (UML) é um: a) componente. b) atributo. c) método. d) caso de uso. e) objeto. Comentários: O Diagrama de Componentes representa o sistema sob uma perspectiva funcional, expondo a organização de seus módulos e as relações entre seus componentes por meio de interfaces. Professor, o que é são os componentes? É uma unidade independente, que pode ser utilizada ou substituída com/por outros componentes para formar um sistema complexo. Conforme vimos em aula, a questão trata dos componentes. Gabarito: A 50. (FCC - 2009 – TRE/PI - Análise de Sistemas) No diagrama de classes da UML uma superclasse, com uma ou mais subclasses, representa um relacionamento do tipo: a) composição. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 88 de 213 b) agregação. c) generalização. d) associação. e) modularização. Comentários: Relacionamento de Generalização/Especialização (Herança): indica que a subclasse é uma especialização da superclasse ou que a superclasse é uma generalização da subclasse. Qualquer instância da subclasse é também uma instância da superclasse. É conhecido como relacionamento de herança, relacionamento de extensão ou relacionamento “é-um”. Conforme vimos em aula, a questão trata da generalização. Gabarito: C 51. (FCC - 2009 – TJ/SE - Análise de Sistemas) NÃO se trata de um relacionamento especificado na UML: a) o encapsulamento. b) a dependência. c) a generalização. d) a associação. e) a realização. Comentários: Galera, encapsulamento é um relacionamento? Jamais! Gabarito: A 52. (FCC - 2009 – TJ/SE - Análise de Sistemas) Uma classe abstrata, de acordo com a UML, a) tem seu nome escrito em itálico. b) pode ser instanciada diretamente. c) não tem atributos. d) não tem operações. e) não pode ter classes-filha. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 89 de 213 Comentários: Galera, agora vamos responder a algumas perguntas relevantes. Professor, como se representa um atributo estático na UML? Bem, basta sublinhar o nome do atributo! Professor, como se representa uma operação abstrata? Bem, basta escrever seu nome em itálico! E como se representa uma operação estática? Bem, basta escrever seu nome sublinhado! Conforme vimos em aula, ela tem seu nome escrito em itálico. Gabarito: A 53. (FCC - 2009 – TJ/15 - Análise de Sistemas) Na UML, a visibilidade declarada aos atributos e operações de classificadores define que quando a um deles antecede o símbolo - (sinal de menos) este é somente: a) privado. b) protegido. c) público protegido. d) público. e) pacote público. Comentários: MODIFICADOR CLASSE SUBCLASSE PACOTE TODOS UML PÚBLICO + X X X X PROTEGIDO # X X PACOTE ~ X X PRIVADO – X JAVA PÚBLICO + X X X X PROTEGIDO # X X X DEFAULT ~ X X PRIVADO - X Conforme vimos em aula, trata-se da visibilidade privada. Gabarito: A Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 90 de 213 54. (FCC - 2009 – TJ/15 - Análise de Sistemas) Cobre um conjunto de instâncias dos itens encontrados nos diagramas de classe, expressa a parte estática de uma interação composta pelos objetos que colaboram entre si, mas sem qualquer uma das mensagens passadas entre eles e, também, congela um momento no tempo. Na UML, trata-se do diagrama de: a) atividade. b) comunicação. c) sequência. d) tempo. e) objetos. Comentários: Costuma-se dizer que o diagrama de objetos representa uma fotografia estática do sistema em um dado momento de execução, portanto esses diagramas não refletem o sistema genericamente, mas de forma específica – em um determinado instante. Como ele mostra instâncias, em vez de classes, ele é frequentemente chamado Diagrama de Instâncias. Conforme vimos em aula, trata-se do Diagrama de Objetos. Gabarito: E 55. (FCC - 2009 – TJ/16 - Análise de Sistemas) Considere diversas agências (classe Agencia) de atendimento a reclamações trabalhistas espalhadas em vários pontos do Estado. Uma delas, a central (classe AgenciaCentral), tem atributos diferenciados, porém herda os demais atributos e operações de Agencia. O relacionamento entre essas classes é definido na UML como: a) inclusão. b) composição. c) específico. d) generalização. e) encapsulamento. Comentários: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 91 de 213 Relacionamento de Generalização/Especialização (Herança): indica que a subclasse é uma especialização da superclasse ou que a superclasse é uma generalização da subclasse. Qualquer instância da subclasse é também uma instância da superclasse. É conhecido comorelacionamento de herança, relacionamento de extensão ou relacionamento “é-um”. Conforme vimos em aula, trata-se da Generalização/Especialização (Herança). Gabarito: D 56. (FCC - 2009 – TJ/16 - Análise de Sistemas) São diagramas comportamentais da UML: a) Component e Activity. b) Timing e Deployment. c) Composite Structure e Use Case. d) State Machine e Object. e) Use Case e Sequence. Comentários: Diagramas Comportamentais: representam aspectos dinâmicos do sistema como um conjunto de mudanças no tempo. Podemos dizer em outras palavras que esses diagramas apresentam como os processos do programa se relacionam com o passar do tempo. São eles: Máquina de Estados, Casos de Uso, Atividade, Sequência, Comunicação, Interação Geral e Tempo. Conforme vimos em aula, trata-se dos Diagramas de Casos de Uso e Sequência. Gabarito: E 57. (FCC - 2009 – TJ/16 - Análise de Sistemas) São diagramas estruturais da UML: a) Package e Activity. b) Communication e Activity. c) Communication e Object. d) Class e Use Case. e) Composite Structure e Deployment. Comentários: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 92 de 213 Diagramas Estruturais: representam aspectos estáticos do sistema sob diversas visões diferentes. Em outras palavras, esses diagramas apresentam a estrutura do sistema inalterada há qualquer momento por não levarem em consideração o tempo em sua representação. São eles: Componente, Classes, Implantação, Perfil, Objetos, Estrutura Composta e Pacotes. Conforme vimos em aula, trata-se dos Diagramas de Estrutura Composta e Implantação. Gabarito: E 58. (FCC - 2009 – TJ/PA - Análise de Sistemas) Na especificação de operações de uma classe, o nível de visibilidade indicado pelo símbolo ~ (til) significa: a) escopo de instância. b) escopo de estática. c) pacote. d) privado. e) protegido. Comentários: MODIFICADOR CLASSE SUBCLASSE PACOTE TODOS UML PÚBLICO + X X X X PROTEGIDO # X X PACOTE ~ X X PRIVADO – X JAVA PÚBLICO + X X X X PROTEGIDO # X X X DEFAULT ~ X X PRIVADO - X Conforme vimos em aula, trata-se dos da visibilidade Pacote. Gabarito: C Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 93 de 213 59. (FCC - 2009 – TJ/PA - Análise de Sistemas) Considere o enunciado: Uma escola (todo) tem um ou mais departamentos (parte). Cada departamento pertence exatamente a uma única escola. No âmbito da UML, este enunciado especifica um relacionamento de: a) agregação por composição. b) realização. c) dependência. d) herança. e) recursão. Comentários: ▪ Composição: é um tipo de agregação, porém mais forte, em que o todo está relacionado às partes de forma dependente. Nesse relacionamento, as partes não têm existência própria. Logo, não existem por si só, i.e., a parte não existe sem o todo. É representado por uma linha com um diamante cheio na extremidade referente ao todo. Se cada departamento percence exatamente a uma única escola, então temos um relacionamento de agregação por composição. Por que? Porque um departamento não existe sem uma escola! Gabarito: A 60. (FCC - 2009 – TJ/PA - Análise de Sistemas) Considere: I. Modelagem do aspecto dinâmico de um sistema; II. Exibição da concorrência de atividades; III. Exibição das ramificações de controle de fluxo. O Diagrama de Atividades da UML contempla corretamente o que consta em a) I, apenas. b) II, apenas. c) III, apenas. d) II e III, apenas. e) I, II e III. Comentários: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 94 de 213 As ramificações especificam caminhos alternativos baseados em expressões booleanas – é representado com um diamante. A bifurcação é a divisão de um mesmo fluxo de controle em dois ou mais fluxos concorrentes: poderá ter uma única transição de entrada e duas ou mais transições de saída; abaixo da bifurcação, as atividades associadas com cada um dos caminhos prosseguem paralelamente. (a) Correto, ele é um diagrama comportamental, logo modela aspectos dinâmicos do sistema; (b) Correto, ele apresenta elementos que permitem representar fluxos concorrentes; (c) Correto, ele possui ramificações que especificam alternativos baseados em expressões booleanas. Gabarito: E 61. (FCC - 2009 – TJ/PA - Análise de Sistemas) Nos relacionamentos entre Casos de Uso: a) um include significa que o caso de uso base incorpora implicitamente o comportamento de outro, sob certas condições. b) não é permitida a generalização. c) somente include é considerado um estereótipo. d) somente extend é considerado um estereótipo. e) tanto include quanto extend são considerados estereótipos. Comentários: (a) Errado, isso é extensão; (b) Errado, é permitida a generalização/especialização; (c) Errado, extend também é um estereótipo; (d) Errado, include também é um estereótipo; (e) Correto, ambos são estereótipos. Gabarito: E 62. (FCC - 2009 – MPE/SE - Análise de Sistemas) Uma instância de classe em um determinado momento é a) uma cardinalidade. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 95 de 213 b) uma operação. c) um atributo. d) um objeto. e) uma sequência de operações. Comentários: Costuma-se dizer que o diagrama de objetos representa uma fotografia estática do sistema em um dado momento de execução, portanto esses diagramas não refletem o sistema genericamente, mas de forma específica – em um determinado instante. Como ele mostra instâncias, em vez de classes, ele é frequentemente chamado Diagrama de Instâncias. Conforme vimos em aula, um objeto é uma instância de uma classe. Gabarito: D 63. (FCC - 2009 – MPE/SE - Análise de Sistemas) Considerando os tipos COM = comportamental e EST = estrutural na UML 2.0, classifique correta e respectivamente os seguintes diagramas UML: I. State Machine Diagram II. Sequence Diagram III. Composite Structure Diagram a) EST - COM - COM. b) COM - EST - EST. c) COM - COM - EST. d) COM - EST - COM. e) EST - EST - COM. Comentários: Diagramas Estruturais: representam aspectos estáticos do sistema sob diversas visões diferentes. Em outras palavras, esses diagramas apresentam a estrutura do sistema inalterada há qualquer momento por não levarem em consideração o tempo em sua representação. São eles: Componente, Classes, Implantação, Perfil, Objetos, Estrutura Composta e Pacotes. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Editalwww.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 96 de 213 Diagramas Comportamentais: representam aspectos dinâmicos do sistema como um conjunto de mudanças no tempo. Podemos dizer em outras palavras que esses diagramas apresentam como os processos do programa se relacionam com o passar do tempo. São eles: Máquina de Estados, Casos de Uso, Atividade, Sequência, Comunicação, Interação Geral e Tempo. Conforme vimos em aula, diagrama de máquina de estados é comportamental; diagrama de sequência é comportamental; e diagrama de estrutura composta é estrutural. Gabarito: C 64. (FCC - 2009 – MPE/SE - Análise de Sistemas) Considere uma operação de classe escrita da seguinte forma: + adicionarMensagem(m: Mensagem): Status O símbolo de soma no início do texto e o termo entre parênteses significam, respectivamente: a) público e assinatura. b) protegido e método. c) assinatura e privado. d) privado e método. e) método e público. Comentários: MODIFICADOR CLASSE SUBCLASSE PACOTE TODOS UML PÚBLICO + X X X X PROTEGIDO # X X PACOTE ~ X X PRIVADO – X JAVA PÚBLICO + X X X X PROTEGIDO # X X X DEFAULT ~ X X PRIVADO - X Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 97 de 213 Conforme vimos em aula, o sinal significa visibilidade pública e o termo entre parênteses é apenas a assinatura do método. Gabarito: A 65. (FCC - 2009 – PGE/RJ - Análise de Sistemas) No âmbito da UML, é o mais importante detalhe que pode ser especificado para atributos e operações de um classificador e cuja especificidade, que pode ser de quatro níveis diferentes (ex. pacote), é utilizável por outros. Trata-se de: a) usabilidade. b) parâmetro. c) instância. d) visibilidade. e) escopo de efeito. Comentários: MODIFICADOR CLASSE SUBCLASSE PACOTE TODOS UML PÚBLICO + X X X X PROTEGIDO # X X PACOTE ~ X X PRIVADO – X JAVA PÚBLICO + X X X X PROTEGIDO # X X X DEFAULT ~ X X PRIVADO - X Conforme vimos em aula, trata-se da visibilidade. Gabarito: D 66. (FCC - 2008 – TRT/18 - Análise de Sistemas) Se em algum ponto de um Caso de Uso houver a necessidade de inserir incondicionalmente um cenário contido em outro Caso, deve-se usar o relacionamento de dependência estereotipado como: a) <<realize>>. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 98 de 213 b) <<extend>>. c) <<generalize>>. d) <<enumeration>>. e) <<include>>. Comentários: ▪ Relacionamento de Inclusão: utilizado quando um mesmo comportamento se repete em mais de um caso de uso. A imagem abaixo apresenta o domínio de um internet banking. Observem que, para realizar um pagamento ou visualizar o saldo, é obrigatório que fazer Login. Logo, é um relacionamento obrigatório, representado por uma seta tracejada com uma seta na ponta. Conforme vimos em aula, o relacionamento de inclusão deve ser utilizado quando o relacionamento é obrigatório (incondicional). Gabarito: E 67. (FCC - 2008 – TRT/18 - Análise de Sistemas) Atividade, Caso de Uso e Componente são diagramas da UML 2.0 classificados, respectivamente, no âmbito: a) comportamental, comportamental e comportamental. b) comportamental, estrutural e estrutural. c) comportamental, comportamental e estrutural. d) estrutural, comportamental e estrutural. e) estrutural, estrutural e comportamental. Comentários: Diagramas Estruturais: representam aspectos estáticos do sistema sob diversas visões diferentes. Em outras palavras, esses diagramas apresentam a estrutura do sistema inalterada há qualquer momento por não levarem em consideração o tempo em sua representação. São eles: Componente, Classes, Implantação, Perfil, Objetos, Estrutura Composta e Pacotes. Diagramas Comportamentais: representam aspectos dinâmicos do sistema como um conjunto de mudanças no tempo. Podemos dizer em outras palavras que esses diagramas apresentam como os processos do programa se relacionam com o passar Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 99 de 213 do tempo. São eles: Máquina de Estados, Casos de Uso, Atividade, Sequência, Comunicação, Interação Geral e Tempo. Conforme vimos em aula, atividade é Comportamental, Casos de Uso é comportamento e Componente é estrutural. Gabarito: C 68. (FCC - 2008 – TRT/18 - Análise de Sistemas) Na notação original da UML 2.0, os símbolos + (mais) e # (jogo da velha), antecedendo as operações de uma classe, caracterizam tais operações, respectivamente, como: a) pública e protegida. b) protegida e privada. c) pública e privada. d) pacote e protegida. e) pública e pacote. Comentários: MODIFICADOR CLASSE SUBCLASSE PACOTE TODOS UML PÚBLICO + X X X X PROTEGIDO # X X PACOTE ~ X X PRIVADO – X JAVA PÚBLICO + X X X X PROTEGIDO # X X X DEFAULT ~ X X PRIVADO - X Conforme vimos em aula, o primeiro é público e o segundo, protegido. Gabarito: A 69. (FCC - 2008 – TCE/AL - Análise de Sistemas) Os diagramas UML da categoria comportamental são os de: a) classes, objetos e componentes. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 100 de 213 b) casos de uso, sequência e classes. c) classes, atividades e sequência. d) casos de uso, atividades e máquinas de estados. e) objetos, estrutura composta e máquinas de estado. Comentários: Diagramas Comportamentais: representam aspectos dinâmicos do sistema como um conjunto de mudanças no tempo. Podemos dizer em outras palavras que esses diagramas apresentam como os processos do programa se relacionam com o passar do tempo. São eles: Máquina de Estados, Casos de Uso, Atividade, Sequência, Comunicação, Interação Geral e Tempo. Conforme vimos em aula, trata-se do caso de uso, atividades e máquina de estados. Gabarito: D 70. (FCC - 2008 – TRF/5 - Análise de Sistemas) Na UML 2.0, são dois diagramas comportamentais: a) Use Case e Package. b) Sequence e Component. c) State Machine e Communication. d) Timing e Component. e) Composite Structure e Deployment. Comentários: Diagramas Comportamentais: representam aspectos dinâmicos do sistema como um conjunto de mudanças no tempo. Podemos dizer em outras palavras que esses diagramas apresentam como os processos do programa se relacionam com o passar do tempo. São eles: Máquina de Estados, Casos de Uso, Atividade, Sequência,Comunicação, Interação Geral e Tempo. Conforme vimos em aula, trata-se da máquina de estados e comunicação. Gabarito: C 71. (FCC - 2008 – METRÔ/SP - Análise de Sistemas) Considere: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 101 de 213 I. Farol ligado. II. Comprar produto. III. Máquina elétrica. Os itens acima são representados em diagramas UML, respectivamente, como a) estado, caso de uso e classe. b) estado, classe e caso de uso. c) caso de uso, estado e classe. d) caso de uso, classe e estado. e) classe, estado e caso de uso. Comentários: Essa é uma questão bacana! Farol ligado é um estado booleano (ligado/desligado), logo pode ser representado por um Diagrama de Máquina de Estados. Comprar um produto é uma funcionalidade, logo pode ser representada por um Diagrama de Casos de Uso. Máquina Elétrica é um objeto ou uma classe, logo pode ser representada por um Diagrama de Classes. Gabarito: A 72. (FCC - 2007 – TRT/4 - Análise de Sistemas) Na versão mais atual da UML, a "linha de vida" de um objeto é representada no diagrama de: a) Objetos. b) Atividades. c) Comunicação. d) Máquina de Estados. e) Seqüência. Comentários: O diagrama de sequência possui dois eixos: horizontal e vertical. O primeiro representa os objetos envolvidos e o segundo representa o tempo em que a ação ocorre e é representado por uma linha tracejada (Linha de Vida). A imagem abaixo apresenta o diagrama de sequência de um caso de uso Sacar desde a inserção do cartão até o saldo ser gravado pelo banco. Conforme vimos em aula, trata-se do Diagrama de Sequência. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 102 de 213 Gabarito: E 73. (FCC - 2007 – TRT/4 - Análise de Sistemas) Na versão mais atual da UML, a "linha de vida" de um objeto é representada no diagrama de: a) Objetos. b) Atividades. c) Comunicação. d) Máquina de Estados. e) Seqüência. Comentários: O diagrama de sequência possui dois eixos: horizontal e vertical. O primeiro representa os objetos envolvidos e o segundo representa o tempo em que a ação ocorre e é representado por uma linha tracejada (Linha de Vida). A imagem abaixo apresenta o diagrama de sequência de um caso de uso Sacar desde a inserção do cartão até o saldo ser gravado pelo banco. Conforme vimos em aula, trata-se do Diagrama de Sequência. Gabarito: E 74. (FCC - 2015 – TRT/15 - Análise de Sistemas) A documentação de um caso de uso costuma descrever, por meio de uma linguagem simples, informações sobre ele. Na UML 2.0, essa documentação: a) não possui um formato específico definido. b) deve ser feita por meio de fluxogramas. c) não pode ser feita por meio de outros diagramas. d) costuma descrever apenas, em linhas gerais, a função do caso de uso e) não costuma deixar claro quais atores interagem com os casos de uso. Comentários: Um caso de uso conta uma história sobre como o usuário final interage com o sistema sob um conjunto de circunstâncias específicas. A história pode ser um texto narrativo, uma descrição geral de tarefas ou interações, uma descrição baseada em gabaritos Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 103 de 213 ou uma representação esquemática. Independentemente de sua forma, um caso de uso representa o software ou sistema do ponto de vista do usuário final. Conforme vimos em aula, a documentação não possui uma forma específica – é mais aberto! Muitos ficam em dúvida no quarto item, mas ele está errado porque ele diz que deve descrever apenas a função do caso de uso. Gabarito: A 75. (FCC - 2014 – TJ/PA - Análise de Sistemas) Considere o processo de negócio e o diagrama abaixo. É correto afirmar: a) Trata-se de um diagrama de atividades da UML. b) Não há relação entre o processo e o diagrama. c) Um processo não pode ser modelado por um diagrama UML. d) O processo pode ser modelado apenas por um diagrama de caso de uso da UML. e) Trata-se de um diagrama de classes da UML. Comentários: (a) Correto, basta notar o estado inicial e final, as swimlanes, as ramificações, etc; (b) Errado, há clara relação entre o processo e o diagrama; (c) Errado, tanto pode que Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 104 de 213 foi modelado por um diagrama de atividades; (d) Errado, tanto errado que foi modelado por um diagrama de atividades; (e) Errado, trata-se de um diagrama de atividades. Gabarito: A 76. (FCC - 2014 – TJ/PA - Análise de Sistemas) Um analista judiciário do Tribunal de Justiça do Amapá precisa utilizar um diagrama que permite adaptar o metamodelo UML para diversas plataformas como Java EE ou .NET ou para diferentes domínios como aplicações em tempo real e modelagem de processos de negócio. Este diagrama precisa permitir a definição de estereótipos customizados e restrições. Dentre os diagramas da UML 2.5, o que melhor atende estas necessidades é o Diagrama de: a) Perfil. b) Deployment. c) Estruturas Compostas. d) Componentes. e) Colaboração. Comentários: O Diagrama de Perfil permite representar esses novos elementos, operando no nível de metamodelos. Imaginem que eu quero utilizar a UML para representar uma rede de computadores. A UML tem símbolos para representar roteadores, switches, etc? Não! Para tal, podem-se utilizar estereótipos. Como? Ora, eu desenho um retângulo e escrevo nele a expressão <<roteador>> ou <<switch>>. Conforme vimos em aula, a questão trata do Diagrama de Perfil. Gabarito: A 77. (FCC - 2014 – TCE/GO - Análise de Sistemas) A UML especifica um conjunto de diagramas para modelar sistemas orientados a objeto em suas várias perspectivas. Dois destes diagramas podem ser muito úteis para apresentar uma visão de nível mais alto do sistema, como: I. adequado para captar os requisitos funcionais de um sistema, ajudando no entendimento destes requisitos. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 105 de 213 II. suporta e estimula o comportamento paralelo, sendo útil para modelagem de fluxo de trabalho e de processos, principal- mente, processos de negócio. Os diagramas descritos em I e II são, correta e respectivamente, de a) Casos de Uso e de Sequência. b) Comunicação e de Atividades. c) Componentese de Sequência. d) Casos de Uso e de Atividades. e) Interação e de Distribuição. Comentários: Casos de Uso são uma técnica para captar os requisitos funcionais de um sistema. Eles servem para descrever as interações de usuários com o sistema, fornecendo uma narrativa sobre como o sistema é utilizado. E o que é um cenário? Cenário é uma instância de caso de uso, i.e., uma sequência de passos que descreve uma interação entre um usuário e o sistema. O Diagrama de Atividades descreve lógica de procedimento, processo de negócio e fluxos de trabalho. De várias formas, eles desempenham um papel semelhante aos fluxogramas, mas se diferenciam, pois suportam comportamentos paralelos. Mas o que é uma atividade? É um comportamento parametrizado representado como um fluxo coordenado de ações. Conforme vimos em aula, trata-se do Diagrama de Casos de Uso e de Atividades. Gabarito: D 78. (FCC - 2014 – TRT/13 - Análise de Sistemas) Este diagrama da UML pode ser usado para modelar processos de negócio. Suporta comportamento paralelo e permite que, quem está seguindo o processo, escolha a ordem na qual fazer as coisas. Em outras palavras, ele simplesmente determina as regras essenciais de sequência que se deve seguir. São geralmente usados para mostrar o que acontece, mas não quem faz o que, já que faz sentido se concentrar no que é feito, em vez de em quem realiza quais partes do comportamento. O diagrama descrito é o diagrama de: a) sequência. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 106 de 213 b) atividades. c) casos de uso. d) comunicação. e) distribuição. Comentários: O Diagrama de Atividades descreve lógica de procedimento, processo de negócio e fluxos de trabalho. De várias formas, eles desempenham um papel semelhante aos fluxogramas, mas se diferenciam, pois suportam comportamentos paralelos. Mas o que é uma atividade? É um comportamento parametrizado representado como um fluxo coordenado de ações. Conforme vimos em aula, trata-se do Diagrama de Atividades. Bastava observar que a questão fala em modelo de processos de negócio e que suporta comportamento paralelo. Gabarito: B 79. (FCC - 2014 – TRT/13 - Análise de Sistemas) Observando os processos em trâmite no Tribunal, João observou que as situações pelas quais os processos passavam poderiam ser classificadas em: "abrindo", "aberto", "em trâmite", "encerrando" e "arquivado". Do ponto de vista da orientação a objetos ele percebeu que poderia modelar mais adequadamente as condições ou situações da vida do objeto processo utilizando, para representá-las, o diagrama UML denominado: a) Interface. b) Pacote. c) Caso de uso. d) Máquina de estados. e) Classes. Comentários: Também conhecido como Diagrama de Transição de Estados, apresenta diversos estados possíveis de um objeto no decorrer da execução de processos de um sistema. Dessa forma, um objeto pode passar de um estado inicial para um estado final, por meio de uma transição, quando ocorre algum evento ou estímulo interno ou externo ao sistema. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 107 de 213 Conforme vimos em aula, a questão trata do Diagrama de Máquina de Estados. Bastava obversar que os processos passam por diversos estados. Gabarito: D 80. (FCC - 2014 – AL/PE - Análise de Sistemas) Considere o diagrama UML para a classe Conta ilustrado abaixo. É correto afirmar: a) A figura apresenta um diagrama de sequência, usado para representar o comportamento dinâmico de uma classe. O diagrama de sequência pode ser utilizado para ajudar a originar as sequências de testes que vão exercitar o comportamento dinâmico da classe e daquelas classes que colaboram com ela. b) As sequências iniciais movem-se entre os objetos Conta vazia e Conta estabelecida. A maior parte dos comportamentos da classe ocorre enquanto se está no objeto Conta ativa. Uma retirada final e fechamento da conta para a classe Conta fazem com que se estabeleçam mensagens para os objetos Conta inativa e Conta morta, respectivamente. c) Os testes projetados devem cobrir apenas os objetos centrais do diagrama, quais sejam, Conta estabelecida, Conta ativa e Conta inativa, já que Conta vazia e Conta morta não contêm dados a serem validados. d) O modelo de estados pode ser percorrido em forma de inclusão progressiva. Neste contexto, inclusão progressiva implica um caso de teste exercitar uma única transição e, quando uma nova transição tiver de ser testada, são usadas apenas aquelas previamente testadas. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 108 de 213 e) O caso de teste: Abrir • EstabelecerConta • FazerDepósito(inicial) • FazerRetirada(final) • Fechar é denominado sequência máxima de teste e a este caso de teste não podem ser acrescentadas outras sequências de teste. Comentários: (a) Errado, a figura representa um diagrama de máquina de estados; (b) Errado, Conta Vazia e Conta Estabelecida são estados e, não, objetos; (c) Errado, eles contêm dados a serem validados e os testes devem cobrir todos os estados; (d) Correto, esse é o contexto exato de inclusão progressiva; (e) Errado, podem ser acrescentados Retirar, Depositar, Saldo/Crédito/Informação da Conta. Gabarito: D 81. (FCC - 2014 – AL/PE - Análise de Sistemas) Considere o diagrama da UML 2.0: Trata-se de um diagrama de I e nele podem ser identificados II , III e IV. As lacunas de I a IV são correta e respectivamente preenchidas por: a) interfaces - componentes - relacionamentos de realização - conexões b) implantação - elementos de hardware - nós - vias de comunicação c) instalação - elementos de infraestrutura - nós - estereótipos de nós d) modelagem cliente/servidor - servidor - clientes - interfaces de banco de dados e) componentes - interfaces - componentes - relacionamentos de dependência Comentários: O Diagrama de Componentes representa o sistema sob uma perspectiva funcional, expondo a organização de seus módulos e as relações entre seus componentes por Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 109 de 213 meio de interfaces. Professor, o que é são os componentes? É uma unidade independente, que pode ser utilizada ou substituída com/por outros componentes para formar um sistema complexo. Conforme vimos em aula, trata-se de um Diagrama de Componentes! Estão vendo a bolinha? É a interface! Estão vendo os retângulos com um símbolo no canto superior direito? São os componentes! Estão vendo a seta tracejada? É uma dependência. Gabarito: E 82. (FCC - 2014 – TRT/13- Análise de Sistemas) Marcelo trabalha como Analista Legislativo na Assembleia Legislativa do Estado de Pernambuco e recebeu a tarefa de elaborar um diagrama da UML 2.0 que seja capaz de modelar o que pode ocorrer em partes de um sistema orientado a objetos, como: fluxos de controle e de dados, situações de decisão em que haja uma entrada e diversas saídas, diferentes ações que podem ser executadas por objetos ou entidades quando um método for executado, como um conjunto de ações relacionadas pode ser executado e como afetará objetos ao redor, situações em que mais de uma atividade pode acontecer ao mesmo tempo. Marcelo optou por usar o diagrama de: a) Classes. b) Atividades. c) Colaboração. d) Objetos. e) Casos de Uso. Comentários: O Diagrama de Atividades descreve lógica de procedimento, processo de negócio e fluxos de trabalho. De várias formas, eles desempenham um papel semelhante aos fluxogramas, mas se diferenciam, pois suportam comportamentos paralelos. Mas o que é uma atividade? É um comportamento parametrizado representado como um fluxo coordenado de ações. Conforme vimos em aula, trata-se do Diagrama de Atividades. Gabarito: B Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 110 de 213 83. (FCC - 2014 – TRT/13 - Análise de Sistemas) Embora BPMN e UML tenham abordagens diferentes em relação à modelagem de processos de negócios, diagramas UML que modelam o comportamento dinâmico podem ser usados na modelagem de alguns processos de negócio, como os diagramas de__I__ e de___II___ . As lacunas I e II são correta e respectivamente preenchidas com: a) Classes - Objetos b) Estados - Implantação c) Componentes - Objetos d) Casos de Uso - Atividades e) Classes - Sequência Comentários: O Diagrama de Atividades descreve lógica de procedimento, processo de negócio e fluxos de trabalho. De várias formas, eles desempenham um papel semelhante aos fluxogramas, mas se diferenciam, pois suportam comportamentos paralelos. Mas o que é uma atividade? É um comportamento parametrizado representado como um fluxo coordenado de ações. Diagramas Estruturais não modelam o comportamento dinâmico do sistema, logo podemos eliminar os itens que contenham o Diagrama de Classes, Diagrama de Objetos, Diagrama de Componentes e Diagrama de Implantação. Sobra apenas uma opção: Casos de Uso e Atividades. Gabarito: D 84. (FCC - 2014 – TRT/2 - Análise de Sistemas) UML é uma linguagem visual para modelagem de sistemas orientados a objeto. Considere o diagrama UML: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 111 de 213 Uma primitiva importante dos diagramas de ..I... é a troca de mensagem, como na figura acima, que ilustra a troca de mensagens entre objetos e entre atores e objetos. Estas mensagens, utilizadas para indicar interação ou comunicação, podem ter diferentes significados: - Chamada: significa que um objeto está solicitando a execução de ...II.... de um outro objeto. Para isso, é necessário que ele seja declarado como público ..III...... correspondente. - Ocorrência de Evento: um evento é algum acontecimento externo ao software, mas que é a ele notificado, pois lhe diz respeito. Exemplos são as saídas para dispositivos (como disco ou monitor) feitos através de serviços do sistema operacional. Esta é a forma padrão de interação entre ...IV..... . As lacunas I, II, III e IV são, correta e respectivamente, preenchidas em: a) sequência - um método - na classe - objetos e atores. b) atividades - um procedimento - no método - classes e objetos. c) objetos - uma mensagem - no método - objetos e métodos. d) sequência - um método - no método construtor - classes e métodos. e) atividades - uma classe - na superclasse - objetos e atores. Comentários: O Diagrama de Sequência é um diagrama de interação que captura o comportamento de um único cenário, mostrando vários exemplos de objetos e mensagens que são trocadas dentro de caso de uso. Ele modela a interação entre os Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 112 de 213 objetos, permitindo a visualização da execução de um ponto específico da aplicação, com ênfase na ordem temporal. Conforme vimos em aula, trata-se do Diagrama de Sequência (vejam as Linhas de Vida). A chamada é a solicitação de execução de um método, sendo público na classe correspondente. Atores e objetos interagem por meio de eventos. Gabarito: A 85. (FCC - 2014 – SABESP - Análise de Sistemas) Considere a imagem abaixo: Na UML 2.0, o conceito de modelagem de classes que pode ser observado na imagem é: a) Herança. b) Propagação. c) Agregação. d) Composição. e) Associação Simples. Comentários: ▪ Agregação: é um tipo de associação, porém mais forte, em que o todo está relacionado às suas partes de forma independente. Nesse tipo de relacionamento, as partes têm existência própria. Portanto, elas existem por si só, isto é, a parte existe sem o todo. É representado por uma linha com um diamante vazio na extremidade referente ao todo. Conforme vimos em aula, trata-se da Agregação. Vejam o diamante vazio (se fosse cheio, seria Composição). Gabarito: C Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 113 de 213 86. (FCC - 2014 – TRT/13 - Análise de Sistemas) Em um diagrama de sequência UML 2.0, o símbolo utilizado para denotar uma mensagem perdida é: a) b) c) d) e) Comentários: (a) Errado, isso é uma Mensagem Achada e representa uma mensagem localizada – é um ponto na origem da mensagem, indicando uma mensagem localizada com um remetente desconhecido; (b) Errado, essa não é uma notação existente; (c) Errado, essa não é uma notação existente; (d) Correto, isso é uma Mensagem Perdida – é um ponto na extremidade da ponta da seta para indicar que o destino é desconhecido; (e) Errado, essa não é uma notação existente. Gabarito: D 87. (FCC - 2013 – TRT/9 - Análise de Sistemas) Nos diagramas de classe da UML, o termo visibilidade refere-se à capacidade de um método de referenciar uma característica de outra classe. Sobre os valores possíveis para definir a visibilidade das características de uma classe, a) apenas métodos da classe que contém o modificador private e de classes contidas no mesmo pacote podem acessar características privadas. O caractere “-” precede as características privadas. b) os métodos das classes definidas no mesmo pacote da classe em questão podem acessar as características dessa classe definidas como pacote. O caractere “§” precede as características depacote. c) qualquer método pode acessar livremente as características públicas, exceto métodos de classes envolvidas em relações de herança ou implementação de interface. O caractere “+” precede características públicas. d) apenas métodos presentes no mesmo pacote ou em classes que possuem relação de herança ou implementação de interface podem acessar características default. O caractere “*” precede características default. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 114 de 213 e) somente os métodos da classe que contém o modificador protected e seus descendentes via herança podem acessar características protegidas (em Java características protegidas também possuem acessibilidade de pacote). O caractere “#” precede as características protegidas. Comentários: MODIFICADOR CLASSE SUBCLASSE PACOTE TODOS UML PÚBLICO + X X X X PROTEGIDO # X X PACOTE ~ X X PRIVADO – X JAVA PÚBLICO + X X X X PROTEGIDO # X X X DEFAULT ~ X X PRIVADO - X (a) Errado, métodos de classes contidas no mesmo pacote não podem visualizar; (b) Errado, o caractere “~” precede as características de pacote; (c) Errado, não há essa exceção; (d) Errado, default é o modificador do Java e o caractere é “~”; (e) Correto, basta olhar a tabela. Gabarito: E 88. (FCC - 2014 – MPE/MA - Análise de Sistemas) Em UML, casos de uso mais complexos podem ser construídos de partes menores por meio de relações. Analise as descrições destas relações. I. Incorpora um caso de uso dentro da sequência de comportamento de outro caso de uso. A notação UML 2 para esta relação é uma seta tracejada indo do caso de uso origem para o caso de uso destino com o nome da relação indicado na seta entre << >>. II. Nesta relação um caso de uso pai tem o comportamento comum e os casos de uso filhos acrescentam variações a ele. A UML 2 indica esta relação por uma seta de traço contínuo partindo do caso de uso filho com a ponta triangular chegando ao caso de uso pai. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 115 de 213 III. Acrescenta comportamento incremental a um caso de uso. Representa a situação em que alguma capacidade inicial é definida e mais tarde recursos são acrescentados. A notação UML 2 para esta relação é uma seta tracejada do caso de uso estendido até o caso de uso básico com o nome da relação indicado na seta entre << >>. As relações I, II e III são correta e respectivamente definidas como: a) generalização - especialização - extensão. b) private - public - protected. c) include - generalização - extend. d) derived - generalization - added. e) extend - generalização - include. Comentários: ▪ Relacionamento de Inclusão: utilizado quando um mesmo comportamento se repete em mais de um caso de uso. A imagem abaixo apresenta o domínio de um internet banking. Observem que, para realizar um pagamento ou visualizar o saldo, é obrigatório que fazer Login. Logo, é um relacionamento obrigatório, representado por uma linha tracejada com uma seta na ponta. ▪ Relacionamento de Extensão: utilizado quando se deseja modelar um relacionamento alternativo. A imagem abaixo apresenta o contexto de um fórum de discussões. Observem que para cadastrar um usuário, há duas opções: moderador ou administrador. Logo, é um relacionamento opcional, representado por uma linha tracejada com uma seta na ponta. ▪ Relacionamento de Herança: relacionamento entre atores, utilizado quando o ator filho é um uma especificação do ator genérico. É bastante útil para definir sobreposição de papéis entre atores e é representado com uma linha sólida com um triângulo no ator genérico. Na imagem abaixo, Vendedor é especialização de Pessoa. É representado por uma linha com um triângulo. (I) Observem que a questão fala em incorporação de um caso de uso dentro da sequência de comportamento de outro caso de uso, logo é um relacionamento de inclusão; (II) Observem que a questão fala em um relacionamento pai/filho, logo trata-se de generalização/especialização (herança); (III) Observem que a questão fala em acrescentar um comportamento incremental. Além disso, diz que a notação Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 116 de 213 é do caso de uso estendido até o caso de uso básico, então é um relacionamento de extensão. Gabarito: C 89. (FCC - 2012 – TRF/2 - Análise de Sistemas) Atributos estáticos são atributos da classe em vez de serem atributos de uma instância da classe. Em UML um atributo estático é representado ao se utilizar em sua transcrição o: a) modo sublinhado b) símbolo # c) símbolo / d) modo itálico e) símbolo ~ Comentários: Galera, agora vamos responder a algumas perguntas relevantes. Professor, como se representa um atributo estático na UML? Bem, basta sublinhar o nome do atributo! Professor, como se representa uma operação abstrata? Bem, basta escrever seu nome em itálico! E como se representa uma operação estática? Bem, basta escrever seu nome sublinhado! Conforme vimos em aula, deve-se sublinhar o nome do atributo. Gabarito: A 90. (FCC - 2012 – TJ/PE - Análise de Sistemas) É empregado para a modelagem dos aspectos físicos de um sistema OO. Mostra a configuração dos nós de processamento em tempo de execução e os artefatos que nele existem. Trata- se do diagrama de: a) sequência. b) atividades. c) implantação. d) pacotes. e) comunicação. Comentários: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 ==11f7eb== CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 117 de 213 O Diagrama de Implantação apresenta o layout físico de um sistema, revelando quais partes do software são executadas em quais partes do hardware. Também conhecido como Diagrama de Instalação ou também Diagrama de Distribuição, pode representar toda a estrutura de hardware e requisitos mínimos onde o sistema será de fato executado. Conforme vimos em aula, trata-se do Diagrama de Implantação. Gabarito: C 91. (FCC - 2011 – TRE/AP - Análise de Sistemas) São diagramas de interação os de a) componentes e de implantação. b) sequência e de máquina de estados. c) comunicação e de sequência. d) atividades e de implantação. e) interação e de componentes. Comentários: ▪ Diagramas de Interação: são diagramas comportamentais que consideram o relacionamento dinâmico e colaborativo entre os objetos do sistema e suas trocas de informações. Eles enfatizam o controle de fluxo e dados entre as coisas do sistema que estão sendo modeladas (Ex: Objetos). São eles: Sequência, Comunicação, Interação Geral e Tempo. Conforme vimos em aula, são comunicaçãoe sequência. Gabarito: C 92. (FCC - 2011 – TRE/RN - Análise de Sistemas) Na modelagem de Caso de Uso, <<include>> e <<extend>> são relacionamentos de: a) dependência. b) agregação. c) especialização. d) atores entre si. e) atores com os casos de uso. Comentários: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 118 de 213 IMPORTANTE Observem que o Relacionamento de Dependência é representado por uma seta tracejada que aponta para classe independente. Em outras palavras, a Classe Pedido depende da Classe Item. Os relacionamentos <include> e <extend> também são relacionamentos de dependência. Conforme vimos em aula, são relacionamentos de dependência. Bastava lembrar da notação – o relacionamento de dependência utilizar uma seta tracejada. Gabarito: A 93. (FCC - 2011 – TRE/RN - Análise de Sistemas) Um relacionamento semântico entre classificadores, no qual um deles especifica um contrato cujo cumprimento é assegurado pelo outro. Na UML, trata-se de: a) herança múltipla. b) realização. c) multiplicidade. d) composição. e) visibilidade. Comentários: Relacionamento de Realização: relacionamento entre dois elementos em que um elemento realiza (implementa/executa) o comportamento que o outro elemento especifica. Costuma-se dizer que um dos elementos especifica um contrato e o outro elemento realiza esse contrato. A imagem abaixo mostra a Classe Marcelo, que realiza uma Interface Pessoa. Conforme vimos em aula, trata-se do relacionamento de realização. Gabarito: B 94. (FCC - 2011 – TRE/RN - Análise de Sistemas) Por um mecanismo de ampliação de seu vocabulário, a UML permite que sejam criados novos blocos de construção derivados dos já existentes, todavia específicos a determinados problemas. Esse mecanismo é definido como: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 119 de 213 a) persistência. b) derivação. c) polimorfismo. d) estereótipo. e) operação. Comentários: Estereótipos permitem adaptar ou personalizar modelos com construções específicas para um domínio, plataforma ou método de desenvolvimento particular. Trocando em miúdos, é um mecanismo de extensão que dá mais poder e flexibilidade à UML. Podemos ter estereótipos de dois tipos: predefinidos pela linguagem ou definidos pela equipe de desenvolvimento. Como assim, professor? Estereótipos predefinidos já vêm nativamente na linguagem (Ex: <<interface>>, <<document>>, <<control>>, <<entity>>). No entanto, a equipe de desenvolvimento pode criar seus próprios estereótipos! Como? Basta colocar o nome do elemento delimitado pelos símbolos << e >>. Além disso, os estereótipos podem ser definidos textualmente ou graficamente. Conforme vimos em aula, trata-se de estereótipos. Gabarito: D 95. (FCC - 2010 – TRT/8 - Análise de Sistemas) Para demonstrar elementos estruturais e comportamentais de um sistema, a UML pode utilizar, respectivamente, os diagramas de: a) Atividade e de Sequência. b) Caso de Uso e de Comunicação. c) Sequência e de Objeto. d) Classe e de Pacote. e) Pacote e de Atividade. Comentários: Diagramas Estruturais: representam aspectos estáticos do sistema sob diversas visões diferentes. Em outras palavras, esses diagramas apresentam a estrutura do sistema inalterada há qualquer momento por não levarem em consideração o tempo em sua Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 120 de 213 representação. São eles: Componente, Classes, Implantação, Perfil, Objetos, Estrutura Composta e Pacotes. Diagramas Comportamentais: representam aspectos dinâmicos do sistema como um conjunto de mudanças no tempo. Podemos dizer em outras palavras que esses diagramas apresentam como os processos do programa se relacionam com o passar do tempo. São eles: Máquina de Estados, Casos de Uso, Atividade, Sequência, Comunicação, Interação Geral e Tempo. Conforme vimos em aula, a única opção que mostra respectivamente um diagrama estrutural e um comportamento é: Pacote e Atividade. Gabarito: E 96. (FCC - 2010 – TRE/RS - Análise de Sistemas) Um dos mais importantes detalhes que se pode especificar para os atributos e operações de uma classe é a sua visibilidade. Na UML, os níveis de visibilidade podem ser representados pelos símbolos: a) + (público), - (privado), # (pacote), ~ (protegido). b) + (privado), - (público), # (pacote), ~ (protegido). c) + (público), - (privado) e # (protegido), somente. d) + (público) e - (privado), somente. e) + (público), - (privado), # (protegido), ~ (pacote). Comentários: MODIFICADOR CLASSE SUBCLASSE PACOTE TODOS UML PÚBLICO + X X X X PROTEGIDO # X X PACOTE ~ X X PRIVADO – X JAVA PÚBLICO + X X X X PROTEGIDO # X X X DEFAULT ~ X X PRIVADO - X Conforme vimos em aula, + (público), - (privado), # (protegido) e ~ (pacote). Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 121 de 213 Gabarito: E 97. (FCC - 2010 – MPE/RN - Análise de Sistemas) Caso particular de associação binária utilizado para expressar um relacionamento todo-parte. Entretanto, a parte pode não ser exclusiva de um único todo. No diagrama de classes é uma: a) Generalização. b) Composição. c) Estereotipagem. d) Agregação. e) Dependência. Comentários: ▪ Agregação: é um tipo de associação, porém mais forte, em que o todo está relacionado às suas partes de forma independente. Nesse tipo de relacionamento, as partes têm existência própria. Portanto, elas existem por si só, isto é, a parte existe sem o todo. É representado por uma linha com um diamante vazio na extremidade referente ao todo. Conforme vimos em aula, se a parte não é exclusiva de um único todo, ela tem existência própria – logo é uma agregação. Gabarito: D 98. (FCC - 2011 – TRT/14 - Análise de Sistemas) Um relacionamento todo-parte onde o todo controla a vida das partes; todavia as partes podem ser removidas explici- tamente antes da morte do todo. Trata-se de: a) particionamento. b) abstração. c) enumeração. d) agregação não composta. e) agregação por composição. Comentários: ▪ Composição: é um tipo de agregação, porém mais forte, em que o todo está relacionado às partes de forma dependente. Nesse relacionamento, as partes não Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalhowww.estrategiaconcursos.com.br Pág. 122 de 213 têm existência própria. Logo, não existem por si só, i.e., a parte não existe sem o todo. É representado por uma linha com um diamante cheio na extremidade referente ao todo. Conforme vimos em aula, se a parte é exclusiva de um único todo, ela não tem existência própria – logo é uma agregação por composição. Explicando melhor: temos uma empresa que tem vários departamentos. Trata-se de um relacionamento em que a parte depende do todo, visto que se eu acabo com a empresa, eu necessariamente acabo com os departamentos. Todavia, antes do fim do ciclo de vida da empresa, eu posso remover os departamentos. Logo, trata-se de uma Composição (ou Agregação por Composição), na medida em que, apesar de a parte depender do todo, ela pode ser removida explicitamente antes da morte do todo. Gabarito: E 99. (FCC - 2010 – TRT/20 - Análise de Sistemas) Na UML, o diagrama que serve para organizar o comportamento do sistema é o diagrama de: a) sequência. b) estados. c) caso de uso. d) classes. e) objetos. Comentários: Caso haja alguma falha em um dos passos, cria-se outro cenário. De todo modo, o Diagrama de Casos de Uso descreve um conjunto de funcionalidades do sistema e interações com elementos externos e entre si. Os Atores são os elementos externos que interagem com o sistema e são representados por um boneco (Stickman). Nas imagens abaixo, temos dois Diagramas de Casos de Uso (Sistema e Negócio): Conforme vimos em aula, trata-se do Diagrama de Casos de Uso. Gabarito: C 100. (FCC – 2010 – AL/SP - Análise de Sistemas) Um relacionamento estendido entre dois casos de uso é um relacionamento de: a) associação. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 123 de 213 b) composição. c) generalização. d) estado. e) dependência. Comentários: IMPORTANTE Observem que o Relacionamento de Dependência é representado por uma seta tracejada que aponta para classe independente. Em outras palavras, a Classe Pedido depende da Classe Item. Os relacionamentos <include> e <extend> também são relacionamentos de dependência. Conforme vimos em aula, são relacionamentos de dependência. Gabarito: E 101. (FCC- 2016 – TRT/SE – Análise de Sistemas – IV) Após conversa com diversos funcionários do Tribunal para o qual está sendo desenvolvido um software, um Técnico listou os seguintes requisitos: − O Juiz poderá cadastrar ou alterar informações nos processos. Para que alterações sejam possíveis é necessário que antes seja feita uma busca para localizar o processo. − O sistema registrará automaticamente em log todas as operações realizadas pelos funcionários do Tribunal, para futuros processos de auditoria. Ao construir um diagrama de casos de uso da UML para mostrar a relação entre o ator “Juiz” e os casos de uso “cadastrar processo”, “alterar processo” e “localizar processo”, notou-se uma associação entre os casos de uso “alterar processo” e “localizar processo”. Esta associação deve ser rotulada com o estereótipo: a) <<connect>> b) <<extend>> c) <<generalize>> d) <<include>> e) <<specialize>> Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 124 de 213 Comentários: Galera, vamos pensar um pouquinho aqui comigo! A própria questão já deu a dica, ou seja, é necessário primeiro localizar o processo para, então, realizar alterações. Logo, eu só consigo realizar alterações se eu localizar primeiro o processo. Isso significa que o caso de uso de “alterar processo” precisa necessariamente do caso de uso “localizar processo”. Dessa forma, a relação de ambos os casos de uso é obrigatória ou opcional? É obrigatória! Se é obrigatória, então o estereótipo a ser utilizado é o <<include>> (caso fosse opcional, seria utilizado o <<extend>>). Gabarito: D 102. (FCC - 2009 - TJ-SE - Técnico Judiciário - Programação de Sistemas) Os três relacionamentos mais importantes na modelagem orientada a objetos são: a) especialização, herança e multiplicidade. b) generalização, agregação e cardinalidade. c) associação, generalização e dependência. d) encapsulamento, dependência e composição. e) herança, polimorfismo e associação. Comentários: A questão pergunta sobre os relacionamentos, logo: associação, generalização e dependência! Gabarito: C 103. (FCC - 2009 - TRT - 16ª REGIÃO (MA) - Analista Judiciário - Tecnologia da Informação) Um analista necessita definir uma associação entre classes onde uma delas, sendo parte da outra, tem sua vida controlada por aquela da qual faz parte. Esta associação é tipicamente uma: a) estereotipação. b) enumeração. c) composição. d) dependência. e) realização. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 125 de 213 Comentários: Trata-se de um relacionamento todo-parte em que o todo depende da parte (tem sua vida controlada por aquela da qual faz parte): composição. Gabarito: C 104. (FCC - 2011 - TRE-AP - Técnico Judiciário - Programação de Sistemas) Em relação aos conceitos fundamentais da orientação a objetos, o mecanismo pelo qual um objeto utiliza os recursos de outro, podendo ele assumir os tipos “usa um” ou “parte de”, denomina-se: a) Encapsulamento. b) Herança. c) Método. d) Polimorfismo. e) Associação. Comentários: Trata-se da Associação (por exemplo: composição ou agregação)! Gabarito: E ACERTEI ERREI Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 126 de 213 EXERCÍCIOS FGV UNIFIED MODELING LANGUAGE 1. (FGV - 2009 – MEC – Análise de Sistemas) A UML define em sua versão 2.0, treze tipos de diagramas, divididos em duas categorias: diagramas estruturais e diagramas dinâmicos. Assinale a alternativa que não indique um diagrama estrutural da UML. a) Diagrama de Visão Geral. b) Diagrama de Implantação. c) Diagrama de Pacotes. d) Diagrama de Classes. e) Diagrama de Objetos. Comentários: Lembrando que na UML 2.4.1, temos 14 diagramas! O Diagrama de Visão Geral (ou Interação Geral) é um diagrama comportamental! Gabarito: A 2. (FGV – 2008 – Senado Federal – Analista de Sistemas) Considere o caso de uso ilustrado na figura utilizando a notação UML. A descrição do cenário que melhor descreve esse caso de uso é: a) o atendente verifica o histórico dos pacientes que possuem consultas agendadas. b) um paciente liga para a clínica para marcar uma consulta. A atendente verifica o histórico do paciente, busca um horário vazio e agenda a consulta. Diego CarvalhoAula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 127 de 213 c) o atendente inclui os pacientes que têm consulta agendada e não possuem um histórico de atendimento. d) o paciente liga para a clínica para agendar uma consulta e para alterar o seu histórico. e) o atendente não marca consultas para pacientes que não tenham histórico na clínica. Comentários: A descrição que faz mais sentido é que um paciente liga para a clínica para marcar uma consulta. A atendente verifica o histórico do paciente, busca um horário vazio e agenda a consulta. Observem que há um relacionamento de inclusão (lembrem- se que ele é obrigatório), ou seja, deve-se verificar o histórico do paciente. Gabarito: B 3. (FGV – 2008 – Senado Federal – Analista de Sistemas) Uma série de modelos pode ser produzida durante um projeto orientado a objetos. O projeto inclui modelos estáticos e dinâmicos. Um modelo que é considerado dinâmico é o de: a) seqüência. b) classe. c) associação. d) contexto. e) generalização. Comentários: O que a questão chama de modelos são os diagramas! O único diagrama dinâmico da questão é o Diagrama de Sequência. Gabarito: A 4. (FGV – 2015 – ANA – Analista de Sistemas) João está preparando uma palestra sobre diagramas de classe da UML, e criou um slide com a figura: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 128 de 213 O título correto para esse slide deve ser “Relacionamento de”: a) agregação; b) correspondência; c) dependência; d) especialização; e) generalização. Comentários: Diamante Cheio é Composição. E o diamante vazio? Agregação! Gabarito: A 5. (FGV – 2015 – AL – Analista de Sistemas) Linguagens gráficas de modelagem são úteis para descrever e especificar sistemas computacionais porque oferecem notações próprias para representar conceitos e características estruturais e comportamentais do projeto de software. Assinale a opção que indica o diagrama da UML recomendado para modelar característica comportamental com ênfase nos vínculos entre os vários objetos de um projeto de software. a) Diagrama de objetos. b) Diagrama de componentes. c) Diagrama de implantação. d) Diagrama de comunicação. e) Diagrama de classes. Comentários: Todos os diagramas são estruturais, exceto: Diagrama de Comunicação. Gabarito: D 6. (FGV – 2015 – TJ/RO – Analista de Sistemas) O diagrama da UML mais adequado para representar o comportamento de vários objetos dentro de um único caso Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 129 de 213 de uso, de modo a evidenciar como esses objetos colaboram em algum comportamento ao longo do tempo, é o diagrama de: a) estruturas compostas; b) objetos; c) componentes; d) tempo; e) sequência. Comentários: Todos os diagramas são comportamentais, exceto: Diagrama de Tempo e Sequência. Não confundam: o diagrama de tempo exibe o tempo da execução de software e, não, como os objetos colaboram ao longo do tempo; e o diagrama de sequência, sim, exibe o comportamento dos objetos. Gabarito: E 7. (FGV – 2015 – Fiscal de Niterói – Analista de Sistemas) A UML (Unified Modeling Language) estabelece uma série de artefatos que auxiliam desenvolvedores de sistemas a modelar e documentar seu trabalho. A funcionalidade de um sistema, do ponto de vista dos seus usuários, é representada pelo Diagrama de: a) atividade; b) casos de uso; c) classes; d) estado; e) sequência. Comentários: Galera, a questão fala de funcionalidade de um sistema, logo trata-se do diagrama de casos de uso. Gabarito: B 8. (FGV - 2015 – PGE/RO - Análise de Sistemas) NÃO é um diagrama utilizado pela UML 2.0: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 130 de 213 a) Diagrama de casos de uso. b) Diagrama de classes. c) Diagrama de objetos. d) Diagrama de blocos múltiplos. e) Diagrama de sequência. Comentários: Conforme vimos em aula, não existe esse Diagrama de Blocos Múltiplos. Gabarito: D 9. (FGV - 2009 – MEC - Análise de Sistemas) Na UML o diagrama que descreve uma sequência de ações que representam um cenário principal e cenários alternativos, com o objetivo de demonstrar o comportamento de um sistema, por meio de interações com atores, é o diagrama de: a) Máquina de Estados. b) Caso de Uso. c) Implantação. d) Atividades. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 131 de 213 e) Pacotes. Comentários: Galera, falou em cenário principal/secundário e em comportamento do sistema só opode estar falando sobre o diagrama de... casos de uso! Gabarito: B 10. (FGV - 2009 – MEC - Análise de Sistemas) A UML (Unified Modeling Language) possui vários tipos de diagramas que em conjunto são utilizados para descrever a visão estática e dinâmica de um sistema. Assinale a alternativa em que todos os diagramas listados descrevem uma visão dinâmica de um sistema. a) Classes, Objetos, Implantação e Pacotes. b) Classes, Objetos, Casos de Uso e Sequência. c) Implantação, Pacotes, Sequência e Atividades. d) Implantação, Pacotes, Casos de Uso e Atividades. e) Casos de Uso, Sequência, Visão Geral e Atividades. Comentários: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 132 de 213 Conforme vimos em aula, os diagramas comportamentais tratam da visão dinâmica de um sistema, portanto Diagramas de Casos de Uso, Sequência, Visão Geral (interação geral) e Atividades. Gabarito: E ACERTEI ERREI Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 133 de 213 LISTA DE EXERCÍCIOS COMENTADOS CESGRANRIO UNIFIED MODELING LANGUAGE1. (CESGRANRIO - 2010 – PETROBRÁS - Analista de Sistemas – B) Em relação aos diagramas utilizados na UML 2.0, a) o diagrama de estrutura composta serve para ilustrar a arquitetura de um sistema, mostrando o agrupamento de suas classes. b) o diagrama de pacotes enfatiza a apresentação das classes do ambiente modelado, de acordo com um conjunto de eventos. c) o diagrama de implantação é usado para sistemas distribuídos e permite apresentar a topologia de uma rede de máquinas e qual processo cada máquina vai rodar. d) o diagrama de colaboração tem o objetivo de mostrar como as mensagens entre os objetos são trocadas no decorrer do tempo para a realização de uma operação. e) o diagrama de sequência mostra o contexto de uma interação, inclusive os objetos e seus relacionamentos pertinentes a uma interação particular. 2. (CESGRANRIO – 2014 – EPE – Analista de Gestão Corporativa - Tecnologia de Informação) Caso os desenvolvedores decidam usar a notação UML, qual diagrama é adequado para representar esse ciclo de vida, incluindo os estados e a passagem de um estado para outro? a) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 134 de 213 b) c) d) e) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 135 de 213 3. (CESGRANRIO – 2014 – EPE – Analista de Gestão Corporativa - Tecnologia de Informação) Qual a forma correta de descrever a associação entre um objeto “Venda” e um objeto “Item de Venda”, em um diagrama de classes UML, para manter a semântica existente no relacionamento entre as entidades de mesmo nome no diagrama de entidades e relacionamentos do SCL? a) b) c) d) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 136 de 213 e) 4. (CESGRANRIO – 2014 – EPE – Analista de Gestão Corporativa - Tecnologia de Informação) Uma equipe de desenvolvimento de software escolheu utilizar a análise orientada a objeto, seguindo a notação UML, para desenvolver um projeto razoavelmente complexo. Em certo ponto do projeto, ficou clara a necessidade de representar quais elementos externos interagem com que funcionalidades do sistema, em um nível alto de abstração. Qual o diagrama destinado para representar essas interações? a) Diagrama de Casos de Uso b) Diagrama de Colaboração c) Diagrama de Fluxo de Dados d) Diagrama de Interface com o Usuário e) Diagrama de Sequência 5. (CESGRANRIO – 2014 – FINEP – Analista – Desenvolvimento de Sistemas) Um fragmento combinado é um elemento da UML frequentemente empregado na construção de diagramas de sequência. Dentre os diferentes tipos de operadores de fragmentos combinados encontra-se: a) if b) while c) case d) for e) par Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 137 de 213 6. (CESGRANRIO – 2014 – FINEP – Analista – Desenvolvimento de Sistemas) O sistema de informação responsável pelo registro civil de um estado brasileiro possui uma função para registrar as informações necessárias sobre um cidadão que precisa obter uma carteira de identidade. Através dessa função, são registrados no sistema informações tais como: o nome, a data de nascimento, os nomes dos pais e o local de nascimento desse cidadão. No ato do cadastramento descrito acima, o funcionário que opera o sistema pergunta ao cidadão se ele deseja registrar que ele é doador de órgãos para transplante. Caso a resposta seja afirmativa, o funcionário seleciona essa opção no formulário de registro, o que fará com que o sistema abra um formulário para que o funcionário registre informações fornecidas pelo cidadão, tais como: tipo sanguíneo, doenças preexistentes, etc. Baseado apenas no que foi descrito acima, qual diagrama de casos de uso descreve adequadamente as funcionalidades disponibilizadas pelo sistema de informação em questão? a) b) c) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 138 de 213 d) e) 7. (CESGRANRIO – 2014 – IBGE – Analista – Análise e Desenvolvimento de Aplicações) Em Análise de Sistemas, a UML é uma: a) metodologia que determina como deve ser realizada a análise de requisitos de sistemas complexos. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 139 de 213 b) metodologia de desenvolvimento de sistemas que inclui desde a análise de requisitos até a especificação de testes do sistema com modelos orientados a objetos. c) notação para o projeto físico de sistemas que usam linguagens orientadas a objetos como o Java e o C++. d) linguagem de modelagem que usa os conceitos de orientação a objetos para permitir a especificação de sistemas em diversos níveis de abstração. e) notação para facilitar representação visual de padrões de projeto e desenvolvimento da estrutura lógica de programas em plataformas de objetos distribuídas. 8. (CESGRANRIO – 2014 – LIQUIGÁS – Profissional Júnior – Análise de Sistemas) Devido à complexidade de um sistema de informação, o líder de projeto solicitou a um analista de sistemas a criação de diagramas que ilustrem os passos que compõem os casos de uso desse sistema, incluindo a sequência principal e todas as sequências alternativas. Para atender a essa solicitação, o analista deve criar diagramas de: a) classes b) atividades c) componentes d) objetos e) estados 9. (CESGRANRIO – 2014 – LIQUIGÁS – Profissional Júnior – Análise de Sistemas) Em um modelo de casos de uso, o tipo de relação a ser estabelecido entre um ator e um caso de uso é o de: a) associação b) composição c) dependência d) extensão e) generalização 10. (CESGRANRIO – 2014 – LIQUIGÁS – Profissional Júnior – Análise de Sistemas) Seja o seguinte diagrama UML 2: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e DesenvolvimentoProf. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 140 de 213 Que tipo de diagrama é esse? a) Diagrama de objetos b) Diagrama de tempo c) Diagrama de estados d) Diagrama de comunicação e) Diagrama de colaboração 11. (CESGRANRIO – 2013 – LIQUIGÁS – Profissional Júnior – Análise de Sistemas) No diagrama de sequência UML a seguir, existem 5 mensagens, numeradas de 1 a 5. Qual delas representa uma mensagem assíncrona? a) 1 b) 2 c) 3 Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 141 de 213 d) 4 e) 5 12. (CESGRANRIO – 2013 – LIQUIGÁS – Profissional Júnior – Análise de Sistemas) A Figura a seguir representa uma classe UML: Quantas propriedades (features) estáticas essa classe possui? a) 0 b) 1 c) 2 d) 3 e) 4 13. (CESGRANRIO – 2013 – BNDES – Profissional Básico – Análise de Sistemas – Desenvolvimento) Considere, em um primeiro sentido, que “pedreiros trabalham em construção civil” e, em sentido contrário, que “a construção civil emprega pedreiros”. Na análise orientada a objetos com notação UML (Unified Modeling Language), o exemplo mencionado, de acordo com o modelo objeto, está relacionado a uma a) inversão de classes e instâncias em um mesmo método b) conexão de objetos das mesmas classes c) relação entre atividade e entidade d) reciprocidade de informação e) independência funcional 14. (CESGRANRIO – 2012 – EPE – Analista de Gestão Corporativa – Tecnologia da Informação) Considere o diagrama de estados a seguir, apresentado na notação Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 142 de 213 da UML. Esse diagrama representa uma máquina de lavar roupas, que possui dois botões, On e Off, para ligar e desligar a máquina, respectivamente. Nesse diagrama, há uma variável n, cujo valor é alterado em determinadas situações. Considere que o sistema se encontra no estado inicial e que o botão “On” é pressionado duas vezes consecutivas. Em seguida, o botão “Off” é pressionado por duas vezes também consecutivas e, finalmente, o botão “On” é novamente pressionado uma única vez. Qual o valor da variável n após essa sequência de eventos? a) 0 b) 1 c) 2 d) 3 e) 4 15. (CESGRANRIO – 2012 – CHESF – Profissional de Nível Superior) Um robô foi construído para andar em um grid cujas posições são indicadas por pares ordenados (x,y), onde x e y são números inteiros. Esse robô recebe como comando uma string binária e funciona segundo a máquina de estado a seguir, descrita em UML 2.3. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 143 de 213 Iniciando na posição (0,0), o robô recebeu a string binária 111011110100010100. Em que posição o robô parou? a) (0,2) b) (0,4) c) (2,0) d) (2,2) e) (4,0) 16. (CESGRANRIO – 2012 – Petrobras - Analista de Sistemas Júnior - Engenharia de Software) Seja o seguinte diagrama de classes UML: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 144 de 213 Qual conjunto de classes e interfaces Java é compatível com os elementos de modelagem existentes nesse diagrama? a) package PKGB; public interface X3 { public abstract int opA(); public abstract double opB(int z); } package PKGA; import PKGB.X3; public class A implements X3 { int a1; double a2; private C[] c; public void ma01(int x) { // código irrelevante } public int opA() { // código irrelevante } } package PKGA; public class B extends A { int b1; String b2; public void ma01(int x) { // código irrelevante } Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 145 de 213 public double opB(int y) { // código irrelevante } public int opA() { // código irrelevante } } package PKGA; public class C { private int c1; private String c2; public double mc01(double a, double b) { // código irrelevante } public String mc02(String str, int ini, int param4) { // código irrelevante } } b) package PKGB; public interface X3 { public abstract int opA(); public abstract double opB(int z); } package PKGA; import java.util.*; public class A { int a1; double a2; private List<C> lc; public void ma01(int x) { // código irrelevante } public int opA() { // código irrelevante } } package PKGA; import PKGB.X3; Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 146 de 213 public class B extends A implements X3 { int b1; String b2; public void ma01(int x) { // código irrelevante } public double opB(int y) { // código irrelevante } public int opA() { // código irrelevante } } package PKGA; import java.util.*; public class C { private int c1; private String c2; private List<A> la; public double mc01(double a, double b) { // código irrelevante } public String mc02(String str, int ini, int param4) { // código irrelevante } } c) package PKGB; public interface X3 { public abstract int opA(); public abstract double opB(int z); } package PKGA; import java.util.*; public class A { private inta1; private double a2; private List<C> lc; Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 147 de 213 public void ma01(int x) { // código irrelevante } public int opA() { // código irrelevante } } package PKGA; import PKGB.X3; public class B extends A implements X3 { private int b1; private String b2; public void ma01(int x) { // código irrelevante } public double opB(int y) { // código irrelevante } public int opA() { // código irrelevante } } package PKGA; public class C { private int c1; private String c2; public double mc01(double a, double b) { // código irrelevante } public String mc02(String str, int ini, int param4) { // código irrelevante } } d) package PKGB; public interface X3 { public abstract int opA(); public abstract double opB(int z); } Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 148 de 213 package PKGA; public class A { int a1; double a2; private C[] c; public void ma01(int x) { // código irrelevante } public int opA() { // código irrelevante } } package PKGA; import PKGB.X3; public class B extends A implements X3 { int b1; String b2; public void ma01(int x) { // código irrelevante } public double opB(int y) { // código irrelevante } public int opA() { // código irrelevante } } package PKGA; public class C { private int c1; private String c2; public double mc01(double a, double b) { // código irrelevante } public String mc02(String str, int ini, int param4) { // código irrelevante } } e) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 149 de 213 package PKGB; public interface X3 { public abstract int opA(); public abstract double opB(int z); } package PKGA; import java.util.*; public class A { int a1; double a2; List<C> lc; public void ma01(int x) { // código irrelevante } public int opA() { // código irrelevante } } package PKGA; import PKGB.X3; public class B implements A extends X3 { int b1; String b2; public void ma01(int x) { // código irrelevante } public double opB(int y) { // código irrelevante } public int opA() { // código irrelevante } } package PKGA; public class C { private int c1; private String c2; public double mc01(double a, double b) { // código irrelevante } Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 150 de 213 public String mc02(String str, int ini, int param4) { // código irrelevante } } 17. (CESGRANRIO – 2012 – BNDES – Petrobras - Analista de Sistemas Júnior - Engenharia de Software) Um restaurante contratou uma equipe para desenvolver um sistema de informação que auxilie nas tarefas diárias do negócio. Após um levantamento inicial, a equipe listou os seguintes requisitos: ▪ O caixa será responsável por encerrar uma conta e registrar o pagamento da mesma; ▪ Caso o pagamento seja feito com cheque, será necessário que o sistema do restaurante se comunique com o sistema de consulta de cheques do Serviço de Proteção ao Lojista para obter informações sobre o cliente; ▪ Caso o pagamento seja feito com cartão de crédito, será necessário que o sistema do restaurante se comunique com o sistema da administradora do cartão para obter autorização; ▪ Apenas o gerente terá acesso à função de estorno do valor pago. Caso a despesa tenha sido paga com cartão, será necessário se comunicar com o sistema da administradora; ▪ Tanto o sistema da administradora de cartões como o de consulta de cheques serão acessados via web service; ▪ O gerente também poderá encerrar uma conta. Qual diagrama de caso de uso descreve adequadamente os requisitos acima? a) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 151 de 213 b) c) d) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 152 de 213 e) 18. (CESGRANRIO – 2016 – IBGE – Supervisor de Pesquisas – Tecnologia de Informação e Comunicação) A Figura a seguir exibe um diagrama E-R. Qual diagrama de classes conceituais UML é semanticamente equivalente ao diagrama acima? a) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 153 de 213 b) c) d) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e DesenvolvimentoProf. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 154 de 213 e) 19. (CESGRANRIO – 2016 – IBGE – Supervisor de Pesquisas – Tecnologia de Informação e Comunicação) Qual diagrama UML contém uma associação ternária ou uma associação equivalente a uma ternária? a) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 155 de 213 b) c) d) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 156 de 213 e) 20. (CESGRANRIO – 2016 – UNIRIO – Técnico em Tecnologia de Informação) Qual notação gráfica é usada em diagramas de sequência UML para representar uma mensagem cuja origem é conhecida, mas cujo destino se encontra fora do escopo das interações descritas por esses diagramas? a) b) c) d) e) 21. (CESGRANRIO – 2016 – UNIRIO – Técnico em Tecnologia de Informação) No modelo de caso de uso da UML, o único tipo de relação permitido entre atores é: a) associação b) dependência c) extend Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 157 de 213 d) include e) generalização 22. (CESGRANRIO – 2016 – UNIRIO – Técnico em Tecnologia de Informação) A Figura a seguir exibe um diagrama de classes UML. O retângulo onde se lê a letra X, adjacente à classe A, indica que a associação entre A e B é: a) navegável de A para B b) navegável de B para A c) derivada d) qualificada e) uma agregação 23. (CESGRANRIO – 2016 – UNIRIO – Técnico em Tecnologia de Informação) Qual diagrama UML contém uma composição? a) b) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 158 de 213 c) d) e) 24. (CESGRANRIO – 2016 – UNIRIO – Técnico em Tecnologia de Informação) Uma empresa que possui um site de vendas de produtos na Web desenvolveu um sistema de informação para registrar suas vendas e controlar a entrega das mesmas. Os seguintes dados são manipulados por esse sistema: ▪ Cliente – todos os clientes precisam estar cadastrados no sistema para que possam realizar compras. Sobre um cliente precisa-se conhecer o login, a senha de login, o nome e o número do CPF. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 159 de 213 ▪ Produtos – todos os produtos precisam estar cadastrados no sistema para que possam ser comprados pelos clientes. Sobre um produto precisa-se registrar o código de identificação, uma descrição, o preço de venda e a quantidade disponível para compra. ▪ Transportadoras – todas as transportadoras precisam estar cadastradas no sistema para que possam ser escolhidas para entregar as compras dos clientes. Sobre uma transportadora precisa-se registrar o código de identificação, o nome e o número do CNPJ. ▪ sistema deve registrar a quantidade de cada produto que faz parte de uma compra, a data da compra e o endereço de entrega da mesma. Além disso, ele deve registrar a transportadora escolhida pelo cliente para realizar a entrega. Qual diagrama de classes conceituais UML descreve corretamente o negócio descrito acima, sem apresentar incompletudes e redundâncias? a) b) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 160 de 213 c) d) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 161 de 213 e) 25. (CESGRANRIO – 2014 – CEFET-RJ – Técnico em Tecnologia de Informação) Uma faculdade decidiu alterar seu sistema acadêmico, atualmente escrito em Delphi, para aceitar uma interface Web. Para isso, decidiu adotar as tecnologias Ajax e Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 162 de 213 PHP. A primeira parte do trabalho será alterar o subsistema de avaliação, chamado de NOTAS. O modelo de dados atual desse subsistema é bastante simples, e é descrito pelo modelo diagrama a seguir, que usa a notação IDEF1X. Qual modelo de classes UML apresenta associações entre as classes que representam relacionamentos equivalentes àqueles existentes entre as entidades do mesmo nome no DER do sistema Notas? a) b) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 163 de 213 c) d) e) 26. (CESGRANRIO – 2014 – CEFET-RJ – Técnico em Tecnologia de Informação) Uma universidade decidiu alterar seu sistema acadêmico, atualmente escrito em Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 164 de 213 Delphi, para aceitar uma interface Web. Para isso, decidiu adotar as tecnologias Ajax e PHP. A primeira parte do trabalho será alterar o subsistema de avaliação, chamado de NOTAS. O modelo de dados atual desse subsistema é bastante simples, e é descrito pelo modelo diagrama a seguir, que usa a notação da Engenhariada Informação. Para reconstruir a representação em DER dos dados do subsistema NOTAS de acordo com um Diagrama de Classes de UML, como deve ser representada a associação entre uma classe Nota e uma classe Turma, de forma a manter significado equivalente ao do relacionamento entre as entidades de mesmo nome? a) b) c) d) e) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 165 de 213 27. (CESGRANRIO – 2014 – CEFET-RJ – Técnico em Tecnologia de Informação) Qual diagrama de estados UML não possui erros sintáticos nem erros semânticos? a) b) c) d) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 166 de 213 e) 28. (CESGRANRIO – 2014 – Banco da Amazônia – Técnico em Tecnologia de Informação) Considere as seguintes regras, que devem ser observadas por um sistema de informação: 1. Um carnê possui muitos boletos de pagamento. 2. Cada boleto pode ter sido pago ou não. Caso ele tenha sido pago, é necessário que se conheça o banco em que o pagamento foi realizado. 3. Um boleto é parte integrante de apenas um carnê, que, por sua vez, é composto por ao menos um boleto. 4. Caso um carnê seja excluído do sistema, todos os boletos que o compõem também deverão ser excluídos. Qual diagrama de classes UML representa adequadamente as regras descritas acima? Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 167 de 213 a) b) c) d) e) 29. (CESGRANRIO – 2014 – Banco da Amazônia – Técnico em Tecnologia de Informação) Seja o seguinte diagrama de sequência UML: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 168 de 213 Qual mensagem é do tipo lost message? a) 1 b) 2 c) 3 d) 4 e) 5 30. (CESGRANRIO – 2016 – UNIRIO – Técnico em Tecnologia de Informação) Qual diagrama UML contém uma composição? a) b) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 169 de 213 c) d) e) Um lojista que não possuía ainda nenhum sistema de informação em sua loja decidiu desenvolver um sistema próprio na abertura da segunda loja, contratando uma equipe de desenvolvedores para modelar e implementar um sistema dedicado, ao qual chamou de SCL (Sistema de Controle de Lojas). O modelo de entidades e relacionamentos a seguir, que está na notação da Engenharia de Informação, foi inicialmente desenvolvido pela equipe para o sistema, no nível lógico. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 170 de 213 Outro trabalho feito inicialmente foi a especificação de requisitos do SCL, que inclui os requisitos a seguir, sem, entretanto, se limitar a eles. 1. O sistema deve registrar uma venda feita para um cliente. 1.1. Uma venda é composta de itens de venda, descrevendo o preço do produto no dia da venda, o desconto aplicado (se existir) e a quantidade. 1.2. O sistema deve calcular o preço total de cada item de venda. 1.3. O sistema deve calcular o preço total de cada venda. 2. O sistema deve permitir que um vendedor solicite um relatório de todas as vendas já feitas a um cliente. 2.1. O relatório de vendas por cliente deve conter a data da venda, o valor total da venda e o valor total do desconto recebido pelo cliente naquela venda. 2.2. O relatório de vendas por cliente deve ser ordenado por valor, em ordem descendente. 3. O sistema deve permitir que um funcionário da empresa controle a lista de produtos registrados. 3.1. O sistema deve permitir que um produto tenha seu valor alterado sem alterar o valor das vendas já realizadas. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 171 de 213 Para o sistema SCL, escolhendo modelar uma classe “Produto”, os desenvolvedores descobriram a necessidade de saber a condição de disponibilidade de cada produto. Assim, uma instância de “Produto” teria um ciclo de vida, que passaria por três estados: “disponível”, se estivesse em estoque; “indisponível”, se não estivesse em estoque nem houvesse um pedido de reposição feito; ou ainda “pedido”, caso não estivesse em estoque, mas o pedido de reposição já estivesse feito. 31. (CESGRANRIO – 2012 – EPE – Analista de Gestão Corporativa – Tecnologia da Informação) Considere um sistema de software que foi modelado com o seguinte diagrama de casos de uso: Ator 2 pode participar em interações com esse sistema que envolvam comportamentos do(s) caso(s) de uso: a) W, apenas. b) W e X, apenas. c) V e W, apenas. d) U, W, X, Y e Z, apenas. e) U, V, W, X, Y e Z. 32. (CESGRANRIO – 2014 – LIQUIGÁS – Profissional Júnior – Análise de Sistemas) Qual diagrama UML está em conformidade com os artefatos normalmente produzidos pela disciplina de análise e especificação de requisitos? a) Diagrama de classes contendo as classes de domínio e as classes do subsistema responsável pela persistência dos dados. b) Diagrama de sequência que ilustre as interações entre os componentes de um framework da camada de apresentação e os objetos controladores de casos de uso. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 172 de 213 c) Diagrama de estados que ilustre a visão externa do comportamento de um sistema. d) Diagrama de componentes que mostre como as classes de domínio estão distribuídas pelos componentes de um sistema.e) Diagrama de implantação que ilustre os nós da rede de computadores do cliente e a distribuição dos componentes por esses nós. LISTA DE EXERCÍCIOS COMENTADOS ESAF UNIFIED MODELING LANGUAGE 1. (ESAF - 2008 – BACEN – Analista de Sistemas) A UML inclui diagramas de interação para ilustrar como os objetos interagem por meio de mensagens. Os diagramas de interação constituem uma generalização de dois tipos de diagramas especializados na UML: Diagrama de Seqüência e Diagrama de Comunicação. Assinale a sentença que se refere exclusivamente a um Diagrama de Comunicação. a) Cada mensagem entre objetos é representada com uma expressão de mensagem em linha sólida, com seta cheia, entres as linhas de vida verticais. b) A notação UML para chamadas assíncronas é uma mensagem com seta traçada. c) Os participantes da linha da vida devem representar um objeto, não uma coleção. d) A ordem das mensagens é ilustrada com números de seqüência. e) A barra de especificação de execução indica o foco de controle. 2. (ESAF - 2010 – SUSEP – Analista de Sistemas) O Diagrama de Estado mostra: a) os estados expressos que os objetos de uma dada classe podem assumir e as transformações entre pares de classes Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 173 de 213 b) os estados admissíveis que os atributos de uma dada classe podem modificar e os pares de estados mais relevantes. c) os estados de atualização que os objetos de qualquer classe podem assumir e as transições permitidas entre instâncias. d) os estados admissíveis que os objetos de uma dada classe podem assumir e as transições permitidas entre pares de estados. e) os estados coerentes com os objetos priorizados e as restrições de transições entre pares de estados. 3. (ESAF - 2012 – CGU – Analista de Sistemas) Para indicar a visibilidade da propriedade, a UML: a) incorpora um prefixo a um nome de atributo ou nome de operação. b) incorpora um sufixo a um nome de atributo ou origem de operação. c) gera um nome de atributo e nome de transação totalmente distinto do anterior. d) duplica nome de atributo ou nome de operação. e) sublinha o nome de atributo ou nome de operação. 4. (ESAF - 2010 – MPOG – Analista de Sistemas) Na UML – Unified Modelling Language: a) um atributo representa operações entre objetos. b) um atributo representa informações sobre um objeto. c) um atributo possui várias classes. d) não existem atributos não numéricos. e) atributos são classes abstratas. 5. (ESAF - 2012 – CGU – Analista de Sistemas) Uma associação em UML representa: a) uma população variada de relações (engagements) de redundâncias entre instâncias de classe. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 174 de 213 b) uma população variada de vínculos (links) de relacionamentos entre instâncias de classe. c) uma classificação de vínculos (links) de relacionamentos entre classes de atributos. d) uma população constante de valores (values) de relacionamentos quantitativos entre atributos de instâncias. e) uma estrutura de equivalências (equal features) entre relacionamentos de instâncias de posicionamento de classes. 6. (ESAF - 2012 – CGU – Analista de Sistemas) Quanto ao uso de diagramas na UML para a modelagem de objetos é correto afirmar que o Diagrama de Seqüência: a) descreve a funcionalidade do sistema percebida por atores externos. b) apresenta a interação de seqüência de tempo dos objetos que participam na interação. c) apresenta a interação de seqüência de atores que participam na interação. d) descreve a funcionalidade do sistema percebida por atores internos. e) apresenta a interação de seqüência estática de pacotes, relacionamentos e instâncias. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 175 de 213 LISTA DE EXERCÍCIOS COMENTADOS FCC UNIFIED MODELING LANGUAGE 1. (FCC - 2010 – DPE/SP – Análise de Sistemas) Na UML os diagramas servem para capturar diferentes visões do sistema. NÂO é um diagrama UML: a) Diagrama de Métodos. b) Diagrama de Classes. c) Diagrama de Objetos. d) Diagrama de Sequência. e) Diagrama de Estados. 2. (FCC- 2012 – TRE/PI – Análise de Sistemas – IV) Um diagrama de objetos é um tipo especial de diagrama, composto por objetos e seus vínculos, que compartilha as mesmas propriedades comuns a todos os outros diagramas. 3. (FCC – 2008 – TCE/AL - Análise de Sistemas) Um diagrama de objetos: a) tem a mesma função que um diagrama de atividades diferenciando deste apenas na representação gráfica. b) capta um conjunto de abstrações como um grupo de interesse e em tal contexto expõe sua semântica e seus relacionamentos com outras abstrações existentes nesse grupo da mesma forma que em um diagrama de classes. c) exibe um único conjunto de objetos relacionados uns com os outros em um determinado momento. d) mostra a seqüência de execução de atividades entre objetos relacionados, no tempo, e a duração de cada objeto por meio de linhas de vida. e) exibe diversos conjuntos de objetos relacionados uns com os outros em um determinado momento. 4. (FCC- 2009 – MEC – Análise de Sistemas) A UML define em sua versão 2.0, treze tipos de diagramas. Acerca do Diagrama de Objetos da UML, assinale a alternativa correta: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 176 de 213 a) O Diagrama de Objetos mostra a configuração de nós de processamento em tempo de execução. b) O Diagrama de Objetos representa retratos estáticos de instâncias de itens encontrados em diagramas de classes. c) O Diagrama de Objetos representa uma visão dinâmica da interface entre objetos e funcionalidades do sistema. d) O Diagrama de Objetos tem por propósito focalizar um fluxo de atividades que ocorrem internamente em um processamento, dentro de um período de tempo. e) O Diagrama de Objetos descreve o comportamento de objetos como reação a eventos discretos, por meio de sequências de estados e ações que ocorrem durante sua vida. 5. (FCC - 2011 - TCE-PR - Analista de Controle - Informática) Em UML 2.3, o Diagrama de Perfil é um diagrama pertencente à categoria Diagrama de: a) Estrutura estática, sendo usado para mostrar a estrutura de um sistema sob o nível mais baixo dos classificadores. b) Comportamento e mostra a estrutura interna de um classificador e o comportamento de uma colaboração. c) Comportamento, descrevendo a estrutura interna de uma classe e as colaborações que esta estrutura torna possível. d) Comportamento,sendo utilizado para descrever o hardware utilizado em implementações de sistemas e os ambientes de execução. e) Estruturas, que opera no nível metamodelo permitindo definir estereótipos personalizados, valores etiquetados e restrições. 6. (FCC – 2014 – TRT/1 – Analista de Sistemas) Diagramas de casos de uso constituem-se em um tipo de diagrama definido na UML. Segundo a UML 2.4.1, em um diagrama de casos de uso, a) um ator pode ser representado apenas pelo símbolo do “stick man”. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 177 de 213 b) só pode haver representado um único ator. c) o número de atores e de casos de uso sempre deve ser o mesmo. d) só pode haver representado um único caso de uso. e) um ator pode ser representado pelo “stick man” ou por um retângulo com a expressão <<actor>>. 7. (FCC - 2013 – TRT/12 - Análise de Sistemas) A UML é utilizada para modelar sistemas orientados a objetos. Um de seus diagramas é usado como técnica para descrever lógica de procedimento, processo de negócio e fluxo de trabalho. Esse diagrama, de várias formas, desempenha um papel semelhante aos fluxogramas, mas a principal diferença entre esse diagrama e a notação de fluxograma é que o diagrama suporta comportamento paralelo. O diagrama citado é o de: a) Máquina de Estados. b) Atividades c) Sequência. d) Distribuição e) Componentes. 8. (FCC - 2014 – AL/PE - Análise de Sistemas) Visibilidade refere-se à capacidade de um método referenciar uma característica de outra classe. Num diagrama de classes da UML 2.0 a visibilidade é indicada com um prefixo representado pelos caracteres: I. # II. + III. ~ IV. - Os tipos de visibilidade definidos de I a IV são correta e respectivamente: a) private - public - protected - package b) public - private - package - protected c) private - package - public - protected d) protected - public - package - private e) package - protected - private - public Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 178 de 213 9. (FCC - 2013 – TRT/12 - Análise de Sistemas) A especificação UML 2.5 define dois tipos principais de diagramas UML: structure diagrams e behavior diagrams. Behavior diagrams mostram o comportamento dinâmico dos objetos em um sistema, que pode ser descrito como uma série de mudanças no sistema no decorrer do tempo. São exemplos de Behavior diagrams os diagramas de a) Comunicação, Fluxo de Informação e Objeto. b) Comunicação, Deployment e Máquina de Estado. c) Temporização, Componente e Atividade. d) Sequência, Caso de Uso e Atividade. e) Classe, Atividade e Sequência. 10. (FCC - 2013 – AL/RN - Análise de Sistemas) Os diagramas UML podem ser divididos em dois grandes grupos, Diagramas Estruturais e Diagramas Comportamentais. Analise a lista de diagramas abaixo: I. Componentes. II. Comunicação. III. Implantação. IV. Caso de Uso. V. Classes. VI. Estados. São Diagramas Comportamentais APENAS os descritos em a) III, IV e V. b) I, IV e V. c) II, V e VI. d) I, II e V. e) II, IV e VI. 11. (FCC - 2012 – TRF/2 - Análise de Sistemas) Uma classe pode relacionar-se com outras de diferentes maneiras, utilizando notações gráficas, tais como: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 179 de 213 I, II e III referem-se, respectivamente, aos tipos: a) associação, composição e generalização. b) generalização, composição e associação. c) composição, generalização e agregação. d) associação, agregação e composição. e) agregação, associação e generalização. 12. (FCC - 2012 – TRF/2 - Análise de Sistemas) A UML 2.0 divide os diagramas em duas categorias, estruturais e de comportamento. São exemplos de diagramas estruturais e de comportamento, respectivamente, os diagramas de: a) classe e atividades. b) comunicação e sequência. c) componentes e objetos. d) máquinas de estado e casos de uso. e) casos de uso e sequência. 13. (FCC - 2012 – TJ/PE - Análise de Sistemas) Considere C = comportamental e E = estrutural. Os diagramas de componentes, objetos, comunicação e estrutura composta são, respectivamente, categorizados como: a) C; C; E; C. b) C; C; E; E. c) C; E; E; C. d) E; E; C; C. e) E; E; C; E. 14. (FCC - 2011 – TRT/19 - Análise de Sistemas) Considere: E = estruturais e C = comportamentais. Os diagramas de comunicação, pacotes, implantação e componentes são, respectivamente, a) C; E; E; E. b) C; C; E; E. c) C; E; E; C. d) E; C; C; C. e) E; C; E; C. 15. (FCC - 2012 – TJ/PE - Análise de Sistemas) Considere o seguinte diagrama UML: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 180 de 213 O número 1 e símbolo 1..* que aparecem ao lado das classes Nota Fiscal e Itens se referem à restrição de: a) herança. b) agregação. c) identidade. d) multiplicidade. e) polimorfismo. 16. (FCC - 2012 – TRE/CE - Análise de Sistemas) Na UML 2.0, representam comportamentos de um sistema, os diagramas de: a) comunicação e de caso de uso. b) sequência e de implantação. c) componentes e de atividades. d) pacotes e de componentes. e) atividades e de implantação. 17. (FCC - 2012 – TRE/CE - Análise de Sistemas) Em UML, os diagramas de Caso de Uso tem por objetivo: a) representar os atributos e operações de uma classe ou objeto. b) mostrar o fluxo de mensagens de uma atividade do sistema para outra. c) capturar funcionalidades e requerimentos do sistema. d) exibir uma interação entre um conjunto de objetos e seus relacionamentos. e) representar o estado ou situação em que um objeto pode se encontrar no decorrer da execução de processos de um sistema. 18. (FCC - 2011 – TRT/19 - Análise de Sistemas) Na versão 2.0 da UML, costuma conter elementos tais como: ações, bifurcações, ramificações e fluxos. Trata-se do diagrama de: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 181 de 213 a) máquina de estados. b) implantação. c) sequência. d) atividades. e) artefatos. 19. (FCC - 2011 – TRE/AP - Análise de Sistemas) São, respectivamente, dois diagramas estruturais e dois comportamentais: a) Package, Interaction Overview, Timing e Deployment. b) Component, Deployment, Activity e State Machine. c) Composite Structure,Package, Component e Communication. d) State Machine, Object, Use Case e Composite Structure. e) Object, Interaction Overview, Use Case e Activity. 20. (FCC - 2011 – TRE/AP - Análise de Sistemas) Os casos de uso podem ser organizados pela especificação de relacionamentos de: a) evento, ramificação e inclusão. b) composição, inclusão e extensão. c) agregação, extensão e bifurcação. d) generalização, inclusão e extensão. e) herança, composição e autorrelacionamento. 21. (FCC - 2011 – INFRAERO - Análise de Sistemas) Para captar os requisitos funcionais de um sistema pode- se utilizar a UML. O diagrama mais adequado para essa finalidade é o diagrama de: a) casos de uso. b) atividades. c) colaboração. d) classes. e) comunicações. 22. (FCC - 2011 – INFRAERO - Análise de Sistemas) Na notação UML, um nome entre ângulos (ex. <<nome>>), colocado acima do nome de outro elemento, é utilizado para a representação gráfica de: a) objeto. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 182 de 213 b) função. c) multiplicidade. d) operação. e) estereótipo. 23. (FCC - 2011 – INFRAERO - Análise de Sistemas) Qualquer descendente do classificador é capaz de usar a característica; sua especificação é antecedida pelo símbolo #. A definição trata da visibilidade usada na notação UML, de nível: a) público. b) privado. c) pacote. d) protegido. e) dependente. 24. (FCC - 2011 – INFRAERO - Análise de Sistemas) Como exemplo, a classe CarroImportado (em itálico) é escrita desta forma na UML para especificar que tal classe: a) é concreta. b) pode não apresentar instâncias diretas. c) herda características de mais de uma classe mãe. d) herda características de apenas uma classe mãe. e) se relaciona com ela mesma. 25. (FCC - 2011 – TRT/01 - Análise de Sistemas) Na UML 2.0, os diagramas de objeto, de componente, de atividade e de comunicação são, respectivamente, do tipo (considere E para Estrutural e C para Comportamental): a) C; C; C; E. b) C; C; E; E. c) C; E; E; C. d) E; C; E; C. e) E; E; C; C. 26. (FCC - 2011 – TRT/24 - Análise de Sistemas) Na UML, o relacionamento entre uma superclasse e suas subclasses é denominado: a) generalização. b) decomposição. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 183 de 213 c) agregação composta. d) agregação não composta. e) dependência. 27. (FCC - 2011 – TRT/24 - Análise de Sistemas) Na UML, especifica-se que uma classe é abstrata escrevendo seu nome: a) só com a inicial em letra maiúscula. b) todo com letras maiúsculas. c) em itálico. d) em negrito. e) grifado. 28. (FCC - 2011 – TRE/RN - Análise de Sistemas) Frequentemente usado para modelagem de sistemas de tempo real. Descreve como um sistema responde aos estímulos internos e externos. Mostra as diferentes situações do sistema e os estímulos que provocam transições de uma para outra situação. Trata-se do modelo de: a) eventos. b) agregação de objetos. c) dados. d) fluxo de dados. e) máquina de estado. 29. (FCC - 2011 – TRE/RN - Análise de Sistemas) São organizadas em uma hierarquia, com as classes de objetos mais genéricas no topo, as quais legam seus atributos às classes mais especializadas. Trata-se: a) da hierarquia de herança. b) do modelo relacional. c) da gestão hierárquica. d) do modelo sequencial. e) da especificação funcional. 30. (FCC - 2011 – CAIXA - Análise de Sistemas) Um detalhe importante que deve ser especificado para os atributos e operações das classes é a visibilidade. Desta Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 184 de 213 forma, os símbolos: + (sinal de mais), # (sinal de número), - (sinal de menos) e ~ (til) correspondem respectivamente a: a) público, pacote, privado e protegido. b) público, protegido, privado e pacote. c) privado, protegido, público e pacote. d) privado, pacote, público e protegido. e) pacote, protegido, privado e público. 31. (FCC - 2010 – TRT/22 - Análise de Sistemas) A modelagem de instâncias de itens contidos em diagramas de classes é feita pelo diagrama de: a) sequência. b) pacotes. c) casos de uso. d) objetos. e) componentes. 32. (FCC - 2010 – TRT/22 - Análise de Sistemas) Na UML 2.0 NÃO se trata de um dos diagramas de interação, o: a) Sequence. b) Deployment. c) Interaction Overview. d) Timing. e) Communication. 33. (FCC - 2010 – TRT/22 - Análise de Sistemas) Na taxonomia dos diagramas de estrutura (S) e de comportamento (C) da UML, os diagramas de Pacote, Classe, Sequência e Objeto são, respectivamente, de a) S, S, C e S. b) S, S, C e C. c) S, C, S e C. d) C, S, C e S. e) C, C, S e C. 34. (FCC - 2010 – MPE/RN - Análise de Sistemas) Na UML, um relacionamento entre superclasses (classesmãe) e subclasses (classes-filha), é uma: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 185 de 213 a) associação. b) dependência. c) composição. d) agregação. e) generalização. 35. (FCC - 2010 – MPE/RN - Análise de Sistemas) Na UML, um relacionamento entre superclasses (classesmãe) e subclasses (classes-filha), é uma: a) associação. b) dependência. c) composição. d) agregação. e) generalização. 36. (FCC - 2010 – BAHIAGÁS - Análise de Sistemas) Na UML é uma forma de agregação com propriedade bem definida e tempo de vida coincidente da parte com o todo. Trata-se de: a) Generalização. b) Estereótipo. c) Visibilidade. d) Composição e) Herança. 37. (FCC - 2010 – BAHIAGÁS - Análise de Sistemas) É um tipo de diagrama comportamental da UML. Trata-se do Diagrama de: a) Casos de Uso. b) Pacotes. c) Objetos. d) Componentes. e) Classes. 38. (FCC - 2010 – TRF/4 - Análise de Sistemas) Em UML, ele é uma variação do diagrama de classes e utiliza quase a mesma notação, exceto que os objetos são escritos com seus nomes sublinhados e todas as instâncias num relacionamento são mostradas. Trata-se do diagrama de: a) Estado. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 186 de 213 b) Objetos. c) Sequência. d) Colaboração. e) Atividade. 39. (FCC - 2010 – SGSA - Análise de Sistemas) Em UML, são diagramas feitos para facilitar a comunicação com os futuros usuários do sistema, e com o cliente, sendoespecialmente úteis para determinar os recursos necessários que o sistema deve ter, mas não são adequados para representar o desenho e não podem descrever os mecanismos internos de um sistema. São diagramas de: a) Sequência. b) Colaboração. c) Distribuição. d) Caso de Uso. e) Atividade. 40. (FCC - 2010 – AL/SP - Análise de Sistemas) Na UML 2.0, o Diagrama de Comunicação e o de Sequência são dois tipos de diagrama de: a) Estrutura Composta. b) Componente. c) Interação. d) Máquina de Estado. e) Objeto. 41. (FCC - 2010 – METRÔ/SP - Análise de Sistemas) São os meios utilizados para a visualização dos blocos de construção da UML e representam graficamente um conjunto de elementos, além de permitir visualizar o sistema sob diferentes perspectivas. Essa é a definição de: a) Eventos. b) Classes. c) Objetos. d) Relacionamentos. e) Diagrama. 42. (FCC - 2010 – TRT/20 - Análise de Sistemas) São os meios utilizados para a visualização dos blocos de construção da UML e representam graficamente um Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 187 de 213 conjunto de elementos, além de permitir a visualização do sistema sob diferentes perspectivas. Essa é a definição de: a) Relacionamentos. b) Diagrama. c) Eventos. d) Classes. e) Objetos. 43. (FCC - 2010 – TCM/PA - Análise de Sistemas) De acordo com a OMG, especifica a coordenação de execuções de comportamentos usando um modelo de fluxo de controle e de dados. Modela o comportamento do sistema denotando os caminhos lógicos que um processo pode seguir. Compõe a visão dinâmica da UML o diagrama de: a) estado composto. b) atividades. c) objetos. d) entidades. e) composição. 44. (FCC - 2010 – TCM/PA - Análise de Sistemas) Na UML, a linha de vida (lifeline) é parte integrante do diagrama de: a) artefatos. b) sequência. c) pacotes. d) componentes. e) gráfico de estados. 45. (FCC - 2010 – TCM/PA - Análise de Sistemas) Um relacionamento do tipo todo- parte, no qual a vida da parte depende da vida do todo, é do tipo: a) composição. b) especialização. c) dependência. d) enumeração. e) cardinalidade. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 188 de 213 46. (FCC - 2010 – TCM/PA - Análise de Sistemas) O antigo diagrama de colaboração é adotado na UML 2.0 como diagrama de: a) objeto. b) estado. c) iteração. d) implantação. e) comunicação. 47. (FCC - 2009 – TRT/3 - Análise de Sistemas) Um relacionamento entre classes que usa como notação um diamante preenchido associando, por exemplo, as classes Janela e Moldura, representa: a) um legado. b) um polimorfismo. c) uma generalização. d) uma dependência. e) uma composição. 48. (FCC - 2009 – TRT/3 - Análise de Sistemas) Como extensão do vocabulário UML, a representação gráfica de um nome entre ângulos (<< >>), colocado acima do nome de outro elemento, representa: a) um pacote. b) um desvio. c) um estereótipo. d) uma agregação. e) uma especialização. 49. (FCC - 2009 – TRT/7 - Análise de Sistemas) Uma parte física e substituível de um sistema com o qual está em conformidade e proporciona a realização de um conjunto de artefatos (UML) é um: a) componente. b) atributo. c) método. d) caso de uso. e) objeto. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 189 de 213 50. (FCC - 2009 – TRE/PI - Análise de Sistemas) No diagrama de classes da UML uma superclasse, com uma ou mais subclasses, representa um relacionamento do tipo: a) composição. b) agregação. c) generalização. d) associação. e) modularização. 51. (FCC - 2009 – TJ/SE - Análise de Sistemas) NÃO se trata de um relacionamento especificado na UML: a) o encapsulamento. b) a dependência. c) a generalização. d) a associação. e) a realização. 52. (FCC - 2009 – TJ/SE - Análise de Sistemas) Uma classe abstrata, de acordo com a UML, a) tem seu nome escrito em itálico. b) pode ser instanciada diretamente. c) não tem atributos. d) não tem operações. e) não pode ter classes-filha. 53. (FCC - 2009 – TJ/15 - Análise de Sistemas) Na UML, a visibilidade declarada aos atributos e operações de classificadores define que quando a um deles antecede o símbolo - (sinal de menos) este é somente: a) privado. b) protegido. c) público protegido. d) público. e) pacote público. 54. (FCC - 2009 – TJ/15 - Análise de Sistemas) Cobre um conjunto de instâncias dos itens encontrados nos diagramas de classe, expressa a parte estática de uma Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 190 de 213 interação composta pelos objetos que colaboram entre si, mas sem qualquer uma das mensagens passadas entre eles e, também, congela um momento no tempo. Na UML, trata-se do diagrama de: a) atividade. b) comunicação. c) sequência. d) tempo. e) objetos. 55. (FCC - 2009 – TJ/16 - Análise de Sistemas) Considere diversas agências (classe Agencia) de atendimento a reclamações trabalhistas espalhadas em vários pontos do Estado. Uma delas, a central (classe AgenciaCentral), tem atributos diferenciados, porém herda os demais atributos e operações de Agencia. O relacionamento entre essas classes é definido na UML como: a) inclusão. b) composição. c) específico. d) generalização. e) encapsulamento. 56. (FCC - 2009 – TJ/16 - Análise de Sistemas) São diagramas comportamentais da UML: a) Component e Activity. b) Timing e Deployment. c) Composite Structure e Use Case. d) State Machine e Object. e) Use Case e Sequence. 57. (FCC - 2009 – TJ/16 - Análise de Sistemas) São diagramas estruturais da UML: a) Package e Activity. b) Communication e Activity. c) Communication e Object. d) Class e Use Case. e) Composite Structure e Deployment. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 191 de 213 58. (FCC - 2009 – TJ/PA - Análise de Sistemas) Na especificação de operações de uma classe, o nível de visibilidade indicado pelo símbolo ~ (til) significa: a) escopo de instância. b) escopo de estática. c) pacote. d) privado. e) protegido. 59. (FCC - 2009 – TJ/PA - Análise de Sistemas) Considere o enunciado: Uma escola (todo) tem um ou mais departamentos (parte). Cada departamento pertence exatamente a uma únicaescola. No âmbito da UML, este enunciado especifica um relacionamento de: a) agregação por composição. b) realização. c) dependência. d) herança. e) recursão. 60. (FCC - 2009 – TJ/PA - Análise de Sistemas) Considere: I. Modelagem do aspecto dinâmico de um sistema; II. Exibição da concorrência de atividades; III. Exibição das ramificações de controle de fluxo. O Diagrama de Atividades da UML contempla corretamente o que consta em a) I, apenas. b) II, apenas. c) III, apenas. d) II e III, apenas. e) I, II e III. 61. (FCC - 2009 – TJ/PA - Análise de Sistemas) Nos relacionamentos entre Casos de Uso: a) um include significa que o caso de uso base incorpora implicitamente o comportamento de outro, sob certas condições. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 192 de 213 b) não é permitida a generalização. c) somente include é considerado um estereótipo. d) somente extend é considerado um estereótipo. e) tanto include quanto extend são considerados estereótipos. 62. (FCC - 2009 – MPE/SE - Análise de Sistemas) Uma instância de classe em um determinado momento é a) uma cardinalidade. b) uma operação. c) um atributo. d) um objeto. e) uma sequência de operações. 63. (FCC - 2009 – MPE/SE - Análise de Sistemas) Considerando os tipos COM = comportamental e EST = estrutural na UML 2.0, classifique correta e respectivamente os seguintes diagramas UML: I. State Machine Diagram II. Sequence Diagram III. Composite Structure Diagram a) EST - COM - COM. b) COM - EST - EST. c) COM - COM - EST. d) COM - EST - COM. e) EST - EST - COM. 64. (FCC - 2009 – MPE/SE - Análise de Sistemas) Considere uma operação de classe escrita da seguinte forma: + adicionarMensagem(m: Mensagem): Status O símbolo de soma no início do texto e o termo entre parênteses significam, respectivamente: a) público e assinatura. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 193 de 213 b) protegido e método. c) assinatura e privado. d) privado e método. e) método e público. 65. (FCC - 2009 – PGE/RJ - Análise de Sistemas) No âmbito da UML, é o mais importante detalhe que pode ser especificado para atributos e operações de um classificador e cuja especificidade, que pode ser de quatro níveis diferentes (ex. pacote), é utilizável por outros. Trata-se de: a) usabilidade. b) parâmetro. c) instância. d) visibilidade. e) escopo de efeito. 66. (FCC - 2008 – TRT/18 - Análise de Sistemas) Se em algum ponto de um Caso de Uso houver a necessidade de inserir incondicionalmente um cenário contido em outro Caso, deve-se usar o relacionamento de dependência estereotipado como: a) <<realize>>. b) <<extend>>. c) <<generalize>>. d) <<enumeration>>. e) <<include>>. 67. (FCC - 2008 – TRT/18 - Análise de Sistemas) Atividade, Caso de Uso e Componente são diagramas da UML 2.0 classificados, respectivamente, no âmbito: a) comportamental, comportamental e comportamental. b) comportamental, estrutural e estrutural. c) comportamental, comportamental e estrutural. d) estrutural, comportamental e estrutural. e) estrutural, estrutural e comportamental. 68. (FCC - 2008 – TRT/18 - Análise de Sistemas) Na notação original da UML 2.0, os símbolos + (mais) e # (jogo da velha), antecedendo as operações de uma classe, caracterizam tais operações, respectivamente, como: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 194 de 213 a) pública e protegida. b) protegida e privada. c) pública e privada. d) pacote e protegida. e) pública e pacote. 69. (FCC - 2008 – TCE/AL - Análise de Sistemas) Os diagramas UML da categoria comportamental são os de: a) classes, objetos e componentes. b) casos de uso, sequência e classes. c) classes, atividades e sequência. d) casos de uso, atividades e máquinas de estados. e) objetos, estrutura composta e máquinas de estado. 70. (FCC - 2008 – TRF/5 - Análise de Sistemas) Na UML 2.0, são dois diagramas comportamentais: a) Use Case e Package. b) Sequence e Component. c) State Machine e Communication. d) Timing e Component. e) Composite Structure e Deployment. 71. (FCC - 2008 – METRÔ/SP - Análise de Sistemas) Considere: I. Farol ligado. II. Comprar produto. III. Máquina elétrica. Os itens acima são representados em diagramas UML, respectivamente, como a) estado, caso de uso e classe. b) estado, classe e caso de uso. c) caso de uso, estado e classe. d) caso de uso, classe e estado. e) classe, estado e caso de uso. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 195 de 213 72. (FCC - 2007 – TRT/4 - Análise de Sistemas) Na versão mais atual da UML, a "linha de vida" de um objeto é representada no diagrama de: a) Objetos. b) Atividades. c) Comunicação. d) Máquina de Estados. e) Seqüência. 73. (FCC - 2007 – TRT/4 - Análise de Sistemas) Na versão mais atual da UML, a "linha de vida" de um objeto é representada no diagrama de: a) Objetos. b) Atividades. c) Comunicação. d) Máquina de Estados. e) Seqüência. 74. (FCC - 2015 – TRT/15 - Análise de Sistemas) A documentação de um caso de uso costuma descrever, por meio de uma linguagem simples, informações sobre ele. Na UML 2.0, essa documentação: a) não possui um formato específico definido. b) deve ser feita por meio de fluxogramas. c) não pode ser feita por meio de outros diagramas. d) costuma descrever apenas, em linhas gerais, a função do caso de uso e) não costuma deixar claro quais atores interagem com os casos de uso. 75. (FCC - 2014 – TJ/PA - Análise de Sistemas) Considere o processo de negócio e o diagrama abaixo. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 196 de 213 É correto afirmar: a) Trata-se de um diagrama de atividades da UML. b) Não há relação entre o processo e o diagrama. c) Um processo não pode ser modelado por um diagrama UML. d) O processo pode ser modelado apenas por um diagrama de caso de uso da UML. e) Trata-se de um diagrama de classes da UML. 76. (FCC - 2014 – TJ/PA - Análise de Sistemas) Um analista judiciário do Tribunal de Justiça do Amapá precisa utilizar um diagrama que permite adaptar o metamodelo UML para diversas plataformas como Java EE ou .NETou para diferentes domínios como aplicações em tempo real e modelagem de processos de negócio. Este diagrama precisa permitir a definição de estereótipos customizados e restrições. Dentre os diagramas da UML 2.5, o que melhor atende estas necessidades é o Diagrama de: a) Perfil. b) Deployment. c) Estruturas Compostas. d) Componentes. e) Colaboração. 77. (FCC - 2014 – TCE/GO - Análise de Sistemas) A UML especifica um conjunto de diagramas para modelar sistemas orientados a objeto em suas várias Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 197 de 213 perspectivas. Dois destes diagramas podem ser muito úteis para apresentar uma visão de nível mais alto do sistema, como: I. adequado para captar os requisitos funcionais de um sistema, ajudando no entendimento destes requisitos. II. suporta e estimula o comportamento paralelo, sendo útil para modelagem de fluxo de trabalho e de processos, principal- mente, processos de negócio. Os diagramas descritos em I e II são, correta e respectivamente, de a) Casos de Uso e de Sequência. b) Comunicação e de Atividades. c) Componentes e de Sequência. d) Casos de Uso e de Atividades. e) Interação e de Distribuição. 78. (FCC - 2014 – TRT/13 - Análise de Sistemas) Este diagrama da UML pode ser usado para modelar processos de negócio. Suporta comportamento paralelo e permite que, quem está seguindo o processo, escolha a ordem na qual fazer as coisas. Em outras palavras, ele simplesmente determina as regras essenciais de sequência que se deve seguir. São geralmente usados para mostrar o que acontece, mas não quem faz o que, já que faz sentido se concentrar no que é feito, em vez de em quem realiza quais partes do comportamento. O diagrama descrito é o diagrama de: a) sequência. b) atividades. c) casos de uso. d) comunicação. e) distribuição. 79. (FCC - 2014 – TRT/13 - Análise de Sistemas) Observando os processos em trâmite no Tribunal, João observou que as situações pelas quais os processos passavam poderiam ser classificadas em: "abrindo", "aberto", "em trâmite", "encerrando" e "arquivado". Do ponto de vista da orientação a objetos ele percebeu que poderia modelar mais adequadamente as condições ou situações da vida do objeto processo utilizando, para representá-las, o diagrama UML denominado: a) Interface. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 198 de 213 b) Pacote. c) Caso de uso. d) Máquina de estados. e) Classes. 80. (FCC - 2014 – AL/PE - Análise de Sistemas) Considere o diagrama UML para a classe Conta ilustrado abaixo. É correto afirmar: a) A figura apresenta um diagrama de sequência, usado para representar o comportamento dinâmico de uma classe. O diagrama de sequência pode ser utilizado para ajudar a originar as sequências de testes que vão exercitar o comportamento dinâmico da classe e daquelas classes que colaboram com ela. b) As sequências iniciais movem-se entre os objetos Conta vazia e Conta estabelecida. A maior parte dos comportamentos da classe ocorre enquanto se está no objeto Conta ativa. Uma retirada final e fechamento da conta para a classe Conta fazem com que se estabeleçam mensagens para os objetos Conta inativa e Conta morta, respectivamente. c) Os testes projetados devem cobrir apenas os objetos centrais do diagrama, quais sejam, Conta estabelecida, Conta ativa e Conta inativa, já que Conta vazia e Conta morta não contêm dados a serem validados. d) O modelo de estados pode ser percorrido em forma de inclusão progressiva. Neste contexto, inclusão progressiva implica um caso de teste exercitar uma única transição e, quando uma nova transição tiver de ser testada, são usadas apenas aquelas previamente testadas. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 199 de 213 e) O caso de teste: Abrir • EstabelecerConta • FazerDepósito(inicial) • FazerRetirada(final) • Fechar é denominado sequência máxima de teste e a este caso de teste não podem ser acrescentadas outras sequências de teste. 81. (FCC - 2014 – AL/PE - Análise de Sistemas) Considere o diagrama da UML 2.0: Trata-se de um diagrama de I e nele podem ser identificados II , III e IV. As lacunas de I a IV são correta e respectivamente preenchidas por: a) interfaces - componentes - relacionamentos de realização - conexões b) implantação - elementos de hardware - nós - vias de comunicação c) instalação - elementos de infraestrutura - nós - estereótipos de nós d) modelagem cliente/servidor - servidor - clientes - interfaces de banco de dados e) componentes - interfaces - componentes - relacionamentos de dependência 82. (FCC - 2014 – TRT/13 - Análise de Sistemas) Marcelo trabalha como Analista Legislativo na Assembleia Legislativa do Estado de Pernambuco e recebeu a tarefa de elaborar um diagrama da UML 2.0 que seja capaz de modelar o que pode ocorrer em partes de um sistema orientado a objetos, como: fluxos de controle e de dados, situações de decisão em que haja uma entrada e diversas saídas, diferentes ações que podem ser executadas por objetos ou entidades quando um método for executado, como um conjunto de ações relacionadas pode ser executado e como afetará objetos ao redor, situações em que mais de uma atividade pode acontecer ao mesmo tempo. Marcelo optou por usar o diagrama de: a) Classes. b) Atividades. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 200 de 213 c) Colaboração. d) Objetos. e) Casos de Uso. 83. (FCC - 2014 – TRT/13 - Análise de Sistemas) Embora BPMN e UML tenham abordagens diferentes em relação à modelagem de processos de negócios, diagramas UML que modelam o comportamento dinâmico podem ser usados na modelagem de alguns processos de negócio, como os diagramas de__I__ e de___II___ . As lacunas I e II são correta e respectivamente preenchidas com: a) Classes - Objetos b) Estados - Implantação c) Componentes - Objetos d) Casos de Uso - Atividades e) Classes - Sequência 84. (FCC - 2014 – TRT/2 - Análise de Sistemas) UML é uma linguagem visual para modelagem de sistemas orientados a objeto. Considere o diagrama UML: Uma primitiva importante dos diagramas de ..I... é a troca de mensagem, como na figura acima, que ilustra a troca de mensagens entre objetos e entre atores e objetos. Estas mensagens, utilizadas para indicar interação ou comunicação, podem ter diferentes significados: Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANOCurso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 201 de 213 - Chamada: significa que um objeto está solicitando a execução de ...II.... de um outro objeto. Para isso, é necessário que ele seja declarado como público ..III...... correspondente. - Ocorrência de Evento: um evento é algum acontecimento externo ao software, mas que é a ele notificado, pois lhe diz respeito. Exemplos são as saídas para dispositivos (como disco ou monitor) feitos através de serviços do sistema operacional. Esta é a forma padrão de interação entre ...IV..... . As lacunas I, II, III e IV são, correta e respectivamente, preenchidas em: a) sequência - um método - na classe - objetos e atores. b) atividades - um procedimento - no método - classes e objetos. c) objetos - uma mensagem - no método - objetos e métodos. d) sequência - um método - no método construtor - classes e métodos. e) atividades - uma classe - na superclasse - objetos e atores. 85. (FCC - 2014 – SABESP - Análise de Sistemas) Considere a imagem abaixo: Na UML 2.0, o conceito de modelagem de classes que pode ser observado na imagem é: a) Herança. b) Propagação. c) Agregação. d) Composição. e) Associação Simples. 86. (FCC - 2014 – TRT/13 - Análise de Sistemas) Em um diagrama de sequência UML 2.0, o símbolo utilizado para denotar uma mensagem perdida é: a) b) Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 202 de 213 c) d) e) 87. (FCC - 2013 – TRT/9 - Análise de Sistemas) Nos diagramas de classe da UML, o termo visibilidade refere-se à capacidade de um método de referenciar uma característica de outra classe. Sobre os valores possíveis para definir a visibilidade das características de uma classe, a) apenas métodos da classe que contém o modificador private e de classes contidas no mesmo pacote podem acessar características privadas. O caractere “-” precede as características privadas. b) os métodos das classes definidas no mesmo pacote da classe em questão podem acessar as características dessa classe definidas como pacote. O caractere “§” precede as características de pacote. c) qualquer método pode acessar livremente as características públicas, exceto métodos de classes envolvidas em relações de herança ou implementação de interface. O caractere “+” precede características públicas. d) apenas métodos presentes no mesmo pacote ou em classes que possuem relação de herança ou implementação de interface podem acessar características default. O caractere “*” precede características default. e) somente os métodos da classe que contém o modificador protected e seus descendentes via herança podem acessar características protegidas (em Java características protegidas também possuem acessibilidade de pacote). O caractere “#” precede as características protegidas. 88. (FCC - 2014 – MPE/MA - Análise de Sistemas) Em UML, casos de uso mais complexos podem ser construídos de partes menores por meio de relações. Analise as descrições destas relações. I. Incorpora um caso de uso dentro da sequência de comportamento de outro caso de uso. A notação UML 2 para esta relação é uma seta tracejada indo do caso de uso origem para o caso de uso destino com o nome da relação indicado na seta entre << >>. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 203 de 213 II. Nesta relação um caso de uso pai tem o comportamento comum e os casos de uso filhos acrescentam variações a ele. A UML 2 indica esta relação por uma seta de traço contínuo partindo do caso de uso filho com a ponta triangular chegando ao caso de uso pai. III. Acrescenta comportamento incremental a um caso de uso. Representa a situação em que alguma capacidade inicial é definida e mais tarde recursos são acrescentados. A notação UML 2 para esta relação é uma seta tracejada do caso de uso estendido até o caso de uso básico com o nome da relação indicado na seta entre << >>. As relações I, II e III são correta e respectivamente definidas como: a) generalização - especialização - extensão. b) private - public - protected. c) include - generalização - extend. d) derived - generalization - added. e) extend - generalização - include. 89. (FCC - 2012 – TRF/2 - Análise de Sistemas) Atributos estáticos são atributos da classe em vez de serem atributos de uma instância da classe. Em UML um atributo estático é representado ao se utilizar em sua transcrição o: a) modo sublinhado b) símbolo # c) símbolo / d) modo itálico e) símbolo ~ 90. (FCC - 2012 – TJ/PE - Análise de Sistemas) É empregado para a modelagem dos aspectos físicos de um sistema OO. Mostra a configuração dos nós de processamento em tempo de execução e os artefatos que nele existem. Trata- se do diagrama de: a) sequência. b) atividades. c) implantação. d) pacotes. e) comunicação. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 204 de 213 91. (FCC - 2011 – TRE/AP - Análise de Sistemas) São diagramas de interação os de a) componentes e de implantação. b) sequência e de máquina de estados. c) comunicação e de sequência. d) atividades e de implantação. e) interação e de componentes. 92. (FCC - 2011 – TRE/RN - Análise de Sistemas) Na modelagem de Caso de Uso, <<include>> e <<extend>> são relacionamentos de: a) dependência. b) agregação. c) especialização. d) atores entre si. e) atores com os casos de uso. 93. (FCC - 2011 – TRE/RN - Análise de Sistemas) Um relacionamento semântico entre classificadores, no qual um deles especifica um contrato cujo cumprimento é assegurado pelo outro. Na UML, trata-se de: a) herança múltipla. b) realização. c) multiplicidade. d) composição. e) visibilidade. 94. (FCC - 2011 – TRE/RN - Análise de Sistemas) Por um mecanismo de ampliação de seu vocabulário, a UML permite que sejam criados novos blocos de construção derivados dos já existentes, todavia específicos a determinados problemas. Esse mecanismo é definido como: a) persistência. b) derivação. c) polimorfismo. d) estereótipo. e) operação. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 205 de 213 95. (FCC - 2010 – TRT/8 - Análise de Sistemas) Para demonstrar elementos estruturais e comportamentais de um sistema, a UML pode utilizar, respectivamente, os diagramas de: a) Atividade e de Sequência. b) Caso de Uso e de Comunicação. c) Sequência e de Objeto. d) Classe e de Pacote. e) Pacote e de Atividade. 96. (FCC- 2010 – TRE/RS - Análise de Sistemas) Um dos mais importantes detalhes que se pode especificar para os atributos e operações de uma classe é a sua visibilidade. Na UML, os níveis de visibilidade podem ser representados pelos símbolos: a) + (público), - (privado), # (pacote), ~ (protegido). b) + (privado), - (público), # (pacote), ~ (protegido). c) + (público), - (privado) e # (protegido), somente. d) + (público) e - (privado), somente. e) + (público), - (privado), # (protegido), ~ (pacote). 97. (FCC - 2010 – MPE/RN - Análise de Sistemas) Caso particular de associação binária utilizado para expressar um relacionamento todo-parte. Entretanto, a parte pode não ser exclusiva de um único todo. No diagrama de classes é uma: a) Generalização. b) Composição. c) Estereotipagem. d) Agregação. e) Dependência. 98. (FCC - 2011 – TRT/14 - Análise de Sistemas) Um relacionamento todo-parte onde o todo controla a vida das partes; todavia as partes podem ser removidas explici- tamente antes da morte do todo. Trata-se de: a) particionamento. b) abstração. c) enumeração. d) agregação não composta. e) agregação por composição. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 206 de 213 99. (FCC - 2010 – TRT/20 - Análise de Sistemas) Na UML, o diagrama que serve para organizar o comportamento do sistema é o diagrama de: a) sequência. b) estados. c) caso de uso. d) classes. e) objetos. 100. (FCC – 2010 – AL/SP - Análise de Sistemas) Um relacionamento estendido entre dois casos de uso é um relacionamento de: a) associação. b) composição. c) generalização. d) estado. e) dependência. 101. (FCC- 2016 – TRT/SE – Análise de Sistemas – IV) Após conversa com diversos funcionários do Tribunal para o qual está sendo desenvolvido um software, um Técnico listou os seguintes requisitos: − O Juiz poderá cadastrar ou alterar informações nos processos. Para que alterações sejam possíveis é necessário que antes seja feita uma busca para localizar o processo. − O sistema registrará automaticamente em log todas as operações realizadas pelos funcionários do Tribunal, para futuros processos de auditoria. Ao construir um diagrama de casos de uso da UML para mostrar a relação entre o ator “Juiz” e os casos de uso “cadastrar processo”, “alterar processo” e “localizar processo”, notou-se uma associação entre os casos de uso “alterar processo” e “localizar processo”. Esta associação deve ser rotulada com o estereótipo: a) <<connect>> b) <<extend>> c) <<generalize>> d) <<include>> e) <<specialize>> Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 207 de 213 102. (FCC - 2009 - TJ-SE - Técnico Judiciário - Programação de Sistemas) Os três relacionamentos mais importantes na modelagem orientada a objetos são: a) especialização, herança e multiplicidade. b) generalização, agregação e cardinalidade. c) associação, generalização e dependência. d) encapsulamento, dependência e composição. e) herança, polimorfismo e associação. 103. (FCC - 2009 - TRT - 16ª REGIÃO (MA) - Analista Judiciário - Tecnologia da Informação) Um analista necessita definir uma associação entre classes onde uma delas, sendo parte da outra, tem sua vida controlada por aquela da qual faz parte. Esta associação é tipicamente uma: a) estereotipação. b) enumeração. c) composição. d) dependência. e) realização. 104. (FCC - 2011 - TRE-AP - Técnico Judiciário - Programação de Sistemas) Em relação aos conceitos fundamentais da orientação a objetos, o mecanismo pelo qual um objeto utiliza os recursos de outro, podendo ele assumir os tipos “usa um” ou “parte de”, denomina-se: a) Encapsulamento. b) Herança. c) Método. d) Polimorfismo. e) Associação. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 208 de 213 LISTA DE EXERCÍCIOS COMENTADOS FGV UNIFIED MODELING LANGUAGE 1. (FGV - 2009 – MEC – Análise de Sistemas) A UML define em sua versão 2.0, treze tipos de diagramas, divididos em duas categorias: diagramas estruturais e diagramas dinâmicos. Assinale a alternativa que não indique um diagrama estrutural da UML. a) Diagrama de Visão Geral. b) Diagrama de Implantação. c) Diagrama de Pacotes. d) Diagrama de Classes. e) Diagrama de Objetos. 2. (FGV – 2008 – Senado Federal – Analista de Sistemas) Considere o caso de uso ilustrado na figura utilizando a notação UML. A descrição do cenário que melhor descreve esse caso de uso é: a) o atendente verifica o histórico dos pacientes que possuem consultas agendadas. b) um paciente liga para a clínica para marcar uma consulta. A atendente verifica o histórico do paciente, busca um horário vazio e agenda a consulta. c) o atendente inclui os pacientes que têm consulta agendada e não possuem um histórico de atendimento. d) o paciente liga para a clínica para agendar uma consulta e para alterar o seu histórico. e) o atendente não marca consultas para pacientes que não tenham histórico na clínica. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 209 de 213 3. (FGV – 2008 – Senado Federal – Analista de Sistemas) Uma série de modelos pode ser produzida durante um projeto orientado a objetos. O projeto inclui modelos estáticos e dinâmicos. Um modelo que é considerado dinâmico é o de: a) seqüência. b) classe. c) associação. d) contexto. e) generalização. 4. (FGV – 2015 – ANA – Analista de Sistemas) João está preparando uma palestra sobre diagramas de classe da UML, e criou um slide com a figura: O título correto para esse slide deve ser “Relacionamento de”: a) agregação; b) correspondência; c) dependência; d) especialização; e) generalização. 5. (FGV – 2015 – AL – Analista de Sistemas) Linguagens gráficas de modelagem são úteis para descrever e especificar sistemas computacionais porque oferecem notações próprias para representar conceitos e características estruturais e comportamentais do projeto de software. Assinale a opção que indica o diagrama da UML recomendado para modelar característica comportamental com ênfase nos vínculos entre os vários objetos de um projeto de software. a) Diagrama de objetos. b) Diagrama de componentes. c) Diagrama de implantação. d) Diagrama de comunicação. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalhowww.estrategiaconcursos.com.br Pág. 210 de 213 e) Diagrama de classes. 6. (FGV – 2015 – TJ/RO – Analista de Sistemas) O diagrama da UML mais adequado para representar o comportamento de vários objetos dentro de um único caso de uso, de modo a evidenciar como esses objetos colaboram em algum comportamento ao longo do tempo, é o diagrama de: a) estruturas compostas; b) objetos; c) componentes; d) tempo; e) sequência. 7. (FGV – 2015 – Fiscal de Niterói – Analista de Sistemas) A UML (Unified Modeling Language) estabelece uma série de artefatos que auxiliam desenvolvedores de sistemas a modelar e documentar seu trabalho. A funcionalidade de um sistema, do ponto de vista dos seus usuários, é representada pelo Diagrama de: a) atividade; b) casos de uso; c) classes; d) estado; e) sequência. 8. (FGV - 2015 – PGE/RO - Análise de Sistemas) NÃO é um diagrama utilizado pela UML 2.0: a) Diagrama de casos de uso. b) Diagrama de classes. c) Diagrama de objetos. d) Diagrama de blocos múltiplos. e) Diagrama de sequência. 9. (FGV - 2009 – MEC - Análise de Sistemas) Na UML o diagrama que descreve uma sequência de ações que representam um cenário principal e cenários alternativos, com o objetivo de demonstrar o comportamento de um sistema, por meio de interações com atores, é o diagrama de: a) Máquina de Estados. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 211 de 213 b) Caso de Uso. c) Implantação. d) Atividades. e) Pacotes. 10. (FGV - 2009 – MEC - Análise de Sistemas) A UML (Unified Modeling Language) possui vários tipos de diagramas que em conjunto são utilizados para descrever a visão estática e dinâmica de um sistema. Assinale a alternativa em que todos os diagramas listados descrevem uma visão dinâmica de um sistema. a) Classes, Objetos, Implantação e Pacotes. b) Classes, Objetos, Casos de Uso e Sequência. c) Implantação, Pacotes, Sequência e Atividades. d) Implantação, Pacotes, Casos de Uso e Atividades. e) Casos de Uso, Sequência, Visão Geral e Atividades. Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 212 de 213 GABARITO CESGRANRIO UNIFIED MODELING LANGUAGE 1 2 3 4 5 6 7 8 9 10 C D A A E A D B A D 11 12 13 14 15 16 17 18 19 20 D A B A B D C E A B 21 22 23 24 25 26 27 28 29 30 E D D A A B A C B D 31 32 33 34 35 36 37 38 39 40 E C GABARITO ESAF UNIFIED MODELING LANGUAGE 1 2 3 4 5 6 7 8 9 10 D D A B B B LISTA DE EXERCÍCIOS COMENTADOS FCC UNIFIED MODELING LANGUAGE 1 2 3 4 5 6 7 8 9 10 A C C B E E B D D E 11 12 13 14 15 16 17 18 19 20 D A E A D A C D B D 21 22 23 24 25 26 27 28 29 30 A E D B E A C E A B 31 32 33 34 35 36 37 38 39 40 D B A E E D A B D C 41 42 43 44 45 46 47 48 49 50 E B B B A E E C A C 51 52 53 54 55 56 57 58 59 60 Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579 CARGO – ÓRGÃO/ANO Curso de Engenharia de Software e Desenvolvimento Prof. Diego Carvalho – Aula ?? Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 213 de 213 A A A E D E E C A E 61 62 63 64 65 66 67 68 69 70 E D C A D E C A D C 71 72 73 74 75 76 77 78 79 80 A E E A A A D B D D 81 82 83 84 85 86 87 88 89 90 E B D A C D E C A C 91 92 93 94 95 96 97 98 99 100 C A B D E E D E C E 101 102 103 104 105 106 107 108 109 110 D C C E GABARITO FGV UNIFIED MODELING LANGUAGE 1 2 3 4 5 6 7 8 9 10 A B A A D E B D B E Diego Carvalho Aula 06 Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital www.estrategiaconcursos.com.br 1177579