SlideShare une entreprise Scribd logo
1  sur  24
O workflow de análise
Modelação de Sistemas de Informação - 2010 / 2011
Objectivo da análise
¤  Produzir um modelo de análise com
    o comportamento desejado para o sistema     Inception Elaboration   Construction   Transition



   ¤    O que o sistema faz e não como o faz


   ¤    na linguagem do negócio
Modelo de Análise
¤  No Modelo de Análise identificamos:
  ¤  Classes de análise
  ¤  Realizações de use cases
                                               P3

                                    P1




            Analysis Model                     P4



                                    P2




                   analysis class        use case realization
Detalhe do workflow de Análise

                Architectural analysis
    Architect




Use Case Engineer            Analyze a use case




Component Engineer                           Analyze a class   Analyze a package
Linhas orientadoras para a Análise

¤  O modelo de análise está sempre na linguagem do
    negócio. As abstracções encontradas no modelo de
    análise deverão fazer parte do vocabulário do domínio
    do negócio

¤  Os modelos devem "contar uma história". Cada
    diagrama produzido deverá elucidar alguma parte
    importante do comportamento desejado para o
    sistema.

¤  Concentrem-se em capturar a "big picture". Não fiquem
    presos nos detalhes de como irá funcionar o sistema –
    será realizado na fase de design.
Linhas orientadoras para a Análise

¤  Num sistema de complexidade moderada podem surgir
    entre 50 a 100 classes no modelo de análise

¤  Inclua apenas as classes que fazem parte do vocabulário
    do domínio do problema

¤  Não se preocupe com classes que definam a forma como
    algo é implementado – trataremos deste assunto no design

¤  Foque-se nas classes e associações

¤  Não se preocupe muito com a herança de classes

¤  "Keep it simple!"
Descoberta das classes de análise
Modelação de Sistemas de Informação
Analisar um Use Case

Business model
[or domain model]
                    Use case
                    engineer    Analysis class


  Requirements
  model
                    Analyse a
                    use case


 Use case model

                                 Use case
                                 realization


   Architecture
   description
O que são classes de análise?
¤  As classes de análise representam abstrações
    claras do domínio do problema                   class name   BankAccount
    ¤  podem vir a ser refinadas em uma ou mais
                                                                 name
        classes de desenho
                                                    attributes   address
                                                                 balance
¤  Todas as classes do modelo de análise devem
    ser classes de análise
                                                                 deposit()
                                                    operations   withdraw()
¤  As classes de análise têm:
                                                                 calculateInterest()
    ¤  Um conjunto de atributos de alto nível
   ¤  Operações que são especificações de alto
       nível do conjunto de serviços fundamentais
       que a classe terá que disponibilizar

¤  As classes de análise devem ser mapeadas dos
    conceitos do negócio do mundo real
O que faz uma boa classe de análise?

¤  O seu nome reflete o seu objectivo

¤  É um mapeamento de uma característica do domínio do problema

¤  Tem uma alta coesão

¤  Tem um baixo acoplamento

¤  "Regras de ouro"
   ¤    3 a 5 responsabilidades por classe
   ¤    cada classe colabora com outras
   ¤    cuidado com muitas classes pequenas
   ¤    cuidado com classes muito grandes
   ¤    cuidado com os "functoids" – funções disfarçadas de classes
   ¤    Cuidado com classes omnipotentes
   ¤    Evitar árvores de herança muito profundas
Descobrir Classes

¤  Efetuar a análise substantivo/verbo dos documentos
  ¤  Os substantivos são candidatos a classes ou atributos
  ¤  Os verbos são candidatos a responsabilidades ou operações

¤  Efetuar análise CRC – uma técnica de "brainstorming"

¤  Em ambas as técnicas ter cuidado com as "falsas" classes
  ¤  procurar sinónimos
  ¤  procurar homónimos

¤  Procurar as classes escondidas
Procedimento para análise substantivo/verbo


¤  Recolher todos os documentos relevantes
   ¤    Documento de requisitos,
   ¤    Use Cases
   ¤    Glossário do projeto
   ¤    etc.

¤  Fazer um lista de substantivos e sintagmas nominais
   ¤  São classes candidatas ou atributos

¤  Fazer uma lista de verbos ou sintagmas verbais
   ¤  São responsabilidades candidatas

¤  Tentar atribuir atributos e responsabilidades a classes
Procedimento de análise CRC
     ¤      CRC é uma técnica de "brainstorming" onde se capturam em post-its as coisas importantes do
             domínio do problema.

     ¤      CRC - Class, Responsibilities and Collaborators

     ¤      Separa a recolha de informação da sua análise
             ¤  1ª Parte: Brainstorm
                   ¤    todas as ideias são boas
                   ¤    Não discutir ou debater – apontar e analisar depois
             ¤    2ª Parte: Analisar a informação e consolidar com a análise substantivo/verbo


                   Class Name: BankAccount
                   Responsibilities:           Collaborators:
things the
                   Maintain balance           Bank                    things the
class does                                                            class works
                                                                      with
Descobrir classes de outras fontes

¤  Objetos físicos tais como aviões, pessoas, hotéis, etc.
    podem vir a representar classes

¤  formulários e outro tipo de "papelada" – cuidado com a
    abordagem

¤  Interfaces com o mundo exterior

¤  Entidades conceptuais que são fundamentais para a
    operação do negócio mas que não se manifestam
    como coisas concretas, e.g. LoyaltyProgramme
Criar uma "primeira versão" do modelo de análise


¤  Consolidar os outputs das diferentes análises
    (substantivo/verbo, CRC, ou outras) num modelo UML
    utilizando uma ferramenta de modelação
Diagramas de classes e de objectos
Modelação de Sistemas de Informação
Diagramas de classes
¤    É o ponto central do desenvolvimento OO.

¤    Em análise, tem como objectivo descrever a estrutura das entidades manipuladas pelos
      utilizadores.

