Complex systems-of-systems (SoS) requiring fault-tolerance and high reliability often require redundant systems. The concept of redundancy that includes components with differing failure modes is well understood in th...
详细信息
ISBN:
(纸本)9781424494927
Complex systems-of-systems (SoS) requiring fault-tolerance and high reliability often require redundant systems. The concept of redundancy that includes components with differing failure modes is well understood in the realm of hardware design. N-version programming, although shown to produce significant gains in software reliability over single-version fault tolerant techniques, is not widely accepted or applied. This is due, in part, to N-version programming's lengthy development time and its inherent problems with version independence. Model Driven Software Development (MDSD) is a process that promises gains in software productivity and quality. While progress in MDSD has witnessed the expansion of the supporting Unified Modeling Language profile for modeling fault tolerant characteristics, and the development of specific design patterns for the production of fault tolerant software, MDSD's support in the generation and testing of fault tolerant applications is not evident or explicitly defined. This paper discusses the development of a fault tolerant MDSD framework, which enables users to design, implement and test fault tolerant applications using the N-version modeling technique. The framework closes the gap between existing modeling patterns and the practical application of fault tolerant MDSD, and supports follow-on research to address specific questions relating to the benefits of MDSD within the fault tolerance software domain.
With Simula 67 Ole-Johan Dahl and Kristen Nygaard invented object-oriented programming. This has had an enormous impact on program development tools and methods in the world, well accounted in conferences and books, o...
详细信息
ISBN:
(纸本)9783642233159
With Simula 67 Ole-Johan Dahl and Kristen Nygaard invented object-oriented programming. This has had an enormous impact on program development tools and methods in the world, well accounted in conferences and books, on programming languages and object-oriented programming, and on software pioneers. Early influenced were computer scientists in the Nordic countries who from about 1970 had Simula as the main programming tool, "mother tongue." This paper gives a first-hand account of experience of a unique early introduction of object-oriented programming for higher education in computer science and in computer programming, which provided powerful program development tools long before other educational institutions, especially as it coincided with the introduction of powerful interactive systems. The paper also challenges the misconception that Simula is primarily a tool for simulation by illustrating how it was used to teach general computer science and programming concepts with more general-purpose constructs than most contemporary languages, except perhaps Lisp.
Due to the recent intense developments in lasers and optical technologies a number of novel revolutionary imaging and photonic-based diagnostic modalities have arisen. Utilizing various features of light these techniq...
详细信息
ISBN:
(纸本)9780819485724
Due to the recent intense developments in lasers and optical technologies a number of novel revolutionary imaging and photonic-based diagnostic modalities have arisen. Utilizing various features of light these techniques provide new practical solutions in a range of biomedical, environmental and industrial applications. Conceptual engineering design of new optical diagnostic systems requires a clear understanding of the light-tissue interaction and the peculiarities of optical radiation propagation therein. Description of photon migration within the random media is based on the radiative transfer that forms a basis of Monte Carlo modelling of light propagation in complex turbid media like biological tissues. In current presentation with a further development of the Monte Carlo technique we introduce a novel object-oriented programming (OOP) paradigm accelerated by Graphics Processing Unit that provide an opportunity to escalate the performance of standard Monte Carlo simulation over 100 times.
The CMS software framework (CMSSW) is a modular object-oriented data analysis framework enabling the CMS collaboration to process and analyze the fast growing LHC collision data set. A software performance suite of to...
详细信息
ISBN:
(纸本)9781467301206
The CMS software framework (CMSSW) is a modular object-oriented data analysis framework enabling the CMS collaboration to process and analyze the fast growing LHC collision data set. A software performance suite of tools has been developed and integrated in CMSSW itself to keep track of CPU time, memory footprint and event size on disk. These three metrics are key constraints in software development in order to meet the requirements considered in the planning and management of the CMS computing infrastructure. The performance suite allows the measurement and tracking of the performance across the framework, storing the results in a dedicated database. A web application is deployed to publish the results, making them easily accessible to software release managers and allowing for automatic integration in CMSSW release cycle quality assurance. The performance suite is also available to individual developers for dedicated code optimization and the web application allows historic regression and comparisons across releases. The performance suite tools and the performance of the CMSSW framework during the first LHC collisions years are described in this paper.
In previous work, we presented rules for defining overloaded functions that ensure type safety under symmetric multiple dispatch in an object-oriented language with multiple inheritance, and we showed how to check the...
详细信息
ISBN:
(纸本)9781450309400
In previous work, we presented rules for defining overloaded functions that ensure type safety under symmetric multiple dispatch in an object-oriented language with multiple inheritance, and we showed how to check these rules without requiring the entire type hierarchy to be known, thus supporting modularity and extensibility. In this work, we extend these rules to a language that supports parametric polymorphism on both classes and functions. In a multiple-inheritance language in which any type may be extended by types in other modules, some overloaded functions that might seem valid are correctly rejected by our rules. We explain how these functions can be permitted in a language that additionally supports an exclusion relation among types, allowing programmers to declare "nominal exclusions" and also implicitly imposing exclusion among different instances of each polymorphic type. We give rules for computing the exclusion relation, deriving many type exclusions from declared and implicit ones. We also show how to check our rules for ensuring the safety of overloaded functions. In particular, we reduce the problem of handling parametric polymorphism to one of determining subtyping relationships among universal and existential types. Our system has been implemented as part of the open-source Fortress compiler.
The impedance mismatch problem that occurs when relational data is being processed by object-oriented (OO) programs, also occurs when OO programs process RDF data, on the Semantic Web. The impedance mismatch problem s...
详细信息
ISBN:
(纸本)9781424489589
The impedance mismatch problem that occurs when relational data is being processed by object-oriented (OO) programs, also occurs when OO programs process RDF data, on the Semantic Web. The impedance mismatch problem stems from the inherent differences between RDF and the data model of OO languages. In this paper, we illustrate a solution to this problem. Essentially, we modify an OO language so that RDF individuals become first-class citizens in the language, and objects of the language become first-class citizens in RDF. Three important benefits that follow from this modification are: (1) it becomes natural to use the language as a persistent programming language, (2) the language supports implicit integration of data from multiple data sources, and (3) SPARQL queries and inference can be applied to objects during the run of a program. This demo presents such a modified programming language, namely Ruby on Semantic Web, which is an extension of the Ruby programming language. The demo includes a system, where users can run applications, written in Ruby on Semantic Web, over multiple data sources. In the demo we run code examples. The effects of the execution on the data sources and on the state of the objects in memory are presented visually, in real time.
Construction of a Real-Time System (RTS) out of a number of pre-fabricated pieces of software, otherwise known as components, is a pervasive area of interest. Typically, only relocatable object code of the component i...
详细信息
ISBN:
(纸本)9780769543819
Construction of a Real-Time System (RTS) out of a number of pre-fabricated pieces of software, otherwise known as components, is a pervasive area of interest. Typically, only relocatable object code of the component is shipped to the customer, so that it can later be linked into the overall application. Source code is therefore withheld, and disassembling of the object code is normally disallowed to protect intellectual property. Both of these restrictions complicate, or even prevent, state-of-the-art Worst-Case Execution Time (WCET) analysis of the RTS since most techniques are grounded on their availability in order to generate a complete program model. The alternative solution - widespread in industrial circles - is to record the largest end-to-end execution time of the RTS under functional testing, but this underestimates the actual WCET, in the general case. This paper shows how to obtain a safer WCET estimate of a RTS composed of components using time-stamped traces of program execution. In effect, the data needed in the WCET computation (program model, execution times, execution bounds) are derived exclusively from parsing of the traces. Experiments indicate that, once simple coverage metrics have been obtained, the calculated WCET estimate bounds the actual WCET. Moreover, where instrumentation (which produces the time-stamped traces) is placed with respect to program structure has a significant bearing on the accuracy of the computed WCET estimate.
large, complex classes, known as "God Classes". In this paper, we present a tool, developed as part of the JDeodorant Eclipse plugin, that can recognize opportunities for extracting cohesive classes from &qu...
详细信息
ISBN:
(纸本)9781450304450
large, complex classes, known as "God Classes". In this paper, we present a tool, developed as part of the JDeodorant Eclipse plugin, that can recognize opportunities for extracting cohesive classes from "God Classes" and automatically apply the refactoring chosen by the developer.
This paper presents an approach to handle compromised components in an Infrastructure-as-a-Service Cloud Computing platform. Our experiments show that traditional incident handling procedures are applicable for cloud ...
详细信息
We propose a cloud contextualization mechanism which operates in two stages, contextualization of VM images prior to service deployment (PaaS level) and self-contextualization of VM instances created from the image (I...
详细信息
暂无评论