·
Sistemas de Informação ·
Engenharia de Software
Envie sua pergunta para a IA e receba a resposta na hora

Prefere sua atividade resolvida por um tutor especialista?
- Receba resolvida até o seu prazo
- Converse com o tutor pelo chat
- Garantia de 7 dias contra erros
Recomendado para você
30
Padrões de Projeto Eds
Engenharia de Software
UFF
16
Linhas de Produto de Software - Eds
Engenharia de Software
UFF
33
Arquitetura de Sw - Eds
Engenharia de Software
UFF
16
Frameworks - Eds
Engenharia de Software
UFF
74
Arquitetura de Software: Estruturas e Componentes em Sistemas de Software
Engenharia de Software
PUC
10
Documento de Especificação de Requisitos do ServiceFinder
Engenharia de Software
IFNMG
Texto de pré-visualização
11/05/2022 1 Técnicas de Identificação de Elementos CLASSES Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 2 Técnicas de Identificação Várias técnicas (de uso não exclusivo) são usadas para identificar classes: 1. Categorias de Conceitos 2. Análise Textual de Abbott (Abbot Textual Analysis) 3. Análise de Casos de Uso – Categorização BCE 4. Padrões de Análise (Analisys Patterns) 5. Identificação Dirigida a Responsabilidades 1 2 11/05/2022 2 Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 3 Categorias de Conceitos Estratégia: usar uma lista de conceitos comuns. ◦ Conceitos concretos . Por exemplo, edifícios, carros, salas de aula, etc. ◦ Papéis desempenhados por seres humanos. Por exemplo, professores, alunos, empregados, clientes, etc. ◦ Eventos, ou seja, ocorrências em uma data e em uma hora particulares. Por exemplo, reuniões, pedidos, aterrisagens, aulas, etc. ◦ Lugares: áreas reservadas para pessoas ou coisas. Por exemplo: escritórios, filiais, locais de pouso, salas de aula, etc. ◦ Organizações: coleções de pessoas ou de recursos. Por exemplo: departamentos, projetos, campanhas, turmas, etc. ◦ Conceitos abstratos : princípios ou idéias não tangíveis. Por exemplo: reservas, vendas, inscrições, etc. Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 4 Análise Textual de Abbott Estratégia: identificar termos da narrativa de casos de uso e documento de requisitos que podem sugerir classes, atributos, operações. Neste técnica, são utilizadas diversas fontes de informação sobre o sistema: documento e requisitos, modelos do negócio, glossários, conhecimento sobre o domínio, etc. Para cada um desses documentos, os nomes (substantivos e adjetivos) que aparecem no mesmo são destacados. (São também consideradas locuções equivalentes a substantivos.) Após isso, os sinônimos são removidos (permanecem os nomes mais significativos para o domínio do negócio em questão). 3 4 11/05/2022 3 Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 5 Análise Textual de Abbott (cont.) Cada termo remanescente se encaixa em uma das situações a seguir: ◦ O termo se torna uma classe (ou seja, são classes candidatas); ◦ O termo se torna um atributo; ◦ O termo não tem relevância alguma com ao SSOO. Abbott também preconiza o uso de sua técnica na identificação de operações e de associações. ◦ Para isso, ele sugere que destaquemos os verbos no texto. ◦ Verbos de ação (e.g., calcular, confirmar, cancelar, comprar, fechar, estimar, depositar, sacar, etc.) são operações em potencial. ◦ Verbos com sentido de “ter” são potenciais agregações ou composições. ◦ Verbos com sentido de “ser” são generalizações em potencial. ◦ Demais verbos são associações em potencial. Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 6 Análise Textual de Abbott (cont.) A ATA é de aplicação bastante simples. No entanto, uma desvantagem é que seu resultado (as classes candidatas identificadas) depende de os documentos utilizados como fonte serem completos. ◦ Dependendo do estilo que foi utilizado para escrever esse documento, essa técnica pode levar à identificação de diversas classes candidatas que não gerarão classes. ◦ A análise do texto de um documento pode não deixar explícita uma classe importante para o sistema. ◦ Em linguagem natural, as variações lingüísticas e as formas de expressar uma mesma idéia são bastante numerosas. 5 6 11/05/2022 4 Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 7 Análise de Casos de Uso Essa técnica é também chamada de identificação dirigida por casos de uso, e é um caso particular da ATA. Técnica preconizada pelo Processo Unificado. Nesta técnica, o MCU é utilizado como ponto de partida. ◦ Premissa: um caso de uso corresponde a um comportamento específico do SSOO. Esse comportamento somente pode ser produzido por objetos que compõem o sistema. ◦ Em outras palavras, a realização de um caso de uso é responsabilidade de um conjunto de objetos que devem colaborar para produzir o resultado daquele caso de uso. ◦ Com base nisso, o modelador aplica a técnica de análise dos casos de uso para identificar as classes necessárias à produção do comportamento que está documentado na descrição do caso de uso. Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 8 Análise de Casos de Uso Procedimento de aplicação: ◦ O modelador estuda a descrição textual de cada caso de uso para identificar classes candidatas. ◦ Para cada caso de uso, o texto (fluxos principal, alternativos e de exceção, pós-condições e pré-condições, etc.) é analisado. ◦ Na análise de certo caso de uso, o modelador tenta identificar classes que possam fornecer o comportamento do mesmo. ◦ Na medida em que os casos de uso são analisados um a um, as classes do SSOO são identificadas. ◦ Quando todos os casos de uso tiverem sido analisados, todas as classes (ou pelo menos a grande maioria delas) terão sido identificadas. Na aplicação deste procedimento, podemos utilizar as categorização BCE ... 7 8 11/05/2022 5 Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 9 Categorização BCE Na categorização BCE, os objetos de um SSOO são agrupados de acordo com o tipo de responsabilidade a eles atribuída. ◦ objetos de entidade: usualmente objetos do domínio do problema ◦ objetos de fronteira: atores interagem com esses objetos ◦ objetos de controle: servem como intermediários entre objetos de fronteira e de entidade, definindo o comportamento de um caso de uso específico. Categorização proposta por Ivar Jacobson em1992. ◦ Possui correspondência (mas não equivalência!) com o framework model-view-controller (MVC) ◦ Ligação entre análise (o que; problema) e projeto (como; solução) Estereótipos na UML: «boundary», «entity», «control» Os estereótipos são um dos três mecanismos de extensibilidade da UML. Eles dão mais poder à UML, permitindo classificar elementos "com algo em comum". Por exemplo, ao modelar uma rede pode ser necessário ter símbolos para representar roteadores e hubs. Ao fazer isso você estará estereotipando um elemento, visto que todos os hubs terão o mesmo simbolo. PRINCÍPIOS DE ANÁLISE E PROJETO DE SISTEMAS COM UML - 2ª EDIÇÃO 10 Objetos de Entidade Repositório para informações e as regras de negócio manipuladas pelo sistema. ◦ Representam conceitos do domínio do negócio. Características ◦ Normalmente armazenam informações persistentes. ◦ Várias instâncias da mesma entidade existindo no sistema. ◦ Participam de vários casos de uso e têm ciclo de vida longo. Exemplo: ◦ Um objeto Pedido participa dos casos de uso Realizar Pedido e Atualizar Estoque. Este objeto pode existir por diversos anos ou mesmo tanto quanto o próprio sistema. 9 10 11/05/2022 6 PRINCÍPIOS DE ANÁLISE E PROJETO DE SISTEMAS COM UML - 2ª EDIÇÃO 11 Objetos de Fronteira Realizam a comunicação do sistema com os atores. ◦ traduzem os eventos gerados por um ator em eventos relevantes ao sistema → eventos de sistema. ◦ também são responsáveis por apresentar os resultados de uma interação dos objetos em algo inteligível pelo ator. Existem para que o sistema se comunique com o mundo exterior. ◦ Por conseqüência, são altamente dependentes do ambiente. Há dois tipos principais de objetos de fronteira: ◦ Os que se comunicam com o usuário (atores humanos): relatórios, páginas HTML, interfaces gráfica desktop, etc. ◦ Os que se comunicam com atores não-humanos (outros sistemas ou dispositivos): protocolos de comunicação. PRINCÍPIOS DE ANÁLISE E PROJETO DE SISTEMAS COM UML - 2ª EDIÇÃO 12 Objetos de Controle São a “ponte de comunicação” entre objetos de fronteira e objetos de entidade. Responsáveis por controlar a lógica de execução correspondente a um caso de uso. Decidem o que o sistema deve fazer quando um evento de sistema ocorre. ◦ Eles realizam o controle do processamento ◦ Agem como gerentes (coordenadores, controladores) dos outros objetos para a realização de um caso de uso. Traduzem eventos de sistema em operações que devem ser realizadas pelos demais objetos. 11 12 11/05/2022 7 Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 13 Importância da Categorização BCE A categorização BCE parte do princípio de que cada objeto em um SSOO é especialista em realizar um de três tipos de tarefa, a saber: ◦ se comunicar com atores (fronteira), ◦ manter as informações (entidade) ou ◦ coordenar a realização de um caso de uso (controle). A categorização BCE é uma “receita de bolo” para identificar objetos participantes da realização de um caso de uso. A importância dessa categorização está relacionada à capacidade de adaptação a eventuais mudanças. ◦ Se cada objeto tem atribuições específicas dentro do sistema, mudanças podem ser menos complexas e mais localizadas. ◦ Uma modificação em uma parte do sistema tem menos possibilidades de resultar em mudanças em outras partes. Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 14 Visões de Classes Participantes Uma Visão de Classes Participantes (VCP) é um diagrama das classes cujos objetos participam da realização de determinado caso de uso. ◦ É uma recomendação do UP (Unified Process). UP: “definir uma VCP por caso de uso” ◦ Termo original: View Of Participating Classes (VOPC). Em uma VCP, são representados objetos de fronteira, de entidade e de controle para um caso de uso particular. Uma VCP é definida através da utilização da categorização BCE previamente descrita...vide próximo slide. 13 14 11/05/2022 8 Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 15 Estrutura de uma VCP «entidade» «entidade» «entidade» «controle» «fronteira» Uma VCP representa a estrutura das classes que participam da realização de um caso de uso em particular. Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 16 Construção de uma VCP Para cada caso de uso: ◦ Adicione uma fronteira para cada elemento de interface gráfica principal, tais com uma tela (formulário) ou relatório. ◦ Adicione uma fronteira para cada ator não-humano (por exemplo, outro sistema). ◦ Adicione um ou mais controladores para gerenciar o processo de realização do caso de uso. ◦ Adicione uma entidade para cada conceito do negócio. ◦ Esses objetos são originários do modelo conceitual. Os estereótipos gráficos definidos pela UML podem ser utilizados. 15 16 11/05/2022 9 Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 17 VCP (exemplo) – Realizar Inscrição Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 18 Regras Estruturais em uma VCP Durante a fase de análise, use as regras a seguir para definir a VCP para um caso de uso. ◦ Atores somente podem interagir com objetos de fronteira. ◦ Objetos de fronteira somente podem interagir com controladores e atores. ◦ Objetos de entidade somente podem interagir (receber requisições) com controladores. ◦ Controladores somente podem interagir com objetos de fronteira e objetos de entidade, e com (eventuais) outros controladores. 17 18
Envie sua pergunta para a IA e receba a resposta na hora
Recomendado para você
30
Padrões de Projeto Eds
Engenharia de Software
UFF
16
Linhas de Produto de Software - Eds
Engenharia de Software
UFF
33
Arquitetura de Sw - Eds
Engenharia de Software
UFF
16
Frameworks - Eds
Engenharia de Software
UFF
74
Arquitetura de Software: Estruturas e Componentes em Sistemas de Software
Engenharia de Software
PUC
10
Documento de Especificação de Requisitos do ServiceFinder
Engenharia de Software
IFNMG
Texto de pré-visualização
11/05/2022 1 Técnicas de Identificação de Elementos CLASSES Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 2 Técnicas de Identificação Várias técnicas (de uso não exclusivo) são usadas para identificar classes: 1. Categorias de Conceitos 2. Análise Textual de Abbott (Abbot Textual Analysis) 3. Análise de Casos de Uso – Categorização BCE 4. Padrões de Análise (Analisys Patterns) 5. Identificação Dirigida a Responsabilidades 1 2 11/05/2022 2 Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 3 Categorias de Conceitos Estratégia: usar uma lista de conceitos comuns. ◦ Conceitos concretos . Por exemplo, edifícios, carros, salas de aula, etc. ◦ Papéis desempenhados por seres humanos. Por exemplo, professores, alunos, empregados, clientes, etc. ◦ Eventos, ou seja, ocorrências em uma data e em uma hora particulares. Por exemplo, reuniões, pedidos, aterrisagens, aulas, etc. ◦ Lugares: áreas reservadas para pessoas ou coisas. Por exemplo: escritórios, filiais, locais de pouso, salas de aula, etc. ◦ Organizações: coleções de pessoas ou de recursos. Por exemplo: departamentos, projetos, campanhas, turmas, etc. ◦ Conceitos abstratos : princípios ou idéias não tangíveis. Por exemplo: reservas, vendas, inscrições, etc. Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 4 Análise Textual de Abbott Estratégia: identificar termos da narrativa de casos de uso e documento de requisitos que podem sugerir classes, atributos, operações. Neste técnica, são utilizadas diversas fontes de informação sobre o sistema: documento e requisitos, modelos do negócio, glossários, conhecimento sobre o domínio, etc. Para cada um desses documentos, os nomes (substantivos e adjetivos) que aparecem no mesmo são destacados. (São também consideradas locuções equivalentes a substantivos.) Após isso, os sinônimos são removidos (permanecem os nomes mais significativos para o domínio do negócio em questão). 3 4 11/05/2022 3 Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 5 Análise Textual de Abbott (cont.) Cada termo remanescente se encaixa em uma das situações a seguir: ◦ O termo se torna uma classe (ou seja, são classes candidatas); ◦ O termo se torna um atributo; ◦ O termo não tem relevância alguma com ao SSOO. Abbott também preconiza o uso de sua técnica na identificação de operações e de associações. ◦ Para isso, ele sugere que destaquemos os verbos no texto. ◦ Verbos de ação (e.g., calcular, confirmar, cancelar, comprar, fechar, estimar, depositar, sacar, etc.) são operações em potencial. ◦ Verbos com sentido de “ter” são potenciais agregações ou composições. ◦ Verbos com sentido de “ser” são generalizações em potencial. ◦ Demais verbos são associações em potencial. Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 6 Análise Textual de Abbott (cont.) A ATA é de aplicação bastante simples. No entanto, uma desvantagem é que seu resultado (as classes candidatas identificadas) depende de os documentos utilizados como fonte serem completos. ◦ Dependendo do estilo que foi utilizado para escrever esse documento, essa técnica pode levar à identificação de diversas classes candidatas que não gerarão classes. ◦ A análise do texto de um documento pode não deixar explícita uma classe importante para o sistema. ◦ Em linguagem natural, as variações lingüísticas e as formas de expressar uma mesma idéia são bastante numerosas. 5 6 11/05/2022 4 Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 7 Análise de Casos de Uso Essa técnica é também chamada de identificação dirigida por casos de uso, e é um caso particular da ATA. Técnica preconizada pelo Processo Unificado. Nesta técnica, o MCU é utilizado como ponto de partida. ◦ Premissa: um caso de uso corresponde a um comportamento específico do SSOO. Esse comportamento somente pode ser produzido por objetos que compõem o sistema. ◦ Em outras palavras, a realização de um caso de uso é responsabilidade de um conjunto de objetos que devem colaborar para produzir o resultado daquele caso de uso. ◦ Com base nisso, o modelador aplica a técnica de análise dos casos de uso para identificar as classes necessárias à produção do comportamento que está documentado na descrição do caso de uso. Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 8 Análise de Casos de Uso Procedimento de aplicação: ◦ O modelador estuda a descrição textual de cada caso de uso para identificar classes candidatas. ◦ Para cada caso de uso, o texto (fluxos principal, alternativos e de exceção, pós-condições e pré-condições, etc.) é analisado. ◦ Na análise de certo caso de uso, o modelador tenta identificar classes que possam fornecer o comportamento do mesmo. ◦ Na medida em que os casos de uso são analisados um a um, as classes do SSOO são identificadas. ◦ Quando todos os casos de uso tiverem sido analisados, todas as classes (ou pelo menos a grande maioria delas) terão sido identificadas. Na aplicação deste procedimento, podemos utilizar as categorização BCE ... 7 8 11/05/2022 5 Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 9 Categorização BCE Na categorização BCE, os objetos de um SSOO são agrupados de acordo com o tipo de responsabilidade a eles atribuída. ◦ objetos de entidade: usualmente objetos do domínio do problema ◦ objetos de fronteira: atores interagem com esses objetos ◦ objetos de controle: servem como intermediários entre objetos de fronteira e de entidade, definindo o comportamento de um caso de uso específico. Categorização proposta por Ivar Jacobson em1992. ◦ Possui correspondência (mas não equivalência!) com o framework model-view-controller (MVC) ◦ Ligação entre análise (o que; problema) e projeto (como; solução) Estereótipos na UML: «boundary», «entity», «control» Os estereótipos são um dos três mecanismos de extensibilidade da UML. Eles dão mais poder à UML, permitindo classificar elementos "com algo em comum". Por exemplo, ao modelar uma rede pode ser necessário ter símbolos para representar roteadores e hubs. Ao fazer isso você estará estereotipando um elemento, visto que todos os hubs terão o mesmo simbolo. PRINCÍPIOS DE ANÁLISE E PROJETO DE SISTEMAS COM UML - 2ª EDIÇÃO 10 Objetos de Entidade Repositório para informações e as regras de negócio manipuladas pelo sistema. ◦ Representam conceitos do domínio do negócio. Características ◦ Normalmente armazenam informações persistentes. ◦ Várias instâncias da mesma entidade existindo no sistema. ◦ Participam de vários casos de uso e têm ciclo de vida longo. Exemplo: ◦ Um objeto Pedido participa dos casos de uso Realizar Pedido e Atualizar Estoque. Este objeto pode existir por diversos anos ou mesmo tanto quanto o próprio sistema. 9 10 11/05/2022 6 PRINCÍPIOS DE ANÁLISE E PROJETO DE SISTEMAS COM UML - 2ª EDIÇÃO 11 Objetos de Fronteira Realizam a comunicação do sistema com os atores. ◦ traduzem os eventos gerados por um ator em eventos relevantes ao sistema → eventos de sistema. ◦ também são responsáveis por apresentar os resultados de uma interação dos objetos em algo inteligível pelo ator. Existem para que o sistema se comunique com o mundo exterior. ◦ Por conseqüência, são altamente dependentes do ambiente. Há dois tipos principais de objetos de fronteira: ◦ Os que se comunicam com o usuário (atores humanos): relatórios, páginas HTML, interfaces gráfica desktop, etc. ◦ Os que se comunicam com atores não-humanos (outros sistemas ou dispositivos): protocolos de comunicação. PRINCÍPIOS DE ANÁLISE E PROJETO DE SISTEMAS COM UML - 2ª EDIÇÃO 12 Objetos de Controle São a “ponte de comunicação” entre objetos de fronteira e objetos de entidade. Responsáveis por controlar a lógica de execução correspondente a um caso de uso. Decidem o que o sistema deve fazer quando um evento de sistema ocorre. ◦ Eles realizam o controle do processamento ◦ Agem como gerentes (coordenadores, controladores) dos outros objetos para a realização de um caso de uso. Traduzem eventos de sistema em operações que devem ser realizadas pelos demais objetos. 11 12 11/05/2022 7 Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 13 Importância da Categorização BCE A categorização BCE parte do princípio de que cada objeto em um SSOO é especialista em realizar um de três tipos de tarefa, a saber: ◦ se comunicar com atores (fronteira), ◦ manter as informações (entidade) ou ◦ coordenar a realização de um caso de uso (controle). A categorização BCE é uma “receita de bolo” para identificar objetos participantes da realização de um caso de uso. A importância dessa categorização está relacionada à capacidade de adaptação a eventuais mudanças. ◦ Se cada objeto tem atribuições específicas dentro do sistema, mudanças podem ser menos complexas e mais localizadas. ◦ Uma modificação em uma parte do sistema tem menos possibilidades de resultar em mudanças em outras partes. Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 14 Visões de Classes Participantes Uma Visão de Classes Participantes (VCP) é um diagrama das classes cujos objetos participam da realização de determinado caso de uso. ◦ É uma recomendação do UP (Unified Process). UP: “definir uma VCP por caso de uso” ◦ Termo original: View Of Participating Classes (VOPC). Em uma VCP, são representados objetos de fronteira, de entidade e de controle para um caso de uso particular. Uma VCP é definida através da utilização da categorização BCE previamente descrita...vide próximo slide. 13 14 11/05/2022 8 Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 15 Estrutura de uma VCP «entidade» «entidade» «entidade» «controle» «fronteira» Uma VCP representa a estrutura das classes que participam da realização de um caso de uso em particular. Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 16 Construção de uma VCP Para cada caso de uso: ◦ Adicione uma fronteira para cada elemento de interface gráfica principal, tais com uma tela (formulário) ou relatório. ◦ Adicione uma fronteira para cada ator não-humano (por exemplo, outro sistema). ◦ Adicione um ou mais controladores para gerenciar o processo de realização do caso de uso. ◦ Adicione uma entidade para cada conceito do negócio. ◦ Esses objetos são originários do modelo conceitual. Os estereótipos gráficos definidos pela UML podem ser utilizados. 15 16 11/05/2022 9 Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 17 VCP (exemplo) – Realizar Inscrição Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 18 Regras Estruturais em uma VCP Durante a fase de análise, use as regras a seguir para definir a VCP para um caso de uso. ◦ Atores somente podem interagir com objetos de fronteira. ◦ Objetos de fronteira somente podem interagir com controladores e atores. ◦ Objetos de entidade somente podem interagir (receber requisições) com controladores. ◦ Controladores somente podem interagir com objetos de fronteira e objetos de entidade, e com (eventuais) outros controladores. 17 18