¤    No desenho, o diagrama de classes apresenta a estrutura de um código orientado por
      objetos, ou num nível de detalhes maior, os módulos da linguagem de desenvolvimento.
Objetivo dos diagramas de classes

¤  Um diagrama de classes serve para modelar o vocabulário de um sistema, do
    ponto de vista do utilizador/problema ou do implementador/solução
   ¤    Ponto de vista do utilizador/problema – na fase de captura e análise de requisitos, em
         paralelo com a identificação dos casos de utilização
   ¤    Vocabulário do implementador/solução – na fase de projeto (design)


¤  Construído e refinado ao longo das várias fases do desenvolvimento do software,
    por analistas, projetistas (designers) e implementadores

¤  Também serve para:
   ¤    Especificar colaborações (no âmbito de um caso de utilização ou mecanismo)
   ¤    Especificar esquemas lógicos de bases de dados
   ¤    Especificar vistas (estrutura de dados de formulários, relatórios, etc.)


¤  Modelos de objetos de domínio, negócio, análise e design
Exercício de diagrama de classes

¤  Um recibo tem um numero, uma data de emissão, o nome e o número
    de contribuinte da empresa que passa o recibo e do cliente, um
    subtotal, um total de IVA, um total e um conjunto variável de linhas

¤  Cada linha do recibo refere um só produto (podendo cada um destes
    ser referido por mais do que uma linha do recibo) e contém a
    quantidade do produto comprado, a sua descrição, a taxa de IVA (em
    percentagem) paga por esse produto, o seu preço unitário e o preço a
    pagar tendo em conta a quantidade comprada.

¤  Um recibo é passado por uma só Empresa a um Cliente (que pode ter
    muitos recibos da mesma empresa passados em seu nome).

¤  A empresa é identificada por um número de contribuinte, tem um
    nome, um endereço, um numero de telefone e um número de fax.

¤  O recibo deve poder ser impresso.
Solução possível
Diagramas de objetos

¤  Finalidade
  ¤  Um diagrama de objetos mostra instâncias de classes
      (objetos) e de associações (ligações entre objetos)


  ¤  Utilizados para ilustrar cenários / configurações particulares


  ¤  Base para diagramas de colaboração
Exemplo: Árvore genealógica
                      1 0..*
      Homem                         Casal                            Mulher                    ¤  Como se chama o
                                0..1
                                                    0..*      1
                                                                                                   neto?
                                 0..*       -descendente
                                                                                               ¤  Quem é o sogro da
                                   Pessoa
                               -nome
                                                                                                   Leonor?

  João : Homem                          Maria : Mulher                        Pedro : Homem                 Manuela : Mulher



                 João & Maria : Casal                                                    Pedro & Manuela : Casal




         -descendente                             -descendente                       -descendente                      -descendente

Afonso : Homem                          Leonor : Mulher                     Carlos : Homem                    Josefa : Mulher



                                                     Carlos & Leonor : Casal


                                                                    -descendente

                                                           Filipe : Homem
Exercício diagrama de objetos




¤  Com base neste diagrama de classe, elaborar um diagrama de objetos,
    elaborar um diagrama de objectos que corresponda à seguinte
    situação: “A Delta satisfaz a encomenda 456, em 2009/03/31. A
    encomenda 456, efectuada em 2009/02/10, tem dois itens: (i) produto
    A, café lote diamante, 1000 unidades, 300€; (ii) produto B, café lote
    normal, 500 unidades, 200€. Ambos os produtos são de tipo alimentar.”
Solução possível

Contenu connexe

Tendances (20)

Introdução à linguagem UML
Introdução à linguagem UMLIntrodução à linguagem UML
Introdução à linguagem UML
 
Programação OO - Java
Programação OO - JavaProgramação OO - Java
Programação OO - Java
 
Análise e Modelagem com UML
Análise e Modelagem com UMLAnálise e Modelagem com UML
Análise e Modelagem com UML
 
Diagrama de classes1.1
Diagrama de classes1.1Diagrama de classes1.1
Diagrama de classes1.1
 
Apostila uml
Apostila umlApostila uml
Apostila uml
 
Introdução à análise orientada a objetos parte 1
Introdução à análise orientada a objetos parte 1Introdução à análise orientada a objetos parte 1
Introdução à análise orientada a objetos parte 1
 
Aula 02 - UML e Padrões de Projeto
Aula 02 - UML e Padrões de ProjetoAula 02 - UML e Padrões de Projeto
Aula 02 - UML e Padrões de Projeto
 
Modelando Sistemas com UML
Modelando Sistemas com UMLModelando Sistemas com UML
Modelando Sistemas com UML
 
Uml ppoint
Uml ppointUml ppoint
Uml ppoint
 
Diagrama classes
Diagrama classesDiagrama classes
Diagrama classes
 
Padrões de Projeto
Padrões de ProjetoPadrões de Projeto
Padrões de Projeto
 
Análise Orientada a Objetos - Objetos E Classes
Análise Orientada a Objetos  -   Objetos E ClassesAnálise Orientada a Objetos  -   Objetos E Classes
Análise Orientada a Objetos - Objetos E Classes
 
Artigo c#
Artigo c#Artigo c#
Artigo c#
 
Visibilidade e Diagrama de Classe de Projeto na UML
Visibilidade e Diagrama de Classe de Projeto na UMLVisibilidade e Diagrama de Classe de Projeto na UML
Visibilidade e Diagrama de Classe de Projeto na UML
 
Java programação orientada a objetos
Java   programação orientada a objetosJava   programação orientada a objetos
Java programação orientada a objetos
 
SCJA
SCJASCJA
SCJA
 
Uml
UmlUml
Uml
 
O paradigma da orientação a objetos
O paradigma da orientação a objetosO paradigma da orientação a objetos
O paradigma da orientação a objetos
 
