Debugging is hard, and debugging cognitive agent programs is particularly hard, since they involve concurrency, a dynamic environment, and a complex execution model that includes failure handling. Previous work by Ko ...
详细信息
ISBN:
(纸本)9781510855076
Debugging is hard, and debugging cognitive agent programs is particularly hard, since they involve concurrency, a dynamic environment, and a complex execution model that includes failure handling. Previous work by Ko & Myers has demonstrated that providing Alice and Java programmers with software that can answer "why?" and "why not?" questions can make a dramatic difference to debugging performance. This paper considers how to adapt this approach to cognitive agent programs, specifically AgentSpeak. It develops and formalises definitions for "why?" and "why not?" questions and associated answers, and illustrates their application using a scenario.
We present a simple, practical method for managing the energy produced and consumed by a network of devices. Our method is based on (convex) model predictive control. We handle uncertainty using a robust model predict...
详细信息
ISBN:
(纸本)9781509045839
We present a simple, practical method for managing the energy produced and consumed by a network of devices. Our method is based on (convex) model predictive control. We handle uncertainty using a robust model predictive control formulation that considers a finite number of possible scenarios. A key attribute of our formulation is the encapsulation of device details, an idea naturally implemented with object-orientedprogramming. We introduce an open-source Python library implementing our method and demonstrate its use in planning and control at various scales in the electrical grid: managing a smart home, shared charging of electric vehicles, and integrating a wind farm into the transmission network.
In this paper, based on the object-orientedprogramming, we propose a program infrastructure for solving all the solutions to the problems of which solution is composed of n steps'selections. Firstly, we consider ...
详细信息
In this paper, based on the object-orientedprogramming, we propose a program infrastructure for solving all the solutions to the problems of which solution is composed of n steps'selections. Firstly, we consider n steps as n objects, each object has a queue/stack to save all the possible options. From the first step to the final, each selection forms a solution, then return to the recent step of remaining selections, from it to the final, continue get the options to form solution. Until the completion of all the possible options for each step, so as to finish all solutions.
Modularity is the fundamental aspect of modern software engineering, however many advanced modularity techniques requires prospective technologies as part of development and operation process. In this paper, we presen...
详细信息
Software testing is one of the most important process in the software development life cycle, since it ensures the delivery of good quality software to the user. In order to make this process more efficient, automated...
详细信息
Software testing is one of the most important process in the software development life cycle, since it ensures the delivery of good quality software to the user. In order to make this process more efficient, automated testing is required. Automated testing offers the advantages of reduced cost and time and it is also more reliable than manual means. In automated testing, test oracle process is required to test software applications. The software applications developed using aspect orientedprogramming paradigm can also be tested using automated testing. Aspect orientedprogramming offers the advantages over object oriented programming paradigm by centralizing various cross cutting concerns in a software code, thereby improving the modularity of the code. Since the crosscutting concern is separated into a single module, maintenance of such systems becomes easy. In this paper, the artificial neural network approach is used for testing the aspect orientedprogramming applications by developing test oracle.
The lower layers in the modern computing infrastructure are written in languages threatened by exploitation of memory management errors. Recently deployed exploit mitigations such as control-flow integrity (CFI) can p...
详细信息
ISBN:
(纸本)9781931971300
The lower layers in the modern computing infrastructure are written in languages threatened by exploitation of memory management errors. Recently deployed exploit mitigations such as control-flow integrity (CFI) can prevent traditional return-orientedprogramming (ROP) exploits but are much less effective against newer techniques such as Counterfeit object-orientedprogramming (COOP) that execute a chain of C++ virtual methods. Since these methods are valid control-flow targets, COOP attacks are hard to distinguish from benign computations. Code randomization is likewise ineffective against COOP. Until now, however, COOP attacks have been limited to vulnerable C++ applications which makes it unclear whether COOP is as general and portable a threat as ROP. This paper demonstrates the first COOP-style exploit for objective-C, the predominant programming language on Apple's OS X and iOS platforms. We also retrofit the objective-C runtime with the first practical and efficient defense against our novel attack. Our defense is able to protect complex, real-world software such as iTunes without recompilation. Our performance experiments show that the overhead of our defense is low in practice.
The MDD method was used to develop software to evaluate the hydraulic safety of irrigation pipeline systems. The difficulty in developing and maintaining the software is that the diversity of hydraulic behavior and st...
详细信息
ISBN:
(纸本)9783319398839;9783319398822
The MDD method was used to develop software to evaluate the hydraulic safety of irrigation pipeline systems. The difficulty in developing and maintaining the software is that the diversity of hydraulic behavior and structure of various ancillary facilities constituting the irrigation pipeline system bring complexity into the code to process the boundary conditions and to enter data in the numerical calculation solver. To solve that problem, this study used the following two methods. (1) The various pipe facilities and ancillary facilities which are the domain to analyze were defined the data structure by UML and the design pattern was applied in implementation. (2) The method of entering data about the boundary conditions into the numerical analysis solver was assisted by objects automatically coded from the metadata that were stipulated using the schema language of XML.
Model transformations are at the very heart of the Model Driven Engineering paradigm. As modern programs, they are complex, difficult to write and test, and overall, difficult to understand, maintain, and reuse. In ot...
详细信息
ISBN:
(数字)9783319466132
ISBN:
(纸本)9783319466132;9783319466125
Model transformations are at the very heart of the Model Driven Engineering paradigm. As modern programs, they are complex, difficult to write and test, and overall, difficult to understand, maintain, and reuse. In other paradigms, such as object-orientedprogramming, design patterns play an important role for understanding and reusing code. Many works have been proposed to detect complete design pattern instances for understanding and documentation purposes, but also partial design pattern instances for quality assessment and refactoring purposes. Recently, a catalog of design patterns has been proposed for model transformations. In this paper, we propose to detect these design patterns in declarative model transformation programs. Our approach first detects the rules that may play a role in a design pattern. Then, it ensures that the control flow over these rules corresponds to the scheduling scheme in the design pattern. Our preliminary evaluation shows that our detection mechanism is effective for both complete and partial instances of design patterns.
The Mission Analysis, Operations, and Navigation Toolkit Environment (MONTE) is JPL's signature astrodynamic computing platform. It supports all phases of space mission development, from early stage mission design...
详细信息
ISBN:
(纸本)9780877036333
The Mission Analysis, Operations, and Navigation Toolkit Environment (MONTE) is JPL's signature astrodynamic computing platform. It supports all phases of space mission development, from early stage mission design and analysis through flight navigation services. A central component of MONTE's optimization and filtering modules is its distributed parameter system, which allows partial derivatives to be computed for flexible sets of supported astrodynamic parameters on request. This paper outlines the object-oriented design MONTE uses for its parameter system, and provides concrete set of examples showing the power of this approach.
Learning OOP for novice learners remains a major problem for many students at University level. Students still find OOP concepts difficult to grasp. They are not able to grasp the easiest OOP topic and they are asked ...
详细信息
ISBN:
(纸本)9781509007066
Learning OOP for novice learners remains a major problem for many students at University level. Students still find OOP concepts difficult to grasp. They are not able to grasp the easiest OOP topic and they are asked to move to another topic. Therefore, this paper illustrates a concept which was tested with 10 students to ease OOP learning process for novice learners. The approach mainly consists of using a software which allows a student to focus on a particular OOP topic at a time. Upon answering successfully to a set of questions with respect to the particular topic, the learner can move to subsequent topics. The next topic will be more difficult than the previous one. In this way, the learner can increase his proficiency and understanding level at each topic level. For the evaluation purpose, a software application with two user proficiency levels was implemented. The first level teaches inheritance to the user and the second level teaches association to the user.
暂无评论