40,929 research outputs found
Recommended from our members
Visual exploration support for cross-project porting
textMaintaining multiple variants of software systems is extremely difficult because developers often port edits and bug fixes during software evolution. This challenge particularly applies to closely related families of open source projects, such as BSD projects (FreeBSD, NetBSD and OpenBSD) with extensive cross-project porting activities. Developers encounter increasing obstacles in maintaining projects, particularly because of the difficulty in understand- ing historical artifacts involved in cross-system porting. Maintainers face the primary challenge of keeping track of the sources of ported edits, as it can be extremely time-consuming to mine historical data and track the source and target of patches. In the worst-case scenario, the maintainer has to mine through all historical data to ascertain the sources of ported code. Although current version control systems like CVS and GIT preserve historical data, the developer cannot easily identify and understand cross-system porting activities. In this thesis, we address the aforementioned issues by designing and implementing software visualization support to analyze the long chain of cross- project porting activities for Open Source Softwares (OSS) and particularly for three BSD projects (FreeBSD, OpenBSD and NetBSD). We take into account the geographically distributed community of OSS developers and maintainers, hosting the visualization of the activities as a web application. This study aims to analyze the effects of visualization on cross-project porting activity awareness. To meet the studyâs objective, we developed a web-based awareness tool, VIGNETTE, based on the results of REPERTOIRE [18] (which identifies the cross-project porting activities in BSD projects using release history). This study focuses on two research questions: (1) How can visualization help novice open-source developers and maintainers gain insights into cross- project (projects evolving from the same code base) porting activities? (2) How can the visualization show the following: (a) a file-level association between peer projects (porting activities in cross-project files with similar file names), (b) the pairwise frequency of porting (the porting activity count between two cross-projects in a year), (c) the patch-file association (same patch id applied to different cross-project files), and (d) the developer to developer association based on cross-project porting activities (number of times the cross-project developers was involved in a common porting activity)? We conducted a user study with graduate students in the role of novice open-source developers interested in learning about cross-project porting activities. The results of the initial study showed that VIGNETTE could be very useful in answering the questions about cross-project porting and in determining who was involved in a particular porting activity and when.Electrical and Computer Engineerin
An Automated Method for Identifying Inconsistencies within Diagrammatic Software Requirements Specifications
The development of large-scale, composite software in a geographically distributed environment is an evolutionary process. Often, in such evolving systems, striving for consistency is complicated by many factors, because development participants have various locations, skills, responsibilities, roles, opinions, languages, terminology and different degrees of abstraction they employ. This naturally leads to many partial specifications or viewpoints. These multiple views on the system being developed usually overlap. From another aspect, these multiple views give rise to the potential for inconsistency. Existing CASE tools do not efficiently manage inconsistencies in distributed development environment for a large-scale project. Based on the ViewPoints framework the WHERE (Web-Based Hypertext Environment for requirements Evolution) toolkit aims to tackle inconsistency management issues within geographically distributed software development projects. Consequently, WHERE project helps make more robust software and support software assurance process. The long term goal of WHERE tools aims to the inconsistency analysis and management in requirements specifications. A framework based on Graph Grammar theory and TCMJAVA toolkit is proposed to detect inconsistencies among viewpoints. This systematic approach uses three basic operations (UNION, DIFFERENCE, INTERSECTION) to study the static behaviors of graphic and tabular notations. From these operations, subgraphs Query, Selection, Merge, Replacement operations can be derived. This approach uses graph PRODUCTIONS (rewriting rules) to study the dynamic transformations of graphs. We discuss the feasibility of implementation these operations. Also, We present the process of porting original TCM (Toolkit for Conceptual Modeling) project from C++ to Java programming language in this thesis. A scenario based on NASA International Space Station Specification is discussed to show the applicability of our approach. Finally, conclusion and future work about inconsistency management issues in WHERE project will be summarized
Porting Decision Tree Algorithms to Multicore using FastFlow
The whole computer hardware industry embraced multicores. For these machines,
the extreme optimisation of sequential algorithms is no longer sufficient to
squeeze the real machine power, which can be only exploited via thread-level
parallelism. Decision tree algorithms exhibit natural concurrency that makes
them suitable to be parallelised. This paper presents an approach for
easy-yet-efficient porting of an implementation of the C4.5 algorithm on
multicores. The parallel porting requires minimal changes to the original
sequential code, and it is able to exploit up to 7X speedup on an Intel
dual-quad core machine.Comment: 18 pages + cove
The Control of Porting in Two-Sided Markets
A sizable literature has grown up in recent years focusing on two-sided markets in which economies of scale combined with complementarities between a platform and its associated âsoftwareâ or âservicesâ can generate indirect network effects (that is positive feedback between the number of consumers using that platform and the utility of an individual consumer). In this paper we introduce a model of âportingâ in such markets where porting denotes the conversion of âsoftwareâ or âservicesâ developed for one platform to run on another. Focusing on the case where a dominant platform exists we investigate the impact on equilibrium and the consequences for welfare of the ability to control porting. Specifically, we show that the welfare costs associated with the âcontrol of portingâ may be more significant than those arising from pricing alone. This model and its associated results are of particular relevance because of the light they shed on debates about the motivations and effects of actions by a dominant platform owner. Recent examples of such debates include those about Microsoftâs behaviour both in relation to its operating system and its media player, Appleâs behaviour in relation to its DRM and iTunes platform, and Ebayâs use of the cyber-trespass doctrine to prevent access to its site
Database integrated analytics using R : initial experiences with SQL-Server + R
© 2016 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising or promotional purposes, creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other works.Most data scientists use nowadays functional or semi-functional languages like SQL, Scala or R to treat data, obtained directly from databases. Such process requires to fetch data, process it, then store again, and such process tends to be done outside the DB, in often complex data-flows. Recently, database service providers have decided to integrate âR-as-a-Serviceâ in their DB solutions. The analytics engine is called directly from the SQL query tree, and results are returned as part of the same query. Here we show a first taste of such technology by testing the portability of our ALOJA-ML analytics framework, coded in R, to Microsoft SQL-Server 2016, one of the SQL+R solutions released recently. In this work we discuss some data-flow schemes for porting a local DB + analytics engine architecture towards Big Data, focusing specially on the new DB Integrated Analytics approach, and commenting the first experiences in usability and performance obtained from such new services and capabilities.Peer ReviewedPostprint (author's final draft
- âŠ