UML
UMLUML
UML
 
Curso Básico de UML
Curso Básico de UMLCurso Básico de UML
Curso Básico de UML
 

En vedette

Diagrama de classe
Diagrama de classeDiagrama de classe
Diagrama de classeSuissa
 
DETRAN MAIS FÁCIL: CONSTRUÇÃO DE APP WEB USANDO O FRAMEWORK ÁGIL YII
DETRAN MAIS FÁCIL: CONSTRUÇÃO DE APP WEB USANDO O FRAMEWORK ÁGIL YII DETRAN MAIS FÁCIL: CONSTRUÇÃO DE APP WEB USANDO O FRAMEWORK ÁGIL YII
DETRAN MAIS FÁCIL: CONSTRUÇÃO DE APP WEB USANDO O FRAMEWORK ÁGIL YII Eder Nogueira
 
Metodologia de desenvolvimento de sistemas
Metodologia  de desenvolvimento de sistemasMetodologia  de desenvolvimento de sistemas
Metodologia de desenvolvimento de sistemasPriscila Stuani
 
Trabalho de diplomação I
Trabalho de diplomação ITrabalho de diplomação I
Trabalho de diplomação IEdmilson Hora
 
Modelagem Aplicações Web com UML
Modelagem Aplicações Web com UMLModelagem Aplicações Web com UML
Modelagem Aplicações Web com UMLClaudio Martins
 
UML - Criando Diagramas Eficientes
UML - Criando Diagramas EficientesUML - Criando Diagramas Eficientes
UML - Criando Diagramas EficientesRodrigo Cascarrolho
 

En vedette (12)

Modelagem de Sistemas de Informação 08 - Diagrama de Classes
Modelagem de Sistemas de Informação 08 - Diagrama de ClassesModelagem de Sistemas de Informação 08 - Diagrama de Classes
Modelagem de Sistemas de Informação 08 - Diagrama de Classes
 
Diagrama de classe
Diagrama de classeDiagrama de classe
Diagrama de classe
 
DETRAN MAIS FÁCIL: CONSTRUÇÃO DE APP WEB USANDO O FRAMEWORK ÁGIL YII
DETRAN MAIS FÁCIL: CONSTRUÇÃO DE APP WEB USANDO O FRAMEWORK ÁGIL YII DETRAN MAIS FÁCIL: CONSTRUÇÃO DE APP WEB USANDO O FRAMEWORK ÁGIL YII
DETRAN MAIS FÁCIL: CONSTRUÇÃO DE APP WEB USANDO O FRAMEWORK ÁGIL YII
 
Metodologia de desenvolvimento de sistemas
Metodologia  de desenvolvimento de sistemasMetodologia  de desenvolvimento de sistemas
Metodologia de desenvolvimento de sistemas
 
Trabalho de diplomação I
Trabalho de diplomação ITrabalho de diplomação I
Trabalho de diplomação I
 
Apostila UML
Apostila UMLApostila UML
Apostila UML
 
UML - Diagrama de Pacotes
UML - Diagrama de PacotesUML - Diagrama de Pacotes
UML - Diagrama de Pacotes
 
Tcc Pet Caoveniencia
Tcc Pet CaovenienciaTcc Pet Caoveniencia
Tcc Pet Caoveniencia
 
Diagramas de pacotes
Diagramas de pacotesDiagramas de pacotes
Diagramas de pacotes
 
Diagramas de componentes
Diagramas de componentesDiagramas de componentes
Diagramas de componentes
 
Modelagem Aplicações Web com UML
Modelagem Aplicações Web com UMLModelagem Aplicações Web com UML
Modelagem Aplicações Web com UML
 
UML - Criando Diagramas Eficientes
UML - Criando Diagramas EficientesUML - Criando Diagramas Eficientes
UML - Criando Diagramas Eficientes
 

Similaire à Workflows, diagramas e classes de Analise. Sistemas de Informação

Similaire à Workflows, diagramas e classes de Analise. Sistemas de Informação (20)

POO - Aula 003
POO - Aula 003POO - Aula 003
POO - Aula 003
 
Aula desesenvolvimento segunda semana
Aula desesenvolvimento segunda semanaAula desesenvolvimento segunda semana
Aula desesenvolvimento segunda semana
 
Trabalho de análise e projeto 2
Trabalho de análise e projeto 2Trabalho de análise e projeto 2
Trabalho de análise e projeto 2
 
Aula 7 diagramas_classes2
Aula 7 diagramas_classes2Aula 7 diagramas_classes2
Aula 7 diagramas_classes2
 
Aula 3-IDB - Modelo Conceptual-2.pdf
Aula 3-IDB - Modelo Conceptual-2.pdfAula 3-IDB - Modelo Conceptual-2.pdf
Aula 3-IDB - Modelo Conceptual-2.pdf
 
Fluent NHibernate - Baby Steps
Fluent NHibernate - Baby StepsFluent NHibernate - Baby Steps
Fluent NHibernate - Baby Steps
 
Aula uml 3
Aula uml 3Aula uml 3
Aula uml 3
 
Padrões De Projeto e Anti Patterns
Padrões De Projeto e Anti PatternsPadrões De Projeto e Anti Patterns
Padrões De Projeto e Anti Patterns
 
Apresentação versão 1.5
Apresentação   versão 1.5Apresentação   versão 1.5
Apresentação versão 1.5
 
Object Oriented Programming
Object Oriented Programming Object Oriented Programming
Object Oriented Programming
 
Padroes De Projeto
Padroes De ProjetoPadroes De Projeto
Padroes De Projeto
 
Padrões de Projeto de Software
Padrões de Projeto de SoftwarePadrões de Projeto de Software
Padrões de Projeto de Software
 
aula03_uml_diagrama_classe.pdf
aula03_uml_diagrama_classe.pdfaula03_uml_diagrama_classe.pdf
aula03_uml_diagrama_classe.pdf
 
