Sistemas de Informa - PowerPoint PPT Presentation

About This Presentation
Title:

Sistemas de Informa

Description:

Sistemas de Informa o I Ulrich Schiel UNIVERSIDADE FEDERAL DE CAMPINA GRANDE Bacharelado em Ci ncia da Computa o Conte do 1) Linguagens de Programa o 2 ... – PowerPoint PPT presentation

Number of Views:149
Avg rating:3.0/5.0
Slides: 51
Provided by: dscUfcgE
Category:

less

Transcript and Presenter's Notes

Title: Sistemas de Informa


1
Sistemas de Informação I
  • Ulrich Schiel

UNIVERSIDADE FEDERAL DE CAMPINA
GRANDE Bacharelado em Ciência da Computação
2
Conteúdo
  • 1) Linguagens de Programação
  • 2) Noções de prototipagem
  • 3) Sistemas de Informação Conceitos

3
Conteúdo
  • 4) Orientação a Objetos - Conceitos e sistemas
  • (Bancos de Dados, Interfaces, Sistemas
    Operacionais, linguagens...)
  • 5) A Linguagem Unificada de Modelagem UML
  • 6) Desenvolvimento de sistemas orientados a
    objetos (O Processo Unificado - RUP-Rational
    Unified Process)

4
Bibliografia
  • R. M. Stair Princípios de Sistemas e Informação
    2ª Edição, LTC, 1996
  • Booch, Grady / Rumbaugh, James / Jacobson, Ivar
    Uml - Guia Do Usuario Editora Campus
  • Booch, Grady / Rumbaugh, James / Jacobson, Ivar
    Uml - Guia Do Programador Editora Campus
  • Jacobson, I., Booch, G., Rumbaugh, J. The Unified
    Software Development Process, Addison Wesley

5
Bibliografia
  • C. Larman Utilizando UML e Padrões- Uma
    Introdução à Análise e ao Projeto
    Orientados a Objeto, Bookman (2000)
  •  B. COX Object-Oriented Programming An
    Evolutionary Approach, Addison Wesley,
    1986
  •  M. Page-Jones Fundamentos do desenho orientado
    a objeto com UML, Makron Books, 1998
  •  J. MARTIN Fourth Generation Languages, Prentice
    Hall, 1985
  • R.W. Sebesta Conceitos de Linguagens de
    Programação 4ª edição, Bookman 2000

6
1) Linguagens de Programação gerações
  • 1ª GERAÇÃO - programação física, linguagens de
    máquina
  •  0010 0010
  • 0001 0011
  • 1000 0100
  • 0010 0001
  • 0001 0010
  • 0101 0100
  • 1000 0110
  • 2ª GERAÇÃO - Linguagens de baixo nível
    (Assembly, Autocoder)
  • CLA C
  • ADD D
  • STO Y
  • CLA A
  • ADD B
  • DIV Y
  • STO X

7
1) Linguagens de Programação
gerações
  • 3ª GERAÇÃO - Linguagens de alto nível
  • X (D A) / Y
  • Científicas - FORTRAN, Algol
  • Comerciais - COBOL
  • Universais - PL/I, ADA
  • Sistemas - Pascal, Modula 2, C, C, Java
  • Especiais - SIMULA, LISP, SNOBOL,
    PROLOG, APL, RPG

8
1) Linguagens de Programação
gerações
  • 4ª GERAÇÃO - O que no lugar do como (MANTIS,
    NATURAL, IDEAL, SQL, QBE, Delphi, JDK)
  •  
  • Incrementa/substitue comandos sequenciais por
  •      Formulários, interação por janelas,
    Gráficos
  •      Linguagens não-procedurais
  •      Geradores de aplicações
  •      Prototipagem
  •      Sistemas de Suporte a Decisão,
  •       Linguagens para aplicações específicas
    (finanças,
    robótica, CAD, pesquisa textual, etc.)

9
1) Linguagens de Programação
gerações
  • 5ª GERAÇÃO Linguagens naturais
  •  
  •      Consultas e comandos em linguagem natural
  •      Interpretação da fala

10
2) Linguagens de Programação paradigmas
  •      COMPLETAS (Máquinas de Turing) - Pascal,
    COBOL, C,
    Java....
  •      INCOMPLETAS (SQL, QBE)
  •      EXTENDIDAS (goto, exceções, acesso
    registradores,
    FORMAT, PICTURE, acesso direto, auto-
    modificação)

11
2) Linguagens de Programação paradigmas
  •     PROCEDURAL (IMPERATIVO) Programa
    principal seqüência de comandos e ações
  •  ORIENTADO A OBJETOS Coleção de objetos que
    recebem mensagensLinguagens Simula,
    SmallTalk, Eiffel, Oberon
  •   FLUXO DE DADOS RPG, HIPO, DFD

  BIDIMENSIONAL UML, DFD, DER
