Sequential object-oriented languages have many constrains that can not properly represent the real world with concurrency and the execution on multiprocessor computers. In this paper, we present a mechanism to support...
详细信息
Sequential object-oriented languages have many constrains that can not properly represent the real world with concurrency and the execution on multiprocessor computers. In this paper, we present a mechanism to support the concurrency in object-oriented language. By doing so, the programming power and adaptabilities in various applications can be improved. the underlying concept of the mechanism is to unify the notions of object and process to the active object. So, the object and process can be treated as a consistent manner. We also try to improve the encapsulation and reusability that are advantages of object-oriented programming language. And we suggest an implementation method of concurrent object-oriented programming language. the message passing mechanism used in this work supports both synchronous and asynchronous method calls. the object model is based on a single threaded one. We implemented the concurrent object-oriented system by using of Lex/Yacc, and Task library.
Object-oriented technology, including object-oriented analysis (OOA), object-oriented design (OOD), and object-oriented programming (OOP), is a new promising approach to developing software systems to reduce software ...
详细信息
Object-oriented technology, including object-oriented analysis (OOA), object-oriented design (OOD), and object-oriented programming (OOP), is a new promising approach to developing software systems to reduce software costs and to increase software extensibility, flexibility, and reusability. Software metric is widely used to measure software complexity and assure software correctness. However, few software metrics based on the object-oriented programming languages are concerned. this paper proposes a metric to measure object-oriented software. Also, an important factor, called URIs [6], is conducted to build the metric. this approach is to describe a graph-theoretical method for measuring the complexity of class hierarchy. the proposed metric shows that inheritance has a close relation with object-oriented software complexity and reveals that misuse of repeated (multiple) inheritance will increase software complexity and be prone to implicit software errors.
Meta-levels are complex pieces of software with diverse demands in boththe computation and interaction domains. Common techniques using just code to express behaviour fail to clearly assign responsibility for a parti...
详细信息
ISBN:
(纸本)3540601600
Meta-levels are complex pieces of software with diverse demands in boththe computation and interaction domains. Common techniques using just code to express behaviour fail to clearly assign responsibility for a particular behaviour's definition of to provide support for the reuse or integration of existing behaviour descriptions. the techniques of fine-grained decomposition of meta-level behaviour into objects and their subsequent composition into object models provides a framework for creating, reusing and integrating complex object behaviours. Using such a framework, we show that users can develop and integrate quite different object models while retaining a high degree of abstraction and fostering meta-level component reuse.
A service definition is an abstract specification of the behavior of a software component. It provides the interface between the users of an object and its (hidden) implementation. A protocol can be a part of a servic...
详细信息
ISBN:
(纸本)3540601600
A service definition is an abstract specification of the behavior of a software component. It provides the interface between the users of an object and its (hidden) implementation. A protocol can be a part of a service, definition. It captures the conditions under which interface operations can be invoked. this is of use for the designers of clients, but also for implementers of the service, at least if the protocol mechanism provides automatic (static or dynamic) acceptability checking of invocations or messages. Existing protocol formalisms are mostly based on finite state machines that describe legal orderings of messages. this is too limited, however, to model more complex services or to handle conditions that go beyond the ordering (such as access-control or time-dependencies) without referring to a service implementation. In this paper we explore a grammar-based approach to protocol definition, i.e. we define protocols as non-deterministic grammars extended with provisions for parallellism. the resulting protocols not only define legal message sequences but can also impose context-sensitive constraints on properties of messages, like its sender or a time stamp. Protocotols are truly abstract, i.e, independent of the implementation of a service. Since we want to investigate the kinds of constructs needed in specifying protocols we do not introduce a new notation, but instead express protocols as parsers written in a lazy functional language using a technique called combinator parsing. Besides giving a complete picture of the semantics of the constructs this also allows us to show how dynamic protocol checking can be provided. the approach is illustrated through several examples and its potential and limitations are discussed.
In spite of unheralded advances in computer hardware and software, most of today’s introductory programming courses are much like courses taught 30 years ago. Although the programming languages have changed, we conti...
详细信息
In this paper the impact of parallel programming paradigms and data distributions on the performance of a parallel finite difference application is investigated. the finite difference application is one of the kernel ...
详细信息
In this work, we are concerned withthe technology and methods for integrating an application that is event-based, whether that application is being constructed from scratch or is a synthesis of existing event-based s...
详细信息
In this work, we are concerned withthe technology and methods for integrating an application that is event-based, whether that application is being constructed from scratch or is a synthesis of existing event-based systems. Developing an event-based application is a complex task for programmers, who must address several issues not found in traditional systems, and, currently, must do so without much assistance. In this paper, we broaden the technology for integration to encompass event-based programming. A method is presented for separating event-based interaction properties from the implementation of the application modules, so that system integration can be performed using only the abstractions. then based upon the abstract aggregate, all interface software needed to validly implement the system will be generated automatically. A software bus model is enhanced to accommodate the models which drive event-based distributed applications. In this way, designers may define complex event-based interaction abstractly, making it easier to integrate and experiment with event-based distributed applications.
Recently, the developments in constraint languages like Prolog III may be considered as general approach for the complex scheduling problems, but only restrictive constraints are generally allowed, while humans use pr...
详细信息
Recently, the developments in constraint languages like Prolog III may be considered as general approach for the complex scheduling problems, but only restrictive constraints are generally allowed, while humans use preference constraints more to solve them. In this paper, a novel human preference-driven scheme was suggested. the added features include dynamic object switching withthe class hierarchy considered, intelligent backtracking where temporal constraint are used for deciding backup point, and case-based revisions for refining or correcting old scheduling. this scheme was implemented as human-like constraint and successfully tested for short-term lecture scheduling.
Withthe advent of high-performance microprocessors and high-speed local area networks, networks of workstations (NOW) are now capable of delivering sustained computational performance comparable to that of a supercom...
详细信息
Human designers and optimization codes are very good at improving the performance of existing designs, however, due to time and resource constraints, human designers tend to limit the range of alternative configuratio...
详细信息
暂无评论