Modelagem de dados
Modelagem de dadosModelagem de dados
Modelagem de dados
 
Domain Driven Design – DDD além da teoria!, por Paulo Victor Gomes
Domain Driven Design – DDD além da teoria!, por Paulo Victor GomesDomain Driven Design – DDD além da teoria!, por Paulo Victor Gomes
Domain Driven Design – DDD além da teoria!, por Paulo Victor Gomes
 
DDD in PHP
DDD in PHPDDD in PHP
DDD in PHP
 
Análise de sistemas oo 1
Análise de sistemas oo   1Análise de sistemas oo   1
Análise de sistemas oo 1
 
Clean code
Clean codeClean code
Clean code
 
Aula01-IntroducaoOO.pptx
Aula01-IntroducaoOO.pptxAula01-IntroducaoOO.pptx
Aula01-IntroducaoOO.pptx
 
FC-Logic
FC-LogicFC-Logic
FC-Logic
 

Plus de Pedro De Almeida

Java memory model primary ref. - faq
Java memory model   primary ref. - faqJava memory model   primary ref. - faq
Java memory model primary ref. - faqPedro De Almeida
 
Sistemas Operativos - Processos e Threads
Sistemas Operativos - Processos e ThreadsSistemas Operativos - Processos e Threads
Sistemas Operativos - Processos e ThreadsPedro De Almeida
 
XSD Incomplete Overview Draft
XSD Incomplete Overview DraftXSD Incomplete Overview Draft
XSD Incomplete Overview DraftPedro De Almeida
 
O Projecto, Gestão de Projectos e o Gestor de Projectos - Parte 1
O Projecto, Gestão de Projectos e o Gestor de Projectos - Parte 1O Projecto, Gestão de Projectos e o Gestor de Projectos - Parte 1
O Projecto, Gestão de Projectos e o Gestor de Projectos - Parte 1Pedro De Almeida
 
Validation of a credit card number
Validation of a credit card numberValidation of a credit card number
Validation of a credit card numberPedro De Almeida
 
Sessão 10 Códigos Cíclicos
Sessão 10 Códigos CíclicosSessão 10 Códigos Cíclicos
Sessão 10 Códigos CíclicosPedro De Almeida
 
Sessao 9 Capacidade de canal e Introdução a Codificação de canal
Sessao 9 Capacidade de canal e Introdução a Codificação de canalSessao 9 Capacidade de canal e Introdução a Codificação de canal
Sessao 9 Capacidade de canal e Introdução a Codificação de canalPedro De Almeida
 
Sessão 8 Codificação Lempel-Ziv
Sessão 8 Codificação Lempel-ZivSessão 8 Codificação Lempel-Ziv
Sessão 8 Codificação Lempel-ZivPedro De Almeida
 
Sessao 7 Fontes com memória e codificação aritmética
Sessao 7 Fontes com memória e codificação aritméticaSessao 7 Fontes com memória e codificação aritmética
Sessao 7 Fontes com memória e codificação aritméticaPedro De Almeida
 
Sessao 5 Redundância e introdução à codificação de fonte
Sessao 5 Redundância e introdução à codificação de fonteSessao 5 Redundância e introdução à codificação de fonte
Sessao 5 Redundância e introdução à codificação de fontePedro De Almeida
 
Sessão 6 codificadores estatísticos
Sessão 6 codificadores estatísticosSessão 6 codificadores estatísticos
Sessão 6 codificadores estatísticosPedro De Almeida
 
Sessao 4 - Chaves espúrias e distância de unicidade
Sessao 4 - Chaves espúrias e distância de unicidadeSessao 4 - Chaves espúrias e distância de unicidade
Sessao 4 - Chaves espúrias e distância de unicidadePedro De Almeida
 
Sessao 3 Informação mútua e equívocos
Sessao 3 Informação mútua e equívocosSessao 3 Informação mútua e equívocos
Sessao 3 Informação mútua e equívocosPedro De Almeida
 
Sessao 2 Introdução à T.I e Entropias
Sessao 2 Introdução à T.I e EntropiasSessao 2 Introdução à T.I e Entropias
Sessao 2 Introdução à T.I e EntropiasPedro De Almeida
 
Cripto - Introdução, probabilidades e Conceito de Segurança
Cripto - Introdução, probabilidades e Conceito de SegurançaCripto - Introdução, probabilidades e Conceito de Segurança
Cripto - Introdução, probabilidades e Conceito de SegurançaPedro De Almeida
 

Plus de Pedro De Almeida (20)

APM Model in .NET - PT-pt
APM Model in .NET - PT-ptAPM Model in .NET - PT-pt
APM Model in .NET - PT-pt
 
Java memory model primary ref. - faq
Java memory model   primary ref. - faqJava memory model   primary ref. - faq
Java memory model primary ref. - faq
 
Sistemas Operativos - Processos e Threads
Sistemas Operativos - Processos e ThreadsSistemas Operativos - Processos e Threads
Sistemas Operativos - Processos e Threads
 
IP Multicast Routing
IP Multicast RoutingIP Multicast Routing
IP Multicast Routing
 
XSD Incomplete Overview Draft
XSD Incomplete Overview DraftXSD Incomplete Overview Draft
XSD Incomplete Overview Draft
 
O Projecto, Gestão de Projectos e o Gestor de Projectos - Parte 1
O Projecto, Gestão de Projectos e o Gestor de Projectos - Parte 1O Projecto, Gestão de Projectos e o Gestor de Projectos - Parte 1
O Projecto, Gestão de Projectos e o Gestor de Projectos - Parte 1
 
Validation of a credit card number
Validation of a credit card numberValidation of a credit card number
Validation of a credit card number
 
Classes e Objectos JAVA
Classes e Objectos JAVAClasses e Objectos JAVA
Classes e Objectos JAVA
 
