Privacy remains a major challenge today, partly because it brings together social and technical considerations. Yet, current software engineering focuses only on the technical aspects. In contrast, the authors" a...
详细信息
Privacy remains a major challenge today, partly because it brings together social and technical considerations. Yet, current software engineering focuses only on the technical aspects. In contrast, the authors" approach, Revani, understands privacy from the standpoint of sociotechnical systems (STSs), with particular attention on the social elements of STSs. They specify STSs via a combination of technical mechanisms and social norms founded on accountability. Revani provides a way to formally represent mechanisms and norms and applies model checking to verify whether specified mechanisms and norms would satisfy stakeholder requirements. Additionally, Revani provides a set of design patterns and a revision tool to update an STS specification as necessary. The authors demonstrate the work of Revani on a healthcare emergency use case pertaining to patient privacy during disasters.
In object-oriented programs built in layers, an object at a higher level of abstraction is implemented by objects at lower levels of abstraction. It is usually crucial to correctness that a lower-level object not be s...
详细信息
In object-oriented programs built in layers, an object at a higher level of abstraction is implemented by objects at lower levels of abstraction. It is usually crucial to correctness that a lower-level object not be shared among several higher-level objects. This paper unveils some difficulties in writing procedure specifications strong enough to guarantee that a lower-level object can be used in the implementation of another object at a higher level of abstraction. To overcome these difficulties, the paper presents virginity, a convenient way of specifying that an object is not globally reachable and thus can safely be used in the implementation of a higher-level abstraction. (C) 1999 Elsevier Science B.V. All rights reserved.
Domain-specific aspect languages (DSALs) bring the well-known advantages of domain specificity to the level of aspect code. However, DSALs incur the significant cost of implementing or extending a language processor o...
详细信息
Domain-specific aspect languages (DSALs) bring the well-known advantages of domain specificity to the level of aspect code. However, DSALs incur the significant cost of implementing or extending a language processor or weaver. Furthermore, this weaver typically operates blindly, making detection of interactions with aspects written in other languages impossible. This raises the necessity of an appropriate infrastructure for DSALs. The case study we present here illustrates how the Reflex kernel for multi-language AOP addresses these issues, by considering the implementation of a DSAL for advanced transaction management, KALA. We first detail the implementation of KALA in Reflex, called ReLAx, illustrating the ease of implementation of runtime semantics, syntax, and language translation. We then show a straightforward and modular extension to KALA at all these levels, and demonstrate how Reflex helps in dealing with interactions between KALA and another DSAL for concurrency management. These invaluable assets enable faster development of DSALs as well as their ability to coexist within one application, thereby removing the most important impediments to their re-emergence in the aspect community.
The use of object-oriented database principles to help model an image for computer vision, specifically, for line-image analysis, is described. The resulting representation, called thin line code (TLC), is general acr...
详细信息
The use of object-oriented database principles to help model an image for computer vision, specifically, for line-image analysis, is described. The resulting representation, called thin line code (TLC), is general across known applications and extensible to new applications. TLC's advantages, and also some difficulties it has in strictly adhering to traditional notions of object orientation, are addressed. A review of relevant aspects of object modeling is included
Some solutions to a programming problem are more elegant or more simple than others and thus more understandable for students. We review desirable properties of example programs from a cognitive and a measurement poin...
详细信息
Some solutions to a programming problem are more elegant or more simple than others and thus more understandable for students. We review desirable properties of example programs from a cognitive and a measurement point of view. Certain cognitive aspects of example programs are captured by common software measures, but they are not sufficient to capture a key aspect of understandability: readability. We propose and discuss a simple readability measure for software, SRES, and apply it to object-oriented textbook examples. Our results show that readability measures correlate well with human perceptions of quality. Compared with other readability measures, SRES is less sensitive to commenting and whitespace. These results also have implications for software maintainability measures.
This paper gives an overview of the development of a distributed object-oriented kernel implemented in Modula-2. The underlying concepts of this kernel are first described. Its main feature consists in using task migr...
详细信息
This paper gives an overview of the development of a distributed object-oriented kernel implemented in Modula-2. The underlying concepts of this kernel are first described. Its main feature consists in using task migration in order to achieve communication between distant nodes of the local network. Then, the implementation in Modula-2 is outlined. We emphasise the use of modules for implementing kernel objects and types. We conclude by evaluating the Modula-2 language through this experience.
Discussed in this paper is a novel method for the generation of Jacobian matrices which is particularly suitable for object-oriented implementations of multibody dynamics programs. The method starts from a description...
详细信息
Discussed in this paper is a novel method for the generation of Jacobian matrices which is particularly suitable for object-oriented implementations of multibody dynamics programs. The method starts from a description of multibody kinematics as a series of general mappings between manifolds, from which the overall Jacobian results-via the chain rule-as a sequence of matrix products. For these matrices, a new sparse-matrix scheme is suggested. Their "elements" are, besides zeroes, the well-known spatial transformation matrices and the local Jacobians of the individual transmission elements. It is shown how the main approaches for calculation of Jacobians in robotics can be viewed as particular decompositions and multiplication schemes of the sparse-matrices discussed above. Furthermore, two new schemes are derived which may be advantageous for dynamics calculations. The exposition is complemented by a comparison of Jacobian-based methods with composite rigid body and recursive methods for the generation of dynamical equations together with some comments on our current C++-implementation.
The recent trend in distributed automation and control systems has been towards event-triggered system architectures such as UML and IEC 61499. Although existing communication protocols (e.g., Ethernet) can support hi...
详细信息
The recent trend in distributed automation and control systems has been towards event-triggered system architectures such as UML and IEC 61499. Although existing communication protocols (e.g., Ethernet) can support high-level communication within these systems, there is contention as to which low-level protocol to use, or if any exist that meet the requirements of being event-triggered and hard real-time. This paper proposes a new way to measure communication performance. The goal of the new measurement method is to stress the necessity that a real-time communication protocol needs to be both efficient and fair. This is illustrated by comparing three communication strategies: Controller Area Network (CAN), Time-Triggered CAN (TTCAN) and Escalating Priority CAN (EPCAN). The first two represent the extremes between event-triggered and time-triggered communication strategies;the third is introduced to illustrate the benefits of a new event-based communication protocol proposed by the authors. (c) 2010 Elsevier Ltd. All rights reserved.
This paper presents the development of an event-driven control architecture and its implementation in a physical simulator of a computerized manufacturing system using object-oriented techniques. The architecture was ...
详细信息
This paper presents the development of an event-driven control architecture and its implementation in a physical simulator of a computerized manufacturing system using object-oriented techniques. The architecture was developed to improve the efficiency of handling concurrent control events in the DOS environment. In the implementation, the control system of the physical simulator consists of four distinct layers of control devices: a PC/386 computer, a microcontroller, I/O modules and the system's control devices such as motors, solenoids and sensors. A control program residing in the PC/386 coordinates system-level tasks such as event scheduling, while a BASIC program running on the microcontroller handles all low-level control tasks such as sensor monitoring and motion control. The concepts and developments presented in this paper should help in implementing an efficient control system for both CIM systems and their physical simulators.
Software faults are costly to find and remove from programs. It is better to avoid inserting the faults in the first place. The authors identify requirements-related faults that can arise during the transformation of ...
详细信息
Software faults are costly to find and remove from programs. It is better to avoid inserting the faults in the first place. The authors identify requirements-related faults that can arise during the transformation of formal specifications into programs, analyse each to discover its causes, and propose corresponding fault prevention methods. The approach works by analysing a specification, decomposing it into specification fragments with different levels like components, determining the correct implementation order among the components, and enabling automated code generation for the components and other low-level specification fragments. The approach seeks to reduce the faults in programs significantly by guiding programmers to work effectively and productively. The authors evaluate the approach's performance experimentally and compare it to the performance of a fault-prevention method with industry applications.
暂无评论