programmingobject interactions is at the heart of object-orientedprogramming. To improve reusability of the interactions, it is important to program object interactions generically. We present two tools that facilit...
详细信息
Design patterns have been used in object-oriented frameworks. This paper first discusses the issues in testing applications developed with design patterns using an object-oriented framework. Two kinds of design patter...
详细信息
Design patterns have been used in object-oriented frameworks. This paper first discusses the issues in testing applications developed with design patterns using an object-oriented framework. Two kinds of design patterns are available, extensible and static patterns, and this paper focuses on testing applications using later one. Applications developed using extensible design patterns are difficult to test due to dynamic typing, dynamic binding, extensibility, and communication complexity. This paper then presents a technique, Message Framework Sequence Specifications (MfSS), for generating scenario templates that can be used to generate various kinds of test scenarios to test applications developed using extensible design patterns and an object-oriented framework. Finally, this paper uses the MfSS technique to test a small bank framework. The test scenarios generated successfully detected numerous faults that were seeded in the program.
We apply our object-oriented design environment PAM-Blox to dynamic generation of circuits for reconfigurable computing. Our approach combines the structural hardware design environment with commercial synthesis of fi...
详细信息
We apply our object-oriented design environment PAM-Blox to dynamic generation of circuits for reconfigurable computing. Our approach combines the structural hardware design environment with commercial synthesis of finite state machines (FSMs). We integrate the advantages of an object-oriented design environment with control over placement at every level of abstraction, with commercial FSM synthesis and optimization. As driving application we consider reconfigurable hardware accelerators for the NP-complete Boolean satisfiability problem. These accelerators require a fast compilation of circuits consisting of instance-specific datapaths and control automatons. By providing FSM optimization and control over placement, our design environment enables the optimization of performance.
A whole is aggregated from parts, where a part can be aggregated itself or be atomic. The structure forms an aggregation (or part-whole) hierarchy. The whole can be modeled from multiple perspectives, where a perspect...
详细信息
A whole is aggregated from parts, where a part can be aggregated itself or be atomic. The structure forms an aggregation (or part-whole) hierarchy. The whole can be modeled from multiple perspectives, where a perspective introduces its own aggregation hierarchy as well as dedicated properties for the whole and parts. Different perspectives share the same atomic parts. Role classes and objects support multiple perspectives on the aggregation of a whole with same atomic parts.
Traditional class-based object-oriented data models and programming languages do not allow an object to have several types or to play different roles while keeping the same identity. Therefore, the modeling of persist...
详细信息
Software repositories are often based on object-oriented or relational databases, usually with extensions to accommodate the special requirements of software. Here, we discuss a software repository based on a structur...
详细信息
A network management environment with dynamic behaviour can be used as a base for developing a wide range of applications from active networks to 'on the fly' customised network management interfaces. This pap...
详细信息
A network management environment with dynamic behaviour can be used as a base for developing a wide range of applications from active networks to 'on the fly' customised network management interfaces. This paper presents the dynamic features of the 'BaseLayer', a network management tool developed by Machine Intelligence Research Laboratory, University of Ottawa. The dynamic features include the possibilities of adding new managed object (MO) classes without turning down the network management application and of adding new methods and attributes to MOs without turning down the factory servers for those managed objects. The second facility defines the Dynamic Managed objects (DMOs) that can be changed at runtime by adding new methods and attributes 'on the fly'. While for adding new managed object classes the Interface Repository (IFR) and the Dynamic Invocation Interface (DII) provided by COBRA were used, for DMO implementation a master-shadow server architecture was designed. In the new architecture each DMO factory server has at least 2 processes: a master process, which holds the MO instances and their attributes, and one or more shadow processes, which hold the new added methods.
In this paper we describe the implementation of a distributed garbage collector for group of objectoriented database. We start by considering the issues that led to the choice of algorithm and why garbage collection ...
详细信息
Applying the change impact analysis to the distributed environment is not straightforward since it is based on the centralized system environment. In this paper, we investigate the change impact analysis of object-ori...
详细信息
Applying the change impact analysis to the distributed environment is not straightforward since it is based on the centralized system environment. In this paper, we investigate the change impact analysis of object-oriented software in the distributed environment. We, first, categorize the types of change elements in object-oriented software into three disjoint sets: data, method, and class level changes. We, then, analyze the impact of each set of changes and represent it in the form of a Distributed Program Dependency Graph (DPDG). The DPDG is a graph showing relationship of objectoriented software - with data elements, classes, design documents, servers - and its minimized firewall in the distributed environment. Thus, the DPDG reduce the effort and element of software to retest.
Implicitly parallel programming languages place the burden of exploiting and managing parallelism upon the compiler and runtime system, rather than on the programmer. This paper describes the design of NIP, a runtime ...
详细信息
暂无评论