Ficheiros em JAVA
Ficheiros em JAVAFicheiros em JAVA
Ficheiros em JAVA
 
Excepções JAVA
Excepções JAVAExcepções JAVA
Excepções JAVA
 
Sessão 10 Códigos Cíclicos
Sessão 10 Códigos CíclicosSessão 10 Códigos Cíclicos
Sessão 10 Códigos Cíclicos
 
Sessao 9 Capacidade de canal e Introdução a Codificação de canal
Sessao 9 Capacidade de canal e Introdução a Codificação de canalSessao 9 Capacidade de canal e Introdução a Codificação de canal
Sessao 9 Capacidade de canal e Introdução a Codificação de canal
 
Sessão 8 Codificação Lempel-Ziv
Sessão 8 Codificação Lempel-ZivSessão 8 Codificação Lempel-Ziv
Sessão 8 Codificação Lempel-Ziv
 
Sessao 7 Fontes com memória e codificação aritmética
Sessao 7 Fontes com memória e codificação aritméticaSessao 7 Fontes com memória e codificação aritmética
Sessao 7 Fontes com memória e codificação aritmética
 
Sessao 5 Redundância e introdução à codificação de fonte
Sessao 5 Redundância e introdução à codificação de fonteSessao 5 Redundância e introdução à codificação de fonte
Sessao 5 Redundância e introdução à codificação de fonte
 
Sessão 6 codificadores estatísticos
Sessão 6 codificadores estatísticosSessão 6 codificadores estatísticos
Sessão 6 codificadores estatísticos
 
Sessao 4 - Chaves espúrias e distância de unicidade
Sessao 4 - Chaves espúrias e distância de unicidadeSessao 4 - Chaves espúrias e distância de unicidade
Sessao 4 - Chaves espúrias e distância de unicidade
 
Sessao 3 Informação mútua e equívocos
Sessao 3 Informação mútua e equívocosSessao 3 Informação mútua e equívocos
Sessao 3 Informação mútua e equívocos
 
Sessao 2 Introdução à T.I e Entropias
Sessao 2 Introdução à T.I e EntropiasSessao 2 Introdução à T.I e Entropias
Sessao 2 Introdução à T.I e Entropias
 
Cripto - Introdução, probabilidades e Conceito de Segurança
Cripto - Introdução, probabilidades e Conceito de SegurançaCripto - Introdução, probabilidades e Conceito de Segurança
Cripto - Introdução, probabilidades e Conceito de Segurança
 

Dernier

Apresentação sobre o Combate a Dengue 2024
Apresentação sobre o Combate a Dengue 2024Apresentação sobre o Combate a Dengue 2024
Apresentação sobre o Combate a Dengue 2024GleyceMoreiraXWeslle
 
AULA-06---DIZIMA-PERIODICA_9fdc896dbd1d4cce85a9fbd2e670e62f.pptx
AULA-06---DIZIMA-PERIODICA_9fdc896dbd1d4cce85a9fbd2e670e62f.pptxAULA-06---DIZIMA-PERIODICA_9fdc896dbd1d4cce85a9fbd2e670e62f.pptx
AULA-06---DIZIMA-PERIODICA_9fdc896dbd1d4cce85a9fbd2e670e62f.pptxGislaineDuresCruz
 
Minha Luta (Mein Kampf), A História do País que Lutou contra a União Soviétic...
Minha Luta (Mein Kampf), A História do País que Lutou contra a União Soviétic...Minha Luta (Mein Kampf), A História do País que Lutou contra a União Soviétic...
Minha Luta (Mein Kampf), A História do País que Lutou contra a União Soviétic...nexocan937
 
LIVRO A BELA BORBOLETA. Ziraldo e Zélio.
LIVRO A BELA BORBOLETA. Ziraldo e Zélio.LIVRO A BELA BORBOLETA. Ziraldo e Zélio.
LIVRO A BELA BORBOLETA. Ziraldo e Zélio.HildegardeAngel
 
Revolução Industrial - Revolução Industrial .pptx
Revolução Industrial - Revolução Industrial .pptxRevolução Industrial - Revolução Industrial .pptx
Revolução Industrial - Revolução Industrial .pptxHlioMachado1
 
organizaao-do-clube-de-lideres-ctd-aamar_compress.pdf
organizaao-do-clube-de-lideres-ctd-aamar_compress.pdforganizaao-do-clube-de-lideres-ctd-aamar_compress.pdf
organizaao-do-clube-de-lideres-ctd-aamar_compress.pdfCarlosRodrigues832670
 
atividades diversas 1° ano alfabetização
atividades diversas 1° ano alfabetizaçãoatividades diversas 1° ano alfabetização
atividades diversas 1° ano alfabetizaçãodanielagracia9
 
Slides Lição 3, CPAD, O Céu - o Destino do Cristão, 2Tr24,.pptx
Slides Lição 3, CPAD, O Céu - o Destino do Cristão, 2Tr24,.pptxSlides Lição 3, CPAD, O Céu - o Destino do Cristão, 2Tr24,.pptx
Slides Lição 3, CPAD, O Céu - o Destino do Cristão, 2Tr24,.pptxLuizHenriquedeAlmeid6
 
TREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.ppt
TREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.pptTREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.ppt
TREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.pptAlineSilvaPotuk
 
Geometria 5to Educacion Primaria EDU Ccesa007.pdf
Geometria  5to Educacion Primaria EDU  Ccesa007.pdfGeometria  5to Educacion Primaria EDU  Ccesa007.pdf
Geometria 5to Educacion Primaria EDU Ccesa007.pdfDemetrio Ccesa Rayme
 
Gametogênese, formação dos gametas masculino e feminino
Gametogênese, formação dos gametas masculino e femininoGametogênese, formação dos gametas masculino e feminino
Gametogênese, formação dos gametas masculino e femininoCelianeOliveira8
 
