3 resultados para Perlongher, Néstor

em Repositório Digital da UNIVERSIDADE DA MADEIRA - Portugal


Relevância:

10.00% 10.00%

Publicador:

Resumo:

Although formal methods can dramatically increase the quality of software systems, they have not widely been adopted in software industry. Many software companies have the perception that formal methods are not cost-effective cause they are plenty of mathematical symbols that are difficult for non-experts to assimilate. The Java Modelling Language (short for JML) Section 3.3 is an academic initiative towards the development of a common formal specification language for Java programs, and the implementation of tools to check program correctness. This master thesis work shows how JML based formal methods can be used to formally develop a privacy sensitive Java application. This is a smart card application for managing medical appointments. The application is named HealthCard. We follow the software development strategy introduced by João Pestana, presented in Section 3.4. Our work influenced the development of this strategy by providing hands-on insight on challenges related to development of a privacy sensitive application in Java. Pestana’s strategy is based on a three-step evolution strategy of software specifications, from informal ones, through semiformal ones, to JML formal specifications. We further prove that this strategy can be automated by implementing a tool that generates JML formal specifications from a welldefined subset of informal software specifications. Hence, our work proves that JML-based formal methods techniques are cost-effective, and that they can be made popular in software industry. Although formal methods are not popular in many software development companies, we endeavour to integrate formal methods to general software practices. We hope our work can contribute to a better acceptance of mathematical based formalisms and tools used by software engineers. The structure of this document is as follows. In Section 2, we describe the preliminaries of this thesis work. We make an introduction to the application for managing medical applications we have implemented. We also describe the technologies used in the development of the application. This section further illustrates the Java Card Remote Method Invocation communication model used in the medical application for the client and server applications. Section 3 introduces software correctness, including the design by contract and the concept of contract in JML. Section 4 presents the design structure of the application. Section 5 shows the implementation of the HealthCard. Section 6 describes how the HealthCard is verified and validated using JML formal methods tools. Section 7 includes some metrics of the HealthCard implementation and specification. Section 8 presents a short example of how a client-side of a smart card application can be implemented while respecting formal specifications. Section 9 describes a prototype tools to generate JML formal specifications from informal specifications automatically. Section 10 describes some challenges and main ideas came acrorss during the development of the HealthCard. The full formal specification and implementation of the HealthCard smart card application presented in this document can be reached at https://sourceforge.net/projects/healthcard/.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

This thesis presents a JML-based strategy that incorporates formal specifications into the software development process of object-oriented programs. The strategy evolves functional requirements into a “semi-formal” requirements form, and then expressing them as JML formal specifications. The strategy is implemented as a formal-specification pseudo-phase that runs in parallel with the other phase of software development. What makes our strategy different from other software development strategies used in literature is the particular use of JML specifications we make all along the way from requirements to validation-and-verification.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

O ensino de Matemática há muito que se tem revelado uma problemática a todos os níveis de ensino em Portugal. As dificuldades sentidas pelos discentes e docentes se refletem em resultados fracos nas notas tanto da avaliação contínua como na avaliação pontual realizada por exames nacionais. Sendo esta uma área do conhecimento base amplamente necessária tanto para atividades do quotidiano, como para conhecimento basilar de tantas outras áreas profissionais, consideramos uma boa aposta colocar as tecnologias existentes ao serviço de uma melhor aprendizagem das noções básicas de matemática, desenvolvendo uma ferramenta rica e interativa. A aplicação desenvolvida propõe-se a ser rica…nas atividades apresentadas,à pois cada vez que são executadas são-no sempre de uma forma aleatória, nunca sendo iguais às anteriores. …na informação devolvida ao utilizador, pois cada resolução introduzida é sempre avaliada, permitindo reintrodução de nova resolução. A ferramenta tem pois um caráter de aprendizagem subjacente, não só de avaliação. Assim sendo, neste documento se apresenta a contextualização do trabalho desenvolvido.