A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

OO-SC (Meyer) - Cap 111 OO-SC (MEYER) Desenho por Contrato Construindo software confiável.

Apresentações semelhantes


Apresentação em tema: "OO-SC (Meyer) - Cap 111 OO-SC (MEYER) Desenho por Contrato Construindo software confiável."— Transcrição da apresentação:

1 OO-SC (Meyer) - Cap 111 OO-SC (MEYER) Desenho por Contrato Construindo software confiável

2 OO-SC (Meyer) - Cap 112 Componentes da Confiabilidade: 1.Correção: habilidade de se comportar de acordo com as especificações 2.Robustez: habilidade de reagir a situações não previstas nas especificações

3 OO-SC (Meyer) - Cap 113 Mecanismos de Confiabilidade zEstrutura: yManter o mais simples possível yLimitar comunicação entre módulos zElegância e legibilidade ySoftware não é apenas escrito; é lido e reescrito muitas vezes zGerência de memória (coleta do lixo) zTipagem forte e estática

4 OO-SC (Meyer) - Cap 114 Sobre correção de software Correção é uma noção relativa! X := Y + 1 A:X e Y possuem valores diferentes! B:X tem valor negativo! Depende da ESPECIFICAÇÃO!

5 OO-SC (Meyer) - Cap 115 Como expressar uma especificação zFórmula de Correção: {P} A {Q} Leia-se: Em qualquer execução de A, iniciando em um estado onde P é válido, terminará em um estado em que Q será válido

6 OO-SC (Meyer) - Cap 116 Por exemplo: {x >= 9} x := x + 5 {x >= 13} ___________________________________ P >> Pré-condição Q >> Pós-condição

7 OO-SC (Meyer) - Cap 117 zCondições fortes e fracas: Sinecura 1: {False} A {…} Sinecura 2: {…} A {True}

8 OO-SC (Meyer) - Cap 118 Asserções: N > 0; X /= Void ;>> significa and Positive: n>0 Not_void: x /= Void

9 OO-SC (Meyer) - Cap 119 Pré-condições e pós-condições zRequire zEnsure

10 OO-SC (Meyer) - Cap 1110 Indexing description: Stacks: estruturas de fornecidas numa disciplina de First IN First OUT Class STACK [G] feature -- Access count: INTEGER -- Número de elementos do Stack item: G is -- Elemento Topo require not empty do … end

11 OO-SC (Meyer) - Cap 1111 Feature -- Relatório de status empty: BOOLEAN is -- O stack está vazio? do … end full: BOOLEAN is -- O stack está cheio? do … end

12 OO-SC (Meyer) - Cap 1112 Feature – Alterar elemento put (x: G) is -- Adicionar x no Topo require not full do …. ensure not empty item = x count = old count + 1 end

13 OO-SC (Meyer) - Cap 1113 remove is -- Remover elemento do Topo require not empty do …. ensure not full count = old count - 1 end

14 OO-SC (Meyer) - Cap 1114 Desenho por Contrato ObrigaçõesBenefícios (satisfazer pré-condições) Apenas chama PUT (x) em um Stack não cheio (Das pós- condições) Obtem o Stack Atualizado; não Vazio; X no topo; Contador + 1 (Satisfaz pós- condições) Atualiza o stack; não Vazio; Contador - 1 Cliente Servidor (Das pré-condições) Processamento Simples devido Stack não cheio

15 OO-SC (Meyer) - Cap 1115 Invariantes: Indexing description: Stacks: estruturas de fornecidas numa … Class STACK [G] feature -- Access count: INTEGER -- Número de elementos do Stack item: G is require …. invariant count_non_negative: 0 <= count count_bounded: count <= capacity empty_if_no_elements: empty = (count=0) end -- class STACK


Carregar ppt "OO-SC (Meyer) - Cap 111 OO-SC (MEYER) Desenho por Contrato Construindo software confiável."

Apresentações semelhantes


Anúncios Google