Slides Lição 2, Central Gospel, A Volta Do Senhor Jesus , 1Tr24.pptx
Slides Lição 2, Central Gospel, A Volta Do Senhor Jesus , 1Tr24.pptxSlides Lição 2, Central Gospel, A Volta Do Senhor Jesus , 1Tr24.pptx
Slides Lição 2, Central Gospel, A Volta Do Senhor Jesus , 1Tr24.pptxLuizHenriquedeAlmeid6
 
QUIZ – GEOGRAFIA - 8º ANO - PROVA MENSAL.pptx
QUIZ – GEOGRAFIA - 8º ANO - PROVA MENSAL.pptxQUIZ – GEOGRAFIA - 8º ANO - PROVA MENSAL.pptx
QUIZ – GEOGRAFIA - 8º ANO - PROVA MENSAL.pptxAntonioVieira539017
 
As Viagens Missionária do Apostolo Paulo.pptx
As Viagens Missionária do Apostolo Paulo.pptxAs Viagens Missionária do Apostolo Paulo.pptx
As Viagens Missionária do Apostolo Paulo.pptxAlexandreFrana33
 
Slides Lição 3, Betel, Ordenança para congregar e prestar culto racional, 2Tr...
Slides Lição 3, Betel, Ordenança para congregar e prestar culto racional, 2Tr...Slides Lição 3, Betel, Ordenança para congregar e prestar culto racional, 2Tr...
Slides Lição 3, Betel, Ordenança para congregar e prestar culto racional, 2Tr...LuizHenriquedeAlmeid6
 
Dança Contemporânea na arte da dança primeira parte
Dança Contemporânea na arte da dança primeira parteDança Contemporânea na arte da dança primeira parte
Dança Contemporânea na arte da dança primeira partecoletivoddois
 
Aula 1, 2 Bacterias Características e Morfologia.pptx
Aula 1, 2  Bacterias Características e Morfologia.pptxAula 1, 2  Bacterias Características e Morfologia.pptx
Aula 1, 2 Bacterias Características e Morfologia.pptxpamelacastro71
 
POETAS CONTEMPORANEOS_TEMATICAS_explicacao.pptx
POETAS CONTEMPORANEOS_TEMATICAS_explicacao.pptxPOETAS CONTEMPORANEOS_TEMATICAS_explicacao.pptx
POETAS CONTEMPORANEOS_TEMATICAS_explicacao.pptxJMTCS
 
VACINAR E DOAR, É SÓ COMEÇAR - - 1º BIMESTRE
VACINAR E DOAR, É SÓ COMEÇAR - - 1º BIMESTREVACINAR E DOAR, É SÓ COMEÇAR - - 1º BIMESTRE
VACINAR E DOAR, É SÓ COMEÇAR - - 1º BIMESTREIVONETETAVARESRAMOS
 

Dernier (20)

Apresentação sobre o Combate a Dengue 2024
Apresentação sobre o Combate a Dengue 2024Apresentação sobre o Combate a Dengue 2024
Apresentação sobre o Combate a Dengue 2024
 
AULA-06---DIZIMA-PERIODICA_9fdc896dbd1d4cce85a9fbd2e670e62f.pptx
AULA-06---DIZIMA-PERIODICA_9fdc896dbd1d4cce85a9fbd2e670e62f.pptxAULA-06---DIZIMA-PERIODICA_9fdc896dbd1d4cce85a9fbd2e670e62f.pptx
AULA-06---DIZIMA-PERIODICA_9fdc896dbd1d4cce85a9fbd2e670e62f.pptx
 
“O AMANHÃ EXIGE O MELHOR DE HOJE” _
“O AMANHÃ EXIGE O MELHOR DE HOJE”       _“O AMANHÃ EXIGE O MELHOR DE HOJE”       _
“O AMANHÃ EXIGE O MELHOR DE HOJE” _
 
Minha Luta (Mein Kampf), A História do País que Lutou contra a União Soviétic...
Minha Luta (Mein Kampf), A História do País que Lutou contra a União Soviétic...Minha Luta (Mein Kampf), A História do País que Lutou contra a União Soviétic...
Minha Luta (Mein Kampf), A História do País que Lutou contra a União Soviétic...
 
LIVRO A BELA BORBOLETA. Ziraldo e Zélio.
LIVRO A BELA BORBOLETA. Ziraldo e Zélio.LIVRO A BELA BORBOLETA. Ziraldo e Zélio.
LIVRO A BELA BORBOLETA. Ziraldo e Zélio.
 
Revolução Industrial - Revolução Industrial .pptx
Revolução Industrial - Revolução Industrial .pptxRevolução Industrial - Revolução Industrial .pptx
Revolução Industrial - Revolução Industrial .pptx
 
organizaao-do-clube-de-lideres-ctd-aamar_compress.pdf
organizaao-do-clube-de-lideres-ctd-aamar_compress.pdforganizaao-do-clube-de-lideres-ctd-aamar_compress.pdf
organizaao-do-clube-de-lideres-ctd-aamar_compress.pdf
 
atividades diversas 1° ano alfabetização
atividades diversas 1° ano alfabetizaçãoatividades diversas 1° ano alfabetização
atividades diversas 1° ano alfabetização
 
Slides Lição 3, CPAD, O Céu - o Destino do Cristão, 2Tr24,.pptx
Slides Lição 3, CPAD, O Céu - o Destino do Cristão, 2Tr24,.pptxSlides Lição 3, CPAD, O Céu - o Destino do Cristão, 2Tr24,.pptx
Slides Lição 3, CPAD, O Céu - o Destino do Cristão, 2Tr24,.pptx
 
TREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.ppt
TREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.pptTREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.ppt
TREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.ppt
 
