An Aspect-oriented. declarative, security policy specification language is presented, for enforcement by In-lined Reference Monitors. The semantics of the language establishes a formal connection between Aspect-Orient...
详细信息
ISBN:
(纸本)9781595939364
An Aspect-oriented. declarative, security policy specification language is presented, for enforcement by In-lined Reference Monitors. The semantics of the language establishes a formal connection between Aspect-orientedprogramming and In-lined Reference Monitoring wherein policy specifications denote Aspect-oriented security automata-security automata whose edge labels are encoded as pointcut expressions. The prototype language implementation enforces these security policies by automatically rewriting Java bytecode programs so as to detect and prevent policy violations at runtime.
Enterprise Recipes with Ruby and Rails helps you to overcome typical obstacles hidden in every enterprise's infrastructure. It doesn't matter if your Rails application needs to access your company's messag...
详细信息
ISBN:
(纸本)9781934356234
Enterprise Recipes with Ruby and Rails helps you to overcome typical obstacles hidden in every enterprise's infrastructure. It doesn't matter if your Rails application needs to access your company's message-oriented middleware or if it has to scan through tons of huge XML documents to get a missing piece of data. Ruby and Rails enable you to create solutions that are both elegant and *** more than 50 concise, targeted recipes, this book shows you how to use existing infrastructure to develop effectively for the enterprise. For example, Ruby is an excellent language for manipulating both textual and binary data. This is enormously useful, because typical enterprise software is about storing and processing huge amounts of data. You'll learn how to process data in various popular data formats such as XML, CSV, fixed length records, and *** book covers the whole spectrum of distributed application technologies, ranging from simple socket-based servers to full-blown Service oriented Architectures. In addition, Ruby is a perfect ally when you have to integrate with RESTful and SOAP services, or when you have to access message-oriented middleware. It even helps you to reuse your existing C/C++, Java, or .NET code with *** the advent of the Web, many enterprises have opened their internal services to the outside world to participate in the rapidly growing world of e-commerce. As an enterprise programmer you'd better learn how to use existing payment gateways and how to implement security mechanisms to protect your company's data and your customers' privacy, and this book shows you *** programming is not only about developing huge software projects but also about maintaining and operating them. You'll save a lot of valuable time if you document your software (of course, automatically) and automate tedious and recurring tasks, such as monitoring your servers and testing your programs. Enterprise Recipes with Ruby and Rails covers these major
The Open Services Gateway initiative (OSGi) is a successful attempt to bridge the gap between Java and Service oriented Computing. OSGi provides an LDAP-based query language for fine-tuning service retrieval and offer...
详细信息
ISBN:
(纸本)9789898111289
The Open Services Gateway initiative (OSGi) is a successful attempt to bridge the gap between Java and Service oriented Computing. OSGi provides an LDAP-based query language for fine-tuning service retrieval and offers an eventing mechanism that signals changes to a service's lifecyle to all clients depending on that service. Nonetheless, a number of challenges remain unsolved. OSGi's service query language, for instance, bypasses important compile-time guarantees on the syntactical correctness of queries and the language works only for properties that never change during the lifetime of a service. What programmers need, however, is a statically type-checked, robust query language that takes into account dynamically evolving, volatile service characteristics. A second problem is that the lifecycle management system requires programmers to write a considerable amount of boilerplate logic for reacting to service events. This obfuscates the business logic, which in turn decreases code comprehension and increases the odds for introducings bugs when implementing client-service interactions. This paper evaluates OSGi as a platform for programming client-service interactions in Java. After focusing on a number of shortcomings of OSGi's integrated service query language and its lifecycle management system, we propose a solution based on a programming language extension. After the conceptual definition of these new language concepts, we show how they can be transformed to regular Java code without losing interoperability with the OSGi standard.
Recently, language extensions have been proposed for Java and C# to support pattern-based reflective declaration. These extensions introduce a disciplined form of meta-programming and aspect-orientedprogramming to ma...
详细信息
ISBN:
(纸本)9781595938602
Recently, language extensions have been proposed for Java and C# to support pattern-based reflective declaration. These extensions introduce a disciplined form of meta-programming and aspect-orientedprogramming to mainstream languages: They allow members of a class (i.e., fields and methods) to be declared by statically iterating over and pattern-matching on members of other classes. Such techniques, however, have been unable to safely express simple, but common, idioms such as declaring getter and setter methods for fields. In this paper, we present a mechanism that addresses the lack of expressiveness in past work without sacrificing safety. Our technique is based on the idea of nested patterns that elaborate the outer-most pattern with blocking or enabling conditions. We implemented this mechanism in a language, MorphJ. We demonstrate the expressiveness of MorphJ with real-world applications. In particular, the MorphJ reimplementation of DSTM2, a software transactional memory library, reduces 1,107 lines of Java reflection and bytecode engineering library calls to just 374 lines of MorphJ code. At the same time, the MorphJ solution is both high level and safer, as MorphJ can separately type check generic classes and catch errors early. We present and formalize the MorphJ type system, and offer a type-checking algorithm.
Regular expressions are used to parse textual data to match patterns and extract variables. They have been implemented in a vast number of programming languages with a significant quantity of research devoted to impro...
详细信息
ISBN:
(纸本)9781424423576
Regular expressions are used to parse textual data to match patterns and extract variables. They have been implemented in a vast number of programming languages with a significant quantity of research devoted to improving their operational efficiency. However, regular expressions are limited to finding linear matches. Little research has been done in the field of object-oriented results which would allow textual or binary data to be converted to multi-layered objects. This is significantly relevant as many of today's data formats are object-based. This paper extends our previous work by detailing an algorithmic approach to perform object-oriented parsing, and provides an initial study of benchmarks of the algorithms of our contribution.
In this paper essential aspects of block-oriented world viewing are emphasized and presented in a relation to simulation models of systems managed by complex and sophisticated decision rules. The construction of such ...
详细信息
ISBN:
(纸本)9780955301858
In this paper essential aspects of block-oriented world viewing are emphasized and presented in a relation to simulation models of systems managed by complex and sophisticated decision rules. The construction of such models can be essentially simplified when one combines the agent-oriented, object-oriented and block-oriented paradigms of programming. The use of the described way leads to certain paradoxical relations among computing agents. Some applications are added.
Assertions are used for unit testing in object-oriented programming. With assertions, a test programmer compares with an expected value the result of a test execution which is obtained by referring to the object conta...
详细信息
ISBN:
(纸本)9781586039004
Assertions are used for unit testing in object-oriented programming. With assertions, a test programmer compares with an expected value the result of a test execution which is obtained by referring to the object containing its result in the object being tested. Therefore, there is a problem that test classes described as testing code depend strongly on the unnecessary objects which are not of concern to unit testing. In this work we developed an assertion mechanism which traverses objects automatically in order to eliminate the dependency from/to such unnecessary objects. Furthermore, we performed experiments on open source products, and confirmed that using this assertion mechanism decreases the Coupling between a test class and other classes.
Collaborations abstract the interactions among a group of objects above the level of an individual object-oriented programming (OOP) message send for an integrated design/manufacture process, they can realize informat...
详细信息
ISBN:
(纸本)9780878493609
Collaborations abstract the interactions among a group of objects above the level of an individual object-oriented programming (OOP) message send for an integrated design/manufacture process, they can realize information share and system integration, and can be viewed as a type of systematic approach. This paper proposes the collaborative mode in the interior of an enterprise and among enterprises and a novel knowledge-based intensive CAD/CAM framework for collaborative environment development, which integrates product design, design for process planning, NC codes auto-generation and manufacturing simulation. A unified class of knowledge intensive data structures is defined using the blackboard and 00 knowledge-based approach for handling both the design and the process planning problems. The detailed knowledge-intensive framework with integration of multi-cooperative knowledge sources and software is given. Thus, product design, process planning and NC codes auto-generation can be carried out simultaneously and collaboratively in an entirely computer-aided collaborative environment.
Software architecture modeling and representation became a main phase of the development process of complex systems. In fact, software architecture representation provides many advantages during all phases of software...
详细信息
ISBN:
(纸本)9781424421572
Software architecture modeling and representation became a main phase of the development process of complex systems. In fact, software architecture representation provides many advantages during all phases of software life cycle. Nevertheless, for man), systems, like legacy or eroded ones, there is no available representation of their architectures. In order to benefit from this representation, we propose, in this paper, an approach called ROMANTIC which focuses on extracting the architecture of an object-oriented system. The main idea of this approach is to propose a quasi-automatic process of architecture recovery based on the quality characteristics of an architecture by formulating it as a search-based problem. This last acts on the space composed of all possible architectures abstracting the object-oriented system.
暂无评论