2011
Authors
Matos, M; Vilaca, R; Pereira, J; Oliveira, R;
Publication
Proceedings of the International Conference on Dependable Systems and Networks
Abstract
The sheer volumes of data handled by today's Internet services demand uncompromising scalability from the persistence substrates. Such demands have been successfully addressed by highly decentralized key-value stores invariably governed by a distributed hash table. The availability of these structured overlays rests on the assumption of a moderately stable environment. However, as scale grows with unprecedented numbers of nodes the occurrence of faults and churn becomes the norm rather than the exception, precluding the adoption of rigid control over the network's organization. In this position paper we outline the major ideas of a novel architecture designed to handle today's very large scale demand and its inherent dynamism. The approach rests on the well-known reliability and scalability properties of epidemic protocols to minimize the impact of churn. We identify several challenges that such an approach implies and speculate on possible solutions to ensure data availability and adequate access performance. © 2011 IEEE.
2011
Authors
Maia, F; Matos, M; Pereira, J; Oliveira, R;
Publication
DISTRIBUTED APPLICATIONS AND INTEROPERABLE SYSTEMS
Abstract
Consensus is an abstraction of a variety of important challenges in dependable distributed systems. Thus a large body of theoretical knowledge is focused on modeling and solving consensus within different system assumptions. However, moving from theory to practice imposes compromises and design decisions that may impact the elegance, trade-offs and correctness of theoretical appealing consensus protocols. In this paper we present the implementation and detailed analysis, in a real environment with a large number of nodes, of mutable consensus, a theoretical appealing protocol able to offer a wide range of trade-offs (called mutations) between decision latency and message complexity. The analysis sheds light on the fundamental behavior of the mutations, and leads to the identification of problems related to the real environment. Such problems are addressed without ever affecting the correctness of the theoretical proposal.
2011
Authors
Goeschka, KM; Hallsteinsen, SO; Oliveira, R; Romanovsky, A; Froihofer, L;
Publication
Proceedings of the ACM Symposium on Applied Computing
Abstract
2011
Authors
Almeida, JB; Frade, MJ; Pinto, JS; Sousa, SMd;
Publication
Undergraduate Topics in Computer Science
Abstract
2011
Authors
Areias, S; da Cruz, D; Henriques, PR; Pinto, JS;
Publication
COMPUTER SCIENCE AND INFORMATION SYSTEMS
Abstract
In software development, it is often desirable to reuse existing software components. This has been recognized since 1968, when Douglas Mcllroy of Bell Laboratories proposed basing the software industry on reuse. Despite the failures in practice, many efforts have been made to make this idea successful. In this context, we address the problem of reusing annotated components as a rigorous way of assuring the quality of the application under construction. We introduce the concept of caller-based slicing as a way to certify that the integration of an annotated component with a contract into a legacy system will preserve the behavior of the former. To complement the efforts done and the benefits of the slicing techniques, there is also a need to find an efficient way to visualize the annotated components and their slices. To take full profit of visualization, it is crucial to combine the visualization of the control/ data flow with the textual representation of source code. To attain this objective, we extend the notion of System Dependence Graph and slicing criterion.
2011
Authors
Frade, MJ; Pinto, JS;
Publication
Computer Science Review
Abstract
This paper is a systematic study of verification conditions and their use in the context of program verification. We take Hoare logic as a starting point and study in detail how a verification conditions generator can be obtained from it. The notion of program annotation is essential in this process. Weakest preconditions and the use of updates are also studied as alternative approaches to verification conditions. Our study is carried on in the context of a While language. Important extensions to this language are considered toward the end of the paper. We also briefly survey modern program verification tools and their approaches to the generation of verification conditions. © 2011 Elsevier Inc.
The access to the final selection minute is only available to applicants.
Please check the confirmation e-mail of your application to obtain the access code.