The Infona portal uses cookies, i.e. strings of text saved by a browser on the user's device. The portal can access those files and use them to remember the user's data, such as their chosen settings (screen view, interface language, etc.), or their login data. By using the Infona portal the user accepts automatic saving and using this information for portal operation purposes. More information on the subject can be found in the Privacy Policy and Terms of Service. By closing this window the user confirms that they have read the information on cookie usage, and they accept the privacy policy and the way cookies are used by the portal. You can change the cookie settings in your browser.
Many web-based online learning systems focus more on textual and/or image based content delivery without including experiment systems, or if included they are usually operated under pre-defined conditions, such as fixed scenarios and pre-determined delivery orders. These limitations hinder personalized learning and collaboration between students and discourage student engagement. To circumvent these...
Existing software analysis methods for performanceand coverage are typically tied to the source code of software applications.In this work, we extend these methods to the Graphical User Interfaces (GUI) of applications, motivated by the desire to bring the user perspective into focus of software quality assurance and testing at the GUI level. We present and discuss various profiling procedures, their...
We present our automated program repair technique ssFix which leverages existing code (from a code database) that is syntax-related to the context of a bug to produce patches for its repair. Given a faulty program and a fault-exposing test suite, ssFix does fault localization to identify suspicious statements that are likely to be faulty. For each such statement, ssFix identifies a code chunk (or...
The SFSVC (Super Fast Support Vector Classifier) architecture is implemented to a computational mobile platform and its performances are evaluated against its implementation on a classic machine (personal computer). The aim of this article is to prove that the SFSVC architecture can have good performances on an environment with very limited resources by taking advantages of its compact structure and...
In order to bake security into application design, we introduce an adaptation to the Command pattern: command instances are tagged with the permissions required to perform them for each object they manipulate. Prior to executing a command instance issued by a given user, an execution engine validates the user has the required permissions over the objects the command is about to operate on. Stating...
A database plays a central role in the architecture of an information system, and the way it stores the data delimits its main features. However, it is not just the data that matters. The way it is handled, i.e., how the application communicates with the database is of critical importance too. Therefore the implementation of such a communication layer has to be reliable and efficient. SQL is a popular...
This paper addresses the semantic gap between the domain knowledge and software application engineering by proposing a framework for mapping and integrating multiple heterogeneous data sources with application business logic by means of data semantic enrichment, aggregation, filtering and processing. Based on the main drawbacks identified in the current knowledge enhanced software application architectures,...
Expert system refers to a system that is trying to adopt human knowledge into a computer. Expert system contains certain knowledge so that everyone can use it to solve specific problems. The expert system by utilizing the forward chaining method starts from selecting the initial symptoms to find information in accordance with the rules of the rule. This study aimed to build an expert system application...
As the complexity of the launching vehicle increases, using fault diagnosis method to improve reliability becomes more and more important. CBR (case-based reasoning) method is frequently used in prognostic and health management systems. The launching vehicle system has many subsystems. In order to apply CBR method to these various subsystems, a CBR system based on Java and MySQL database is designed...
In this work two approaches of backward chaining inference implementation were compared. The first approach uses a classical, goal driven inference running on the client device — the algorithm implemented within the KBExpertLib library was used. Inference was performed on a rule base buffered in memory structures. The second approach involves implementing inference as a stored procedure, run in the...
Model-based software development promises improvements in terms of quality and cost by raising the abstraction level of the development from code to models, but also requires mature techniques and tools. Although Eclipse Modelling Framework (EMF) introduces a default persistence mechanism for models, namely XMI, its usage is often limited as model size increases. To overcome this limitation, during...
As software engineering researchers, we are also zealous tool smiths. Building a research prototype is often a daunting task, let alone building an industry-grade family of tools supporting multiple platforms to ensure the generalizability of results. In this paper, we give advice to academic and industrial tool smiths on how to design and build an easy-to-maintain architecture capable of supporting...
This paper's purpose is describing and highlighting of how our system is intended to work and how it can help us in everyday life, as well as making the Earth a safer and cleaner place, by not even noticing it's presence. Our system is always monitoring the traffic of every major city, analyzing it and making decisions on how people should drive, in a manner that the roads are safer, the fuel consumption...
Code portability is a desirable non-functional requirement. The most established metric evaluating it consists of counting the number of instructions that use platform specific APIs. Generally, instructions using APIs are preceded or followed by related code that e.g. prepares some input for a call or analyses the return value. This paper proposes a taint analysis approach to identify code portions...
In this paper we propose a new internationalization model for databases. This model is intended to enable the internationalization (i18n) in a database, thus facilitating the work of both the database developer as well as the translator which performs its localization (l10n). The use of this model should reduce the developer's effort and allow the translator not to worry about application implementation...
Caching plays an important role in many domains, as it can lead to important performance improvements. A key-value based caching system typically stores the results of popular queries in efficient storage locations. While caching enjoys widespread usage in the context of dynamic web applications, most mainstream caching systems store static binary items, which makes them impractical for many real-world...
A wide variety of services are available over the Web which can dramatically improve the functionality of applications. These services include information retrieval (including data lookups from a variety of sources and Web searches), natural language understanding, visual recognition, and data storage. A key problem is how to provide support for applications which use these services. This paper presents...
Applications offered as Software-as-a-Service should pursue a multi-tenant architecture in order to be profitable. Multi-tenancy helps to reduce the number of application instances by sharing resources amongst several tenants, thus saving operational costs, particularly in public cloud environments. While research mostly discusses how to design green-field software in a multi-tenant manner, this paper...
Data security has become an issue of increasing importance, especially for Web applications and distributed databases. One solution is using cryptographic algorithms whose improvement has become a constant concern. The increasing complexity of these algorithms involves higher execution times, leading to an application performance decrease. This paper presents a comparison of execution times for three...
Symbolic execution is a systematic program analysis technique that has received a lot of attention in the research community. However, scaling symbolic execution continues to pose a major challenge. This paper introduces Synergise, a novel two-fold integration approach. One, it integrates distributed analysis and constraint re-use to enhance symbolic execution using feasible ranges, which allow sharing...
Set the date range to filter the displayed results. You can set a starting date, ending date or both. You can enter the dates manually or choose them from the calendar.