The addition of new thread types and new memory areas by the Real-Time Specification for java (RTSJ) [1] introduces new failure modes for existing class libraries. Existing tests for these class libraries will not cov...
详细信息
ISBN:
(纸本)9781605583372
The addition of new thread types and new memory areas by the Real-Time Specification for java (RTSJ) [1] introduces new failure modes for existing class libraries. Existing tests for these class libraries will not cover execution with RTs, NHRTs and with the Immortal and Scoped memory areas. Writing new tests to cover these new cases can take significant time and effort. This paper introduces an approach we call AutoRTUnit that allows us to get test coverage for the new thread types and memory areas by reusing existing JUnit[2] based unit tests. In our case we applied it to expand our test coverage for a subset of the non-RTSJ APIs within our RTSJ-compliant java virtual machine (JVM). Copyright 2008 ACM.
Traits are pure behavior components introduced in the Smalltalk community in order to integrate the traditional class inheritance with a composition mechanism: a class is composed by traits and inherits from superclas...
详细信息
Reusable APIs often define usage protocols. The author previously developed a sound and modular type system that checks compliance to typestate-based protocols while affording a great deal of aliasing flexibility. Thi...
详细信息
Reusable APIs often define usage protocols. The author previously developed a sound and modular type system that checks compliance to typestate-based protocols while affording a great deal of aliasing flexibility. This paper focuses on making these ideas available in tools for mainstream object-oriented languages and evaluating their practical effectiveness.
Pedestrian and crowd movement is currently a hot topic and the study and simulation of it is being driven by recent social and political happenings around the world. When there are gatherings of large numbers of peopl...
详细信息
ISBN:
(纸本)9781622763597
Pedestrian and crowd movement is currently a hot topic and the study and simulation of it is being driven by recent social and political happenings around the world. When there are gatherings of large numbers of people, sometimes disastrous problems occur: fires in clubs, riots at concerts, subway disasters, along with large gatherings, such as Independence Day celebrations at places like Boston or New York City. The SimMBioS Lab at the University of Central Florida has built the CROWDSim package to be an open source framework for investigating and developing pedestrian movement models. The CROWDSim framework was designed to serve as a common platform for developing and studying techniques for agent based simulation of pedestrians. Additionally the CROWDSim package provides common tools to be used for both pedestrian and other biological systems' movements in various environments. CROWDSim is a java simulation framework built on top of the MASON Framework [Luke et al. 2003] developed by George Mason University. CROWDSim allows the construction of environments through an XML configuration file and is constructed using the simple shapes of rectangles and circles. The framework also contains loggers which can be added to the simulation to record data from the simulation. Files are included to aid in the implementation of social potential and cellular automata-based pedestrian models.
A good understanding of programminglanguage can be developed and understood in a machine independent manner called structural operational semantics. It is a mathematical model for specifying the meaning of a language...
详细信息
You have recently released a new java application into production and almost as soon as you do the complaints come in - it is running too fast. The application responds so quickly that your users and customers are fee...
详细信息
You have recently released a new java application into production and almost as soon as you do the complaints come in - it is running too fast. The application responds so quickly that your users and customers are feeling stressed out trying to keep up with it, and are asking if there is any way to slow it down. Well, you're in luck! This paper discusses 10 sure-fire ways to make that fast and responsive java application slow down to a crawl.
This article presents our refactoring plug-in for the Groovy-Eclipse Plug-in. Refactoring is a very important technique for every software engineer to ensure the healthiness of his code and a cornerstone of agile soft...
详细信息
This article presents our refactoring plug-in for the Groovy-Eclipse Plug-in. Refactoring is a very important technique for every software engineer to ensure the healthiness of his code and a cornerstone of agile software development. In our project we introduce refactoring support for Groovy-Eclipse, with six automated refactorings as well as a source code formatter. Since java and Groovy are that closely related we also analyzed and documented the options to introduce crosslanguage refactorings between java and Groovy.
Nowadays, web development is one of the main activities in software development, with a wide array of tools that make it difficult for developers to deal with its heterogeneity. The appearance of Ruby on Rails has bro...
详细信息
The java/A approach aims at semantically well-founded and coherent modelling and programming concepts for components: based on sound theoretical foundations it enhances the widely used UML 2.0 component model by modul...
详细信息
Several techniques exist for introducing Design by Contract in languages providing no direct support for it, such as java. One such technique uses aspects that introduce preconditions and postconditions by means of be...
详细信息
ISBN:
(纸本)9789898111432
Several techniques exist for introducing Design by Contract in languages providing no direct support for it, such as java. One such technique uses aspects that introduce preconditions and postconditions by means of before and after advices. For using this, programmers must be knowledgeable of the aspect language, even if they would rather concentrate on Design by Contract alone. On the other hand, we can use aspects to weave in preconditions, preconditions and invariants that have been programmed in the source language, as regular Boolean functions. In doing this, we must find ways to automatically "inherit" preconditions and postconditions when redefining functions in subclasses and we must be able to record the initial state of the object when calling a modifier, so that it can be observed in the postconditions. With such a system, during development, the program will be compiled together with the aspects providing the Design by Contract facilities, using the compiler for the aspect language, and the running program will automatically check all the weaved in assertions, raising an exception when they evaluate to false. For the release build, it suffices to compile using the source language compiler, ignoring the aspects, and the assertions will be left out.
暂无评论