Panagiotis Louridas

Learn More
A single statistical framework, comprising power law distributions and scale-free networks, seems to fit a wide variety of phenomena. There is evidence that power laws appear in software at the class and function level. We show that distributions with long, fat tails in software are much more pervasive than previously established, appearing at various(More)
Rapid technological change has had an impact on the nature of software. This has led to new exigencies and to demands for software engineering paradigms that pay particular atttention to meeting them. We advocate that such demands can be met, at least in large parts, through the adoption of software engineering processes that are founded on a reflective(More)
Effective Web services demand careful synchronization on various abstraction levels. The Business Process Execution Language supports modeling and executing business processes from both the user and systems perspectives. In this way, Web services application developers can use BPEL to orchestrate service interactions in a global system view and to manage(More)
Wikis are especially useful in distributed projects: many teams around the world use them to organize, track, and publish their work. Their flexibility frees a project manager from fretting about getting everything exactly right from the beginning. A wiki can and should change to respond to the project's needs as they arise. While wikis are always easy to(More)
Interest in Web services has increased rapidly since their first appearance a few years ago. They are a key value-added feature of today's Internet, making it feasible to combine different applications and so generate new services based on existing applications. Feasibility, however, doesn't mean easy connectivity to all we can see and use on the Internet -(More)
We present Zeus, a verifiable internet ballot casting and counting system based on Helios, in which encrypted votes are posted eponymously to a server, then are anonymized via cryptographic mixing, and finally are decrypted using multiple trustee keys. Zeus refines the original Helios workflow to address a variety of practical issues, such as usability,(More)
Code injection exploits a software vulnerability through which a malicious user can make an application run unauthorized code. Server applications frequently employ dynamic and domain-specific languages, which are used as vectors for the attack. We propose a generic approach that prevents the class of injection attacks involving these vectors: our scheme(More)
Non-repudiation protocols aim at preventing parties in a communication from falsely denying having taken part in that communication; for example, a non-repudiation protocol for digital certified mail should ensure that neither the sender can deny sending the message, nor the receiver can deny receiving it. We identify some guidelines for non-repudiation(More)