Spec#

8

Click here to load reader

description

Apresentação de Spec# feita nas Jornadas de Informática da UBI

Transcript of Spec#

Page 1: Spec#
Page 2: Spec#

SPEC#

João OliveiraJoel Carvalho

Page 3: Spec#

O que é?M t d l i  d  d l i t  d   ftMetodologia de desenvolvimento de software.Definição de contratos (regras) associado ao código.Contratos são uma forma de especificação que p ç qgarantem a sua validade.Ferramentas: Eiffel, JML, SPEC#, etc…Ferramentas: Eiffel, JML, SPEC#, etc…

3

Page 4: Spec#

Imagem facultada pelo Prof. Simão Melo de Sousa 4

Page 5: Spec#

Origem: Criado pela MicrosoftCriado pela Microsoft.Extensão do C#.C tit íd  Constituído por:▪ Compilador (Type Checking).V ifi d  Di â i  (R ti )▪ Verificador Dinâmico (Runtime).

▪ Prover Estático (Boogie).

Motivação:Desenvolvimento FormalDesenvolvimento Formal.

5

Page 6: Spec#

Anotações (Pré, Pós Condições e Invariantes).

Tipos não Nulos.

Geração de Excepções sobre as anotações. ç pç ç

6

Page 7: Spec#

Imagem retirada da Apresentação “VSTTE‐SpecSharp.ppt” 7

Page 8: Spec#

Código em SPEC#                                                                Código em C#g g

8