DocumentCode
3232206
Title
Towards safe distributed application development
Author
Eugster, Patrick Thomas ; Damm, Christian Heide ; Guerraoui, Rachid
Author_Institution
Sun Microsystems, Voketswil, Switzerland
fYear
2004
fDate
23-28 May 2004
Firstpage
347
Lastpage
356
Abstract
Distributed application development is overly tedious, as the dynamic composition of distributed components is hard to combine with static safety with respect to types (type safety) and data (encapsulation). Achieving such safety usually goes through specific compilation to generate the glue between components, or making use of a single programming language for all individual components with a hardwired abstraction for the distributed interaction. In this paper, we investigate general-purpose programming language features for supporting third-party implementations of programming abstractions for distributed interaction among components. We report from our experiences in developing a stock market application based on type-based publish/subscribe (TPS) implemented (1) as a library in standard Java as well as with (2) a homegrown extension of the Java language augmented with specific primitives for TPS, motivated by the lacks of former implementation. We then revisit the library approach, investigating the impact of genericity, reflective features, and the type system, on the implementation of a satisfactory TPS library. We then discuss the impact of these features also on other distributed programming abstractions, and hence on the engineering of distributed applications in general, pointing out lacks of mainstream programming environments such as Java as well as .NET.
Keywords
Java; data encapsulation; distributed programming; programming languages; .NET; Java language; TPS library; data encapsulation; distributed component interaction; distributed components; distributed interaction; distributed programming abstractions; dynamic composition; general-purpose programming language features; safe distributed application development; software library; static safety; stock market application; type safety; type-based publish/subscribe; Computer languages; Connectors; Java; Laboratories; Libraries; Logic programming; Middleware; Safety; Stock markets; Sun;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Engineering, 2004. ICSE 2004. Proceedings. 26th International Conference on
ISSN
0270-5257
Print_ISBN
0-7695-2163-0
Type
conf
DOI
10.1109/ICSE.2004.1317457
Filename
1317457
Link To Document