Baixe o app para aproveitar ainda mais
Prévia do material em texto
PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 1 de 63 AULA 04 – PARTE 01 – UML Parte 02 Sumário 1. Bibliografia .......................................................................................................................... 1 2. DIAGRAMA DE CASOS DE USO ........................................................................................... 1 3. DIAGRAMA DE SEQUÊNCIA .............................................................................................. 20 4. DIAGRAMA DE COMUNICAÇÃO ........................................................................................ 38 5. Lista das Questões Utilizadas na Aula. ............................................................................. 42 6. Gabarito. ........................................................................................................................... 63 1. Bibliografia 1. Pressman, R. S. Software Engineering. A practioner’s approach. 7ª Ed. McGraw Hill. 2010. 2. Sommerville, I. Software Engineering. 9ª Ed. Addison-Wesley. 2011. 3. Fowler, M. UML Essencial. 3ª Ed. Bookman. 2005. 4. Furlan, J. D. Modelagem de objetos através da UML. Makron Books. 1998. 5. Bezerra, E. Princípios de Análise e Projetos de Sistemas com UML. 2ª Ed. Editora Campus. 2002. 2. DIAGRAMA DE CASOS DE USO QUESTÃO 01 FCC - 2012 - TRT - 6ª Região (PE) - Técnico Judiciário - Tecnologia da Informação Considere a figura: Na UML, este é um diagrama de PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 2 de 63 a) Classe. b) Sequência. c) Caso de Uso. d) Objetos. e) Comunicação. Comentários: Vamos ao estudo do Diagrama de Casos de Uso, que é uma visão externa do sistema, representando graficamente os atores, casos de usos e relacionamentos entre esses elementos. Ou seja, o diagrama de casos de uso apresenta, em um alto nível de abstração, quais elementos externos interagem com o sistema e que interações são essas. Um ator é representado no diagrama como um bonequinho (stick man). Observe que, apesar da representação gráfica indicar que um ator é um ser humano, nem sempre isso é verdade. Podemos ter, por exemplo, sistemas, bases de dados e outros “não humanos” interagindo com o sistema. No entanto, a notação vai ser sempre a mesma: um bonequinho1. Cada caso de uso, ou funcionalidade específica do sistema, é representado por uma elipse e o nome do caso de uso é posicionado dentro ou abaixo da elipse. Um relacionamento de comunicação é representado por uma linha entre o ator e o caso de uso. Um ator pode estar relacionado a diversos casos de uso. Pode-se apresentar as fronteiras do sistema como um retângulo envolvendo todos os casos de uso. Olha um exemplo: 1 Ou um retângulo com o estereótipo <<actor>>. PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 3 de 63 Nesse diagrama de casos de uso, temos o ator Gerente, que é responsável pelos casos de uso “Analisar Riscos”, “Fechar Preço” (junto com o ator Vendedor) e “Registrar Negócio” (novamente, junto com o Vendedor). Agora, observe o caso de uso “Avaliar Negócio”. Ele se encontra ligado aos casos de uso “Analisar Riscos” e “Fechar Preço” por meio de uma seta pontilhada. Além disso, um estereótipo <<include>> marca a setinha. Isso tudo significa que estamos falando de um relacionamento de inclusão, onde um caso de uso inclui o outro. Ou seja, a realização dos casos de uso “Analisar Riscos” e “Fechar Preço” incluem o caso de uso “Avaliar Negócio”. Em outras palavras, o caso de uso “Avaliar Negócio” só vai ser executado quando “Analisar Riscos” e/ou “Fechar Preço” o forem. Além do <<include>>, o <<extend>> é o outro estereótipo utilizado em relacionamentos de casos de uso. Observe o exemplo a seguir: Nesse exemplo, o caso de uso “consulta no SPC” se relaciona com o caso de uso “tirar pedido” por meio de um relacionamento de extensão (<<extend>>). Isso significa que, caso seja necessário, ao se realizar o caso de uso “tirar pedido”, o caso de uso “consulta no SPC” poderá ser chamado. Ou seja, o relacionamento de extensão inclui uma condição que deve ser avaliada. Caso ela seja verdadeira, o caso de uso estendido será chamado. Assim, enquanto o include implica na obrigatoriedade do caso de uso, o extend indica uma opção. PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 4 de 63 Gabarito: C QUESTÃO 02 FUNCAB - 2012 - Prefeitura Municipal de Armação dos Búzios/RJ - Analista de Sistemas Superior Na UML, o diagrama que é utilizado após o levantamento de requisitos junto ao usuário visando documentar as funcionalidades do sistema, é conhecido como diagrama de: A) caso de uso. B) comunicação. C) implementação. D) componentes. E) pacotes. Comentários: O segredo aqui para acertar essa questão é que o diagrama de casos de uso, nosso gabarito, é utilizado muitas vezes como base para a homologação do documento de requisitos pelo cliente. Ou seja, é a assinatura do cliente aprovando o diagrama de casos de uso que dará início ao projeto e o desenvolvimento do sistema. Gabarito: A QUESTÃO 03 CESGRANRIO - 2014 - EPE - Analista de Gestão Corporativa - Tecnologia da 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 é ideal para representar, em alto nível, a interação das funcionalidades de um sistema com seus usuários. Gabarito: A PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 5 de 63 QUESTÃO 04 CETRO - 2013 - ANVISA - Analista Administrativo - Área 5 Assinale a alternativa que apresenta o principal diagrama da UML na análise de requisito. a) Objetos. b) Interação. c) Comunicação. d) Tempo. e) Diagramas de casos de uso. Comentários: Na análise de requisitos, temos, como estrela, o diagrama de casos de uso, que irá mostrar os requisitos funcionais do sistema, do ponto de vista do usuário. Gabarito: E QUESTÃO 05 FCC - 2011 - INFRAERO - Analista de Sistemas - Desenvolvimento e Manutenção 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: A captura de requisitos funcionais, de uma maneira geral, tem como base a elaboração de diagramas de casos de uso. Gabarito: A QUESTÃO 06 COPEVE-UFAL - 2011 - UFAL - Analista de Tecnologia da Informação Em termos de documentação de software, o diagrama UML mais recomendado para documentar requisitos funcionais e as dependências entre eles é o a) diagrama entidade-relacionamento. b) diagrama de classes. c) diagrama de fluxo de dados. d) diagrama de casos de uso. e) diagramade implantação. Comentários: A representação e documentação de requisitos funcionais (as funcionalidades do sistema, ou, em última instância, os casos de uso) ocorre, no contexto da UML, primariamente, por meio do diagrama de casos de uso. PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 6 de 63 Gabarito: D QUESTÃO 07 FCC - 2011 - TRT - 23ª REGIÃO (MT) - Técnico Judiciário - Tecnologia da Informação Em UML NÃO é característica de Use Case: a) modelar o diálogo entre atores e o sistema. b) descrever as comunicações necessárias entre objetos para a realização dos processos em um sistema computacional. c) ser iniciado por um ator para invocar uma certa funcionalidade do sistema. d) constituir-se em um fluxo de eventos completo e consistente. e) representar todas as situações possíveis de utilização do sistema, através do conjunto de todos os Use Case. Comentários: A única alternativa errada é a B, pois não cabe a um caso de uso a descrição da comunicação entre objetos ou a realização de processos computacionais. Gabarito: B QUESTÃO 08 CAIP-IMES - 2012 - Câmara Municipal de São Caetano do Sul - SP - Analista de Tecnologia da Informação A UML (Unified Modeling Language) é uma linguagem padrão para descrever/documentar projetos de software. Nesta linguagem, os diagramas de __________________ ajudam a determinar a funcionalidade e as características do software sob o ponto de vista do usuário. a) atividade b) estado c) casos de uso d) componentes Comentários: Quem descreve as funcionalidades do sistema, do ponto de vista do usuário, é o diagrama de casos de uso. Gabarito: C QUESTÃO 09 FUNCAB - 2014 - MDA - Administrador de Banco de Dados A UML (Unified Modeling Language) permite realizar a modelagem comportamental, funcional e dinâmica com a disponibilização de vários tipos de diagramas. O PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 7 de 63 diagrama que é utilizado para modelar as interações funcionais entre os usuários e o sistema é denominado: a) componentes. b) pacotes. c) implantação d) caso de uso. e) interação. Comentários: Interações funcionais entre usuários e o sistema: diagrama de casos de uso. Gabarito: D QUESTÃO 10 VUNESP - 2013 - UFABC - Analista de Tecnologia da Informação Considerando a UML 2.0, a notação utilizada para um caso de uso é: Comentários: Um caso de uso tem, como notação, uma elipse. Gabarito: D QUESTÃO 11 FUNCAB - 2014 – SESACRE - Analista de Sistemas No diagrama de casos de uso, as pessoas ou entidades externas que integram, interagem ou desempenham algum papel no sistema, são conhecidas como: A) casos de uso. B) objetos. C) mensagens. D) classes. E) atores. PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 8 de 63 Comentários: Questão tranquila que apresenta a descrição dos atores no seu comando. Gabarito: E QUESTÃO 12 FCC - 2014 - TRT - 1ª REGIÃO (RJ) - Analista Judiciário - Tecnologia da Informação 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) só pode haver representado um único caso de uso. b) um ator pode ser representado pelo “stick man” ou por um retângulo com a expressão << actor >>. c) um ator pode ser representado apenas pelo símbolo do “stick man”. d) só pode haver representado um único ator. e) o número de atores e de casos de uso sempre deve ser o mesmo. Comentários: Vamos analisar cada alternativa: a) só pode haver representado um único caso de uso. Errado, não existe limite mínimo de casos de uso em um diagrama de casos de uso. b) um ator pode ser representado pelo “stick man” ou por um retângulo com a expressão << actor >>. Aqui está o gabarito! Além do tradicional bonequinho, podemos representar um ator como uma classe estereotipada com a expressão << actor >>. c) um ator pode ser representado apenas pelo símbolo do “stick man”. Muita gente marcou essa alternativa por desconhecer a possibilidade de uso do estereótipo. d) só pode haver representado um único ator. Inexiste tal limite na especificação da UML. e) o número de atores e de casos de uso sempre deve ser o mesmo. Alternativa absurda. Gabarito: B QUESTÃO 13 FUMARC - 2014 - AL-MG - Analista de Sistemas - Desenvolvimento Analise as seguintes afirmativas sobre o Diagrama de Casos de Uso da UML. PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 9 de 63 I. Um relacionamento estendido entre casos de uso significa que o caso de uso base incorpora implicitamente, sob alguma condição, o comportamento de outro caso de uso. II. Um relacionamento de inclusão entre casos de uso significa que o caso de uso base incorpora explicitamente o comportamento de outro caso de uso. III. Relacionamentos de inclusão e extensão são representados pela mesma notação do relacionamento de dependência, com a seta apontada para o caso de uso base. Estão CORRETAS as afirmativas: a) I e II, apenas. b) I e III, apenas. c) II e III, apenas. d) I, II e III. Comentários: Vamos analisar cada afirmativa: I. Um relacionamento estendido entre casos de uso significa que o caso de uso base incorpora implicitamente, sob alguma condição, o comportamento de outro caso de uso. O relacionamento de extensão entre casos de uso implica em uma condicionalidade que tem que ser atendida para que o caso de uso estendido seja executado. Afirmativa correta. II. Um relacionamento de inclusão entre casos de uso significa que o caso de uso base incorpora explicitamente o comportamento de outro caso de uso. Perfeito! Afirmativa correta! III. Relacionamentos de inclusão e extensão são representados pela mesma notação do relacionamento de dependência, com a seta apontada para o caso de uso base. A notação até é a mesma, mas enquanto que no relacionamento extend a seta aponta para o caso de uso base, no include, a seta aponta para o caso de uso incluído. Gabarito: A QUESTÃO 14 CESGRANRIO - 2011 - FINEP - Analista - Desenvolvimento de Sistemas Durante o levantamento de um sistema, um analista registrou o seguinte requisito funcional: “A função de efetivação de uma compra deverá exigir que o cliente se identifique novamente para o sistema, caso o valor da transação ultrapasse o limite de crédito definido pela gerência.” A partir desta declaração, o analista elaborou o diagrama de casos de uso UML 2.3 abaixo. PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 10 de 63 Qual deve ser o estereótipo da relação entre os casos de uso Efetiva Compra e Identifica Cliente, de modo que esse diagrama expresse o requisito funcional descrito anteriormente? a) extend b) include c) inherits d) implements e) overrides Comentários: Observe que a descrição fala que caso o valor da transação ultrapasse o limite de crédito, o caso de uso “Identifica Cliente” deverá ser chamado. Ou seja, temos uma relação de extensão, uma vez que existe uma condição a ser atendida para se chamar o caso de uso. Assim, o estereótipo correto a ser representado nessa relação entre casos de uso é o extend. Gabarito: A QUESTÃO 15 FUNCAB - 2013 - CODATA - Analista de Informática - Desenvolvimento de Sistemas Uma empresa deseja comercializar jogos através de um aplicativopara dispositivos móveis. Para tal, ele terá que atender os seguintes requisitos: As compras serão pagas através de um sistema de pagamento seguro (SPS). A comunicação entre o aplicativo em questão e o sistema da empresa de pagamento será feita através de um serviço Web disponibilizado pela empresa de pagamento. O usuário poderá fazer buscas por jogos utilizando vários tipos de filtros. Os downloads serão inicializados tão logo a empresa de pagamento seguro confirme o pagamento. Qual diagrama de casos de uso UML descreve de maneira adequada os requisitos funcionais desse aplicativo? PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 11 de 63 Comentários: Questão inteligente que cobra o processo de construção de um diagrama de casos de uso, a partir de uma descrição textual dos casos de uso. Atores, que são quem vão interagir com o sistema, eu consigo visualizar dois: o Usuário e a empresa de pagamento (SPS). Nossa, só em identificar os usuários, matamos nosso gabarito: D. ;) Continuando, temos que o SPS realizará o pagamento e que o usuário vai poder buscar jogos e realizar downloads. Estão aí nossos 03 casos de uso. Por fim, temos que, para que um download seja realizado pelo Usuário, o SPS precisa realizar o pagamento, justificando o relacionamento de include apresentado no nosso gabarito. Gabarito: D PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 12 de 63 QUESTÃO 16 FCC - 2011 - TRE-AP - Analista Judiciário - 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: Faltava falar da generalização de casos de uso. Agora não falta mais :) A UML especifica dois tipos de herança em diagramas de casos de uso: a herança de casos de uso e a herança de atores. O relacionamento de herança entre casos de uso apresenta casos de usos especializados em relação a um caso de uso mais genérico. Já o relacionamento de herança entre atores, indica que um ator "especializado" pode utilizar (ou herda) qualquer caso de uso do ator mais genérico. Os casos de uso e atores mais genéricos podem ser chamados de abstratos. Observe a figura a seguir: PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 13 de 63 Entre os atores cliente e cliente de internet existe uma relação de herança. Ou seja, o cliente de internet é um ator especializado de cliente. Ele pode executar seus casos de uso e os casos de uso do cliente. Observe que o triângulo fica próximo do ator mais genérico. Mais embaixo, temos o caso de uso “fazer pedido”, mais genérico, e os casos de uso “pedido por telefone” e “pedido pela internet”, que são especializações do caso de uso “fazer pedido”. Observe que o caso de uso “fazer pedido” estende “solicitar catálogo” e inclui “fornecer os dados do cliente”. Assim, tanto o caso de uso “pedido por telefone” quanto o “pedido pela internet” também estendem “solicitar catálogo” e incluem o caso de uso “fornecer os dados do cliente”. Nossa questão quer saber se você sabe os 3 tipos de relacionamentos entre casos de uso: generalização, inclusão e extensão. Gabarito: D QUESTÃO 17 VUNESP - 2014 - Câmara Municipal de São José dos Campos - SP - Analista Legislativo - Analista de Sistemas Deseja-se representar, em um diagrama de casos de uso da UML, a seguinte situação: o ator B herda as propriedades do ator A. A forma correta de representação é a) b) c) d) PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 14 de 63 e) Comentários: Nosso gabarito é a alternativa B, que mostra uma herança de um caso de uso B, mais específico em relação ao caso de uso A. As demais alternativas são decorrentes da criatividade do examinador... Gabarito: B QUESTÃO 18 VUNESP - 2012 - FAMERP - Analista de Serviço Administrativo - Tecnologia da Informação (Analista Programador) Considere o seguinte trecho de um diagrama de casos de uso, feito com a UML 2.0. Esse diagrama indica a seguinte operação entre os dois atores: (A) atividade. (B) generalização. (C) interrupção. (D) inclusão. (E) repartição. Comentários: Temos uma generalização de atores, cujo símbolo é uma linha cheia, com uma seta vazada apontando do ator mais específico para o ator mais geral. Gabarito: B QUESTÃO 19 FEPESE - 2012 - FATMA - Analista Técnico de Gestão Ambiental - Classe IV - Analista de Informática Considere o diagrama de caso de uso da UML abaixo: Com base no diagrama, analise as afirmações abaixo: PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 15 de 63 1. Decorrente do relacionamento de generalização entre os atores, o ator Coordenador executa uma tarefa comum com o ator Vendedor que é manter o pedido e atualizar o cadastro do cliente. 2. Decorrente do relacionamento de generalização entre os atores, o ator Vendedor executa uma tarefa comum com o ator Coordenador que é emitir relatório de vendas. 3. O relacionamento <<extend>> entre os casos de usos define que o caso de uso Manter pedido pode, eventualmente, invocar o caso de uso Atualizar cadastro cliente. 4. O relacionamento entre o ator Coordenador com o caso de uso Emitir relatório de vendas é do tipo associação. Assinale a alternativa que indica todas as afirmativas corretas. a) É correta apenas a afirmativa 2. b) São corretas apenas as afirmativas 1 e 4. c) São corretas apenas as afirmativas 2 e 3. d) São corretas apenas as afirmativas 3 e 4. e) São corretas apenas as afirmativas 1, 3 e 4. Comentários: Pois é, analisemos cada afirmativa: 1. Decorrente do relacionamento de generalização entre os atores, o ator Coordenador executa uma tarefa comum com o ator Vendedor que é manter o pedido e atualizar o cadastro do cliente. Afirmativa correta. Observe que, entre o Coordenador e o Vendedor, existe um relacionamento de generalização: um Coordenador é um Vendedor. Como os casos de uso “Manter pedido” e “Atualizar o cadastro” estão relacionados com um Vendedor, também o estão com um Coordenador. 2. Decorrente do relacionamento de generalização entre os atores, o ator Vendedor executa uma tarefa comum com o ator Coordenador que é emitir relatório de vendas. Observe que a seta que representa o relacionamento de generalização aponta do Coordenador para o Vendedor. Ou seja, o Coordenador herda os relacionamentos de um Vendedor e não o contrário. Assim, a afirmativa esta errada ao afirmar que um Vendedor pode realizar um caso de uso associado a um Coordenador. PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 16 de 63 3. O relacionamento <<extend>> entre os casos de usos define que o caso de uso Manter pedido pode, eventualmente, invocar o caso de uso Atualizar cadastro cliente. Exato. Se estende, quer dizer que não é obrigatório. 4. O relacionamento entre o ator Coordenador com o caso de uso Emitir relatório de vendas é do tipo associação. Sim! Uma linha cheia em UML significa um relacionamento de associação. Gabarito: E QUESTÃO 20 FUMARC - 2011 - BDMG - Analista de SistemasSão elementos que podem estar presentes em um Diagrama de Casos de Uso da UML, EXCETO: a) Ator. b) Assunto. c) Relacionamento de generalização. d) Objeto. Comentários: Não temos objetos em um diagrama de casos de uso. Gabarito: D QUESTÃO 21 FCC - 2013 - MPE-MA - Analista Ministerial - Teste e Qualidade de Software 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. 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 << >>. PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 17 de 63 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: Pela descrição das afirmativas, fica fácil perceber que estamos falando, respectivamente, das relações de inclusão, generalização e extensão. Anote duas definições chaves que diferenciam a inclusão da extensão: Inclusão: Incorporação de um caso de uso por outro. Extensão: Acrescentar comportamento incremental a um caso de uso. Gabarito: C QUESTÃO 22 FMP-RS - 2013 - MPE-AC - Analista - Tecnologia da Informação Considere as seguintes afirmações sobre diagramas UML. I. Um ator pode especializar (herdar comportamento de) outro ator, o que confere um significativo poder expressivo adicional ao diagrama de casos de uso. II. Num diagrama de classes, os relacionamentos de agregação, associação e composição podem indicar a multiplicidade dos elementos que participam do relacionamento, enquanto, no relacionamento de generalização/especialização entre classes (que possui a propriedade de herança), ela não é indicada. III. Do ponto de vista de implementação, os relacionamentos um-para-muitos e muitos-para-muitos representados no diagrama de classes frequentemente resultam no uso de coleções (listas, árvores, conjuntos, etc) no código fonte. Levando-se em conta as afirmações acima, identifique a única alternativa válida. a) Apenas a I e a II estão corretas. b) Apenas a I e a III estão corretas. c) Apenas a II e a III estão corretas. d) Todas as afirmações I, II e III estão corretas. e) Todas as afirmações I, II e III estão incorretas. Comentários: Vamos analisar cada afirmativa: PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 18 de 63 I. Um ator pode especializar (herdar comportamento de) outro ator, o que confere um significativo poder expressivo adicional ao diagrama de casos de uso. Estamos falando da generalização de atores no diagrama de casos de uso. Afirmativa correta. II. Num diagrama de classes, os relacionamentos de agregação, associação e composição podem indicar a multiplicidade dos elementos que participam do relacionamento, enquanto, no relacionamento de generalização/especialização entre classes (que possui a propriedade de herança), ela não é indicada. Isso aqui é verdade, viu? Nos relacionamentos de agregação, composição e associação, podemos utilizar um indicador de multiplicidade, o qual dirá o número de instâncias que participarão do relacionamento. Já o relacionamento de herança não é um relacionamento entre objetos de uma classe. Antes, ele indica se uma classe é superclasse de outra. Não faz sentido termos um indicador de multiplicidade. III. Do ponto de vista de implementação, os relacionamentos um-para-muitos e muitos-para-muitos representados no diagrama de classes frequentemente resultam no uso de coleções (listas, árvores, conjuntos, etc) no código fonte. Isso é verdade, se temos, em um relacionamento, um objeto do lado esquerdo e várias instâncias do lado direito, é melhor criarmos uma coleção de objetos na classe do objeto do lado esquerdo. Afirmativa correta. Gabarito: D QUESTÃO 23 FCC - 2013 - TRT - 15ª Região - Analista Judiciário - Tecnologia da Informação Utilizando a UML 2.0, casos de uso complexos podem ser construídos de partes menores por meio das relações include, extend e generalização. Sobre estas relações é correto afirmar que a a) relação include é utilizada para incluir casos de uso que, mesmo que não fossem incluídos em outro caso de uso, apareceriam apenas uma vez no diagrama. b) relação extend acrescenta comportamento incremental a um caso de uso; ela representa a situação frequente em que alguma capacidade inicial é definida e, mais tarde, recursos são acrescentados modularmente. PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 19 de 63 c) notação para uma releção includ é uma seta ininterrupta, indo do caso de uso incluído até o caso de uso básico (incluinte), com a palavra-chave <<include>> rotulando a seta. d) notação UML para uma relação extend é uma seta tracejada do caso de uso básico até o caso de uso extensão, com a palavra chave <<extend>> rotulando a seta. e) notação UML para uma relação de generalização é uma seta tracejada com cauda no caso de uso filho e ponta triangular no caso de uso pai. Comentários: Vamos analisar cada alternativa: a) relação include é utilizada para incluir casos de uso que, mesmo que não fossem incluídos em outro caso de uso, apareceriam apenas uma vez no diagrama. Com o include, saímos de uma situação em que uma funcionalidade comum estaria representada dentro do limite de diversos casos de uso para uma situação em que promovemos essa funcionalidade a um caso de uso e usamos a relação de include para ligar esse caso de uso “promovido” aos casos de uso que originariamente utilizariam essa funcionalidade. Ou seja, sem o include, essa funcionalidade “promovida a caso de uso” apareceria diversas vezes no diagrama (implicitamente dentro dos diversos casos de uso que utilizariam essa funcionalidade). Alternativa errada. b) relação extend acrescenta comportamento incremental a um caso de uso; ela representa a situação frequente em que alguma capacidade inicial é definida e, mais tarde, recursos são acrescentados modularmente. A extensão acrescenta comportamento incremental a um caso de uso! Anota aí! A ideia relacionada a essa afirmação é: criamos um caso de uso original e, na medida em que conhecemos melhor esse caso de uso, acabamos atrelando mais funcionalidades e detalhamentos do fluxo de caso de uso que podem disparar essas funcionalidades. Temos, então, um ambiente propício para a criação de novos casos de uso ligados pelo mecanismo de extensão ao caso de uso original. Gabarito! c) notação para uma releção includ é uma seta ininterrupta, indo do caso de uso incluído até o caso de uso básico (incluinte), com a palavra-chave<<include>> rotulando a seta. É uma seta tracejada apontando para o caso de uso incluído. PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 20 de 63 d) notação UML para uma relação extend é uma seta tracejada do caso de uso básico até o caso de uso extensão, com a palavra chave <<extend>> rotulando a seta. Na verdade, a seta aponta para o caso de uso básico. e) notação UML para uma relação de generalização é uma seta tracejada com cauda no caso de uso filho e ponta triangular no caso de uso pai. Na generalização, temos uma linha contínua, com uma ponta triangular vazada do lado do caso de uso pai. Gabarito: B 3. DIAGRAMA DE SEQUÊNCIA QUESTÃO 24 FGV - 2014 - Prefeitura do Recife - Analista de Controle Interno - Especialidade Tecnologia da Informação Analise a figura a seguir. A figura acima é conhecida como (A) diagrama de classes. (B) diagrama de estados. (C) diagrama de casos de uso. (D) diagrama de sequência. PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 21 de 63 (E) diagrama de atividade. Comentários: Utilizamos o diagrama de sequência para modelar um cenário de um caso de uso, apresentando seus objetos e mensagens (que são as chamadas de métodos realizadas pelos objetos). A figura apresentada na questão é um diagrama de sequência. Olhando para ela, temos que, da esquerda para a direita, são mostrados os objetos que estão sendo representados no diagrama, na medida em que eles passam a participar da interação. No eixo vertical do diagrama temos a linha de vida dos objetos (pontilhada), bem como o tempo passando, de cima para baixo. Os retângulos gordinhos são os tempos de ativação das mensagens e objetos. As setas ao longo do diagrama representam diferentes chamadas de métodos. Apesar de assustar um pouco quem nunca trabalhou com modelagem de software, o diagrama é relativamente simples. Vamos acompanhar o que o diagrama da questão modela: 1. A modelagem se inicia com a chamada do método calcularPreço para um objeto chamado um Pedido. 2. Esse Pedido chama os métodos obterQuantidade e obterProduto, que vão no objeto Linha de Pedido encontrar essas informações (quantidade e produto). 3. O retorno dessa operação é um produto. 4. Depois, o Pedido chama o método obterDetalhesdoPreço junto ao Produto. 5. Aí ele chama o método calcularPreçoBase, que não interage com outro objeto, apenas com ele mesmo, e o método calcularDesconto. 6. Por fim, a última linha lança um método obterInformaçãodeDesconto que vai verificar junto ao objeto Cliente essas informações. Uma mensagem é um elemento em um diagrama que define um tipo específico de comunicação entre instâncias em uma interação. Ou seja, uma mensagem transporta informações de uma instância, que é representada por uma linha de vida, para uma outra instância. Uma mensagem especifica um emissor e um receptor e define o tipo de comunicação que ocorre entre linhas de vida. De maneira esquemática, temos os seguintes tipos de mensagem: PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 22 de 63 Mensagem Síncrona: Uma mensagem é enviada da linha de vida de origem para a linha de vida de destino. A linha de vida de origem é bloqueada para outras operações até receber uma resposta da linha de vida de destino. É representada por uma linha com uma ponta de seta fechada. Mensagem Assíncrona: Em contraste com uma mensagem síncrona, a linha de vida de origem não é bloqueada para recebimento ou envio de outras mensagens. Pode-se optar por escolher esse tipo de mensagem se uma resposta não for sensível ao tempo ou à ordem. É representada por uma linha com uma ponta de seta aberta incompleta. 2 Mensagem Simples (ou Indiferenciada): Não existe informações suficientes para definir se é uma mensagem síncrona ou assíncrona. É representada por uma linha com uma ponta de seta aberta. Mensagem de Retorno: Trata-se da mensagem de retorno de uma mensagem enviada. Normalmente, não é apresentada no diagrama, sendo sua existência implícita, caso exista uma barra de ativação. É representada por uma linha tracejada com uma seta que aponta em direção à linha de vida originadora. Mensagem Perdida: É uma mensagem que tem um remetente conhecido, mas o destinatário não é conhecido. É representada por uma linha com uma ponta de seta aberta e que contém um ponto na extremidade final. Mensagem Localizada: É uma mensagem que não tem um remetente conhecido, mas tem um destinatário. É representada por uma linha com uma ponta de seta aberta e que contém um ponto em seu início. Muitas vezes, é utilizada no início de um diagrama de sequência. Mensagem de Criação: Representa a criação de uma instância em uma interação. A mensagem de criação pode receber opcionalmente o estereótipo «create». A linha de vida de destino começa no ponto da mensagem de criação. Mensagem de Destruição: Representa a destruição de uma instância em uma interação. A mensagem de destruição pode receber opcionalmente o estereótipo «destroy». A linha de vida de destino termina no ponto da mensagem de destruição, sendo esse fim determinado por um X. 2 Podemos também utilizar a notação de mensagem simples para representar uma mensagem assíncrona (algo herdado de versões anteriores da UML), mas isso não é recomendável. PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 23 de 63 A figura a seguir, extraída de Furlan, traz uma figurinha esquemática bem legal e nos apresenta mais uma notação que é a condição de guarda: Uma barra de ativação mostra o período de tempo durante o qual um objeto está executando uma ação, a partir do recebimento de uma mensagem. Em termos de processos computacionais, significa que o objeto tem um processo ou thread ativo associado. Observe que se um objeto receber uma mensagem síncrona, a barra de ativação perdurará até a mensagem de retorno ser enviada. A indicação da barra de ativação é opcional, mas quando acontece, implica que a chamada de retorno está implícita no fim da barra de ativação. Gabarito: D QUESTÃO 25 FESMIP-BA - 2011 - MPE-BA - Analista de Sistemas Um diagrama UML é uma apresentação gráfica de uma coleção de elementos do modelo de um sistema. O diagrama utilizado pela UML que apresenta a interação entre os objetos em relação ao tempo é o de a) componentes b) implantação c) estado d) classes e) sequência PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 24 de 63 Comentários: Interação entre objetos, por meio de mensagens, tendo como principal norteador a troca dessas mensagens ao longo do tempo, indica, para modelagem desse cenário, a necessidade de uso do diagrama de sequência. Gabarito: E QUESTÃO 26 Instituto AOCP - 2013 - Colégio Pedro II - Técnico de Tecnologia da Informação Considerando a Unifed Modeling Language (UML). Qual das alternativas abaixo indica o diagrama que representa as interações entre os objetos de um cenário realizadas através de métodos. a) Diagrama de sequência b) Diagrama de Classes. c) Diagrama de Entidade e Relacionamento d) Diagrama de implantação. e) Diagrama de Caso de uso. Comentários: Como a questão não indica a questão temporal, poderíamos nos confundir com o diagramade comunicação (entenderemos isso melhor em breve). Como não existe tal diagrama entre as opções, podemos marcar, sem medo, o diagrama de sequência como gabarito. Gabarito: A QUESTÃO 27 FUMARC - 2013 - PC-MG - Analista da Polícia Civil - Tecnologia da Informação Analise as seguintes afirmativas sobre o Diagrama de Sequências da UML. I. É um diagrama que dá ênfase à ordenação temporal das mensagens. II. Os objetos que participam da interação são colocados no nível superior do diagrama, ao longo do eixo X. III. Para indicar a ordem temporal das mensagens, é utilizado um número como prefixo da mensagem, que aumenta unitariamente para cada nova mensagem. Estão CORRETAS as afirmativas: a) I e II, apenas. b) I e III, apenas. c) II e III, apenas. d) I, II e III. PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 25 de 63 Comentários: O único erro está na afirmativa III, que cita a estratégia utilizada no diagrama de comunicação para demonstrar o tempo: o uso de um número ao lado de cada mensagem. No diagrama de sequência, o tempo é apresentado explicitamente ao longo do eixo Y do diagrama. Gabarito: A QUESTÃO 28 FUMARC - 2012 - TJ-MG - Técnico Judiciário - Analista de Sistemas São diagramas de interação da UML que mostram um conjunto de objetos e as mensagens que poderão ser trocadas entre eles, enfatizando a ordem temporal de mensagens: a) Diagrama de Atividades. b) Diagrama de Objetos. c) Diagrama de Comunicação. d) Diagrama de Sequências. Comentários: Conjunto de objetos trocando mensagens com ênfase na ordem temporal das mensagens = diagrama de sequência. Gabarito: D QUESTÃO 29 FAFIPA - 2014 - UFFS - Analista de Tecnologia da Informação Considerando a Unified Modeling Language (UML), qual alternativa indica o diagrama que representa as interações entre os objetos de um cenário realizadas por meio de métodos? a) Diagrama de implantação. b) Diagrama de sequência. c) Diagrama de Entidade e Relacionamento. d) Diagrama de Classes. e) Diagrama de Caso de uso. Comentários: Quando não evidenciada a ênfase da ordem temporal das trocas de mensagens entre objetos no comando da questão, só poderemos marcar o diagrama de sequência caso não exista entre as opções o diagrama de comunicação. Gabarito: B QUESTÃO 30 Quadrix - 2014 - SERPRO - Analista - Desenvolvimento de Sistemas PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 26 de 63 O diagrama da UML, considerado o tipo mais comum de diagrama de interação, que mostra vários exemplos de objetos e mensagens que são passadas entre esses objetos, e o diagrama que permite visualizar como os usuários interagem com o sistema são, respectivamente, os diagramas de: a) seqüência e de deployment. b) comunicação e de componentes. c) temporização e de casos de uso. d) seqüência e de casos de uso. e) comunicação e de atividades. Comentários: Enquanto que podemos ter dúvida em saber qual é o diagrama responsável por apresentar um cenário de troca de mensagens entre objetos (pois podemos estar falando do diagrama de sequência ou do diagrama de comunicação), o diagrama que apresenta o sistema em função de suas funcionalidades e da interação dos usuários com as funcionalidades do sistema só pode ser o diagrama de casos de uso. Assim, nosso gabarito ficou fácil! Gabarito: D QUESTÃO 31 CAIP-IMES - 2012 - Câmara Municipal de São Caetano do Sul - SP - Analista de Tecnologia da Informação Disciplina: Engenharia de Software Na UML (Unified Modeling Language), o ________________________ é utilizado para indicar as comunicações dinâmicas entre objetos durante a execução de uma tarefa. Ele mostra a ordem temporal na qual as mensagens são enviadas entre os objetos para executar aquela tarefa. a) diagrama de classe b) diagrama de estados c) diagrama de sequência d) diagrama de comunicação Comentários: O diagrama de sequência é utilizado para indicar as comunicações dinâmicas entre objetos durante a execução de uma tarefa. Ele mostra a ordem PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 27 de 63 temporal na qual as mensagens são enviadas entre os objetos para executar aquela tarefa. Gabarito: C QUESTÃO 32 FUNDEP - 2013 - CODEMIG - Analista - Análise de Sistemas O diagrama UML que deve ser utilizado para representar o fluxo das tarefas que podem ser realizadas por um ator no sistema é: a) Diagrama de atividades. b) Diagrama de classes. c) Diagrama de sequência. d) Diagrama de objetos. Comentários: Aqui temos uma questão inteligente! Os atores foram vistos pela gente dentro do diagrama de casos de uso, sendo responsáveis por realizar as funcionalidades do sistema. Pois bem, usamos o diagrama de sequência para modelar a troca de mensagens (ou o fluxo de mensagens) dentro de um caso de uso. Ou seja, o diagrama de sequências é baseado no diagrama de casos de uso e no diagrama de classes!!! Logo, nosso gabarito está certinho, pois o diagrama de sequência detalha o fluxo de mensagens existente em uma funcionalidade do sistema (ou caso de uso), a qual é realizada por um ator do sistema. Gabarito: C QUESTÃO 33 FUNCAB - 2013 - SESACRE - Analista de Sistemas Na UML, o diagrama que representa a troca de mensagens entre os objetos do sistema, em uma ordem de tempo, permitindo que o desenvolvedor tenha uma visão clara das tarefas que estão relacionadas ao sistema e, também, do que deve ser programado primeiro, é conhecido como diagrama de: A) classes. B) implementação. C) objetos. D) componentes. E) sequência. Comentários: Troca de mensagens com ênfase no tempo = diagrama de sequência. Gabarito: E QUESTÃO 34 FEPESE - 2014 - MPE-SC - Analista - Tecnologia da Informação Diagramas UML apresentam uma forma gráfica para descrever os sistemas. PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 28 de 63 Assinale a alternativa que apresenta um diagrama UML que mostra a troca de mensagens entre diversos Objetos, numa situação específica e delimitada no tempo. A ênfase deste diagrama está na ordem e nos momentos nos quais mensagens para os objetos são enviadas. a) Diagrama de Sequência b) Diagrama de Estado c) Diagrama de Fluxo d) Diagrama de Classes e) Diagrama de Atividades Comentários: Ênfase no tempo e troca de mensagens entre objetos = diagrama de sequência. Gabarito: A QUESTÃO 35 FCC - 2012 - TJ-PE - Analista Judiciário - Análise de Sistemas É INCORRETO afirmar que em UML, a) o diagrama de sequência pode ser usado para descrever como alguns objetos de um caso de uso colaboram em algum comportamento ao longo do tempo. b) é comum no diagrama de caso de uso, a utilização de atores para representar entidades do mundo real e suas respectivas ações. c) o diagrama de classes define as classes de que o sistema necessita e é a base para a construção dos diagramas de sequência e comunicação. d) visão geral e atividades, casos de uso e de sequência são diagramas que descrevem uma visão dinâmica de um sistema. e) o diagrama de sequência é tido como o menos funcional entre os diagramas da UML, em função de sua não integração com os sistemas de gerência. Comentários: O único erro da questão é a alternativa E. Temos diagramas que mostram bem menos as funcionalidades do sistema, como o diagrama de componentes ou o de pacotes. A partirdo diagrama de sequência podemos ter sim uma certa noção da funcionalidade do sistema (caso de uso) que está sendo modelada. Além disso, ninguém sabe de onde o examinador tirou esses “sistemas de gerência”. PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 29 de 63 Gabarito: E QUESTÃO 36 FUNRIO - 2014 - INSS - Analista - Tecnologia da Informação Na UML, o diagrama de interação cujo enfoque está em como as mensagens são enviadas no decorrer do tempo é denominado diagrama de a) colaboração. b) comunicação. c) interatividade. d) sequência. e) tempo. Comentários: Tempo + troca de mensagens = diagrama de sequência. Gabarito: D QUESTÃO 37 FCC - 2013 - MPE-MA - Analista Ministerial - Teste e Qualidade de Software Observe o seguinte cenário: Joana efetua o login. O sistema estabelece uma comunicação segura. O sistema exibe informações dos serviços do MP-MA. Joana faz um pedido de acesso a um processo judicial. O sistema verifica se Joana tem autorização para acessar este processo. O sistema exibe a tela de solicitação de senha de acesso. Joana insere a senha. O sistema verifica se a senha é válida. O sistema permite o acesso ao processo. Joana interage com os autos digitalizados. Joana efetua o logoff. O sistema estabelece uma comunicação não segura. O sistema exibe uma tela de despedida. Um cenário contém mensagens entre objetos, bem como atividades realizadas pelos objetos. Um formato de texto é conveniente para escrever, mas não mostra claramente o emissor e o receptor de cada mensagem. O diagrama da UML 2 mais adequado para mostrar de forma gráfica este cenário é o diagrama de a) Estados. b) Classes. c) Objetos. d) Colaboração. e) Sequência. Comentários: Se ele tivesse deixado o diagrama de atividades entre as alternativas, o examinador teria se complicado. Não foi o caso e ainda temos duas dicas de que o que PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 30 de 63 o examinador quer que o concurseiro marque é o diagrama de sequência: “mensagens entre objetos” e “emissor e o receptor de cada mensagem”. Gabarito: E QUESTÃO 38 AOCP - 2011 - BRDE - ANALISTA DE SISTEMAS – SUBÁREA DESENVOLVIMENTO DE SISTEMAS A linguagem UML possui vários tipos de diagramas. Sobre o diagrama de sequência, analise as assertivas e assinale a alternativa que aponta as corretas I. No corpo de um diagrama de sequência, podemos encontrar operações ativadas, dimensionadas para refletir suas durações aproximadas. II. Um diagrama de sequência empresta uma grande força à orientação a objetos, sendo a ligação dinâmica que corresponde ao mecanismo de implementação de um determinado processo. III. O diagrama de sequência é um tipo de diagrama de interação entre objetos que enfatiza mais a sequência temporal que os relacionamentos estáticos do objeto. IV. Um diagrama de sequência representa a ação entre dois eventos através de uma seta de generalização que se estende do evento até o subevento. (A) Apenas I e II. (B) Apenas I e III. (C) Apenas II e III. (D) Apenas II, III e IV. (E) I, II, III e IV. Comentários: Vamos analisar cada afirmativa: I. No corpo de um diagrama de sequência, podemos encontrar operações ativadas, dimensionadas para refletir suas durações aproximadas. Exato, a barra de ativação das mensagens dá uma noção da duração da mensagem e do momento em que ela ocorre ao longo da interação apresentada no diagrama de sequência. II. Um diagrama de sequência empresta uma grande força à orientação a objetos, sendo a ligação dinâmica que corresponde ao mecanismo de implementação de um determinado processo. A afirmativa está errada, segundo o gabarito. Resta saber no que estava pensando o examinador. PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 31 de 63 Talvez ele tivesse pensando no sentido de que os diagramas da UML não dizem como deve ser feita a implementação de código. Ou então, ele colocou a palavra processo, que pode ter várias interpretações. Uma delas me faria pensar que o mecanismo de implementação de um processo não é modelado pela UML, mas por BPMN (Business Process Modeling Notation) ou pelo diagrama de atividades. III. O diagrama de sequência é um tipo de diagrama de interação entre objetos que enfatiza mais a sequência temporal que os relacionamentos estáticos do objeto. Isso aqui é dívida! Diagrama de sequência exprime a sequência temporal, enquanto que o diagrama de comunicação aborda os aspectos estruturais (os aspectos estáticos estão no diagrama de objetos). IV. Um diagrama de sequência representa a ação entre dois eventos através de uma seta de generalização que se estende do evento até o subevento. Herança de eventos???? Afirmativa errada. Gabarito: B QUESTÃO 39 CESGRANRIO - 2014 - Banco da Amazônia - Técnico Científico - Analise de Sistemas Seja o seguinte diagrama de sequência UML: Qual mensagem é do tipo lost message? a) 1 b) 2 c) 3 d) 4 e) 5 PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 32 de 63 Comentários: Uma mensagem perdida é representada por uma seta fechada e um ponto no final. Assim, nosso gabarito é a alternativa B. Complementando, podemos dizer que a mensagem 1 é síncrona; a mensagem 3 corresponde a uma chamada ao próprio objeto de origem da mensagem, fazendo com que apareça uma segunda barra de ativação na linha de vida desse objeto (temos aqui uma Mensagem Reflexiva ou Autodelegação ou Autochamada); a mensagem 4 é uma mensagem síncrona; e a mensagem 5 indica que, ao receber a mensagem 4, o objeto TB envia uma mensagem de retorno ao objeto TC. Gabarito: B QUESTÃO 40 VUNESP - 2014 - TJ-PA - Analista Judiciário - Análise de Sistema - Desenvolvimento No diagrama de sequência da UML 2.0, se o objetivo for indicar que uma mensagem deve ser transmitida mais de uma vez, uma das formas de se indicar isso é: a) < nº da msg>@< tipo da msg>:< descr. da msg> b) < nº da msg>*< descrição da msg> c) < nº da msg>§< tipo da msg> d) < nº da msg>#< tipo da msg> e) < nº da msg>%< tipo e descrição da msg> Comentários: Uma mensagem iterativa é aquela que pode ser transmitida mais de uma vez, sendo representada por um * antes do nome da mensagem. Gabarito: B QUESTÃO 41 VUNESP - 2014 - DESENVOLVESP - Analista de Sistemas Considere o seguinte diagrama de mensagens (ou de sequência), representado por meio da UML 2.0: PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 33 de 63 Com base nesse diagrama, é correto afirmar que a) ambos os objetos (A e B) já existiam antes da geração da mensagem MsgA. b) o objeto A é criado em consequência da mensagem MsgB. c) o objeto B é armazenado em um banco de dados. d) o objeto B é criado em consequência da mensagem MsgA. e) o objeto B é destruído após a geração da mensagem MsgB. Comentários: A Mensagem 1 é uma mensagem de criação do objeto B. Logo, nosso gabarito é a alternativa D Gabarito: D QUESTÃO 42 CESGRANRIO - 2013 - LIQUIGAS - Profissional Júnior - Análise de Sistemas - Tecnologia da Informação 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 d) 4 e) 5 Comentários: Temos que as mensagens 1 e 2 são mensagens síncronas, a3 é uma mensagem reflexiva, a 4 pode ser considerada uma mensagem assíncrona (sendo nosso gabarito) e a 5 é uma mensagem de destruição. Gabarito: D QUESTÃO 43 FCC - 2013 - DPE-SP - Agente de Defensoria - Analista de Sistemas Em um diagrama de sequência UML 2.0, o símbolo utilizado para denotar uma mensagem perdida é PRODEB PROJ - Engenharia de Software Aula 04 – Parte 01 Vitor Almeida www.tiparaconcursos.net Página 34 de 63 a) b) c) d) e) Comentários: Uma mensagem perdida no diagrama de sequência é representada por uma linha cheia com uma seta no final (mensagem), apontado para um círculo fechado. Gabarito: D QUESTÃO 44 CESGRANRIO - 2012 - Petrobras - Analista de Sistemas Júnior - Processos de Negócios-2012 No Diagrama de Sequência de UML, uma linha de vida (Lifeline) representa a) a troca observável de informação entre elementos. b) a unidade semântica básica de uma interação c) uma comunicação entre objetos. d) um conjunto de objetos com um mesmo comportamento. e) um participante individual da interação Comentários: Uma comunicação entre objetos inclui o envio de uma mensagem por um objeto de origem para um objeto de destino. Daí, com a mensagem chegando no objeto de destino, aparecerá a barra de ativação, a qual vai representar o trabalho de processamento a ser realizado por esse objeto. Por fim, podemos ter uma chamada de retorno, onde o objeto de destino envia uma resposta ao objeto de origem. Temos aqui o fim da barra de ativação. Ou seja, no contexto de troca de informação entre objetos, uma barra de ativação representa a participação de um objeto nessa interação. Gabarito: E QUESTÃO 45 VUNESP - 2013 - FUNDUNESP - Analista Programador Júnior CFA SISTEMAS - Engenharia de Software Aula 05 Vitor Almeida www.tiparaconcursos.net Página 35 de 63 Considere o seguinte trecho de um diagrama de sequência da UML 2.0 acima: Nessa figura, a linha pontilhada representa uma a) ativação. b) interação. c) linha de vida. d) mensagem codificada. e) restrição de tempo. Comentários: A linha pontilhada embaixo de um objeto representa a linha de vida desse objeto. Gabarito: C QUESTÃO 46 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: O fluxo de mensagens em um diagrama de sequência é linear. Ou seja, ficamos acompanhando as trocas de mensagens de forma sequencial: uma depois da outra. Para alterar a lógica linear de um diagrama de sequência, podemos utilizar os fragmentos combinados. Um Fragmento Combinado (ou Fragmento de Interação) consiste em um ou mais operandos de interações, os quais englobam mensagens, objetos ou até outros fragmentos combinados. Ele é representado por um retângulo no diagrama de sequência, com o nome do tipo de fragmento combinado no canto superior esquerdo, como pode ser visto no exemplo a seguir: CFA SISTEMAS - Engenharia de Software Aula 05 Vitor Almeida www.tiparaconcursos.net Página 36 de 63 Nesse diagrama de exemplo, temos: 1. Uma mensagem de criação do objeto da classe Pedido. 2. Um loop (fragmento combinado loop), o qual indica que, enquanto tiver um próximo item (devido à condição de guarda [obter o próximo item]), a mensagem reservar será enviada e o fragmento chamado alt poderá ser executado. 3. O fragmento combinado alt indica que, caso disponível, a mensagem de retorno será adicionar, caso indisponível, a mensagem rejeitar será retornada. 4. Por fim, temos uma mensagem debitar e duas mensagens de retorno, sendo a última responsável pela destruição do objeto da classe Pedido. Veja, então, que, no exemplo, por meio do uso dos dois fragmentos combinados, inserimos um loop e uma estrutura condicional no fluxo linear original esperado para um diagrama de sequência. Compreendido do que se trata um fragmento combinado, vamos aos principais tipos: CFA SISTEMAS - Engenharia de Software Aula 05 Vitor Almeida www.tiparaconcursos.net Página 37 de 63 Opt: Inclui uma sequência que pode ou não acontecer. Você pode especificar a condição sob a qual o que estiver dentro do fragmento combinado ocorre. ALT: Contém uma lista de fragmentos que contêm sequências alternativas de mensagens. Apenas uma sequência ocorre em qualquer ocasião. Loop: O fragmento repete algumas vezes. Você pode indicar a condição sob a qual o loop continuará. Break ou Quebra: Se esse fragmento é executado, o restante da sequência será abandonado. Paralelo ou par: Designa que o fragmento combinado executa uma intercalação entre os operandos ou cenários desenhados no fragmento combinado Região Crítica: Indica que as mensagens nesse fragmento não devem ser intercaladas com outras mensagens. Ref: É uma forma de se referir a outro diagrama de sequência dentro da sequência modelada. Veja o exemplo que cita um diagrama de sequência chamado Emitir Saldo: Com relação à questão, temos que par é o único tipo de fragmento combinado entre as alternativas apresentadas. Gabarito: E QUESTÃO 47 FCC - 2011 - TRT - 4ª REGIÃO (RS) - Analista Judiciário - Tecnologia da Informação Quanto ao controle estruturado nos diagramas de sequência UML, NÃO se enquadra entre os tipos mais comuns, a execução a) opcional. b) condicional. c) paralela. d) de ramificação. e) de loop. CFA SISTEMAS - Engenharia de Software Aula 05 Vitor Almeida www.tiparaconcursos.net Página 38 de 63 Comentários: Para o controle do fluxo do diagrama de sequência, usamos os fragmentos combinados. Daí, como não temos um fragmento combinado de ramificação, nosso gabarito é a alternativa D. Gabarito: D 4. DIAGRAMA DE COMUNICAÇÃO QUESTÃO 48 CESGRANRIO - 2013 - LIQUIGAS - Profissional Júnior - Análise de Sistemas - Tecnologia da Informação Seja o seguinte diagrama UML 2: 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 antigo diagrama de colaboração, que recebeu o seu novo nome (diagrama de comunicação) com a UML 2.0, exibe uma interação, consistindo de um conjunto de objetos e seus relacionamentos, incluindo as mensagens que podem ser trocadas entre eles. Um diagrama de comunicação mostra, de maneira semelhante ao diagrama de sequência, a colaboração dinâmica entre os objetos, ou seja, o fluxo das mensagens entre um objeto e outro. CFA SISTEMAS - Engenharia de Software Aula 05 Vitor Almeida www.tiparaconcursos.net Página 39 de 63 Enquanto o diagrama de sequência prioriza a execução temporal da interação, o diagrama de comunicação se preocupa mais com os aspectos estruturais da troca de mensagens entre objetos. A figura a seguir mostra um diagrama de comunicação: Observe que os objetos estão representados como retângulos e as chamadas de métodos por meio de segmentos de reta direcionados. A ordem em que as mensagens são chamadas é provida por meio de uma numeração ao lado do nome do método. Assim, ao olhar para o diagrama de comunicação de exemplo, podemos dizer que a primeira mensagem é a chamada de solicitarAnaliseCriarConta feita pelo objeto da classe FormularioConta, a seguinte é a autochamada de verificaSeExisteCliente feita peloobjeto da classe Banco e assim sucessivamente. Gabarito: E QUESTÃO 49 FCC - 2011 - TRT - 14ª Região (RO e AC) - Analista Judiciário - Tecnologia da Informação Na UML, é um diagrama de interação que dá ênfase à organização estrutural dos objetos que enviam e recebem mensagens. Ele mostra um conjunto de papéis, as conexões existentes entre estes e as mensagens enviadas e recebidas pelas instâncias que representam os papéis. Trata-se do diagrama de a) sequência. b) atividades. CFA SISTEMAS - Engenharia de Software Aula 05 Vitor Almeida www.tiparaconcursos.net Página 40 de 63 c) comunicação. d) gráfico de estados. e) estrutura composta. Comentários: Se o diagrama de sequência apresenta a troca de mensagens entre objetos, enfatizando a ordem temporal das mensagens, o diagrama de comunicação foca a organização estrutural dos objetos. Gabarito: C QUESTÃO 50 FUMARC - 2011 - BDMG - Analista de Sistemas Analise as seguintes afirmativas sobre os Diagramas de Interação da UML. I. Um Diagrama de Interação mostra a interação entre um conjunto de objetos e seus relacionamentos, incluindo as mensagens que poderão ser trocadas entre eles. II. Diagramas de Sequência e Diagramas de Colaboração são Diagramas de Interação e modelam aspectos dinâmicos de sistemas. III. Diagramas de Colaboração dão ênfase à ordenação temporal das mensagens trocadas entre os objetos. Marque a alternativa CORRETA: a) apenas as afirmativas I e II são verdadeiras. b) apenas as afirmativas I e III são verdadeiras. c) apenas as afirmativas II e III são verdadeiras. d) todas as afirmativas são verdadeiras. Comentários: Temos um erro apenas na afirmativa III, pois os diagramas de comunicação dão ênfase à organização estrutural dos objetos. Gabarito: A QUESTÃO 51 FUNCAB - 2012 - Prefeitura Municipal de Vassouras/RJ - Analista de Sistemas Um dos objetivos do projeto orientado a objetos é definir como os objetos devem colaborar entre si para executar as funções solicitadas pelos usuários. CFA SISTEMAS - Engenharia de Software Aula 05 Vitor Almeida www.tiparaconcursos.net Página 41 de 63 Qual diagrama UML é usado, na etapa de projeto, como ferramenta auxiliar na definição de tais colaborações? A) Diagrama de Classes. B) Diagrama de Atividades. C) Diagrama de Comunicação. D) Diagrama de Componentes. E) Diagrama de Casos de Uso. Comentários: Aqui a questão fala em colaboração entre objetos... praticamente perguntou se o concurseiro sabe o nome anterior do diagrama de comunicação ! Gabarito: C QUESTÃO 52 CAIP-IMES - 2012 - Câmara Municipal de São Caetano do Sul - SP - Analista de Tecnologia da Informação Arquitetos de software usam a UML (Unified Modeling Language) para auxiliar no desenvolvimento e construção de um software. Na UML, o diagrama de __________________ fornece a indicação da ordem temporal das comunicações, mas dá ênfase às relações entre os objetos e classes em vez da ordem temporal. a) coesão b) comunicação c) atividade d) estado Comentários: Ainda que a ênfase do diagrama de comunicação seja a organização estrutural dos objetos, temos também a representação do tempo nesse diagrama, por meio da numeração ao lado das mensagens. Gabarito: B QUESTÃO 53 FCC - 2011 - INFRAERO - Analista de Sistemas - Arquitetura de Software No diagrama de colaboração da UML (2.0), as linhas cheias que ligam os objetos e as setas de pontas cheias representam, respectivamente, a) vínculo e dependência. b) vínculo e mensagem. c) mensagem e dependência. d) mensagem e vínculo. e) dependência e vínculo. CFA SISTEMAS - Engenharia de Software Aula 05 Vitor Almeida www.tiparaconcursos.net Página 42 de 63 Comentários: Um vínculo é representado por uma linha cheia entre dois objetos. Ele indica que esses objetos podem trocar mensagens entre si. A seta com ponta representa uma mensagem trocada entre esses objetos. Gabarito: B 5. Lista das Questões Utilizadas na Aula. QUESTÃO 01 FCC - 2012 - TRT - 6ª Região (PE) - Técnico Judiciário - Tecnologia da Informação Considere a figura: Na UML, este é um diagrama de a) Classe. b) Sequência. c) Caso de Uso. d) Objetos. e) Comunicação. QUESTÃO 02 FUNCAB - 2012 - Prefeitura Municipal de Armação dos Búzios/RJ - Analista de Sistemas Superior Na UML, o diagrama que é utilizado após o levantamento de requisitos junto ao usuário visando documentar as funcionalidades do sistema, é conhecido como diagrama de: A) caso de uso. B) comunicação. C) implementação. D) componentes. E) pacotes. QUESTÃO 03 CESGRANRIO - 2014 - EPE - Analista de Gestão Corporativa - Tecnologia da 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 CFA SISTEMAS - Engenharia de Software Aula 05 Vitor Almeida www.tiparaconcursos.net Página 43 de 63 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 QUESTÃO 04 CETRO - 2013 - ANVISA - Analista Administrativo - Área 5 Assinale a alternativa que apresenta o principal diagrama da UML na análise de requisito. a) Objetos. b) Interação. c) Comunicação. d) Tempo. e) Diagramas de casos de uso. QUESTÃO 05 FCC - 2011 - INFRAERO - Analista de Sistemas - Desenvolvimento e Manutenção 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. QUESTÃO 06 COPEVE-UFAL - 2011 - UFAL - Analista de Tecnologia da Informação Em termos de documentação de software, o diagrama UML mais recomendado para documentar requisitos funcionais e as dependências entre eles é o a) diagrama entidade-relacionamento. b) diagrama de classes. c) diagrama de fluxo de dados. d) diagrama de casos de uso. e) diagrama de implantação. QUESTÃO 07 FCC - 2011 - TRT - 23ª REGIÃO (MT) - Técnico Judiciário - Tecnologia da Informação CFA SISTEMAS - Engenharia de Software Aula 05 Vitor Almeida www.tiparaconcursos.net Página 44 de 63 Em UML NÃO é característica de Use Case: a) modelar o diálogo entre atores e o sistema. b) descrever as comunicações necessárias entre objetos para a realização dos processos em um sistema computacional. c) ser iniciado por um ator para invocar uma certa funcionalidade do sistema. d) constituir-se em um fluxo de eventos completo e consistente. e) representar todas as situações possíveis de utilização do sistema, através do conjunto de todos os Use Case. QUESTÃO 08 CAIP-IMES - 2012 - Câmara Municipal de São Caetano do Sul - SP - Analista de Tecnologia da Informação A UML (Unified Modeling Language) é uma linguagem padrão para descrever/documentar projetos de software. Nesta linguagem, os diagramas de __________________ ajudam a determinar a funcionalidade e as características do software sob o ponto de vista do usuário. a) atividade b) estado c) casos de uso d) componentes QUESTÃO 09 FUNCAB - 2014 - MDA - Administrador de Banco de Dados A UML (UnifiedModeling Language) permite realizar a modelagem comportamental, funcional e dinâmica com a disponibilização de vários tipos de diagramas. O diagrama que é utilizado para modelar as interações funcionais entre os usuários e o sistema é denominado: a) componentes. b) pacotes. c) implantação d) caso de uso. e) interação. QUESTÃO 10 VUNESP - 2013 - UFABC - Analista de Tecnologia da Informação Considerando a UML 2.0, a notação utilizada para um caso de uso é: CFA SISTEMAS - Engenharia de Software Aula 05 Vitor Almeida www.tiparaconcursos.net Página 45 de 63 QUESTÃO 11 FUNCAB - 2014 – SESACRE - Analista de Sistemas No diagrama de casos de uso, as pessoas ou entidades externas que integram, interagem ou desempenham algum papel no sistema, são conhecidas como: A) casos de uso. B) objetos. C) mensagens. D) classes. E) atores. QUESTÃO 12 FCC - 2014 - TRT - 1ª REGIÃO (RJ) - Analista Judiciário - Tecnologia da Informação 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) só pode haver representado um único caso de uso. b) um ator pode ser representado pelo “stick man” ou por um retângulo com a expressão << actor >>. c) um ator pode ser representado apenas pelo símbolo do “stick man”. d) só pode haver representado um único ator. e) o número de atores e de casos de uso sempre deve ser o mesmo. QUESTÃO 13 FUMARC - 2014 - AL-MG - Analista de Sistemas - Desenvolvimento Analise as seguintes afirmativas sobre o Diagrama de Casos de Uso da UML. I. Um relacionamento estendido entre casos de uso significa que o caso de uso base incorpora implicitamente, sob alguma condição, o comportamento de outro caso de uso. CFA SISTEMAS - Engenharia de Software Aula 05 Vitor Almeida www.tiparaconcursos.net Página 46 de 63 II. Um relacionamento de inclusão entre casos de uso significa que o caso de uso base incorpora explicitamente o comportamento de outro caso de uso. III. Relacionamentos de inclusão e extensão são representados pela mesma notação do relacionamento de dependência, com a seta apontada para o caso de uso base. Estão CORRETAS as afirmativas: a) I e II, apenas. b) I e III, apenas. c) II e III, apenas. d) I, II e III. QUESTÃO 14 CESGRANRIO - 2011 - FINEP - Analista - Desenvolvimento de Sistemas Durante o levantamento de um sistema, um analista registrou o seguinte requisito funcional: “A função de efetivação de uma compra deverá exigir que o cliente se identifique novamente para o sistema, caso o valor da transação ultrapasse o limite de crédito definido pela gerência.” A partir desta declaração, o analista elaborou o diagrama de casos de uso UML 2.3 abaixo. Qual deve ser o estereótipo da relação entre os casos de uso Efetiva Compra e Identifica Cliente, de modo que esse diagrama expresse o requisito funcional descrito anteriormente? a) extend b) include c) inherits d) implements e) overrides QUESTÃO 15 FUNCAB - 2013 - CODATA - Analista de Informática - Desenvolvimento de Sistemas Uma empresa deseja comercializar jogos através de um aplicativo para dispositivos móveis. Para tal, ele terá que atender os seguintes requisitos: As compras serão pagas através de um sistema de pagamento seguro (SPS). A comunicação entre o aplicativo em questão e o sistema da empresa de pagamento será feita através de um serviço Web disponibilizado pela empresa de pagamento. CFA SISTEMAS - Engenharia de Software Aula 05 Vitor Almeida www.tiparaconcursos.net Página 47 de 63 O usuário poderá fazer buscas por jogos utilizando vários tipos de filtros. Os downloads serão inicializados tão logo a empresa de pagamento seguro confirme o pagamento. Qual diagrama de casos de uso UML descreve de maneira adequada os requisitos funcionais desse aplicativo? QUESTÃO 16 FCC - 2011 - TRE-AP - Analista Judiciário - 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. CFA SISTEMAS - Engenharia de Software Aula 05 Vitor Almeida www.tiparaconcursos.net Página 48 de 63 QUESTÃO 17 VUNESP - 2014 - Câmara Municipal de São José dos Campos - SP - Analista Legislativo - Analista de Sistemas Deseja-se representar, em um diagrama de casos de uso da UML, a seguinte situação: o ator B herda as propriedades do ator A. A forma correta de representação é a) b) c) d) e) CFA SISTEMAS - Engenharia de Software Aula 05 Vitor Almeida www.tiparaconcursos.net Página 49 de 63 QUESTÃO 18 VUNESP - 2012 - FAMERP - Analista de Serviço Administrativo - Tecnologia da Informação (Analista Programador) Considere o seguinte trecho de um diagrama de casos de uso, feito com a UML 2.0. Esse diagrama indica a seguinte operação entre os dois atores: (A) atividade. (B) generalização. (C) interrupção. (D) inclusão. (E) repartição. QUESTÃO 19 FEPESE - 2012 - FATMA - Analista Técnico de Gestão Ambiental - Classe IV - Analista de Informática Considere o diagrama de caso de uso da UML abaixo: Com base no diagrama, analise as afirmações abaixo: 1. Decorrente do relacionamento de generalização entre os atores, o ator Coordenador executa uma tarefa comum com o ator Vendedor que é manter o pedido e atualizar o cadastro do cliente. 2. Decorrente do relacionamento de generalização entre os atores, o ator Vendedor executa uma tarefa comum com o ator Coordenador que é emitir relatório de vendas. 3. O relacionamento <<extend>> entre os casos de usos define que o caso de uso Manter pedido pode, eventualmente, invocar o caso de uso Atualizar cadastro cliente. 4. O relacionamento entre o ator Coordenador com o caso de uso Emitir relatório de vendas é do tipo associação. Assinale a alternativa que indica todas as afirmativas corretas. CFA SISTEMAS - Engenharia de Software Aula 05 Vitor Almeida www.tiparaconcursos.net Página 50 de 63 a) É correta apenas a afirmativa 2. b) São corretas apenas as afirmativas 1 e 4. c) São corretas apenas as afirmativas 2 e 3. d) São corretas apenas as afirmativas 3 e 4. e) São corretas apenas as afirmativas 1, 3 e 4. QUESTÃO 20 FUMARC - 2011 - BDMG - Analista de Sistemas São elementos que podem estar presentes em um Diagrama de Casos de Uso da UML, EXCETO: a) Ator. b) Assunto. c) Relacionamento de generalização. d) Objeto. QUESTÃO 21 FCC - 2013 - MPE-MA - Analista Ministerial - Teste e Qualidade de Software 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. 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
Compartilhar