707 research outputs found

    An Empirical Study of CSS Code Smells in Web Frameworks

    Get PDF
    Cascading Style Sheets (CSS) has become essential to front-end web development for the specification of style. But despite its simple syntax and the theoretical advantages attained through the separation of style from content and behavior, CSS authoring today is regarded as a complex task. As a result, developers are increasingly turning to CSS preprocessor languages and web frameworks to aid in development. However, previous studies show that even highly popular websites which are known to be developed with web frameworks contain CSS code smells such as duplicated rules and hard-coded values. Such code smells have the potential to cause adverse effects on websites and complicate maintenance. It is therefore important to investigate whether web frameworks may be encouraging the introduction of CSS code smells into websites. In this thesis, we investigate the prevalence of CSS code smells in websites built with different web frameworks and attempt to recognize a pattern of CSS behavior in these frameworks. We collect a dataset of several hundred websites produced by each of 19 different frameworks, collect code smells and other metrics present in the CSS code of each website, train a classifier to predict which framework the website was built with, and perform various clustering tasks to gain insight into the correlations between code smells. Our results show that CSS code smells are highly prevalent in websites built with web frameworks, we achieve an accuracy of 39% in correctly classifying the frameworks based on CSS code smells and metrics, and we find interesting correlations between code smells

    Beam-Material Interaction

    Full text link
    Th is paper is motivated by the growing importance of better understanding of the phenomena and consequences of high- intensity energetic particle beam interactions with accelerator, generic target , and detector components. It reviews the principal physical processes of fast-particle interactions with matter, effects in materials under irradiation, materials response, related to component lifetime and performance, simulation techniques, and methods of mitigating the impact of radiation on the components and envir onment in challenging current and future applicationComment: 28 pages, contribution to the 2014 Joint International Accelerator School: Beam Loss and Accelerator Protection, Newport Beach, CA, USA , 5-14 Nov 201

    Eliminating Code Duplication in Cascading Style Sheets

    Get PDF
    Cascading Style Sheets (i.e., CSS) is the standard styling language, widely used for defining the presentation semantics of user interfaces for web, mobile and desktop applications. Despite its popularity, CSS has not received much attention from academia. Indeed, developing and maintaining CSS code is rather challenging, due to the inherent language design shortcomings, the interplay of CSS with other programming languages (e.g., HTML and JavaScript), the lack of empirically- evaluated coding best-practices, and immature tool support. As a result, the quality of CSS code bases is poor in many cases. In this thesis, we focus on one of the major issues found in CSS code bases, i.e., the duplicated code. In a large, representative dataset of CSS code, we found an average of 68% duplication in style declarations. To alleviate this, we devise techniques for refactoring CSS code (i.e., grouping style declarations into new style rules), or migrating CSS code to take advantage of the code abstraction features provided by CSS preprocessor languages (i.e., superset languages for CSS that augment it by adding extra features that facilitate code maintenance). Specifically for the migration transformations, we attempt to align the resulting code with manually-developed code, by relying on the knowledge gained by conducting an empirical study on the use of CSS preprocessors, which revealed the common coding practices of the developers who use CSS preprocessor languages. To guarantee the behavior preservation of the proposed transformations, we come up with a list of preconditions that should be met, and also describe a lightweight testing technique. By applying a large number of transformations on several web sites and web applications, it is shown that the transformations are indeed presentation-preserving, and can effectively reduce the amount of duplicated code in CSS

    Global Risks 2014, Ninth Edition.

    Get PDF
    The Global Risks 2014 report highlights how global risks are not only interconnected but also have systemic impacts. To manage global risks effectively and build resilience to their impacts, better efforts are needed to understand, measure and foresee the evolution of interdependencies between risks, supplementing traditional risk-management tools with new concepts designed for uncertain environments. If global risks are not effectively addressed, their social, economic and political fallouts could be far-reaching, as exemplified by the continuing impacts of the financial crisis of 2007-2008

    30 Years of Software Refactoring Research: A Systematic Literature Review

    Full text link
    Peer Reviewedhttps://deepblue.lib.umich.edu/bitstream/2027.42/155872/4/30YRefactoring.pd

    30 Years of Software Refactoring Research:A Systematic Literature Review

    Full text link
    Due to the growing complexity of software systems, there has been a dramatic increase and industry demand for tools and techniques on software refactoring in the last ten years, defined traditionally as a set of program transformations intended to improve the system design while preserving the behavior. Refactoring studies are expanded beyond code-level restructuring to be applied at different levels (architecture, model, requirements, etc.), adopted in many domains beyond the object-oriented paradigm (cloud computing, mobile, web, etc.), used in industrial settings and considered objectives beyond improving the design to include other non-functional requirements (e.g., improve performance, security, etc.). Thus, challenges to be addressed by refactoring work are, nowadays, beyond code transformation to include, but not limited to, scheduling the opportune time to carry refactoring, recommendations of specific refactoring activities, detection of refactoring opportunities, and testing the correctness of applied refactorings. Therefore, the refactoring research efforts are fragmented over several research communities, various domains, and objectives. To structure the field and existing research results, this paper provides a systematic literature review and analyzes the results of 3183 research papers on refactoring covering the last three decades to offer the most scalable and comprehensive literature review of existing refactoring research studies. Based on this survey, we created a taxonomy to classify the existing research, identified research trends, and highlighted gaps in the literature and avenues for further research.Comment: 23 page

    Asynkronisuus JavaScriptissä

    Get PDF
    Tässä työssä käydään läpi web-kehityksen historian vaiheita synkronisista HTML-sivuista kohti asynkronista ohjelmointia. Asynkronisen web-ohjelmoinnin johdosta käyttäjän ei tarvitse odottaa toimeettomana esimerkiksi datahakua palvelimelta, vaan voi käyttää sovellusta samanaikaisesti. Työssä tarkastellaan eri tapoja toteuttaa asykronisuutta JavaScriptissä, näiden tapojen kehitysvaiheet, sekä niiden mukanaan tuomat ongelmat ja ratkaisut. Työ keskittyy eri toteutustapojen luettavuuteen, ymmärrettävyyteen ja muokattavuuteen. Lisäksi työssä käydään vielä läpi virheiden käsittelyä näissä toteutustavoissa. Työssä toteutetaan sama demo-ohjelma kolmella eri asynkronisella tavalla JavaScriptissä ja vertaillaan näiden luettavuutta, muokattavuutta ja virheiden käsittelyä. Tämän lisäksi pureudutaan vielä async/await:in mukanaan tuomiin ongelmiin toisella demo-ohjelmalla. Työssä todetaan, että asynkronisuuden toteutus callback-metodin avulla JavaScriptissä muuttuu erittäin vaikealukuiseksi ja vaikeasti muokattavaksi ohjelman monimutkaistuessa, sillä se ajaa koodin rakenteen pyramidimaiseksi sisäkkäisyydeksi. Tähän ongelmaan kehitetty promise toimii erinomaisena ratkaisuna lohkojakonsa ja ketjutettavuutensa ansiosta. Promisen lisäksi kehitetty async/await-metodi tuo vielä keinon kirjoittaa promise-pohjaista asynkronista koodia ikään kuin se olisi synkronista, mutta työssä todetaankin, että tämän metodin kanssa täytyy olla tarkka missä ja miten sitä käytetään. Väärin käytettynä metodi vain hidastaa koodin suoritusta

    Smart Property Valuation. Problem Solving for Industry

    Get PDF
    The analysis of this project it is used the CRISP-DM method. Smart Property Valuation (SPV) is a fictional company created by David Silva, Luiz Dias, and Raul Fuzita to analyse, explore, and prove the conception of a model capable of predicting or estimating prices for properties. They believe they can benefit common people, realtors, and construction companies with their solutions. This research is for educational purposes and should be treated as such

    Editable AI: Mixed Human-AI Authoring of Code Patterns

    Full text link
    Developers authoring HTML documents define elements following patterns which establish and reflect the visual structure of a document, such as making all images in a footer the same height by applying a class to each. To surface these patterns to developers and support developers in authoring consistent with these patterns, we propose a mixed human-AI technique for creating code patterns. Patterns are first learned from individual HTML documents through a decision tree, generating a representation which developers may view and edit. Code patterns are used to offer developers autocomplete suggestions, list examples, and flag violations. To evaluate our technique, we conducted a user study in which 24 participants wrote, edited, and corrected HTML documents. We found that our technique enabled developers to edit and correct documents more quickly and create, edit, and correct documents more successfully

    Industry 4.0-Oriented Turnkey Project: Rapid Configuration and Intelligent Operation of Manufacturing Systems

    Get PDF
    More extensive personalized product requirements and shorter product life cycles have put forward higher requirements for the rapid establishment, commissioning, and operation of corresponding manufacturing systems. However, the traditional manufacturing system development process is complicated, resulting in a longer delivery time. Many manufacturing enterprises, especially small and micro enterprises, may not have the necessary manufacturing knowledge or capabilities to meet these requirements. Therefore, it is essential to promote the construction of turnkey projects under the paradigm of Industry 4.0, parallelizing and integrating the existing manufacturing system development process based on mass manufacturing equipment to quickly provide turnkey solutions for manufacturing systems’ configuration and implementation for these enterprises. This paper aims to extract and refine the configuration and operation key views of the Industry 4.0-oriented Turnkey Project (I4TP) from Reference Architecture Model Industrie 4.0 (RAMI4.0) and use it to guide the development of key functional processes of turnkey projects to achieve rapid configuration and efficient operation management of manufacturing systems. The turnkey project platform in the Advanced Manufacturing Technology Center (AMTC) is taken as a demonstration case to provide a reference idea for the rapid configuration and intelligent operation of the turnkey manufacturing system
    corecore