7706135
A case study in architectural modeling: the AEGIS system
Software architecture is receiving increasingly attention as a critical design level for software systems. However the current practice of architectural description is largely informal and ad hoc, with the consequence that architectural documents serve as a poor communication mechanism, are difficult to analyze, and may have very little relationship to the implemented system. In an attempt to address these problems several researchers have experimented with formalisms for architectural specification and modelling. One such formalism is the WRIGHT specification language. In this paper, we show how WRIGHT can be used to provide insight into an architectural design by modelling a prototype implementation of part of the AEGIS Weapons System (AWS).
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.
15996696
Formal Connectors
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 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.
618088
Specifying and Analyzing Dynamic Software Architectures
A critical issue for complex component-based systems design is the modeling and analysis of architecture. One of the complicating factors in developing architectural models is accounting for systems whose architecture changes dynamically (during run time). This is because dynamic changes to architectural structure may interact in subtle ways with on-going computations of the system. In this paper we argue that it is possible and valuable to provide a modeling approach that accounts for the interactions between architectural reconfiguration and non-reconfiguration system functionality, while maintaining a separation of concerns between these two aspects of a system. The key to the approach is to use a uniform notation and semantic base for both reconfiguration and steady-state behavior, while at the same time providing syntactic separation between the two. As we will show, this permits us to view the architecture in terms of a set of possible architectural snapshots, each with its own steady-state behavior. Transitions between these snapshots are accounted for by special reconfiguration-triggering events.
12180900
Towards Formalized Software Architectures
An important goal in software engineering is to describe complex software systems at an architectural level of abstraction. While there are many useful architectural paradigms (pipes, blackboards, etc.) they are typically understood only idiomatically and applied in an ad hoc fashion. We show how a formal model allows us to say precisely what we mean by a software architecture, explore its properties, and systematically describe instances of the architecture. We illustrate the approach using the well-known example of pipe-filter architectures.
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.
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.
33532247
Running an NSF REU program: observations, comments and suggestions
The Department of Computer Science at the University of Alabama, in conjunction with the National Science Foundation (NSF), offered a Research Experiences for Undergraduates (REU) program during the summer of 1991. This paper discusses the administration, structure, organization, and research efforts associated with this program.
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.
17318100
Using an architecture description language for quantitative analysis of real-time systems
An architecture description language (ADL) specifies the structure of an overall system as an assembly of interacting components. ADLs can serve as input to a variety of development tools. We outline the Avionics Architecture Description Language, an emerging SAE standard for describing the architectures of hard real-time, safety-critical embedded computer systems. We describe a suite of tools that perform a set of verification, modeling and analysis, and implementation activities given an AADL specification. We summarize a study that applied these technologies using data about a complex avionics system, identifying and discussing some of the issues raised by this exercise.
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.