Please login to be able to save your searches and receive alerts for new content matching your search criteria.
Performance programming is characterized by the need to structure software components to exploit the context of use. Relevant context includes the target processor architecture, the available resources (number of processors, network capacity), prevailing resource contention, the values and shapes of input and intermediate data structures, the schedule and distribution of input data delivery, and the way the results are to be used. This paper concerns adapting to dynamic context: adaptive algorithms, malleable and migrating tasks, and application structures based on dynamic component composition. Adaptive computations use metadata associated with software components — performance models, dependence information, data size and shape. Computation itself is interwoven with planning and optimizing the computation process, using this metadata. This reflective nature motivates metaprogramming techniques. We present a research agenda aimed at developing a modelling framework which allows us to characterize both computation and dynamic adaptation in a way that allows systematic optimization.
Mobile teamwork has become an emerging requirement in the daily business of large enterprises. Employees collaborate across locations and need team support while they are on the move. Business documents and expertise need to be shared independent of the actual location or connectivity (e.g., access through a mobile phone, laptop, Personal Digital Assistant, etc.) of employees. Although many collaboration tools and systems exist, most do not deal with new demanding requirements such as locating artifacts and experts through distributed searches, advanced information subscription and notification, and mobile information sharing and access. The MOTION service architecture that we have developed supports mobile teamwork by taking into account the different connectivity modes of users, provides access support for various devices such as laptop computers and mobile phones, and uses XML meta data and the XML Query Language (XQL) for distributed searches and subscriptions. In this article, we describe the architecture and the components of our generic MOTION services platform for building collaborative applications. The MOTION platform is currently being evaluated in two large industry case-studies.
In this article we show how knowledge representation techniques can be applied to software architecture. We define a representation model for software architecture concepts. The model is based on MY model (meta modeling in Y), which is a knowledge engineering methodology. It represents software architecture concepts using three branches: component, connector, and architecture. The component branch represents concepts that are related to computations, the connector branch represents concepts that are related to interactions, and the architecture branch represents concepts that are related to the structure and the topology of the system described. We think that such a representation of architecture concepts aids in improving reusability not only at the implementation level, but also at the description level. The model assigns a hierarchical library for the four software architecture conceptual levels (meta-meta architecture level, meta architecture level, architecture level, application level).
The existence of neutral networks in genotype-phenotype maps has provided significant insight in theoretical investigations of evolutionary change and combinatorial optimization. In this paper we will consider neutral networks of two particular genotype-phenotype maps from a combinatorial perspective. The first map occurs in the context of folding RNA molecules into their secondary structures and the second map occurs in the study of sequential dynamical systems, a new class of dynamical systems designed for the analysis of computer simulations. We will prove basic properties of neutral nets and present an error threshold phenomenon for evolving populations of simulation schedules.
This paper presents three areas which require attention to allow quality improvements in surface mount production. Two of these are the training of the engineers designing the product, and the design of the production equipment. The major focus of the paper is the third area, the design of the components themselves.
The EIA process provides the framework for structuring EIA activities, events, documents and methods. An overview of examples of design and management choices available to EIA process participants is presented. The choices pertain to (1) general EIA process design and management; (2) EIA process inputs, outputs and linkages; and (3) EIA process adaptations. The available choices are more extensive than are generally recognised in EIA process characterisations. EIA process participants can select the mix of choices that best suit proposal characteristics, environmental conditions, contextual factors and their interests and priorities. An awareness of the available choices is a good first step. EIA quality and effectiveness analyses could, with appropriate adaptations and refinements, help distinguish among blends of choices that are recurrently more and less effective.
Diagnosing the quality of components in fault-tolerant computer systems often requires numerous tests with limited resources. It is usually the case that repeated tests on a selected, limited number of components are performed and the results are taken into account so as to infer a diagnostic property of the computer system as a whole. In this paper we abstract fault-tolerant testing as the following problem concerning the color of the majority in a set of colored balls. Given a set of balls each colored with one of two colors, the majority problem is to determine whether or not there is a majority in one of the two colors. In case there is such a majority, the aim is to output a ball of the majority color, otherwise to declare that there is no majority. We propose algorithms for solving the majority problem by repeatedly testing only k-tuple queries. Namely, successive answers of an oracle (which accepts as input only k-tuples) to a sequence of k-tuple queries are assembled so as to determine whether or not the majority problem has a solution. An issue is to design an algorithm which minimizes the number of k-tuple queries needed in order to solve the majority problem on any possible input of n balls. In this paper we consider three querying models: Output, Counting, and General, reflecting the amount and type of information provided by the oracle on each test for a k-tuple.
The EIA process provides the framework for structuring EIA activities, events, documents and methods. An overview of examples of design and management choices available to EIA process participants is presented. The choices pertain to (1) general EIA process design and management; (2) EIA process inputs, outputs and linkages; and (3) EIA process adaptations. The available choices are more extensive than are generally recognised in EIA process characterisations. EIA process participants can select the mix of choices that best suit proposal characteristics, environmental conditions, contextual factors and their interests and priorities. An awareness of the available choices is a good first step. EIA quality and effectiveness analyses could, with appropriate adaptations and refinements, help distinguish among blends of choices that are recurrently more and less effective.