Geometria 5to Educacion Primaria EDU Ccesa007.pdf
Geometria  5to Educacion Primaria EDU  Ccesa007.pdfGeometria  5to Educacion Primaria EDU  Ccesa007.pdf
Geometria 5to Educacion Primaria EDU Ccesa007.pdf
 
Gametogênese, formação dos gametas masculino e feminino
Gametogênese, formação dos gametas masculino e femininoGametogênese, formação dos gametas masculino e feminino
Gametogênese, formação dos gametas masculino e feminino
 
Slides Lição 2, Central Gospel, A Volta Do Senhor Jesus , 1Tr24.pptx
Slides Lição 2, Central Gospel, A Volta Do Senhor Jesus , 1Tr24.pptxSlides Lição 2, Central Gospel, A Volta Do Senhor Jesus , 1Tr24.pptx
Slides Lição 2, Central Gospel, A Volta Do Senhor Jesus , 1Tr24.pptx
 
QUIZ – GEOGRAFIA - 8º ANO - PROVA MENSAL.pptx
QUIZ – GEOGRAFIA - 8º ANO - PROVA MENSAL.pptxQUIZ – GEOGRAFIA - 8º ANO - PROVA MENSAL.pptx
QUIZ – GEOGRAFIA - 8º ANO - PROVA MENSAL.pptx
 
As Viagens Missionária do Apostolo Paulo.pptx
As Viagens Missionária do Apostolo Paulo.pptxAs Viagens Missionária do Apostolo Paulo.pptx
As Viagens Missionária do Apostolo Paulo.pptx
 
Slides Lição 3, Betel, Ordenança para congregar e prestar culto racional, 2Tr...
Slides Lição 3, Betel, Ordenança para congregar e prestar culto racional, 2Tr...Slides Lição 3, Betel, Ordenança para congregar e prestar culto racional, 2Tr...
Slides Lição 3, Betel, Ordenança para congregar e prestar culto racional, 2Tr...
 
Dança Contemporânea na arte da dança primeira parte
Dança Contemporânea na arte da dança primeira parteDança Contemporânea na arte da dança primeira parte
Dança Contemporânea na arte da dança primeira parte
 
Aula 1, 2 Bacterias Características e Morfologia.pptx
Aula 1, 2  Bacterias Características e Morfologia.pptxAula 1, 2  Bacterias Características e Morfologia.pptx
Aula 1, 2 Bacterias Características e Morfologia.pptx
 
POETAS CONTEMPORANEOS_TEMATICAS_explicacao.pptx
POETAS CONTEMPORANEOS_TEMATICAS_explicacao.pptxPOETAS CONTEMPORANEOS_TEMATICAS_explicacao.pptx
POETAS CONTEMPORANEOS_TEMATICAS_explicacao.pptx
 
VACINAR E DOAR, É SÓ COMEÇAR - - 1º BIMESTRE
VACINAR E DOAR, É SÓ COMEÇAR - - 1º BIMESTREVACINAR E DOAR, É SÓ COMEÇAR - - 1º BIMESTRE
VACINAR E DOAR, É SÓ COMEÇAR - - 1º BIMESTRE
 