12
2) Linguagens de Programação paradigmas
  •     FUNCIONAL Interpretador de expressões
    Execução de funções Exemplo LISP FATORIAL
    (LAMBDA(N)
  • ((COND(EQUAL N 1) 1)(T(TIMES N (FATORIAL(SUB 1
    N))))))
  •    LÓGICO Interpretador de expressões
    verificação de relações Um programa consiste de
    fatos e regras Ex PROLOGCasamento de padrões
    SNOBOL

13
2) Linguagens de Programação paradigmas
  •      COMBINAÇÕES
  • ImperativoOO ObjectPascal, TurboPascal,
    Modula 3,
    ObjectiveC, C, Java
  • FuncionalOO ObjectLISP. CLOS
  • LógicoOO ObjLog, F-Logic
  • BidimensionalOO Delphi, JDK

14
Desenvolvimento de software paradigmas
  •   PROCESSO

  ORIENTAÇÃO
  •      Ciclo de vida
  •  Circular
  •  Prototipagem
  •  Iterativo e Incremental
  •  eXtreme Progr.
  •  Ágil

     Processos   Dados
 Controle  Objetos  Frameworks
Componentes
15
PROTOTIPAGEM
Processo
USUÁRIO
problemas
Testes
uso
problemas
construção
ANALISTA
PROTÓTIPO
revisão
16
PROTOTIPAGEM
Aplicações
  • Computação pré-especificada ?
    programação convencional

J. Martin
  • Computação dirigida pelo usuário
    ? PROTOTIPAGEM

17
PROTOTIPAGEM
Protótipos - características
  • testes de hipóteses (de dados, relatórios,
    telas)
  • modelo vivo (funcionalidade)
  • testes de arquitetura
  • quick and dirty (rápido e ruim)

18
PROTOTIPAGEM
Prototipagem X Ciclo de vida
19
PROTOTIPAGEM
Conteúdo
  • Definição lógica
  •     Relatórios
  •     Telas
  •     Informações
  •     Funções
  •     Controles
  •     Interface
  • 2) Definição física
  •     Banco de dados
  •     fluxo do sistema

20
PROTOTIPAGEM
Tipos
    Exploratória (usp) prototipagem
rápida     Experimental (psh)     Evolutiva
(usph)     Desempenho (uph)    
Organizacional (ush)
software (s)
hardware (h)
usuário (u)
projetista(p)
21
PROTOTIPAGEM
Tipos principais
22
Orientação a Objetos
Paradigma da Orientação a Objetos   No mundo
existem - Objetos (com estrutura e
comportamento) - Mensagens entre objetos - Nada
mais
REMETENTE
mensagem
RECEPTOR
23
Orientação a Objetos
  Programação OO   Linguagens OO   Projeto
OO   Sistemas OO   Bancos de Dados
OO   Interfaces OO   Ambientes OO
24
Orientação a Objetos
Por que POO ?
Crise de Software
Problemas
  •   reusabilidade, capacidade de um programa em
    ser aproveitado para uma outra aplicação,
    semelhante à original
  • adaptabilidade, capacidade de um programa em se
    adaptar
  • a novas situações novas
  • extensibilidade, capacidade de um programa em
    ser estendido
  • incorporando novas funcionalidades.

25
Orientação a Objetos
Prevenção de alterações
  •   Linha Maginot A assinatura do cliente proíbe
    alterações.Boa documentação, comentários e
    linguagem de alto nívelnão são suficientes.
  • Defesa suiça Prototipagem, mudanças fazem parte
    vital do processo de desenvolvimento do sistema
    (ex. Smalltalk, Engª do conhecimento)
  • Problemas Eficiência, controle, compatibilidade

    (com sistemas existentes).

26
Orientação a Objetos
Sistemas devem ser
  •   - maleáveis e elásticos em tempo de execução
  • gt acoplamento dinâmico (dynamic
    binding)
  • - alteráveis e extensíveis
  • gt encapsulamento e herança
  • - evitar efeitos colaterais.
  • gt encapsulamento (objeto caixa
    preta)

27
Orientação a Objetos
Redução da superfície de software
  •   Encobrimento da informação
    (encapsulamento, variáveis locais, etc.) )
  • Tipos Abstratos de Dados. Quanto mais abstrato
    o dado, menos informação é necessária
    para usá-lo
  • Seqüência/paralelismo de operações uma seqüência
    fixa aumenta a superfície

