JCML - Java Card Modeling Language: Definição e ... - Ifrn
JCML - Java Card Modeling Language: Definição e ... - Ifrn
JCML - Java Card Modeling Language: Definição e ... - Ifrn
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
CAPÍTULO 3. JML - JAVA MODELING LANGUAGE 39Parte Obrigações BenefíciosCliente 1. As cartas e pacotes não podem Ter os pacotes entregester mais que 5kg.ao destinatário2. A dimensão dos pacotes em 1 dia ou menos.não pode exceder 2 metros.3. Pagar 40 reais.Fornecedor 1. Entregar os pacotes e cartas Não precisa se preocuparao destinatário em 1 dia ou menos. com pacotes pesados,pacotes muito grandes ouserviço não pago.Tabela 3.1: Exemplo de Contrato.A Tabela 3.1 apresenta um contrato para entrega de correspondências. O cliente doserviço tem como obrigação pagar 40 reais pelo serviço, e entregar pacotes menores que 2metros e com peso abaixo de 5 kilos. Como benefício, o cliente terá seu pacote entregueao destino em no máximo 1 dia. O fornecedor do serviço tem como benefício não sepreocupar com pacotes muito grandes e pesados. Como obrigação, o fornecedor deveráentregar a correspondência em no máximo 1 dia.Os benefícios [15] de se utilizar projeto por contrato incluem: uma abordagem sistemáticade construir sistemas Orientados a Objetos com menos bugs; um método paradocumentar componentes de software; um framework que facilita a depuração, teste eproporciona garantia de qualidade ao produto desenvolvido.Projeto por contrato é uma forma de atribuir responsabilidades aos métodos, o quedeve ser feito, quais as saídas possíveis e que argumentos são necessários para aschamadas do método. Com isso, é possível atribuir culpa a uma parte das partes docontrato, caso haja problema. Assim, caso uma pré-condição seja violada, a culpa seráatribuída ao cliente, semelhantemente, caso uma pós-condição seja violada, a culpa serádo método fornecedor do serviço [20]. Projeto por contrato também é um mecanismoauxiliar aos comentários do programa e documentação não-formais. Apesar de usar formalismoem seu comentário, o uso de DbC não exclui os outros tipos de comentários deprograma.Além dos benefícios descritos sobre o uso de contratos, é possível garantir robustez ereusabilidade. Tratamento de exceções é um mecanismo de robustez no uso de projeto porcontrato [33]. Dessa forma, quando uma asserção não for satisfeita, o tratamento da exceçãodeve garantir o estado desejado do objeto para a pós-condição excepcional. Definir