An interface definition language (IDL) is a nontraditional language for describing interfaces between software compo- nents. IDL compilers generate “stubs” that provide separate communicating processes with the abstraction of local object... more
Context-sensitivity is an important expected capability in applications in ubiquitous computing (ubicomp) environments. These applications need to use different contextual information from the user, host device, on board sensors, network,... more
Traditional IDLs were defined for describing the services that objects offer, but not those services they require from other objects, nor the relative order in which they expect their methods to be called. Some of the existing proposals... more
Many architecture description languages (ADLs) have been proposed to model, analyze, configure, and deploy complex software systems. To face this diversity, extensible ADLs (or ADL interchange formats) have been proposed. These ADLs... more
We attack the problem of user fatigue in using an interactive genetic algorithm to evolve user interfaces in the XUL interface definition language. The interactive genetic algorithm combines computable user interface design metrics with... more
As Web services proliferate, size and magnitude of UDDI Business Registries (UBRs) are likely to increase. The ability to discover Web services of interest then across multiple UBRs becomes a major challenge specially when using primitive... more
In this paper we examine formally the idea that the architecture of a system can be modelled by the structure of its interface expressed in terms of the interfaces for its components. Thus, System Interface Architecture = Structured set... more
Due to the dynamic and ephemeral nature of ubiquitous computing (ubicomp) environments, it is necessary that application software in ubicomp environments is situationaware (SA) and should be adaptable to both users' situation changes and... more
We present enforceable component-based realtime contracts, the first extension of component-based software engineering technology that comprehensively supports adaptive realtime systems from specification all the way to the running system.
In this paper we propose two sets of metrics to measure complexity and criticality of large software systems designed and integrated using the principles of Component Based Software Engineering (CBSE). From the Component Interface... more
Composition of Web Services (WSs) is anticipated as the future standard way to dynamically build distributed applications, and hence their verification and validation is attracting great attention. The standardization of BPEL as a... more
+33 5 61 63 35 88
important that the application software in ubicomp environments is trustworthy. In order to have trustworthy application software in ubicomp environments, situation-awareness (SAW) in the application software is needed for enforcing... more
Chasm is a toolkit providing seamless language interoperability between Fortran 95 and C++. Language interoperability is important to scientific programmers because scientific applications are predominantly written in Fortran, while... more
The decision to use Digital Imaging and Communications in Medicine (DICOM), Health Level 7 (HL7), a common object broker such as the Common Object Request Brokering Architecture (CORBA) or ActiveX (Microsoft Corp, Redmond, WA) or any... more
Language interoperability is a difficult problem facing the developers and users of large numerical software packages. Language choices often hamper the reuse and sharing of numerical libraries, especially in a scientific computing... more
CORBA is a standard proposed by the Object Management Group (OMG) that promotes interoperability between distributed object systems. Following the standardization of this object-oriented middleware, the OMG has specified a set of Common... more
The EMBL Nucleotide Sequence Database is a comprehensive database of DNA and RNA sequences and related information traditionally made available in flat-file format. Queries through tools such as SRS (Sequence Retrieval System) also return... more
If formal techniques are to be more widely accepted then they should evolve as current software engineering approaches evolve. Current techniques in the development of distributed systems use interface definition languages (IDLs) as a... more
Parametric polymorphism has become a common feature of mainstream programming languages, but software component architectures have lagged behind and do not support it. We examine the problem of providing parametric polymorphism with... more
The separation of architecture definition language (ADL) and interface definition language (IDL) is widely accepted in the distributed system community. It separates issues of hierarchical composition and configuration from those of... more
Universal Personal Computing (UPC) is a novel concept to support nomadic computing on the Internet. UPC enables mobile users to access their personalized computing environment anywhere on the Internet using any available terminals. The... more
Components can be a useful tool in software development, including the development of scientific computing applications. Many scientific applications require parallel execution, but commodity component models based on remote method... more
The HuGeMap database stores the major genetic and physical maps of the human genome. HuGeMap is accessible on the Web at http://www.infobiogen.fr/ services/Hugemap and through a CORBA server. A standard genome map data format for the... more
Next-generation telecommunication software must be flexible and reusable. These requirements motivate the use of object-oriented (OO) middleware like the Common Object Request Broker Architecture (CORBA). However, many existing... more
Data collections are distributed at many different sites and stored in numerous different database management systems. The industry standard CORBA can help to alleviate the technical problems of distribution and diverging data formats. In... more
In high-performance scientific software development, the emphasis is often on short time to first solution. Even when the development of new components mostly reuses existing components or libraries and only small amounts of new code must... more
The advantages of object - oriented (OO) programming are well - known Nevertheless, distributed OO middleware sys - tems (OOM) such as CORBA, DCOM or Java RMI have not been widely adopted for the developing of Internet applications... more
Mobile Agents is a new paradigm for distributed computing where security is very essential to the acceptance of this paradigm in a large scale distributed environment. In this paper, we propose protection mechanisms for mobile agents. In... more
Services within the DISCWorld system can be represented by objects. These services may be distributed on nodes of a heterogeneous system, with communication between clients and these services and also between the services themselves,... more
The generic software interface simulator framework for Atacama Large Millimeter Array (ALMA) Common Software (ACS) provides ALMA developers with an easy means to create and configure the behaviour of interfaces that have been defined... more
The Object Management Group (OMG*) is adopting a set of standards for distributed computing, including multiple programming language bindings to the Interface Definition Language (OMG IDL). This paper explains the need for an OMG IDL... more
This paper describes current work aimed at helping scientists gain confidence in software built from emerging component technologies through the automated enforcement of interface contracts. These contracts consist of assertions required... more