28
Orientação a Objetos
Redução da superfície de software
  •   Seqüência/paralelismo de operações uma
    seqüência fixa aumenta a superfície
  • Garbage collection A necessidade de reservar
    e liberar explicitamente os objetos, aumenta
    a superfície de software
  • Domínios protegidos uma estação de trabalho ou
    um processo, são domínios relativamente
    protegidos. Comunicam entre si por arquivos e
    mensagens.
  • Concorrência Problemas concorrentes aumentam a
    superfície, pois a comunicação ocorre em
    duas dimensões tempo e espaço

29
Orientação a Objetos
Focos
FOCO EM SISTEMA Programa Processos
Dados
FOCO EM OBJETO Classe Atributos
Operações
30
Origens da Programação Orientada a Objetos
Tipos Abstratos de Dados
31
Origens da Programação Orientada a Objetos
Abstrações em bancos de dados
EXEMPLO
  • generalização-(herança)
  • agregação
  • agrupamento

FAMÍLIA
PESSOA
FILHOS
HOMEM
MULHER
32
Origens da Programação Orientada a Objetos
EXEMPLO
Os números inteiros   Sintaxe Elementos 0,
1, 2, 3, ..9, 10, 11,... Operações , -,
, ? Semântica 0 ?N Função de criação p N ?
N sendo N 0, p(0), p(p(0)), p(p(p(0))), ...
0, 1, 2, 3, 4, .. ? n ? N (n 0 n ? n 1
p(n) ? (para m?0 (nmp(n) se m1
(na(m))1 caso contrário) Representação
números binários limitados e
aritmética computacional de inteiros
33
Orientação a Objetos - Características
  • Objetos e classes
  • encapsulamento
  • objetos complexos
  • generalização e herança
  • polimorfismo
  • identificação de objetos

34
Orientação a Objetos - Características
ONTOLOGIA
ilumina
Entidades
gosta-de
33
Relacionamentos
idade
Atributos
35
Orientação a Objetos - Características
Abstrações
Classificação
PESSOA
CONTRIBUINTE
EMPRESA
36
Orientação a Objetos - Características
Representação
PESSOA nomestring idadeinteger gosta-deobjet
o
Joseph Haydn 66sol
37
Orientação a Objetos - Características
CONTRIBUINTE
Generalização
categoria
PESSOA
EMPRESA
atividade
sexo
U

HOMEM
ESTUDANTE
MULHER
PROFESSOR
38
Orientação a Objetos - Características
Visões - Especialização por papel
PESSOA
papel
NO EMPREGO
EM FÉRIAS
MOTORISTA NO TRÂNSITO
EM CASA
39
Orientação a Objetos - Características
Agregação
possui
EXEMPLAR
LIVRO
EDITORA
TÍTULO
AUTOR
ANO
40
Orientação a Objetos - Características
Agregação
possui
EXEMPLAR
LIVRO
EDITORA
TÍTULO
AUTOR
ANO
41
Orientação a Objetos - Características
Agrupamento
1
LIVRO
possui
EXEMPLAR
1..
AUTORES
EDITORA
ANO
AUTOR
TÍTULO
42
Orientação a Objetos - Características
Encapsulamento
EXEMPLAR nr-reg situação Novo Emprestar Devolver
43
Orientação a Objetos - Características
TÍTULO Novo
Polimorfismo
PERIÓDICO
ARTIGO
LIVRO Emprestar
44
Orientação a Objetos - Características
Polimorfismo
45
Linguagens de programação OO
  • Turbo Pascal
  • Object Pascal
  • C
  • Smalltalk
  • Java

EXEMPLOS COM
46
Orientação a objetos - Discussão
1) O que é um objeto ??
  • abstrato números, strings, cores, salários,
    nomes, uma universidade, um
    relacionamento

Estático
Dinâmico
  • evento curto, evento longo, operação, transação

controle
  • restrição, regra de dedução, regra de produção

47
Orientação a objetos - Discussão
1) O que é um objeto ??
  • fatos (João quebrou a perna ontem na viagem),
    textos, subtextos, imagens, etc

sem formato
intenção
  • esquema, subesquema, classe, contexto, categoria

48
Orientação a objetos - Discussão
2) Identificação de objetos
questão conceitual ou de implementação ??
49
Orientação a objetos - Discussão
3) Hierarquias de objetos
Generalização - herança conceitual X
estrutural herança múltipla
identificação
Agregação ? ? herança seletiva Agrupamento ?
50
Orientação a objetos - Discussão
4) Projeto de sistemas
  • projeto orientado a objetos
  • projeto orientado a processos
  • projeto orientado a controle
Write a Comment
User Comments (0)
About PowerShow.com