In this paper, we present a symbolic approach to automating the elaboration of numerical tools for the simulation of physical processes using the finite element method. We aim at developing a generic environment to au...
详细信息
In this paper, we present a symbolic approach to automating the elaboration of numerical tools for the simulation of physical processes using the finite element method. We aim at developing a generic environment to automate discretization schemes in the context of PDEs. The approach is implemented in a consistent object-oriented tool built in Java. We propose a symbolic environment to automatically build the symbolic forms of elemental contributions corresponding to a variational formulation. These contributions are automatically introduced into a classical simulation tool. The basic object-oriented framework covering the elaboration of the elemental contributions derived from the weak statement is briefly discussed. The approach can be naturally extended to any discretization model in space or time. This approach is illustrated by the example of hyperelasticity. (C) 2016 Elsevier Ltd. All rights reserved.
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.
作者:
Deng, LiangZeng, QingkaiNanjing Univ
State Key Lab Novel Software Technol Nanjing 210023 Jiangsu Peoples R China Nanjing Univ
Dept Comp Sci & Technol Nanjing 210023 Jiangsu Peoples R China
Commodity operating system kernels are vulnerable to a wide range of attacks due to the large code base and broad attack surface. Mitigation mechanisms such as code signing, W circle plus X, and code integrity protect...
详细信息
Commodity operating system kernels are vulnerable to a wide range of attacks due to the large code base and broad attack surface. Mitigation mechanisms such as code signing, W circle plus X, and code integrity protection have raised the bar for kernel security. In turn, attack mechanisms have also become increasingly advanced. They have evolved from simple injection of malicious code into more sophisticated code-reuse attacks [e.g. return-orientedprogramming (ROP)]. In this study, the authors describe exception-orientedprogramming (EOP), a novel code-reuse method to construct kernel malware. Unlike previous ROP that can only reuse a limited part of existing code (gadgets), EOP is able to reuse any instruction in existing code and chain the instructions in any order to generate malicious programmes. As a result, EOP can provide the attackers with more powerful capabilities and less complexity for building kernel malware.
Although object-oriented programming (OOP) methodologies immensely promote reusable and well-factored decomposition of complex source code, legacy software systems often show symptoms of deteriorating design over time...
详细信息
Although object-oriented programming (OOP) methodologies immensely promote reusable and well-factored decomposition of complex source code, legacy software systems often show symptoms of deteriorating design over time due to lack of maintenance. Software systems may have different business and application contexts, but most of these systems require similar maintenance mechanism of understanding, analysis and transformation. As a consequence, intensive re-engineering efforts based on the model driven approach can be effective ensuring that best practices are followed during maintenance and eventually reducing the development cost. In this paper, we suggest detailed framework of re-engineering which includes: (i) rigorous and automated source code analysis technique for identification, characterization and prioritization of most prominent and threatening design flaws in legacy software, (ii) migration of existing the code to aspect-orientedprogramming (AOP) code by exploiting current state of art for aspect mining mechanism and incorporating behavioral knowledge of cross-cutting concerns. To exemplify how the approach works a case study has been conducted to experimentally validate the idea and analyze the effect of process on specific software quality spectrum. An explicit analysis of prevalent work on the subject and their critical reviews are also presented to further enhance the recognition of proposed re-engineering framework.
The study of deformation processes in elastic half-spaces is widely employed for many purposes (e.g. didactic, scientific investigation of real processes, inversion of geodetic data, etc.). We present a coherent progr...
详细信息
The study of deformation processes in elastic half-spaces is widely employed for many purposes (e.g. didactic, scientific investigation of real processes, inversion of geodetic data, etc.). We present a coherent programming interface containing a set of tools designed to make easier and faster the study of processes in an elastic half-space. LibHalfSpace is presented in the form of an object-oriented library. A set of well known and frequently used source models (Mogi source, penny shaped horizontal crack, inflating spheroid, Okada rectangular dislocation, etc.) are implemented to describe the potential usage and the versatility of the library. The common interface given to library tools enables us to switch easily among the effects produced by different deformation sources that can be monitored at the free surface. Furthermore, the library also offers an interface which simplifies the creation of new source models exploiting the features of object-oriented programming (OOP). These source models can be built as distributions of rectangular boundary elements. In order to better explain how new models can be deployed some examples are included in the library. (C) 2016 Elsevier Ltd. All rights reserved.
The main objective of this study is the design and the development of a fire management software tool for Mediterranean pine forests of Greece. The system operates as a standalone application and allows the end users ...
详细信息
The main objective of this study is the design and the development of a fire management software tool for Mediterranean pine forests of Greece. The system operates as a standalone application and allows the end users to apply various fire environment (meteorology, topography, fuel) scenarios in order to estimate the characteristics of fuel complexes in Mediterranean pine stands, to predict the expected fire behavior, as well as to implement and evaluate fuel treatments for reducing the intensity and severity of fires in such ecosystems. The system simulates fire behavior (probability of crown fire initiation, type of fire, rate of spread and fireline intensity) in different types of understory vegetation and stand overstory structure under different weather conditions using current well-tested fire behavior prediction models. All user interaction with the software is done via a friendly and modern Graphical User Interface (GUI), designed in Windows Presentation Foundation/eXtensible Application Markup Language (WPF/XAML), a framework with User Interface (UI) elements coded in C#.NET. The proposed system is expected to assist forest researchers, forest service officials and land managers to evaluate fuel hazard and assess the potential for initiation and spread of wildfires in Aleppo and Calabrian pine forests in Greece. (C) 2015 Elsevier B.V. All rights reserved.
We propose a new sharing analysis of object-oriented programs based on abstract interpretation. Two variables share when they are bound to data structures which overlap. We show that sharing analysis can greatly benef...
详细信息
We propose a new sharing analysis of object-oriented programs based on abstract interpretation. Two variables share when they are bound to data structures which overlap. We show that sharing analysis can greatly benefit from linearity analysis. We propose a combined domain including aliasing, linearity and sharing information. We use a graph-based representation of aliasing information which naturally encodes sharing and linearity information, and define all the necessary operators for the analysis of a Java-like language.
Designing and programming require several types of knowledge. Beside conceptual knowledge, procedural knowledge is of importance. Procedural knowledge, however, is often missed in courses about software design and imp...
详细信息
ISBN:
(纸本)9781450348362
Designing and programming require several types of knowledge. Beside conceptual knowledge, procedural knowledge is of importance. Procedural knowledge, however, is often missed in courses about software design and implementation. As a consequence, students can easily be stuck and do not know how to *** software engineering as a complex task, the didactic approach 4C/ID is applicable. This approach prescribes that besides mental models, cognitive strategies should be learned, consisting of overall steps and rules and procedures per step. As an example, a procedure for designing and programming a concurrent program is briefly described. This procedure will scaffffold studentfis learning of concurrency concepts and their application.
An advantage of implementation of object-oriented programming principles in numerical simulation in hard X-ray optics was considered. The suggested approach was demonstrated on the example of two-beam X-ray interferom...
详细信息
An advantage of implementation of object-oriented programming principles in numerical simulation in hard X-ray optics was considered. The suggested approach was demonstrated on the example of two-beam X-ray interferometer with the refracting prism. It was shown that the proposed coding technique significantly simplifies the main program code by reducing its size, as well as making it more readable and easily modifiable.
An introduction to both automatic differentiation and object-oriented programming can enrich a numerical analysis course that typically incorporates numerical differentiation and basic MATLAB computation. Automatic di...
详细信息
An introduction to both automatic differentiation and object-oriented programming can enrich a numerical analysis course that typically incorporates numerical differentiation and basic MATLAB computation. Automatic differentiation consists of exact algorithms on floating-point arguments. This implementation overloads standard elementary operators and functions in MATLAB with a derivative rule in addition to the function value;for example, sin u will also compute (cos u) * u', w here u and u' are numerical values. These methods are mostly one-line programs that operate on a class of value-and-derivative objects, providing a simple example of object-oriented programming in MATLAB using the new(as of release 2008a) class definition structure. The resulting powerful tool computes derivative values and multivariable gradients, and is applied to Newton's method for root-finding in both single and multivariable settings. To compute higher-order derivatives of a single-variable function, another class of series objects keeps Taylor polynomial coefficients up to some order. Overloading multiplication on series objects is a combination (discrete convolution) of coefficients. This idea leads to algorithms for other operations and functions on series objects. A survey of more advanced topics in automatic differentiation includes an introduction to the reverse mode (our implementation is forward mode) and considerations in arbitrary-order multivariable series computation.
暂无评论