projeto de sistemas de tempo real - ece.ufrgs.brfetter/eng04008/design.pdf · redes de petri...

13
Projeto de Sistemas de Tempo Real Walter Fetter Lages [email protected] Universidade Federal do Rio Grande do Sul Escola de Engenharia Departamento de Engenharia Elétrica ENG04008 Sistemas de Tempo Real Copyright (c) Walter Fetter Lages – p.1

Upload: hadien

Post on 08-Nov-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Projeto de Sistemas de Tempo Real - ece.ufrgs.brfetter/eng04008/design.pdf · Redes de Petri Problemas: ... Detalhamento do Projeto Top-down Decomposiçªo Abstraçªo Botton-up Facilita

Projeto de Sistemas de Tempo RealWalter Fetter [email protected]

Universidade Federal do Rio Grande do SulEscola de Engenharia

Departamento de Engenharia ElétricaENG04008 Sistemas de Tempo Real

Copyright (c) Walter Fetter Lages – p.1

Page 2: Projeto de Sistemas de Tempo Real - ece.ufrgs.brfetter/eng04008/design.pdf · Redes de Petri Problemas: ... Detalhamento do Projeto Top-down Decomposiçªo Abstraçªo Botton-up Facilita

Introdução

• Especificação• Definição da

Arquitetura• Hardware• Software

• Detalhamento doprojeto

• Implementação• Teste

• Prototipação• Interface com o

usuário• Escolha das

ferramentas• Documentação

Copyright (c) Walter Fetter Lages – p.2

Page 3: Projeto de Sistemas de Tempo Real - ece.ufrgs.brfetter/eng04008/design.pdf · Redes de Petri Problemas: ... Detalhamento do Projeto Top-down Decomposiçªo Abstraçªo Botton-up Facilita

Notações

• Desenvolvimento de um projeto é transformarnotações de um estágio nas notações do estágioseguinte

• Nos níveis mais altos, estas transformações nãosão bem definidas

• Notação vaga e imprecisa, que não captura asemântica da transformação

Copyright (c) Walter Fetter Lages – p.3

Page 4: Projeto de Sistemas de Tempo Real - ece.ufrgs.brfetter/eng04008/design.pdf · Redes de Petri Problemas: ... Detalhamento do Projeto Top-down Decomposiçªo Abstraçªo Botton-up Facilita

Níveis de Notação

• Informal• Linguagem corrente

• Estruturada• Representação gráfica• Componentes bem definidos• Interconexões bem definidas

• Formal• Base matemática• Descrições precisas

Copyright (c) Walter Fetter Lages – p.4

Page 5: Projeto de Sistemas de Tempo Real - ece.ufrgs.brfetter/eng04008/design.pdf · Redes de Petri Problemas: ... Detalhamento do Projeto Top-down Decomposiçªo Abstraçªo Botton-up Facilita

Especificação

• Descrição informal• Análise da especificação

• Definição da funcionalidade• Comportamento temporal deve ser definido de

forma explícita• Definição de testes

• Modelo do ambiente• Taxas de interrupções• Quantidade de objetos externos a serem

tratados• Modos de falha

Copyright (c) Walter Fetter Lages – p.5

Page 6: Projeto de Sistemas de Tempo Real - ece.ufrgs.brfetter/eng04008/design.pdf · Redes de Petri Problemas: ... Detalhamento do Projeto Top-down Decomposiçªo Abstraçªo Botton-up Facilita

Análise de Especificações

• Análise estruturada• Análise orientada a objetos• Cálculo de predicados

• Extensões para incorporar tempo• Problemas de modularidade

• Redes de Petri• Problemas:

• Especificações não explícitas• Sintaxe × semântica

Copyright (c) Walter Fetter Lages – p.6

Page 7: Projeto de Sistemas de Tempo Real - ece.ufrgs.brfetter/eng04008/design.pdf · Redes de Petri Problemas: ... Detalhamento do Projeto Top-down Decomposiçªo Abstraçªo Botton-up Facilita

Detalhamento do Projeto

• Top-down• Decomposição• Abstração

• Botton-up• Facilita a reutilização de módulos• Adapta-se melhor a pequenos projetos

Copyright (c) Walter Fetter Lages – p.7

Page 8: Projeto de Sistemas de Tempo Real - ece.ufrgs.brfetter/eng04008/design.pdf · Redes de Petri Problemas: ... Detalhamento do Projeto Top-down Decomposiçªo Abstraçªo Botton-up Facilita

Encapsulamento

• Abstração exige subcomponentes• Funções bem definidas• Interconexões não ambíguas• Interfaces claras• Information hiding• Decomposição composicional• Coesão

• Coincidencial, Lógica , Temporal,Procedural, Comunicacional, Funcional

• Acoplamento• Forte, fraco

Copyright (c) Walter Fetter Lages – p.8

Page 9: Projeto de Sistemas de Tempo Real - ece.ufrgs.brfetter/eng04008/design.pdf · Redes de Petri Problemas: ... Detalhamento do Projeto Top-down Decomposiçªo Abstraçªo Botton-up Facilita

Implementação

• Gap entre metodologia de projeto e linguagem deprogramação

• Linguagem de baixo nível• Assembly

• Linguagens alto nível sequenciais• Fortran, Pascal, Modula-2, C, C++

• Linguagens de alto nível concorrentes• Ada, Occam, Java

• Linguagens que suportam a noção de tempo• VHDL, Verilog

Copyright (c) Walter Fetter Lages – p.9

Page 10: Projeto de Sistemas de Tempo Real - ece.ufrgs.brfetter/eng04008/design.pdf · Redes de Petri Problemas: ... Detalhamento do Projeto Top-down Decomposiçªo Abstraçªo Botton-up Facilita

Características de Linguagens

• Segurança• Detecção de erros

• Tempo de compilação• Tempo de execução

• Legibilidade• Flexibilidade• Simplicidade• Portabilidade• Eficiência

• Propriedade da Linguagem ou doCompilador?

Copyright (c) Walter Fetter Lages – p.10

Page 11: Projeto de Sistemas de Tempo Real - ece.ufrgs.brfetter/eng04008/design.pdf · Redes de Petri Problemas: ... Detalhamento do Projeto Top-down Decomposiçªo Abstraçªo Botton-up Facilita

Teste

• Dificuldade de teste devido as característicastemporais

• Interações entre processos são difíceis dereproduzir

• Respostas a condições imprevistas do ambiente• Simulação

• Teste de arquiteturas• Teste com módulos simulados

Copyright (c) Walter Fetter Lages – p.11

Page 12: Projeto de Sistemas de Tempo Real - ece.ufrgs.brfetter/eng04008/design.pdf · Redes de Petri Problemas: ... Detalhamento do Projeto Top-down Decomposiçªo Abstraçªo Botton-up Facilita

Prototipação

• Verificação das especificações• Correção• Complitude

• Custo deve ser bem menor do que do sistema real• Uso de linguagens de mais alto nível

• Matlab

Copyright (c) Walter Fetter Lages – p.12

Page 13: Projeto de Sistemas de Tempo Real - ece.ufrgs.brfetter/eng04008/design.pdf · Redes de Petri Problemas: ... Detalhamento do Projeto Top-down Decomposiçªo Abstraçªo Botton-up Facilita

Interface com o Usuário

• Informações para o usuário• Quantidade• Qualidade

• Deve ser isolada do resto do sistema• Validação dos comandos/dados fornecidos pelo

usuário• Fadiga do operador• Costume do operador• Sistemas de suporte à decisão

Copyright (c) Walter Fetter Lages – p.13