Leila Silva
Universidade Federal de Sergipe
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Leila Silva.
The American Journal of Pharmaceutical Education | 2012
Monique O. Jabbur-Lopes; Alessandra R. Mesquita; Leila Silva; Abilio de Almeida Neto; Divaldo P. Lyra
A review of the literature relating to the use of virtual patients in teaching pharmaceutical care to pharmacy students was conducted. Only 7 articles met the inclusion criteria for the review and 4 of the studies were conducted in North America. Few articles identified by the review used virtual patient technology that was true-to-life and/or validated.
software engineering and formal methods | 2008
Leila Silva; Augusto Sampaio; Zhiming Liu
Algebraic laws have been proposed to support program transformation in several paradigms. In general, and for object-orientation in particular, these laws tend to ignore possible aliasing resulting from reference semantics. This paper proposes a set of algebraic laws for object-oriented languages in the context of a reference semantics. Soundness of the laws is addressed, and a case study is also developed to show the application of the proposed laws for code refactoring.
formal methods | 1997
Leila Silva; Augusto Sampaio; Edna Barros
In this paper we present a characterisation of the hardware/software partitioning problem as a program transformation task. Both the input and the output of the partitioning are expressed as processes in occam, and the partitioning itself is conducted by the application of a set of rules derived from an algebraic semantics of occam. The partitioning is designed in such a way to allow the complete separation of the efficiency and the correctness aspects of the process. A complete set of rules to turn an arbitrary program into a normal form is presented; this form is the parallel composition of very simple subprocesses, allowing a very flexible analysis of how they can be combined (in clusters) to produce the final result of the partitioning.
formal methods | 2004
Leila Silva; Augusto Sampaio; Edna Barros
A crucial point in hardware/software co-design is how to perform the partitioning of a system into hardware and software components. Although several algorithms to partitioning have been recently proposed, the formal verification of the partitioning procedure is an emergent research topic. In this paper we present an innovative and automatic approach to partitioning with emphasis on correctness. The formalism used is occam and the algebraic laws that define its semantics. In the proposed approach, the partitioning procedure is characterised as a program transformation task and the partitioned system is derived from the original description of the system by applying transformation rules, all of them proved from the basic laws of occam. A tool has been developed to allow the partitioning to be carried out automatically. The entire approach is illustrated here through a small case study.
Theoretical Computer Science | 2012
David A. Naumann; Augusto Sampaio; Leila Silva
Refactoring transformations are important for productivity and quality in software evolution. Modular reasoning about semantics preserving transformations is difficult even in typed class-based languages because transformations can change the internal representations for multiple interdependent classes and because encapsulation can be violated by pointers to mutable objects. In this paper, an existing theory of representation independence for a single class, based on a simple notion of ownership confinement, is generalized to a hierarchy of classes and used to prove refactoring rules that embody transformations of complete class trees. This allows us to formalize refactorings that inherently involve class inheritance, such as Pull Up or Push Down Field; moreover, this makes it possible to generalize refactorings previously restricted to change of data representation of private attributes (like Extract Class and Encapsulate Field) to address data refinement of protected attributes, dealing with the impact that the corresponding transformations may cause in the subclasses. The utility of the proposed rules is shown in a relatively extensive case study. Shortcomings of the theory are described as a challenge to other approaches to heap encapsulation and relational reasoning for classes.
Electronic Notes in Theoretical Computer Science | 2007
Antonio Carvalho Júnior; Leila Silva; Márcio Cornélio
In this paper we show how rewriting systems, in particular CafeOBJ, can be used to automatically prove refactoring rules. In addition, a small case study that illustrates the application of a refactoring rule in an arbitrary program is also developed. Our approach is based on a sequential object-oriented language of refinement (rool) similar to Java. We have implemented the rool grammar in CafeOBJ, as well as the laws that define its semantics. Each refactoring rule is derived by the application of these laws, in a constructive way. The refactorings are also implemented in CafeOBJ, allowing the reduction of an arbitrary program.
euro american conference on telematics and information systems | 2012
Kaio Santos; Leonardo Feistauer; Marcio Carvalho; Leila Silva; Karla Freire Rezende
Diabetes Mellitus is a chronic degenerative disease accepted as a worldwide epidemic. The diabetic foot is one of the most fearful complications of diabetic patients and is responsible for fifty percent of non-traumatic lower-extremity amputations in general hospitals. Foot complications in diabetic patients can be prevented, in most of the cases, by submitting patients to continuous foot examinations and to a personal reeducation process. This paper describes an extension of SiSPED, a system to monitor patients with the possibility of developing the diabetic foot. In this extension the system has been entirely redesigned and new technologies are used to improve performance and maintainability. In addition, the rules applied to generate automatically a diagnostic report are updated to follow international guidelines applied in the diabetic foot prevention. The system also allows the correlation of patient data, essential to measure the impact of the methodology for diabetic foot prevention on the assisted population.
formal techniques for java-like programs | 2010
Leila Silva; David A. Naumann; Augusto Sampaio
Refactoring transformations are important for productivity and quality in software evolution. Modular reasoning about semantics preserving transformations is difficult even in typed class-based languages because transformations can change the internal representations for multiple interdependent classes and because encapsulation can be violated by pointers to mutable objects. In this paper, an existing theory of representation independence for a single class, based on a simple notion of ownership confinement, is generalized to a hierarchy of classes and used to prove several refactoring laws. Soundness of these laws was an open problem in an ongoing project on formal refactoring tools. The utility of the laws is shown in a case study. Shortcomings of the theory are described as a challenge to other approaches to heap encapsulation and relational reasoning for classes.
formal methods | 2001
Leila Silva; Augusto Sampaio; Geraint Jones
In this paper we present a strategy to serialise parallel processes in occam, in the context of a hardware/software partitioning approach. The strategy takes as input two parallel processes to serialise and applies algebraic rules to perform the serialisation. These rules are derived from the semantics of occam, which guarantees that the serialisation strategy preserves the semantics of the original parallel processes. In particular, the strategy ensures that deadlock is not introduced during the serialisation procedure.
algebraic methodology and software technology | 1999
Leila Silva; Augusto Sampaio; Edna Barros; Juliano Iyoda
In this paper we present a strategy for combining processes belonging to the same hardware or software component (cluster), in the context of hardware/software partitioning of a system. The strategy takes as input an occam description of a system. This description is the parallel composition of the system components in a predefined form, together with annotations that indicate how the processes, in each cluster, must be combined: by serialisation or by parallelisation. The description given as input can be seen as a binary tree. The strategy to combine processes is based on the reduction of possible configurations in that tree, by using transformation rules which are provable from an algebraic semantics of occam.