1,720,975 research outputs found
Verifying temporal specifications of Java programs
Many Java programs encode temporal behaviors in their source code, typically mixing three features provided by the Java language: (1) pausing the execution for a limited amount of time, (2) waiting for an event that has to occur before a deadline expires, and (3) comparing timestamps. In this work, we show how to exploit modern SMT solvers together with static analysis in order to produce a network of timed automata approximating the temporal behavior of a set of Java threads. We also prove that the presented abstraction preserves the truth of MTL and ATCTL formulae, two well-known logics for expressing timed specifications. As far as we know, this is the first feasible approach enabling the user to automatically model check timed specifications of Java software directly from the source code
Goal-driven behavior in S-CLAIM
Describes the multi-agent system in development in LIP6, Paris together with research done towards goal-driven behavior and it's implementation in the project.Software TechnologyElectrical Engineering, Mathematics and Computer Scienc
Investigating the usefulness of stack traces in bug triaging
In software engineering, resources such as time, money and developers, are limited. Often when bugs are found in the software developed, bug triaging is used to prioritise bug reports and allocate resources to it. When the number of bugs is considerable, this will require a vast amount of time and effort. The goal of this research is to investigate the usefulness of stack traces in bug reports for the assessment of bug report properties, using existing metrics of bug reports and files, being severity, priority and time-to-fix. In order to investigate the usefulness of stack traces, a research framework and methodology are developed. Overall, we can conclude that stack traces can be used to link software artifacts. Also, stack traces can be a valuable input for prediction models, for example using metrics of related bugs and source files.Software EngineeringSoftware TechnologyElectrical Engineering, Mathematics and Computer Scienc
Native cross-platform mobile application development using voind
The fragmentation of mobile devices nowadays makes it hard for (third party) mobile application developers to develop applications that are suitable for all mobile platforms on the market. A current startup, named Obymobi (Order By Mobile), introduces a new platform for ordering drinks and/or food in the hospitality business using a mobile application. The Obymobi mobile application is targeted at all mobile platforms, so that every mobile user is able to use the application. However, developing a mobile application which can be executed at all current mobile platforms implies several portability issues. This thesis is the result of research which focuses on how to deal with the heterogeneity in mobile devices while developing mobile applications. As current crossplatform mobile application development solutions from industry do not offer flexibility as they tend to have a static character in terms of supported platforms and features, a new cross-platform development framework prototype is presented in this thesis. Using this framework named Voind, mobile applications can be defined in an abstracted model in order to use this model for the generation of multiple versions for different mobile platforms.Software EngineeringComputer ScienceElectrical Engineering, Mathematics and Computer Scienc
ArchWiki: Using Web 2.0 for Architecture Knowledge Management
Software architecture plays an important part in program comprehension, which is one of the most time consuming tasks in software development. If software developers don’t properly share their architectural knowledge with team members, the team will act based on an incomplete or even possibly incorrect view on the code base, and this can lead to architectural degradation. Recently there has been a surge of collaboration, communication and sharing with the advent of Web 2.0 applications. In this thesis we have investigated how Web 2.0 can be used to support software architecture management. In particular in the area of architecture documentation, architecture retrieval, and collaboration. We created an approach which applies Web 2.0 concepts such as traceability, integration, usability, navigability, and user experience, to software architecture management. This approach is supported by a prototype tool called ArchWiki, which has features such as traceability between different artifacts (e.g. source code, architectural diagrams, architectural documentation), context-sensitive views, hyperlinks, notifications, tags, and bookmarks. We performed an initial evaluation study to assess ArchWiki. In this study we found that Web 2.0 has the potential to support software architecture knowledge management.Software EngineeringSoftware TechnologyElectrical Engineering, Mathematics and Computer Scienc
Re-engineering Web Applications from MSO to SSO
Nowadays a lot of small companies maintain multiple websites that require the user to sign up for ordering products or extended interaction. The users have to create an account for each website the company owns, creating duplicate information for the company and forcing the customer to remember multiple accounts. Where big companies can solve the problem with commercial solutions, small companies do not have the funding. MediaMij, a small publisher, has to deal with exactly this situation. In this project we investigate options to find a solution for MediaMij. We research ways of re-engineering the current web applications to enable a single central customer database with Single Sign On capabilities. The research renders an approach for the situation which will be verified by conducting 2 case studies on 2 of the current websites of MediaMij. With the verified approach we were able to form a set of guidelines describing how to approach projects that are alike.Software EngineeringSoftware TechnologyElectrical Engineering, Mathematics and Computer Scienc
Anti-Pattern Scanner: An Approach to Detect Anti-Patterns and Design Violations
In this Master's Thesis Project, two Code Smells, four Anti-Patterns and four types of Design Principle violations have been examined. We developed a detection program called the Anti-Pattern Scanner. This scanner has been used in an empirical evaluation where five open-source Java projects have been examined and scanned for these `pattern' problems. The results are that the examined problems generally do occur in software systems. The problems are estimated to be inconvenient to software development, depending on the strength of their presence. Based on the Anti-Pattern Scanner and the results from this evaluation, suggestions for follow-up studies are offered.Computer ScienceComputer ScienceElectrical Engineering, Mathematics and Computer Scienc
Visualize local neighborhood for supporting debugging
Developing software is complex, debugging even more. In this thesis an approach is presented to reduce the debugger’s burden by introducing visual support for debugging. This is accomplished by using multiple supporting debugging concepts which are implemented in the tool: the Visual Debugger. The Visual Debugger supports debugging by visualizing the local neighborhood at runtime when debugging with a specialized hierarchical graph. The visualization provides the user easy access to an overview and details of the dependencies surrounding the executing method. The concept of visualizing local neighborhood to support debugging is tested in a pre-post test user experiment in which participants solve debug tasks with the Visual Debugger and answer questions about their debug habits. The questions involve how participants experience the tool and how they use a debugger. The results show that the capability of the Visual Debugger to support debugging by visualizing the local neighborhood is useful but more optimization and research is required to relate this result to improved program understanding.Computer ScienceSoftware EngineeringElectrical Engineering, Mathematics and Computer Scienc
Going Beyond Counting First Authors in Author Co-citation Analysis
The present study examines one of the fundamental aspects of author co-citation analysis (ACA) - the way co-citation
counts are defined. Co-citation counting provides the data on which all subsequent statistical analyses and mappings
are based, and we compare ACA results based on two different types of co-citation counting - the traditional type that
only counts the first one among a cited work's authors on the one hand and a non-traditional type that takes into
account the first 5 authors of a cited work on the other hand. Results indicate that the picture produced through this non-traditional author co-citation counting contains more coherent author groups and is therefore considerably clearer. However, this picture represents fewer specialties in the research field being studied than that produced through the traditional first-author co-citation counting when the same number of top-ranked authors is selected and analyzed. Reasons for these effects are discussed
- …
