Centro Universitário Nove de Julho
Centro Universitário Nove de Julho
Engenharia
Engenharia
de Software
de Software
Diferença entre as abordagens: Análise Estruturada
Análise Essencial
Engenharia da Informação Análise Orientada a Objeto
Profº. Edson Tarcísio França
“O desconhecimento do Analista”
As dificuldades com a Análise de Sistemas
“O desconhecimento do Usuário”
• Usuário em geral não sabem o que é ou não viável • Ausência de um Modelo
• Tecnologia
“A dificuldade da documentação”
• Especificação do Sistema = Contrato • Dificuldade em conhecer a empresa e o trabalho do usuário • O Analista não possuem o dom da telepatia
• Gerentes executores ao invés de explicadores
“Como distinguir a floresta das árvores”
• Analista sobrecarregado com detalhes
• Necessidade de um esquema para organizar os detalhes • O método Top-Down, Bottom-up, Middle-up
ABORDAGENS METODOLÓGICAS
Orientação a Objeto Engenharia da Informação Essencial EstruturadaVisão Geral - DESENVOLVIMENTO DE SISTEMAS
Época Enfoque Abordagem
Década de 70 Yourdon,DeMarco, Gane, Sarson, Constantine Década de 80 McMenamim, Palmer Década de 80
James Martin, Clive Finkelstein Década de 80/90 Jacobson,Rumbaugh, Top-Down Decomposição Funcional 1. Processos 2. Controles 3. Dados 1. Dados 2. Processos 3. Tecnologia 4. Pessoas Análise Estruturada Análise Essencial Engenharia da Informação
Análise Orientada a Objetos Bottom-up Definição objetos/classe Top-Down Planejamento Estratégico 1.Controles 2. Processos 3. Dados 1. Dados 2. Controles 3. Processos Middle-up Lista de Eventos
Análise Estruturada
! Método Top-Down
! Permite ver o sistema por inteiro e depois que se
perceba o detalhe de cada parte
! Estruturação do Conhecimento
! Princípios : Abstração - Dividir-para-Conquistar ! Técnica de Modelagem Funcional (DFD)
! Técnica de Descrição de Programas (DEM) ! Técnica de Modelagem de Dados(MER)
Problema do Mundo Real Modelagem do Problema Especificações
É gráfica, composta em sua maior parte de diagrama
É particionada, não uma especificação única, mas uma rede de mini-especificações
É top-dowm, apresentada em um modo hierárquico com sua progressão do mais resumido ao mais detalhado
Análise Essencial
! Modelo quinta-Essência ( Negócio) ! Essência do Negócio
! Atividades Fundamentais X Custodiais ! Consolidação e fatoração de funções ! Tecnologia perfeita(dentro do escopo)
Análise Essencial
DEVEMOS COMEÇAR A ESPECIFICAÇÃO DE UM
SISTEMA PELA IDENTIFICAÇÃO DOS EVENTOS QUE O AFETAM.
Análise Essencial
Modelo
Essencial
Modelo de
Implementação
!Modelo Essencial apresenta o sistema num grau de abstração completamente independente de restrições tecnológicas.
!Modelo Implementação apresenta o sistema num grau de abstração completamente dependente de restrições tecnológicas. É derivado do modelo essencial. Diz respeito a implementação do sistema.
Análise Essencial
Terminologia
Atividade Essenciais Pessoas Máquinas Papel Meio Magnético Neurônios Memória Essencial Essência EncarnaçãoEngenharia da Informação
FASES
Análise de Informações
Identificar e documentar os dados necessários para o alcance dos objetivos estratégicos da empresa.
Produz o modelo de dados mais generalizado contendo as Entidade de Dados em nível de negócio
Planejamento de Informação
Definir e priorizar as necessidades relacionadas aos sistemas de informações que apoiarão os negócios da área ou empresa
Análise de Dados
Engenharia da Informação
FASES
Formação de Procedimento
Define os procedimentos de manutenção das Entidades dos Modelos de Dados
Os Procedimentos são produzidos baseados em ocorrências de eventos de modificação, deleção e inclusão em Entidades e Relacionamentos.
Dentro de cada procedimento são definidos os eventos em seqüência, as condições de pré-evento e as condições de pós-evento
Engenharia da Informação
FASES
Análise de Dados
Visa complementar a parte funcional com definições dos
procedimentos de uso(substitutivo do lado funcional da análise de sistemas)
Análise de Distribuição
Produz um plano de distribuição geográfica dos dados e funções e, com a tendência de processamento descentralizado; é
fundamental na determinação dos recursos e estratégias para a base de dados distribuídas em ambientes cliente/servidor
Engenharia da Informação
FASES
Projeto de Bancos de Dados
Contempla as atividades de tradução dos modelos de dados para os modelos de implementação
Projeto e definição do sistemas
Esta fase enfatiza as atividades de modularização de procedimentos em rotinas, programas, tasks, menus
Engenharia da Informação
PESSOAS TECNOLOG IA ATIVIDADES B C D A E DADOSAnálise Orientada a Objetos
AMBIENTE SEM TECNOLOGIA OO! Conceitos de Objeto(Dados + Métodos + Mensagens) nível
de abstração
! Enfoque a Objeto / Evento para estruturação das funções ! Conceitos de Herança e Encapsulamento
! Visão de Reusabilidade (Função e Código) ! Interface com o usuário
AMBIENTE COM TECNOLOGIA OO(Complemento)
Análise Orientada a Objetos -
UML Objetivos!
Servir como linguagem de construção de modelos,
utilizável tanto por pessoas como por máquinas
!
Modelar qualquer tipo de sistema usando
conceitos OO
!
Estabelecer um acoplamento explícito tanto para
artefatos conceituais como para artefatos
executáveis
!
Compreender os aspectos de escala inerentes em
sistemas complexos de alta criticidade
Análise Orientada a Objetos
Sistemas Orientado a Objetos Visualização :
Qualquer SOO pode ser visualizado como um conjunto de objetos inter-relacionados que interagem dinâmica e
colaborativamente por meio de mensagens para efetuar tarefas de um domínio de problemas
Análise Orientada a Objetos
Comunicação entre Objetos! Objetos reagem a estímulos comunicando e interagindo
por meio de mensagens
Essência da Tecnologia OO
Essência da Tecnologia OO
" Uma determinada operação de um objeto é ativada se
o objeto receber uma mensagem cujo nome é o nome da operação
" Para usar um objeto é necessário enviar uma
mensagem ao objeto, viável com o conhecimento de seus atributos e operações
MODELO DE VISÃO - UML : DIAGRAMAS Visão Lógica Diagrama de Classes Diagrama de Objetos Diagrama de Interação Diagrama de Estado Diagrama de Atividade Visão da Implementação Diagrama de Componentes
Visão Caso de Uso
Diagrama de Caso de Uso Diagrama de Atividade Visão do Processo
Diagrama de Interação
Visão da Arquitetura Diagrama de Deployment
Modelos e Diagramas
Diagramas de Caso de Uso
Diagramas de
Colaboração ComponentesDiagramas de
Diagramas de Arquitetura Diagramas de Objeto Diagramas Estados Diagramas de Seqüência Diagramas de Classe Diagramas de Atividade Modelos Um Modelo é uma descrição completa de um sistema de uma perspectiva particular
Comparativo
Use Cases Diagrama de Contexto
#Diagrama mais compacto
#Especifica o conteúdo dos fluxos
#Entidade Externas são a origem e
o destino dos fluxos e não
necessariamente interagem com sistema
#Eventos indicam fatos que
acordam o sistema e provocam alguma resposta
#Diagrama ocupa muito espaço #Não especifica o conteúdo dos
fluxos de entrada e saída
#Atores são os que interagem
diretamente com sistema
#Use Cases indicam situações
Objetos Entidades #Conhecimento e comportamento #Não obrigatoriamente normalizados #Ativos #Relacionamento N.N só se
tornam objetos se tiverem um comportamento próprio
#Relacionamentos não
possuem atributos
#Podem corresponder a várias
tabelas #Dados #Normalizadas #Passivo #Relacionamento N:N torna-se Entidade associativa #Relacionamentos podem possuir atributos
#São implementados por uma
única tabela
Bibliografia
Larman, Craig Utilizando UML e padrões : uma introdução à
análise e ao projeto orientados a objeto, Porto Alegre : Bookman,
2000
Barbieri, Carlos Modelagem de Dados, Rio de Janeiro: Infobook, 1994
Neto, A. F., Furlan, J. D.,Higa Engenharia da Informação:
Metodologia,Técnicas e Ferramentas, São Paulo:McGraw-Hill,
1988
Pompilho, S. Análise Essencial: Guia Prático de Análise de