UML – Unified Modeling Language Treinamento de Formação Cinq Technologies Outubro/2000 Treinamento Objetivos Disseminar a metodologia/Processo de desenvolvimento para todos os integrantes da equipe técnica da Cinq Technologies; Capacitar os profissionais de desenvolvimento nas novas técnicas e métodos de trabalho de desenvolvimento de sistemas; O que é UML? É uma notação padronizada; É uma linguagem padrão para especificar, visualizar documentar, construção de protótipos; Pode ser utilizada em todo o ciclo de desenvolvimento de sistemas; Pode ser utilizada com diferentes tecnologias de implementação; UML é uma linguagem de modelagem, não é uma metodologia UML O que é UML Baseada em Modelos. Modelo é a descrição de alguma coisa. Os analistas devem criar um modelo que descreva todos os diferentes aspectos do sistema a ser desenvolvido. O modelo possui visões, onde cada um descreve um aspecto específico do sistema. Cada fase do desenvolvimento adiciona detalhes aos modelos. Versão atual = 1.3 Objetivos da UML Propor uma linguagem de modelagem visual consistente e pronta para uso, através de : Visualização Controle e gerenciamento da complexidade Padrão de comunicação Propor independência quanto a linguagens ou processos de desenvolvimento de sistemas; Propor uma notação padrão; Fomentar o mercado de ferramentas O.O.; Prover mecanismos para sistemas complexos; Integração das melhores práticas. UML - Como pode ser usada Demonstrar as fronteiras e abrangência dos sistemas Identificar as principais funções(atores/casos de uso) Demonstrar as interações do sistemas (Diag. Interação) Representar a estrutura estática do sistema (Diag. Classes) Representar a estrutura dinâmica do sistema (Diag. Transição estados) Identificar a arquitetura física do sistema (Diag. Componentes) Ocultar as funcionalidades (Estereótipos) Histórico da UML 1994 - Grady Booch e James Rumbaugh da Rational Software Corporation começaram os trabalhos no desenvolvimento da UML. 1995 - Ivar Jacobson (OOSE e Objectory) se junta no desenvolvimento da UML. 1996 - Criado UML Partners consortium Janeiro/1997 - Versão 1.0 é apresentado à comunidade OO. Estão incluídos conceitos de outras metodologias além das do Booch, OMT e OOSE. Final de 1997 - UML 1.1 é apresentada aos membros da OMG e aprovada/adotada como padrão. Ciclo de Vida Metodologia Cinq Technologies Ciclo de Vida A Metodologia da Cinq Technologies se divide em seis fases que operam na filosofia Espiral. Nessa abordagem espiral, cada fase contempla o refinamento natural dos produtos da fase anterior. Portanto, durante a fase do Projeto, os diagramas de Análise são refinados com novos detalhes. Da mesma forma, durante as demais fases. Metodologia Cinq Technologies Ciclo de Vida - Fases Plano de Desenvolvimento Levantamento de requisitos (Fase Nova) Análise Projeto Codificação Validação Aceitação/implantação/Treinamento Manutenção Plano de Desenvolvimento Metodologia Cinq Technologies Plano de Desenvolvimento Objetivos • • • • • • Identificar as premissas básicas do negócio a ser desenvolvido; Identificar equipe, papeis, responsabilidades entre cliente e Cinq. Delimitar o escopo e contexto do sistema, identificando as tarefas, estabelecendo prazos; Descrever atividades, problemas Acompanhar o desenvolvimento do sistema; Medir resultados do sistema; Antecipar problemas e soluções; Metodologia Cinq Technologies Plano de Desenvolvimento Porque usar • Planejar um sistema, significa que muitas situações e ações podem ser antecipadas. • Planejar um sistema significa registrar e formalizar todas as decisões gerais, técnicas e administrativas sobre o sistema. • O planejamento do sistema é um instrumento valioso de acompanhamento (Cliente e Cinq Technologies) Metodologia Cinq Technologies Planejamento de Sistemas Responsáveis pela fase Responsável pelo projeto/Coordenador/ Gerente/ Líder do Projeto (Cinq Technologies). Documentos de Apoio Anexo Técnico Contrato Produtos da fase Plano de Desenvolvimento Registrado Sistema da Qualidade Descritivo Técnico Atas de Reuniões. Metodologia Cinq Technologies Plano de Desenvolvimento Técnicas Utilizar o Procedimento 5.4-01 Metodologia Cinq Technologies Plano de Desenvolvimento Estudo de Caso Realizar o plano de desenvolvimento do estudo de Caso. Levantamento de Requisitos (Fase a ser incluída ) Metodologia Cinq Technologies Levantamento de requisitos Objetivos A fase de levantamento de requisitos é onde se identifica e se descreve as principais necessidades de um negócio, sob o ponto de vista dos usuários ou clientes. O principal objetivo é identificar as principais funcionalidades do negócio sem preocupações com os detalhes (Abstração). Metodologia Cinq Technologies Levantamento de requisitos Por que usar A fase de levantamento de requisitos é essencial e de suma importância para o desenvolvimento de sistemas, pois as responsabilidades e funcionalidades estarão descritas neste momento. Esta fase é tratada normalmente de uma maneira informal. Consequentemente, pouca documentação é gerada. É importante salientar que as demais fases do desenvolvimento dependerão dos requisitos identificados nesse momento. Metodologia Cinq Technologies Levantamento de requisitos Responsáveis pela fase Analista(s) do Sistema. Produtos da fase Diagrama de Uses Cases com toda a documentação requerida; Diagrama de Pacotes Lógicos; Documentação de Use Cases; Atas de Reuniões. Metodologia Cinq Technologies Levantamento de requisitos Técnicas - Pacotes lógicos Introdução Atualmente, o maior desafio do ambiente de desenvolvimento de aplicações é a Complexidade . Essa complexidade, pode ser : Complexidade tecnológica; Complexidade do negócio; Abrangência muito ampla do sistema; Complexidade do ambiente (usuários). Metodologia Cinq Technologies Levantamento de requisitos Técnicas - Pacotes lógicos Introdução Quando cenário é de complexidade, é importante utilizar a abstração para separar, dividir ou manipular grandes porções desse sistema. A técnica UML utiliza para isso são os Pacotes (Packages). Objetivos Particionar o sistema; Diminuir a complexidade do sistema; Identificar claramente as principais responsabilidades e funcionalidades que o sistema precisa atender. Metodologia Cinq Technologies Levantamento de requisitos Técnicas - Elementos Pacotes lógicos Pacote Pacotes são porções principais de um sistema resultantes da sub-divisão em limites de coesão lógica funcional. Um pacote pode ter use cases, Diagramas de classes, Sequência, colaboração, outros) «nome pacote» Notação Metodologia Cinq Technologies Levantamento de requisitos Técnicas - Elementos Pacotes Lógicos Características do pacote Visibilidade/ navegabilidade Um pacote pode ser público, privado, protegido, implementação. Dependência Um pacote pode ter dependência em relação a outro pacote. Ou seja, há uma comunicação necessária entre um objeto de uma classe com o objeto de outra classe. (Integração). Metodologia Cinq Technologies Levantamento de requisitos Técnicas - Elementos Pacote Lógico Nomeclatura O nome deve representar a natureza e o limite do pacote. Nome do pacote em letras minúsculas, sem acentuação e sem limite de tamanho. Quando nome com mais de uma palavra, concatenar com a primeira letra em maiúscula. Ex: captação, empréstimos Documentação Ferramenta Case Metodologia Cinq Technologies Levantamento de requisitos Técnicas - Elementos Pacote Lógico Identificação O sistema é muito grande e complexo; Verifique grandes natureza no sistema e subdivida em pacotes; Verifique se existem elementos dentro do sistema com mesma semântica. Coloque-os no mesmo pacote; Elementos do negócio com alto grau de dependência é recomendável que fiquem no mesmo pacote; Utilize a abstração para dividir e isolar grande partições ou grupos de negócio. Metodologia Cinq Technologies Levantamento de requisitos Técnicas - Diagrama de Pacotes Lógicos Sequência de atividades Identifique os pacotes; Criar um novo Diagrama de Classes na ferramenta Case; Registrar no Diagrama de classes os pacotes encontrados; Identifique as dependências; Verifique se um pacote possui dependência de outro e registre no diagrama de pacotes. Metodologia Cinq Technologies Levantamento de requisitos Estudo de Caso Fazer o diagrama de pacotes do estudo de Caso Utilizar a ferramenta case. Metodologia Cinq Technologies Levantamento de requisitos Técnicas - Use case Introdução A técnica UML - Use Cases, será utilizada para reconhecermos a visão externa do sistema e suas principais interações com o mundo externo. Representa uma visão de alto nível da funcionalidade que se espera do sistema, mediante a requisição de um usuário. Metodologia Cinq Technologies Levantamento de requisitos Técnicas - Use Case Objetivos Identificar e descrever os principais requerimentos do sistema; Identificar claramente as principais responsabilidades e funcionalidades que o sistema precisa atender. Iniciar Reuniões com usuários; Confecção de protótipos. Metodologia Cinq Technologies Levantamento de requisitos Técnicas - Elementos Use Case Ator Interação Use Case Metodologia Cinq Technologies Levantamento de requisitos Técnicas - Elementos Use Case - Ator Atores são elementos externos ao sistema. Eles representam qualquer usuário ou elemento da vida real que interage com o sistema. Atores representam papeis. Notação Nome do ator Metodologia Cinq Technologies Levantamento de requisitos Técnicas - Elementos Use Case - Ator Nomenclatura O nome do ator deve representar o papel que ele desempenha no sistema. Nome do ator em letras minúsculas, sem acentuação e sem limite de tamanho. Quando nome com mais de uma palavra, concatenar com a primeira letra em maiúscula. bancoCentral Metodologia Cinq Technologies Levantamento de requisitos Técnicas - Elementos Use Case - Ator Documentação Ferramenta Case Identificação Ator é quem utiliza o sistema. Ator é quem se beneficiará pelo sistema. Ator é quem manterá as informações no sistema. Ator é quem executa um papel no sistema. Metodologia Cinq Technologies Levantamento de requisitos Técnicas - Elementos Use Case - Use Case “É um conjunto de sequências de ações que um sistema desempenha para produzir um resultado observável de valor a um ator específico”. (UML) Os use case representam as funcionalidades do sistema, ou seja, aquelas que são observadas pelos clientes. Os use case documentam as funcionalidades e o comportamento esperado pelo sistema. Metodologia Cinq Technologies Levantamento de requisitos Técnicas - Elementos Use Case - Use Case Notação Nome Use Case Nomeclatura Nome do use case em letras minúsculas, sem acentuação e sem limite de tamanho. Quando nome com mais de uma palavra, concatenar com a primeira letra em maiúscula. Coloque o nome do use case com um verbo no infinitivo. Metodologia Cinq Technologies Levantamento de requisitos Técnicas - Elementos Use Case - Use Case Documentação Ferramenta Case Identificação use case Identifique as principais tarefas de um ator; Se algum ator identificado, for manter informações no sistema, certamente deverá existir um use case; Qualquer interação que qualquer ator requerer do sistema, gerará a necessidade um use Case; Verifique se para todos os requisitos funcionais foram identificados em um use case. Metodologia Cinq Technologies Levantamento de requisitos Técnicas - Elementos Use Case - Interação Um Ator comunica-se com o sistema através do envio e recebimento de uma mensagem. A essa comunicação denominamos de interação. Então, uma interação é uma troca de mensagens entre os atores e o sistema. Metodologia Cinq Technologies Levantamento de requisitos Técnicas - Elementos Use Case - Interação Tipos de Interação / Associações Comunicação É a comunicação típica entre um ator e use case. Extensão É uma interação que especifica que a funcionalidade de um use case está contida na funcionalidade de outro use case. Uso Uma interação de uso especifica um reuso de comportamento ou funcionalidade de vários use cases. Metodologia Cinq Technologies Levantamento de requisitos Técnicas - Elementos Use Case - Interação Notação Comunicação Extensão Uso «extende» «usa» Metodologia Cinq Technologies Levantamento de requisitos Técnicas - Elementos Use Case - Interação Nomeclatura A nomeclatura para as interações estão baseados no padrão de estereótipos de extensão e uso. Extensão - «extend» Uso - «use» Documentação Ferramenta Case Metodologia Cinq Technologies Levantamento de requisitos Técnicas - Elementos Use Case - Interação Identificação de Interações Comunicação O ator sempre requisita uma funcionalidade ao sistema através de uma comunicação. Extensão Uma interação de extensão é utilizada para demonstração de comportamento de exceção e situações especiais, gerando um aumento de casos de uso do sistema. Metodologia Cinq Technologies Levantamento de requisitos Técnicas - Elementos Use Case - Interação Identificação das interações Uso Muitas vezes, durante o levantamento de requisitos, percebemos funcionalidades comuns em diferentes use cases. Podemos então, separar a parte comum em um use case, o qual poderá ser utilizado pelos demais. Metodologia Cinq Technologies Levantamento de requisitos Técnicas - Diagrama de Use Case Diagramas de use case é uma representação gráfica dos atores, use case e interações identificadas para um sistema. É um instrumento importante para visualizar, especificar e documentar as principais funcionalidades do sistema. Nomeclatura O nome do diagrama de Use Case deve representar o conjunto de funcionalidades desempenhados pelo sistema. O nome é livre, sem acentuação e sem limite de tamanho. Metodologia Cinq Technologies Levantamento de requisitos Técnicas - Diagramas de Use Case Abordagem de utilização Um diagrama de use case pode conter uma funcionalidade específica do sistema, como um módulo ou todo o sistema. A abordagem de utilização recomendada é quando necessário, subdividir o sistema em pacotes lógicos. Os pacotes podem representar módulos do sistemas, um subconjunto de funcionalidades. Para cada pacote identificado, crie um diagrama de use case. Metodologia Cinq Technologies Levantamento de requisitos Técnicas - Diagrama de Use Case Sequência de Atividades Identifique os Atores do sistema; Criar um novo Diagrama de Use Case na ferramenta Case; Registrar no Diagrama Use Case todos os atores candidatos; Identifique os Use Cases; Registrar no Diagrama Use Case todos os Use Cases para cada Ator identificado; Documente através do formulário padrão, todas as pré e pós condições de execução de um use case, bem como a sequência principal e alternativa do fluxo; Metodologia Cinq Technologies Levantamento de requisitos Técnicas - Diagrama de Use Case Sequência de Atividades Organize os Uses case de forma que reflita a sequência natural dos processo de negócios; Identifique com o cliente, para cada use Case, as regras e dados envolvidos; Relacione Atores e Use Cases; Registre as interações comunicação, extensão e uso; Validação e Ajustes; Valide com o cliente o Diagrama de Use Case. Metodologia Cinq Technologies Levantamento de requisitos Estudo de Caso Fazer o Diagrama de use case do estudo de Caso Utilizar a ferramenta case. Análise Metodologia Cinq Technologies Análise Objetivos A fase de análise é uma etapa onde os requisitos identificados serão detalhados e especificados. Esta fase, busca melhorar o entendimento sobre o domínio do negócio que está sendo implementado. O principal objetivo principal é a busca da essência da aplicação. A preocupação do profissional de desenvolvimento nesta fase é exclusivamente com o negócio. Metodologia Cinq Technologies Análise Por que usar A fase de análise se caracteriza por realizar uma investigação mais detalhada dos requisitos identificados na fase anterior. É através dela, que se identificam os elementos essenciais de uma aplicação. O principal ganho com a de fase de análise, é a compreensão e entendimento pleno das regras e conceitos de negócio da aplicação que está sendo desenvolvida. Metodologia Cinq Technologies Análise Responsável Analista(s) do sistema Produtos esperados Diagrama de Classes de objetos; Diagramas de Seqüência; Atas de Reuniões. Metodologia Cinq Technologies Análise Técnicas Como Iniciar - Abordagem Diagrama de Classes Representa o lado estático da aplicação. Ou seja os objetos, atributos e relacionamentos existentes independentemente do tempo. São identificados classes, atributos, operações e relacionamentos entre objetos. Metodologia Cinq Technologies Análise Técnicas Como iniciar - Abordagem Diagrama de Seqüência Representa os aspectos seqüenciais da aplicação, demonstrando o comportamento dos objetos no sistema, incluindo suas operações, interações, colaborações, seqüência temporal, ativação, desativação, fluxos principais e fluxos alternativos. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos Classe Atributos Operações Relacionamentos Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Classe Classes são constituídas pelo conjunto de objetos que compartilham as mesmas características, comportamento e relacionamentos. Tipos de classes Classes de Negócio Classes de interface Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Classe - Tipo de Classes Classes de negócio Classes de negócio são aquelas que representam os objetos tangíveis, descrições, transações, lugares, acontecimentos do sistema. Normalmente elas detém as principais regras de negócio (essência) do sistema. Tangível (contaCorrente, cartaoCredito) Descritivo (indiceDeCorrecao) Transação (Autorizacao) Lugares (Departamento, secao, setor) Acontecimentos (eleicao, aniversario) Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Classe - Tipo de Classes Classes de negócio As classes de negócio também podem ser subclassificados como persistentes ou transientes, o que determina o seu armazenamento em meio físico. Classes de Interfaces Os atores, normalmente interagem com o sistema através de entradas de informações (solicitações). Estas interações ou comunicações entre o use case e o ator, devem ser identificadas como classes de Interface.Elas devem representar todas as telas do sistema.Ex: entradaDadosCliente Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Classe «estereótipo» «Nome classe» «lista atributos «lista operações» Notação «Estereótipo» -> Indica o tipo de classe. (Negócio, Interface) «Nome Classe» -> Nome único que identifica a classe. Lista atributos» -> Lista atributos que compõem as características comuns da classe de objetos. • «Lista Operações» -> Lista operações que compõem o comportamento comum da classe de objetos. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Classe Nomenclatura A nomenclatura geral da classe (nome e estereótipo), deve ser em letras minúsculas, sem acentuação e sem limite de tamanho. Quando nome com mais de uma palavra, concatenar com a primeira letra, em maiúscula. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Classe Nomenclatura O estereótipo deve representar o tipo da classe: Classe Negócio; <<Negocio>> <<Interface>> funcionario manutencaoFuncionario Classe Interface. codFuncionario incluirFuncionario() Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Classe Documentação Classes de Negócio Ferramenta Case Abrir um Diagrama de classes para as Classes de negócio. Documentação Classes de interface Abrir um Diagrama de Classes para as classes de interface. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Classe Identificação Cada Ator, no diagrama de use case, é candidato a uma classe, quando executa um papel dentro do contexto do sistema.Ex: Aluno, funcionário, cliente Os atores podem representar alguns elementos, sistemas ou dispositivos, que estão fora do domínio do sistema, e portanto não precisam ser definidos como classes. Ex: O Banco Central envia informações do cliente. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Classe Identificação Elementos do sistema que representam coisas tangíveis, descritivas, transações, são candidatos a classes. Ex: contaCorrente, cartaoDeCredito, Acontecimentos ou lugares que o sistema precisa manter e armazenar informações sobre eles, são candidatos a classes. Ex: aniversario, pescaria. Utilize a documentação de Use case, para identificar novas classes. Normalmente aparecem descritos nas atividades do Use Case como substantivos. Ex: verificar o saldo da conta corrente Metodologia Cinq Technologies Análise Estudo de Caso Identificar as classes do estudo de caso. Criar Diagrama de Classe (Negócio/Interfaces) Utilizar a ferramenta case. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Atributos estereótipo» «Nome classe» « «lista atributos «lista operações» Atributo é uma propriedade do objeto. O conjunto de atributos descreve as características de uma classe de objetos. Notação Os atributos devem ser colocados no segundo compartimento da classe. A notação padrão para os atributos será: Visibilidade MnemônicoNomeAtributo:Tipo = valorInicial Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Atributos - Notação Visibilidade Público/Privado/Protegido/Implementação. Mnemônico Público/Privado/Protegido/Implementação. Nome atributo Nome do atributo utilizando a regra de nomenclatura. Tipo Tipo de dado (int, string, double...). Valor Inicial Valor inicial do atributo Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Atributos <<Negocio>> funcionario codFuncionario Nomenclatura A nomenclatura para os atributos, deve ser em letras minúsculas, sem acentuação e sem limite de tamanho. Quando nome com mais de uma palavra, concatenar com a primeira letra em maiúscula. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Atributos Documentação No Diagrama de classes do sistema, inserir os atributos em suas respectivas classes. Realizar a documentação na Ferramenta case conforme padrão. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Atributos Identificação de atributos Cada classe de objetos deverá ter atributos que componham a estrutura dos objetos. A classe precisa responder: O que devo conhecer de mim mesmo para satisfazer as necessidades da aplicação? Analise as interações entre os Atores e Use case. Identifique que tipo de informação está sendo requerida. Esta informação são atributos de alguma classe de objetos. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Atributos Identificação de atributos Identifique possíveis atributos que são enviados e recebidos pelas atividades da documentação de use case. Incorpore os atributos nas respectivas classes. Atributos, normalmente correspondem a adjetivos, encontrados nas atividades de documentação de use case. Ex:Calcular o digito verf. do número da conta corrente. Alterar os dados do clientes. (nesse caso é preciso detalhar a palavra dados para encontrar os atributos). Metodologia Cinq Technologies Análise Estudo de Caso Identificar os atributos das classes do estudo de caso. Inserir os atributos nas respectivas classes no Diagrama de Classe (Negócio/Interfaces) Utilizar a ferramenta case. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Operações Operação é um serviço que pode ser requisitado a qualquer objeto. É um comportamento específico dos objetos que compõem a classe. Há diferenças conceituais entre operação e método: Operação é um serviço solicitado por um objeto; Método é a operação implementada . Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Operações - Notação estereótipo» «Nome classe» « «lista atributos «lista operações» As operações devem ser colocados no terceiro compartimento da classe. A notação padrão para as operações será: Visibilidade MnemônicoNomeOperação(Par):TipoRetorno Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Operações - Notação Visibilidade Público/Privado/Protegido/Implementação. Mnemônico Mnemônico que indica a natureza da operação. Nome operação Nome da operação( regra de nomenclatura). Parâmetros Lista de parâmetros da operação (nome e tipo). Tipo Retorno Tipo de dado que é o valor retornado da operação . Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Operações - Nomenclatura <<Negocio>> funcionario codFuncionario obterNomeFuncionario() obterDataAdmissaoFuncionario() A nomenclatura para as operações, devem ser em letras minúsculas, sem acentuação e sem limite de tamanho. Quando nome com mais de uma palavra, concatenar com a primeira letra em maiúscula. Os nomes das operações devem indicar seus resultados e não os passos utilizados pela operação. Ex: 1) operação recupere o valor total da nota fiscal: obterValorNotaFiscal () 2) operação que calcule o valor da nota fiscal calcularValorNotaFiscal() Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Operações - Tipos de Operações Operações de Instância Operações de instância são aquelas que atingem unicamente um único objeto de cada vez. Ex: recEmpPublica(codEmpresa):nome publica recEmpPublica() Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Operações - Tipos de Operações publica recEmpPublica() recTodasEmpPublica() Operações de Classe São as operações que atingem vários objetos da mesma classes no mesmo momento operacional.. Operações de recuperação (rec) e de classe, devolvem, como retorno, uma lista (coleção). Ex: recTodasEmpPublica():coleção/array Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Operações - Tipos de Operações <<Negocio>> empresa coodRecTodasEmpresas() criarEmpresa() publica recEmpPublica() recTodasEmpPublica() criarEmpresa() Operações Polimórficas São as operações identificadas em um relacionamento de herança, onde uma mesma operação pode assumir diferentes implementações. Essas operações devem privada possuir a mesma interface. recEmpPrivada() recTodasEmpPrivada() criarEmpresa() Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Operações - Tipos de Operações Operações Herança <<Negocio>> São operações que atuam sobre todas as classes empresa especializadas. São basicamente, operações de coodRecTodasEmpresas() coordenação da classe generalizada. Ex: coodRecTodasEmpresas -> é uma operação que publica privada coordenará a recuperação de todas as empresas recEmpPublica() recEmpPrivada() PP/PR recTodasEmpPublica() recTodasEmpPrivada() Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Operações Documentação No Diagrama de classes do sistema, inserir as operações em suas respectivas classes. Utilizar o padrão de documentação Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Operações Identificação das operações Analise para cada classe identificada, quais as funcionalidades que a classe deve representar. Cada função é candidata a uma operação. Toda classe terá certamente as operações básicas como inserir/excluir/alterar/obter ou recuperar. Cada função de natureza de manutenção de dados será candidata a uma operação. Indique somente as operações de manutenção de dados identificadas como necessárias no sistema. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Operações Identificação das operações Verifique se a classe não precisa disponibilizar operações de cálculos. Cada Use Case é candidato a uma operação de uma classe. Esta operação, basicamente controla a seqüência de execução da funcionalidade esperada no use case. É uma operação coordenadora. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Operações Identificação das operações Utilize a documentação dos Use Case. Procure identificar possíveis operações. Nos use case, normalmente aparecem as operações de manutenção de dados (insert/update/delete/..) e também aparecem as operações que são utilizadas para emissão de consultas e relatórios básicos (Ex: Lista de todas as cidades). Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Operações Identificação das operações Verifique os atributos da classe. Se houver necessidade de manipular qualquer atributo da classe deve existir obrigatoriamente uma operação da classe que execute tal funcionalidade. Para identificar operações polimórficas: Verifique se existe um relacionamento de herança no modelo em estudo; Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Operações Identificação das operações Verifique se existe uma mesma operação, com mesma semântica e contexto, em todas as classe especializadas. Se existir, declare uma operação (polimórfica) na classe generalizada, com a mesma interface. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Operações Identificação das operações Herança Verifique se a aplicação que está sendo desenvolvida, não precisa de uma operação que recupere todas as instâncias de todas as classes especializadas. Se sim, declare na classe generalizada a operação de herança. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Operações Identificação das operações Relatórios Normalmente, durante a análise do sistema, aparece a necessidade de certo tipo de relatório, que executa e coordena a seqüência de chamadas de operações de diversas classes de objetos, a fim de compor o resultado final esperado. Verifique se no documento de use case existem atividades definidas como REL. Este relatório é uma operação que deve ser encapsulado na classe em que o relatório é mais relevante. Metodologia Cinq Technologies Análise Estudo de Caso Identificar as operações das classes do estudo de caso. Inserir as operações nas respectivas classes no Diagrama de Classe (Negócio/Interfaces) Utilizar a ferramenta case. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Relacionamentos Os objetos do mundo real, se relacionam entre si. Os relacionamentos modelam a comunicação entre os objetos e nesta fase serão identificados as relações estáticas. Ou seja, os relacionamentos existem, a partir de uma regra do negócio, independentemente do tempo. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Relacionamentos - Notação Relacionamentos por associação O relacionamento por associação é representado por uma linha contínua. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Relacionamentos - Notação • Relacionamentos por agregação O relacionamento por agregação é representado por uma linha contínua com o símbolo de agregação (losango) . O símbolo de agregação é sempre indicado para o objeto parte. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Relacionamentos - Notação Relacionamentos por herança O relacionamento por herança é representado por uma linha contínua com o símbolo de herança (triângulo) . Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Relacionamentos Nomenclatura A nomenclatura para os relacionamentos, devem ser em letras minúsculas, sem acentuação e sem limite de tamanho. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Relacionamentos - Tipos • Relacionamentos por associação Relacionamento por associação descreve um conjunto de vínculos entre objetos de diferentes classes. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Relacionamentos por associação Associação unária ou recursiva É a associação de uma classe para consigo própria. É quando um objeto de uma classe se associa a outro objeto da mesma classe. Associação Binária É uma associação entre duas classes de objetos diferentes. Associação Ternária É uma associação entre três ou mais classes de objetos diferentes. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Relacionamentos - Tipos Relacionamento por agregação É um tipo especial de relacionamento por associação que serve para representar que um objeto é composto, pelo menos em parte, de outro objeto. O objeto parte é um atributo do objeto todo, e a sua vida depende da vida deste. A criação e a destruição de um objeto parte dependerá sempre do objeto todo, pois existe uma relação de dependência explícita. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Relacionamentos - Tipos Relacionamento por herança Herança é o tipo de relacionamento entre classes no qual uma classe compartilha as características e o comportamento de uma ou mais classes. No relacionamento por herança temos a estrutura de generalização e especialização. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Relacionamentos - Tipos Relacionamento por herança A generalização significa que todas as características (atributos) e comportamento (operações) que são comuns entre as classes deverão ser incluídas na classe generalizadas. Nas classes especializadas devem ser mantidos somente os atributos e operações específicas a cada uma delas. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Relacionamentos - Propriedades Nome Seguir as regras de nomenclatura para relacionamentos. Papel Representa o propósito em que o objeto de uma classe se associa a outro objeto de outra classe. É importante para compreender a semântica. Deve ser definido como um substantivo ou uma frase simples. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Relacionamentos - Propriedades Qualificador É um atributo da classe utilizado para reduzir a multiplicidade de uma associação. Basicamente é o atributo resultante do relacionamento um para muitos ou muitos para muitos (atributo de ligação). Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Relacionamentos - Propriedades Multiplicidade É a representação do número de objetos de uma classe relacionado a um objeto de outra classe MUITOS - * EXATAMENTE UM – 1..1 ZERO OU MAIS – 0..* UM OU MAIS – 1..* ZERO OU UM – 0..1 INTERVALO ESPECÍFICO – 5..6 Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Relacionamentos Documentação No Diagrama de classes do sistema, inserir os relacionamentos com suas respectivas documentações. Utilizar o padrão de documentação. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Relacionamentos - Identificação Relacionamentos por associação As associações são identificadas quando percebemos que duas ou mais classes se relacionam independente da questão tempo. Ex: A escola possui muitos alunos. • As associações representam sempre regras de negócios da aplicação. • Analisar se entre duas classes existe a necessidade de navegação entre elas. • Se uma classe depende de uma outra de forma estrutural , existe uma associação. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Relacionamentos - Identificação Relacionamentos por associação As associações são identificadas também, na documentação de use case, através dos verbos que compõem uma atividade. Ex: A escola tem alunos. Em associações ternárias, quando identificado no modelo, reduza a complexidade do relacionamento indicando uma nova classe. Em associações muitos para muitos, deverá aparecer uma nova classe de objetos, que representa este relacionamento. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Relacionamentos - Identificação Relacionamentos por agregação Verifique se a classe possui um contexto de lugar. Pode ser uma agregação desde que você encontre elementos (objetos) contidos neste lugar. Procure identificar relações entre classe em que uma tem uma dependência existencial com a outra. Ex: Motor – Componentes Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Elementos - Relacionamentos - Identificação Relacionamentos por herança Procure por classes com semântica parecida e que estejam dentro do domínio e do contexto da aplicação. Generalize os atributos e operações , perguntando: Quais são os atributos e operações comuns a todas as classes. Especialize os atributos e operações, perguntando: Quais são os atributos e operações que só tem sentido para uma ou outra classe. Metodologia Cinq Technologies Análise Estudo de Caso Inserir os relacionamentos no Diagrama de Classe de Negócio Utilizar a ferramenta case. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Diagramas de classe é uma representação da estrutura estática de classes, com seus atributos e operações, e relacionamentos de uma aplicação. O diagrama de classe é o principal modelo da aplicação. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Abordagem de utilização A técnica de modelagem nos permite enriquecer e detalhar o diagrama de acordo com as nossas expectativas. Na fase de análise, concentre-se no negócio. Coloque-se no lugar do usuário. Não se preocupe, nesta fase, com as questões tecnológicas (fase projeto). O diagrama de classes deve refletir o modelo estático do negócio; Identifique todas as classes (atributos e operações) essenciais, neste momento. Caso, no prosseguimento da análise alguma nova classe, atributo ou operação for identificada, as mesmas serão incorporadas gradativamente (abordagem espiral); Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Abordagem de utilização O diagrama de classe trabalha extensivamente com encapsulamento. Cada atributo e cada operação identificada precisa atender plenamente ao conceito. A não do encapsulamento, trará perdas de reuso em manutenção; Documente e utilize os padrões que a metodologia oferece. Caso você encontre alguma situação de negócio que a metodologia não contemple, repasse ao responsável. Procure manter um Diagrama de classes para cada sistema ou pacote. Se a aplicação for muito grande, subdivida-a em pacotes ( levantamento de requisitos). Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Nomenclatura O nome do diagrama de classes deve representar o nome do sistema ou pacotes. O nome é livre, sem acentuação e sem limite de tamanho. Ex: Cadastro de Informacoes Itinerario Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Seqüência de atividades Criar um novo Diagrama de Classes na ferramenta Case. − Criar Diagramas diferentes para as classes de interfaces e classes de negócios. Identifique as classes candidatas do sistema Criar uma lista de classes com base nas regras de negócio levantadas nos Use Case − Identifique a natureza das classes (Negócio, Interface) − Modelar e documentar no Diagrama de classes todas as classes candidatas. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Seqüência de atividades Identifique os Atributos e Relacionamentos − Modelar e documentar no Diagrama de classes os atributos e relacionamentos das classes candidatas. − Identifique as Operações − Modelar e documentar no Diagrama de classes as operações das classes candidatas. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Sequência de atividades Refinar o Diagrama de Classes − Identifique possíveis relações de agregação e de herança − Revalide as classes, verifique se são do domínio da aplicação, se tem atributos, operações e relacionamentos. − Verifique se o Diagrama de classe está refletindo as necessidades de negócio identificadas e levantadas nos Use Cases. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Classes Sequência de atividades Validação e Ajustes − Valide e ajuste com o cliente o Diagrama de Classes. − Próximo passo − Fazer os diagramas de seqüências Metodologia Cinq Technologies Análise Técnicas - Diagrama de Sequência Elementos - Objeto - Conceito É uma unidade real ou abstrata, individualizada e identificável que modela um conceito presente da realidade humana, ocupando espaço físico ou lógico (memória).” José David Furlan É a representação de qualquer coisa real ou conceitual do domínio de um sistema. É significativo para a aplicação e tem limites bem definidos. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Sequência Elementos - Objeto - Notação/nomenclatura :nome classe : nome classe-> Nome da classe de objetos já identificada no Diagrama de Classes. A nomenclatura seguirá o nome dado à classe, sublinhado. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Sequência Elementos - Objeto - Documentação Para cada Use Case identificado, gerar um Diagrama de Seqüência. No Diagrama de sequência, inserir os objetos e suas respectivas documentações. Utilizar o padrão de documentação. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Sequência Elementos - Objeto - Identificação Com a documentação do Use Case, verifique cada atividade do Curso principal e Alternativo. A solicitação de um serviço, uma funcionalidade sempre parte de um objeto remetente para o objeto receptor. Muitas vezes uma atividades da documentação de Use case, apresenta um contexto muito abrangente, que não permite num primeiro momento identificar nenhum objeto. Detalhe a atividade . Metodologia Cinq Technologies Análise Técnicas - Diagrama de Sequência Elementos - Objeto - Identificação Objetos são os elementos/atores que solicitam alguma função ou atividade dentro do use Case. Os objetos encontrados certamente já foram identificados no Diagrama de Classes. Caso você encontre um objeto e o mesmo não foi identificado no Diagrama de classes, faça espiral e adicione a classe, atributos, operações, relacionamentos e respectivas documentações. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Sequência Elementos - Mensagem/Interação - Conceito É a comunicação mantida entre os objetos de uma aplicação ou sistema. Essa comunicação representa a implementação de um comportamento do sistema. Quando um objeto precisa de um serviço de outro objeto, o objeto remetente envia uma mensagem (chamada de um procedimento) para o objeto destino. Para que se estabeleça esta comunicação entre eles é preciso que se conheçam. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Sequência Elementos - Mensagem/Interação - Notação Nr. Sequencial:nomeMensagem(lista parâmetros) Onde Nr sequencial: Nr. gerado pela ferramenta Case e indica a seqüência da mensagem na interação geral do use case. Nome mensagem: Nome conforme padrão nomenclatura Lista parâmetros: Lista de parâmetros que a mensagem carrega para o outro objeto. Os parâmetros são candidatos a atributos. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Sequência Elementos - Mensagem/Interação Nomenclatura A nomenclatura para as mensagens, devem ser em letras minúsculas, sem acentuação e sem limite de tamanho. Quando nome com mais de uma palavra, concatenar com a primeira letra em maiúscula. Ex: criarCliente (codigoCliente, nome) Metodologia Cinq Technologies Análise Técnicas - Diagrama de Sequência Elementos - Mensagem/Interação Documentação No Diagrama de sequência, determinar os fluxos de mensagens entre os objetos. Fazer a documentação conforme padrão. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Sequência Elementos - Mensagem/Interação - Identificação Toda comunicação entre objetos é feita através de mensagens; Se um objeto precisa de um serviço ou funcionalidade de outro objeto deve fazer através de uma mensagem; As mensagens podem ser chamadas de operações de objetos ou um sinal; As mensagens são candidatas a operações das classes de objetos da aplicação. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Sequência Diagramas de seqüência demonstram as interações dos objetos organizados seqüencialmente em relação ao tempo. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Sequência Abordagem de utilização Trabalhar com diagramas de seqüência depende muito da estratégia de modelagem de use case. Recomenda-se: Para cada use case, modele um diagrama de seqüência; Ao modelar o diagrama de seqüência, concentre-se nos limites e contextos do use case em questão. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Sequência Nomenclatura O nome do diagrama de seqüência deve representar o nome do use case. O nome é livre, sem acentuação e sem limite de tamanho. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Sequência Sequência de atividades Relacione os use cases e suas documentações; Criar um novo Diagrama de Seqüência para cada use case; Identifique os objetos participantes do use case; Criar uma lista de objetos, com base na documentação dos use e atores identificados nos Diagrama de Use Case; Modelar e documentar no Diagrama de seqüência todos os objetos. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Sequência Sequência de atividades Identifique as mensagens; Cada atividade identificada na documentação do use case, pode ser uma comunicação entre os objetos participantes; Modelar e documentar no Diagrama de classes as mensagens entre os objetos. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Sequência Sequência de atividades Refinar o Diagrama de Seqüência; Verifique se todas as mensagens e objetos identificados compõem a funcionalidade esperada. Utilize a documentação do use case; Verifique a sequência do fluxo de mensagens. Utilize a documentação de use Case e o cliente, se necessário. Validação e Ajustes; Valide e ajuste com o cliente o Diagrama de Seqüência. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Sequência Sequência de atividades Revisão do Diagrama de classes - Relacionamentos Verifique se no Diagrama de sequência foi identificado algum novo relacionamento estático entre os objetos. Observe portanto, que a troca de mensagens entre os objetos são relacionamentos dinâmicos. Ou seja, podem existir ou não. No relacionamento estático, a conexão entre as classes de objetos, existe independente das condições. Metodologia Cinq Technologies Análise Técnicas - Diagrama de Sequência Sequência de atividades Revisão do Diagrama de classes - Operações: Verifique se para cada classe de objetos que recebe uma mensagem no Diagrama de sequência, possui uma operação corresponde declarada na classe. Observe a orientação na documentação de mensagem. Revisão do Diagrama de classes - Atributos Verifique se os atributos das mensagens trocadas entre os objetos estão declarados em suas respectivas classes. Metodologia Cinq Technologies Análise Estudo de Caso Montar um diagrama de sequência do estudo de caso. Utilizar a ferramenta case. Metodologia Cinq Technologies Análise Sequência de Atividades - Fase Análise Diagrama de Classes Criar Diagrama de classes na Ferramenta Case; Identifique as classes candidatas do sistema; Identifique os Atributos e Relacionamentos; Identifique as Operações; Refinar o Diagrama de Classes; Validação e Ajustes. Metodologia Cinq Technologies Análise Sequência de Atividades - Fase Análise Diagrama de seqüencia Criar Diagrama de Seqüência para cada use case; Identifique os objetos participantes do use case; Identifique as mensagens; Refinar o Diagrama de Seqüência; Validar e Revisar o Diagrama de classes Validação e Ajustes. Próximo passo Fase de projeto Projeto Metodologia Cinq Technologies Projeto Objetivos A fase de projeto tem como objetivo especificar requisitos tecnológicos necessários para o pleno desenvolvimento do sistema. Por que utilizar Na análise, a concentração estavam nos requisitos e aspectos ligados exclusivamente ao negócio. No projeto, é preciso ajustar e enquadrar o sistema, levando em consideração a infra-estrutura tecnológica. Metodologia Cinq Technologies Projeto Responsável Equipe de Projeto. Produtos esperados Projeto físico banco de dados; Metodologia Cinq Technologies Projeto Técnicas Utilizar o procedimento PR-5.6-02 Metodologia Cinq Technologies Projeto Técnicas - Projeto das Classes Projeto Físico de banco de Dados Armazenamento Durante o desenvolvimento da aplicação, são identificadas as classes persistentes. Será a partir delas devemos criar uma estrutura de armazenamento na tecnologia escolhida pela empresa. Tecnologia de armazenamento Relacional. Metodologia Cinq Technologies Projeto Técnicas - Projeto das Classes Projeto Físico de banco de Dados - Conceito O projeto físico de banco de dados, tem por objetivo, o mapeamento da estrutura de armazenamento dos dados do sistema que está sendo desenvolvido. O projeto físico tem que levar em consideração, no mínimo, os seguintes aspectos: Performance Volumes Normalização/desnormalização do modelo físico Padrões de nomenclatura – Projeto Físico Metodologia Cinq Technologies Projeto - Técnicas - Projeto das Classes Projeto Físico de banco de Dados - Diferenças Modelo Orientado a Objeto Classes Atributos Objeto/ instância Identidade Objeto --------------------Polimorfismo Herança Encapsulamento Modelo Relacional Tabelas Coluna Linha Chave Primária Chave Secundária ---------------------------------------------------------- Metodologia Cinq Technologies Projeto Técnicas - Projeto Físico de banco de Dados Elementos - Tabelas - Conceito São estruturas físicas de armazenamento compostas por linhas e colunas. Colunas são os atributos que compõem uma linha. Linhas representam um conteúdo de uma ocorrência da tabela. É análogo com o conceito de “registro” . Metodologia Cinq Technologies Projeto Técnicas - Projeto Físico de banco de Dados Elementos - Tabelas - Conceito Cada tabela possue ainda: Um nome único Chave primária Um ou mais atributos que dão a unicidade para cada linha. Valor da chave primária deve ser único na tabela. Metodologia Cinq Technologies Projeto Técnicas - Projeto Físico de banco de Dados Elementos - Tabelas Notação Padrão Conforme Instrução de trabalho Metodologia Cinq Technologies Projeto Técnicas - Projeto Físico de banco de Dados Elementos - Tabelas Identificação Identifique as classes definidas como persistente no Diagrama de Classes. Cada classe persistente é candidata a uma tabela. Metodologia Cinq Technologies Projeto Técnicas - Projeto Físico de banco de Dados Elementos - Relacionamentos São relações entre as tabelas, realizadas através de chaves estrangeiras. Chaves estrangeiras aparecem quando duas tabelas possuem uma conexão entre si, e há uma relação de multiplicidade em uma delas. Na tabela com multiplicidade é transportada a chave primária da outra tabela.Ex: A empresa possui muitos funcionários Metodologia Cinq Technologies Projeto Técnicas - Projeto Físico de banco de Dados Elementos - Relacionamentos Notação Padrão Manter a notação padrão de Relacionamentos Nomenclatura Manter a nomeclatura de relacionamentos Documentação Metodologia Cinq Technologies Projeto Técnicas - Projeto Físico de banco de Dados Elementos - Relacionamentos - Forma Mapeamento Associações 1-para-1 Criar as duas tabelas sem nenhuma referência de integridade referencial (chaves estrangeiras). Esta alternativa é a mais recomendada. Juntar as duas tabelas em uma única. Esta alternativa é recomendado em casos de exigência de performance entre as duas tabelas. Metodologia Cinq Technologies Projeto Técnicas - Projeto Físico de banco de Dados Elementos - Relacionamentos - Forma Mapeamento Associações 1-para muitos / 0-para-muitos Será criada uma tabela para cada classe envolvida na associação. Esta associação deverá ser mapeada através de chaves estrangeiras.Ou seja, a chave primária da tabela de multiplicidade um deverá ser transportada como chave estrangeira na tabela com multiplicidade muitos. Metodologia Cinq Technologies Projeto Técnicas - Projeto Físico de banco de Dados Elementos - Relacionamentos - Forma Mapeamento Associações muitos-para-muitos Será criada uma tabela para cada classe envolvida na associação. A associação muitos-para-muitos será desmembrada em dois relacionamentos um-para-muitos e será mapeada como descrito no item anterior. Metodologia Cinq Technologies Projeto Técnicas - Projeto Físico de banco de Dados Elementos - Relacionamentos - Forma Mapeamento Agregação As agregações serão implementados, seguindo os procedimentos dos relacionamentos por associação. Metodologia Cinq Technologies Projeto Técnicas - Projeto Físico de banco de Dados Elementos - Relacionamentos - Forma Mapeamento Herança Mapeamento Direto Mapeamento pelas subclasses Mapeamento pela Superclasse Metodologia Cinq Technologies Projeto Técnicas - Projeto Físico de banco de Dados Elementos - Relacionamentos - Identificação Identifique os relacionamentos (associação, agregação e herança ) no Diagrama de Classes. Adicione os relacionamentos no diagrama de projeto físico de banco dados do sistema. No caso de herança, aplique uma das abordagens e represente no diagrama de Projeto físico de banco de dados. Metodologia CINQ Technologies Análise Estudo de Caso Montar o diagrama físico de banco de dados Metodologia Cinq Technologies Projeto Técnicas - Projeto Físico de banco de Dados Sequência da Atividades Criar um Diagrama de Projeto físico, na ferramenta Case. Cada classe negócio no Diagrama de Classes, é candidata a uma tabela. Cada relacionamento, no Diagrama de Classes, é candidato a um relacionamento. Na caso de herança, quando adotado uma tipo de abordagem, refletir também no mapeamento das tabelas. Metodologia Cinq Technologies Projeto Técnicas - Projeto Físico de banco de Dados Sequência de atividades Todas as oportunidades de herança nem sempre são reconhecidas durante a fase de análise. Observe principalmente: Repetição de um conjunto de operações e atributos em duas ou mais classe. (variações especializadas da mesma coisa com um nível maior de abstração). Metodologia Cinq Technologies Projeto Técnicas - Projeto das Classes Objetivo O principal objetivo do projeto das classes é refinar e acrescentar detalhes de implementação nas classes reconhecidas na fase de análise. É comum aparecem novas classes nesta fase. Algumas são classes específicas de projeto (ex: classe persistência), podendo também aparecer classes de negócio. Metodologia Cinq Technologies Projeto Técnicas - Projeto das Classes Projeto dos atributos Padrão nomeclatura dos atributos Propriedades dos atributos foram indicados Projeto das operações Padrão nomeclatura das operações Propriedades das operações Interface das operações Operações acesso Metodologia Cinq Technologies Projeto Técnicas - Projeto das Classes Operações Acesso São as operações que fazem acesso ao banco de dados. Questões específicas de banco de dados (performance) podem alterar as operações de acesso. As operações de acesso irão utilizar as interfaces da camada de persistência. Metodologia Cinq Technologies Projeto Técnicas - Projeto das Classes Operações de acesso - Herança Após o mapeamento físico dos dados, é preciso reavaliar as operações envolvidas nas heranças da aplicação. Recomendações a serem utilizadas: (material impresso) Metodologia Cinq Technologies Projeto Técnicas - Projeto das Classes Sequência das atividades Reavaliar e ajustar o Diagrama de Classes (Negócio); Avaliar a nomenclatura e propriedades dos atributos; Avaliar as propriedades e interface das operações; Rever e ajustar encapsulamento; Se cada operação está em sua respectiva classe; Se os atributos da classe são manipulados exclusivamente por operações da classe; Metodologia Cinq Technologies Projeto Seqüência de atividades – Fase de Projeto Mapear o Projeto Físico de Banco de Dados Identificar as Tabelas Identificar relacionamentos Mapear a Herança Construção Metodologia Cinq Technologies Construção Objetivos A fase de construção é uma etapa onde todos os códigos devem ser gerados, atendendo todos os requisitos especificados na fase de análise e projeto. Também nesta fase, deve ser construído os Helps do sistema. O principal objetivo desta fase é gerar e testar os códigos de forma unitária. Metodologia Cinq Technologies Construção Responsável Equipe de projeto Produtos esperados Classes do sistema; Interfaces do sistema; Relatórios do sistema; Banco de dados do sistema; Help do sistema. Metodologia Cinq Technologies Construção Técnicas - Introdução A fase de construção é a codificação de todos os programas e a construção da estrutura física de dados do sistema. Nesta fase, espera-se que as decisões de negócio e de infra-estrutura já tenham sido definidas nas fases anteriores. É uma fase onde somente se deve implementar, utilizando plenamente os recursos técnicos dos softwares escolhidos. Metodologia Cinq Technologies Construção Técnicas - Construção das classes Codificação das classes - Construção dos métodos Utilize para a complementação do código: Os use cases Os diagramas de sequência A especificação dos métodos das classes Quando o método utilizar variáveis, seguir o padrão de variáveis. Metodologia Cinq Technologies Construção Técnicas - Construção das classes Validações Unitários dos métodos Para todos os métodos Testar os parâmetros de entrada e saída do método; Testar a lógica interna do método Testar o acesso a banco de dados, nos métodos de acesso. Testar as propriedades dos atributos das classe. Testar as propriedades dos métodos (privada/publica) Metodologia Cinq Technologies Construção Técnicas - Construção das classes Validações Unitários dos métodos Para métodos complexos (coordenador) Testar a lógica interna - plano de teste (Fs Teste); Testar a chamadas a outros métodos - plano de teste; Para os Validações dos métodos, utilizar: Os use cases e respectivas documentações; Os diagramas de sequência; As interfaces gráficas construídas; O banco de dados construído. Obs: muitas vezes é preciso criar programas auxiliares para os Validações unitários. Metodologia Cinq Technologies Construção Técnicas - Construção das classes Sequência de Atividades Construir os métodos; Testar os métodos; Ajustar, quando necessário. Ajustar os Diagramas de classe e de sequência quando encontrado alguma situação diferente. Validação Metodologia Cinq Technologies Validação Objetivos Garantir a qualidade do produto que foi desenvolvido, atendendo as exigências e expectativas dos clientes e da Cinq Technologies. Contexto empresarial importante Busca falhas e situações que venham a comprometer a credibilidade do produto e por consequência da empresa. Validações significam: testar as situações normais do sistemas. testar as situações de anormalidade que possam ocorrer. Fase de Validações, tem como contexto os testes integrados. Metodologia Cinq Technologies Validações Responsável Coordenador do sistema; Analista(s) do sistema. Produtos esperados Check List elaborados, solucionados .PR-5.7-01 executados e Metodologia Cinq Technologies Validações Técnicas - Introdução A fase de teste tem como principal objetivo reduzir o risco de falhas de um produto de software. Esta fase tem como missão, realizar Validações de integração e de sistema. Ou seja, testar os elementos de forma combinada, com o objetivo que os mesmos atendam as expectativas esperadas. Metodologia Cinq Technologies Validações Técnica – Estrutura da Fase de Validações Procedimento 5.7-01 Ver instruções do Procedimento Metodologia Cinq Technologies Validações Técnica - Estrutura da Fase de Validações Sequência de Atividades Seguir a sequência do Procedimento PR 5.7-01. Metodologia Cinq Technologies Validações Técnica - Estrutura da Fase de Validações Check List - Identificação dos itens de teste Utilize a instrução de trabalho IT 5.7-01. Utilizar os requisitos do usuário (uses case e documentações) para ajudar na identificação dos itens de teste. Utilizar outras informações contidas nos demais diagramas do sistema (Classe, sequência, etc). Sabemos, entretanto, que em Validações de integração e de sistemas, todas as camadas de software devem ser testadas. Metodologia Cinq Technologies Validações Técnica - Estrutura da Fase de Validações Check List - Identificação dos itens de teste Interface Gráfica - Layout e navegação Tente carregar o sistema duas ou mais vezes; Mude as opções e configurações; Teste em outros modos de vídeo (640x480, etc.); Minimize, maximize, restaure, feche; Todas as telas tem botões de saída (Ok e Cancelar)?; Os menus possuem teclas de atalho?; É possível acessar o help? Através de mouse e F1?; Metodologia Cinq Technologies Validações Técnica - Estrutura da Fase de Validações Check List - Identificação dos itens de teste Interface Gráfica - Layout e navegação Os campos estão consistentes; Os campos de data aceitam somente datas válidas?); Pressione um monte de teclas, abra várias janelas,etc; Carregue outros programas, dispare várias impressões, navegue por todos os menus. É possível navegar sem o mouse (com Tab, Esc, Enter, setas)? Metodologia Cinq Technologies Validações Técnica - Estrutura da Fase de Validações Check List - Identificação dos itens de teste Interface Gráfica - Lógica Testar a lógica interna da interface Testar as chamadas de métodos de classes de objetos. Testar o retorno dos métodos das classes na interface Testar a integração total da interface Utilize o diagrama de Use case, para verificar se todos os requisitos especificados estão sendo contemplados. Utilize a documentação de use Case. Metodologia Cinq Technologies Validações Técnica - Estrutura da Fase de Validações Check List - Identificação dos itens de teste Classes Para cada método coordenadores (complexos), criar um plano de teste separado e testar isoladamente. Testar a lógica interna do método. Testar as chamadas a outros métodos de classe. Verificar se a interface está correta Utilizar o Diagrama de Sequência, Diagrama de classes, Projeto Físico de Banco de dados, Use case, documentações em geral. Metodologia Cinq Technologies Validações Técnica - Estrutura da Fase de Validações Check List - Identificação dos itens de teste Relatórios Testar e Verificar o comportamento do relatório no caso de falta de impressora Testar e verificar o comportamento do relatório em tipos diferentes de impressora. Metodologia Cinq Technologies Validações Técnica - Estrutura da Fase de Validações Execução dos teste É a etapa onde se deve executar as Validações conforme definidos no plano. Solução dos problemas Seguir as recomendações do PR 5.7-01 (RO). Metodologia Cinq Technologies Validações Técnica - Estrutura da Fase de Validações Sequência de atividades Criar Check List Identificar itens de teste; Executar o plano de teste; Solucionar possíveis problemas; Revalidar o item com problema; Sequência de atividades Fase de Aceitação/Implantação/Treinamento Metodologia Cinq Technologies Validações Estudo de Caso Montar Check List do estudo de caso Aceitação/Implantação/ Treinamento Metodologia Cinq Technologies Aceitação/Implantação/Treinamento Objetivos O principal objetivo desta fase é disponibilizar o sistema para os usuários, liberando-o para o ambiente de produção. Esta fase está descrita no procedimento PR 5.8-01. Responsável Responsável pelo sistema Metodologia Cinq Technologies Aceitação/Implantação/Treinamento Produtos esperados Formulário Descrição de Configuração para Implantação de Sistema/Serviço Aceitação/Implantação de Sistemas Instalador do sistema; Documento de implantação assinado; Documento aceitação assinado; Plano de treinamento; Metodologia Cinq Technologies Aceitação/Implantação/Treinamento Estrutura da Fase de Aceitação/Implantação/Treinamento Seguir o Procedimento PR 5.8-01 Metodologia Cinq Technologies Aceitação/Implantação/Treinamento Estudo de Caso Montar Montar Montar Montar formulário descrição de configuração documento de implantação documento de aceitação um plano de treinamento Manutenção Metodologia Cinq Technologies Manutenção Objetivos Liberar novas versões do sistema, procurando atender a novas necessidades dos clientes ou a uma evolução natural do sistema. Responsável Equipe desenvolvimento do projeto Produtos esperados Manutenção Evolutiva – Ficha de solicitação alteração Manutenção corretiva – ROs Produto com nova versão. Metodologia Cinq Technologies Manutenção Estrutura da Fase de Manutenção Seguir o procedimento PR 5.10-02 Metodologia Cinq Technologies Manutenção Estudo de Caso Montar Ficha de solicitação alteração Montar Registro Ocorrência Gerar nova versão sistemas conforme regras de versões. Metodologia Cinq Technologies OBRIGADO PELA ATENÇÃO