14188317
Beyond Definition/Use: Architectural Interconnection
Large software systems require decompositional mechanisms in order to make them tractable. Traditionally, MILs and IDLs have played this role by providing notations based on definition/use bindings. In this paper we argue that current MIL/IDLs based on definition/use have some serious drawbacks. A significant problem is that they fail to distinguish between "implementation" and "interaction" relationships between modules. We propose an alternative model in which components interact along welldefined lines of communication -- or connectors. Connectors are defined as protocols that capture the expected patterns of communication between modules. We show how this leads to a scheme that is much more expressive for architectural relationships, that allows the formal definition of module interaction, and that supports its own form of automated checks and formal reasoning.
1741470
Architectural Mismatch or Why it's hard to build systems out of existing parts
Many would argue that future breakthroughs in software productivity will depend on our ability to combine existing pieces of software to produce new applications. An important step towards this goal is the development of new techniques to detect and cope with mismatches in the assembled parts. Some problems of composition are due to low-level issues of interoperability, such as mismatches in programming languages or database schemas. However, in this paper we highlight a different, and in many ways more pervasive, class of problem: architectural mismatch. Specifically, we use our experience in building a family of software design environments from existing parts to illustrate a variety of types of mismatch that center around the assumptions a reusable part makes about the structure of the application in which is to appear. Based on this experience we show how an architectural view of the mismatch problem exposes some fundamental, thorny problems for software composition and suggests possible research avenues needed to solve them.
326385
A formal basis for architectural connection
As software systems become more complex, the overall system structure—or software architecture—becomes a central design problem. An important step toward an engineering discipline of software is a formal basis for describing and analyzing these designs. In the article we present a formal approach to one aspect of architectural design: the interactions among components. The key idea is to define architectural connectors as explicit semantic entities. These are specified as a collection of protocols that characterize each of the participant roles in an interaction and how these roles interact. We illustrate how this scheme can be used to define a variety of common architectural connectors. We further provide a formal semantics and show how this leads to a system in which architectural compatibility can be checked in a way analogous to type-checking in programming languages.
8249574
Formal modeling and analysis of the HLA component integration standard
An increasingly important trend in the engineering of complex systems is the design of component integration standards. Such standards define rules of interaction and shared communication infrastructure that permit composition of systems out of independently-developed parts. A problem with these standards is that it is often difficult to understand exactly what they require and provide, and to analyze them in order to understand their deeper properties. In this paper we use our experience in modeling the High Level Architecture (HLA) for Distributed Simulation to show how one can capture the structured protocol inherent in an integration standard as a formal architectural model that can be analyzed to detect anomalies, race conditions, and deadlocks.
9208543
Formalizing Architectural Connection
As software systems become more complex the overall system structure { or software architecture { becomes a central design problem. An important step towards an engineering discipline of software is a formal basis for describing and analyzing these designs. In this paper we present a theory for one aspect of architectural description: the interactions between components. The key idea is to de ne architectural connectors as explicit semantic entities. These are specied as a collection of protocols that characterize each of the participant roles in an interaction and how these roles interact. We illustrate how this scheme can be used to de ne a variety of common architectural connectors. We provide a formal semantics and show how this leads to a sound deductive system in which architectural compatibility can be checked in a way analogous to type checking in programming languages.
10840593
The Web: Interactive and Multimedia Education
The World Wide Web is becoming increasingly important in the provision of education, as recognised by several high profile UK government reports. Improved tools for developing Web-based teaching and learning materials, together with focused training by individuals, institutions and national programmes, have led to a greater confidence in network technologies by educators at many levels. Higher education institutions have been leading players in the UK in the development of innovative ideas for exploiting the educational potential of the Web. This paper presents examples of several techniques in evidence in UK higher education which demonstrate some of the key innovations in teaching and learning, focusing on the themes of multimedia and interactivity. Some of the pedagogic and technology issues associated with these techniques are identified, and the way in which integration into the curriculum can be achieved is explored. This integration takes many aspects of the learning process into account, from the delivery of information and references, through demonstration, example and practice, to learning by reflection and assessment. In particular, the way in which the Web encourages the trend away from directed teaching and towards self-paced and distance learning is investigated. The Web is shown as supporting the learning process in many more ways than its traditional information delivery role. Three main areas explored are: (1) Virtual environments, where real-life scenarios are reconstructed to bridge the gap between theory and practice; (2) interactive simulations, which allow the investigation of changing experimental conditions without the cost and effort of laboratory equipment; and (3) assessment, which can provide valuable feedback to teachers and learners alike, exploiting both interactive and multimedia elements to give added value to online educational materials.
8858476
A Parallel Algorithm for Graph Matching and Its MasPar Implementation
Search of discrete spaces is important in combinatorial optimization. Such problems arise in artificial intelligence, computer vision, operations research, and other areas. For realistic problems, the search spaces to be processed are usually huge, necessitating long computation times, pruning heuristics, or massively parallel processing. We present an algorithm that reduces the computation time for graph matching by employing both branch-and-bound pruning of the search tree and massively-parallel search of the as-yet-unpruned portions of the space. Most research on parallel search has assumed that a multiple-instruction-stream/multiple-data-stream (MIMD) parallel computer is available. Since massively parallel stream (SIMD) computers are much less expensive than MIMD systems with equal numbers of processors, the question arises as to whether SIMD systems can efficiently handle state-space search problems. We demonstrate that the answer is yes, and in particular, that graph matching has a natural and efficient implementation on SIMD machines.
19591181
RAVE: Real-Time Services for the Web
Abstract RAVE provides Web clients with real-time data services. Thus, RAVE supports live and stored video and audio as well as less typical real-time services such as MIDI and information services (e.g., news or stock market feeds). The system is extensible so that new real-time services can easily be added. RAVE has a flexible distribution architecture: it supports unicast and multicast, as well as both real-time data sources and sinks. RAVE integrates well into the Web so that many multimedia applications may be written using simple HTML extensions. We describe the RAVE architecture, the Web-client facilities that are required to support it, and three applications we have built using RAVE: a video library, a video mail system, and a video-conferencing tool.
6299292
Automated segmentation of lumbar vertebrae in digital videofluoroscopic images
Low back pain is a significant problem in the industrialized world. Diagnosis of the underlying causes can be extremely difficult. Since mechanical factors often play an important role, it can be helpful to study the motion of the spine. Digital videofluoroscopy has been developed for this study and it can provide image sequences with many frames, but which often suffer due to noise, exacerbated by the very low radiation dosage. Thus, determining vertebra position within the image sequence presents a considerable challenge. There have been many studies on vertebral image extraction, but problems of repeatability, occlusion and out-of-plane motion persist. In this paper, we show how the Hough transform (HT) can be used to solve these problems. Here, Fourier descriptors were used to describe the vertebral body shape. This description was incorporated within our HT algorithm from which we can obtain affine transform parameters, i.e., scale, rotation and center position. The method has been applied to images of a calibration model and to images from two sequences of moving human lumbar spines. The results show promise and potential for object extraction from poor quality images and that models of spinal movement can indeed be derived for clinical application.
11582167
Automated tracking in digitized videofluoroscopy sequences for spine kinematic analysis
Spine kinematic analysis provides useful information to aid understanding of the segmental motion of the vertebrae. Digitized videofluoroscopy (DVF) is the existing practical modality to image spine motion for kinematic data acquisition. However, obtaining kinematic parameters from DVF sequence requires manual landmarking which is a laborious process and can be subjective and error prone. This work develops an automated spine motion tracking algorithm for DVF sequences within a Bayesian framework. By utilizing the anatomical relationships between vertebrae, a dynamic Bayesian network with a particle filter at each node is constructed. The proposed algorithm overcomes the dimensionality problem in a regular particle filter and has more efficient and robust performance. It can provide results of about 1^o and 2pixels (0.2mm) variability in rotation and translation estimation, respectively, during repeated initialization analysis on sequences from simulation and in vivo healthy human subject studies.