196,031 research outputs found

    Dependence Communities in Source Code

    Get PDF
    Dependence between components in natural systems is a well studied phenomenon in the form of biological and social networks. The concept of community structure arises from the analysis of social networks and has successfully been applied to complex networks in other fields such as biology, physics and computing. We provide empirical evidence that dependence between statements in source code gives rise to community structure. This leads to the introduction of the concept of dependence communities in software and we provide evidence that they reflect the semantic concerns of a program. Current definitions of sliced-based cohesion and coupling metrics are not defined for procedures which do not have clearly defined output variables and definitions of output variable vary from study-to-study. We solve these problems by introducing corresponding new, more efficient forms of slice-based metrics in terms of maximal slices. We show that there is a strong correlation between these new metrics and the old metrics computed using output variables. We conduct an investigation into dependence clusters which are closely related to dependence communities. We undertake an empirical study using definitions of dependence clusters from previous studies and show that, while programs do contain large dependence clusters, over 75% of these are not ‘true’ dependence clusters. We bring together the main elements of the thesis in a study of software quality, investigating their interrelated nature. We show that procedures that are members of multiple communities have a low cohesion, programs with higher coupling have larger dependence communities, programs with large dependence clusters also have large dependence communities and programs with high modularity have low coupling. Dependence communities and maximal-slice-based metrics have a huge number of potential applications including program comprehension, maintenance, debugging, refactoring, testing and software protection

    A General Optimization Technique for High Quality Community Detection in Complex Networks

    Get PDF
    Recent years have witnessed the development of a large body of algorithms for community detection in complex networks. Most of them are based upon the optimization of objective functions, among which modularity is the most common, though a number of alternatives have been suggested in the scientific literature. We present here an effective general search strategy for the optimization of various objective functions for community detection purposes. When applied to modularity, on both real-world and synthetic networks, our search strategy substantially outperforms the best existing algorithms in terms of final scores of the objective function; for description length, its performance is on par with the original Infomap algorithm. The execution time of our algorithm is on par with non-greedy alternatives present in literature, and networks of up to 10,000 nodes can be analyzed in time spans ranging from minutes to a few hours on average workstations, making our approach readily applicable to tasks which require the quality of partitioning to be as high as possible, and are not limited by strict time constraints. Finally, based on the most effective of the available optimization techniques, we compare the performance of modularity and code length as objective functions, in terms of the quality of the partitions one can achieve by optimizing them. To this end, we evaluated the ability of each objective function to reconstruct the underlying structure of a large set of synthetic and real-world networks.Comment: MAIN text: 14 pages, 4 figures, 1 table Supplementary information: 19 pages, 8 figures, 5 table

    Open Educational Content for Digital Public Libraries

    Get PDF
    If the production of digital content for teaching -- particularly free content -- is to expand substantially, there must be mechanisms to establish a link to fame and fortune that was not perceived in a pre-digital world. How that might be done is the central question this report addresses, in the context of examining the movement for open educational content. Understanding that movement requires delving into the history of what may seem, on first pass, a totally unrelated field of endeavor. The reader's patience is requested....

    MAKING THE GOOD EASY: THE SMART CODE ALTERNATIVE

    Get PDF
    This article advocates for a new, fundamentally different plan for how cities should be coded, the Smart Code. It links urbanism and environmentalism and is strongly aligned with smart growth and sustainability. The Smart Code is offered as an alternative to the current anti-urban, conventional codes which are rigid and focus on single-use zones that separate human living space from the natural environment, as illustrated by the sprawl

    Energy and Smart Growth: It's about How and Where We Build

    Get PDF
    By efficiently locating development, smarter growth land use policies and practices offer a viable way to reduce U.S. energy consumption. Moreover, by increasing attention on how we build, in addition to where we build, smart growth could become even more energy smart. The smart growth and energy efficiency movements thus are intrinsically linked, yet these two fields have mostly operated in separate worlds. Through greater use of energy efficient design, and renewable energy resources, the smart growth movement could better achieve its goals of environmental protection, economic security and prosperity, and community livability. In short, green building and smart growth should go hand in hand. Heightened concern about foreign oil dependence, climate change, and other ill effects of fossil fuel usage makes the energy-smart growth collaboration especially important. Strengthening this collaboration will involve overcoming some hurdles, however, and funders can play an important role in assisting these movements to gain strength from each other. This paper contends there is much to be gained by expanding the smart growth movement to include greater attention on energy. It provides a brief background on current energy trends and programs, relevant to smart growth. It then presents a framework for understanding the connections between energy and land use which focuses on two primary issues: how to build, which involves neighborhood and building design, and where to build, meaning that location matters. The final section offers suggestions to funders interesting in helping accelerate the merger of these fields

    Applying the Open Source Development Model to Knowledge Work

    Get PDF
    This paper introduces a distinction between two different types of information goods in order to analyse the processes governing the review and integration of multi-authored contributions to information goods such as those produced through collaborations using the Internet as well as modular information goods such as open source software. It is argued that these distinctions are important because they suggest different organisational arrangements for producing such information goods. This method of analysing the nature of the information goods is employed to examine different organisational arrangements using the analogy of collaboration for traditional publication to identify actors and processes. The analysis of 'contributors' is extended from authorship to collectors and researchers. The paper examines a small survey of the governance procedures employed in projects that employ open source methods for collecting various types of information. We noted the prime role of the recruitment process in the relative success of the examples that we examined (ODP, Wikipedia, Nupedia, MathLearning, VRoma, and Web of Life). For these 'collection' efforts, the role of hierarchy in editing and review of project submissions appears to be important than in open source communities and may be an impediment to recruitment and project development. A number of directions for further research are identified.open source software, collaboration, hierarchies, trust, teams, co-operation

    Feeding Ourselves Thirsty: How the Food Sector is Managing Global Water Risks

    Get PDF
    The global food sector faces extraordinary risks from the twin challenges of water scarcity and water pollution. Growing competition for water, combined with weak regulations, failing infrastructure, pollution and climate change impacts threaten the sector's water security and contribute to a water availability emergency that was recently ranked the world's "top global risk" by the World Economic Forum.This report examines how water risks affect the profitability and competitive positioning of 37 major food sector companies in four industries: packaged food, beverage, meat and agricultural products. It evaluates and ranks these companies -- the majority of which are U.S. domiciled and publicly-traded -- on how well they are positioned to anticipate and mitigate these risks, as well as contribute to improved water resource management.The report provides recommendations for how analysts and investors can effectively evaluate food sector companies on their water risk exposure and management practices. It also provides recommendations for how food companies can improve water efficiency and water quality across their operations and supply chains to reduce risks and protect water resources
    • …
    corecore