Workflows, diagramas e classes de Analise. Sistemas de Informação

  • 1. O workflow de análise Modelação de Sistemas de Informação - 2010 / 2011
  • 2. Objectivo da análise ¤  Produzir um modelo de análise com o comportamento desejado para o sistema Inception Elaboration Construction Transition ¤  O que o sistema faz e não como o faz ¤  na linguagem do negócio
  • 3. Modelo de Análise ¤  No Modelo de Análise identificamos: ¤  Classes de análise ¤  Realizações de use cases P3 P1 Analysis Model P4 P2 analysis class use case realization
  • 4. Detalhe do workflow de Análise Architectural analysis Architect Use Case Engineer Analyze a use case Component Engineer Analyze a class Analyze a package
  • 5. Linhas orientadoras para a Análise ¤  O modelo de análise está sempre na linguagem do negócio. As abstracções encontradas no modelo de análise deverão fazer parte do vocabulário do domínio do negócio ¤  Os modelos devem "contar uma história". Cada diagrama produzido deverá elucidar alguma parte importante do comportamento desejado para o sistema. ¤  Concentrem-se em capturar a "big picture". Não fiquem presos nos detalhes de como irá funcionar o sistema – será realizado na fase de design.
  • 6. Linhas orientadoras para a Análise ¤  Num sistema de complexidade moderada podem surgir entre 50 a 100 classes no modelo de análise ¤  Inclua apenas as classes que fazem parte do vocabulário do domínio do problema ¤  Não se preocupe com classes que definam a forma como algo é implementado – trataremos deste assunto no design ¤  Foque-se nas classes e associações ¤  Não se preocupe muito com a herança de classes ¤  "Keep it simple!"
  • 7. Descoberta das classes de análise Modelação de Sistemas de Informação
  • 8. Analisar um Use Case Business model [or domain model] Use case engineer Analysis class Requirements model Analyse a use case Use case model Use case realization Architecture description
  • 9. O que são classes de análise? ¤  As classes de análise representam abstrações claras do domínio do problema class name BankAccount ¤  podem vir a ser refinadas em uma ou mais name classes de desenho attributes address balance ¤  Todas as classes do modelo de análise devem ser classes de análise deposit() operations withdraw() ¤  As classes de análise têm: calculateInterest() ¤  Um conjunto de atributos de alto nível ¤  Operações que são especificações de alto nível do conjunto de serviços fundamentais que a classe terá que disponibilizar ¤  As classes de análise devem ser mapeadas dos conceitos do negócio do mundo real
  • 10. O que faz uma boa classe de análise? ¤  O seu nome reflete o seu objectivo ¤  É um mapeamento de uma característica do domínio do problema ¤  Tem uma alta coesão ¤  Tem um baixo acoplamento ¤  "Regras de ouro" ¤  3 a 5 responsabilidades por classe ¤  cada classe colabora com outras ¤  cuidado com muitas classes pequenas ¤  cuidado com classes muito grandes ¤  cuidado com os "functoids" – funções disfarçadas de classes ¤  Cuidado com classes omnipotentes ¤  Evitar árvores de herança muito profundas
  • 11. Descobrir Classes ¤  Efetuar a análise substantivo/verbo dos documentos ¤  Os substantivos são candidatos a classes ou atributos ¤  Os verbos são candidatos a responsabilidades ou operações ¤  Efetuar análise CRC – uma técnica de "brainstorming" ¤  Em ambas as técnicas ter cuidado com as "falsas" classes ¤  procurar sinónimos ¤  procurar homónimos ¤  Procurar as classes escondidas
  • 12. Procedimento para análise substantivo/verbo ¤  Recolher todos os documentos relevantes ¤  Documento de requisitos, ¤  Use Cases ¤  Glossário do projeto ¤  etc. ¤  Fazer um lista de substantivos e sintagmas nominais ¤  São classes candidatas ou atributos ¤  Fazer uma lista de verbos ou sintagmas verbais ¤  São responsabilidades candidatas ¤  Tentar atribuir atributos e responsabilidades a classes
  • 13. Procedimento de análise CRC ¤  CRC é uma técnica de "brainstorming" onde se capturam em post-its as coisas importantes do domínio do problema. ¤  CRC - Class, Responsibilities and Collaborators ¤  Separa a recolha de informação da sua análise ¤  1ª Parte: Brainstorm ¤  todas as ideias são boas ¤  Não discutir ou debater – apontar e analisar depois ¤  2ª Parte: Analisar a informação e consolidar com a análise substantivo/verbo Class Name: BankAccount Responsibilities: Collaborators: things the Maintain balance Bank things the class does class works with
  • 14. Descobrir classes de outras fontes ¤  Objetos físicos tais como aviões, pessoas, hotéis, etc. podem vir a representar classes ¤  formulários e outro tipo de "papelada" – cuidado com a abordagem ¤  Interfaces com o mundo exterior ¤  Entidades conceptuais que são fundamentais para a operação do negócio mas que não se manifestam como coisas concretas, e.g. LoyaltyProgramme
  • 15. Criar uma "primeira versão" do modelo de análise ¤  Consolidar os outputs das diferentes análises (substantivo/verbo, CRC, ou outras) num modelo UML utilizando uma ferramenta de modelação
  • 16. Diagramas de classes e de objectos Modelação de Sistemas de Informação
  • 17. Diagramas de classes ¤  É o ponto central do desenvolvimento OO. ¤  Em análise, tem como objectivo descrever a estrutura das entidades manipuladas pelos utilizadores. ¤  No desenho, o diagrama de classes apresenta a estrutura de um código orientado por objetos, ou num nível de detalhes maior, os módulos da linguagem de desenvolvimento.
  • 18. Objetivo dos diagramas de classes ¤  Um diagrama de classes serve para modelar o vocabulário de um sistema, do ponto de vista do utilizador/problema ou do implementador/solução ¤  Ponto de vista do utilizador/problema – na fase de captura e análise de requisitos, em paralelo com a identificação dos casos de utilização ¤  Vocabulário do implementador/solução – na fase de projeto (design) ¤  Construído e refinado ao longo das várias fases do desenvolvimento do software, por analistas, projetistas (designers) e implementadores ¤  Também serve para: ¤  Especificar colaborações (no âmbito de um caso de utilização ou mecanismo) ¤  Especificar esquemas lógicos de bases de dados ¤  Especificar vistas (estrutura de dados de formulários, relatórios, etc.) ¤  Modelos de objetos de domínio, negócio, análise e design
  • 19. Exercício de diagrama de classes ¤  Um recibo tem um numero, uma data de emissão, o nome e o número de contribuinte da empresa que passa o recibo e do cliente, um subtotal, um total de IVA, um total e um conjunto variável de linhas ¤  Cada linha do recibo refere um só produto (podendo cada um destes ser referido por mais do que uma linha do recibo) e contém a quantidade do produto comprado, a sua descrição, a taxa de IVA (em percentagem) paga por esse produto, o seu preço unitário e o preço a pagar tendo em conta a quantidade comprada. ¤  Um recibo é passado por uma só Empresa a um Cliente (que pode ter muitos recibos da mesma empresa passados em seu nome). ¤  A empresa é identificada por um número de contribuinte, tem um nome, um endereço, um numero de telefone e um número de fax. ¤  O recibo deve poder ser impresso.
  • 21. Diagramas de objetos ¤  Finalidade ¤  Um diagrama de objetos mostra instâncias de classes (objetos) e de associações (ligações entre objetos) ¤  Utilizados para ilustrar cenários / configurações particulares ¤  Base para diagramas de colaboração
  • 22. Exemplo: Árvore genealógica 1 0..* Homem Casal Mulher ¤  Como se chama o 0..1 0..* 1 neto? 0..* -descendente ¤  Quem é o sogro da Pessoa -nome Leonor? João : Homem Maria : Mulher Pedro : Homem Manuela : Mulher João & Maria : Casal Pedro & Manuela : Casal -descendente -descendente -descendente -descendente Afonso : Homem Leonor : Mulher Carlos : Homem Josefa : Mulher Carlos & Leonor : Casal -descendente Filipe : Homem
  • 23. Exercício diagrama de objetos ¤  Com base neste diagrama de classe, elaborar um diagrama de objetos, elaborar um diagrama de objectos que corresponda à seguinte situação: “A Delta satisfaz a encomenda 456, em 2009/03/31. A encomenda 456, efectuada em 2009/02/10, tem dois itens: (i) produto A, café lote diamante, 1000 unidades, 300€; (ii) produto B, café lote normal, 500 unidades, 200€. Ambos os produtos são de tipo alimentar.”