English
Related papers

Related papers: Software graphs and programmer awareness

200 papers

Software systems are composed of many interacting elements. A natural way to abstract over software systems is to model them as graphs. In this paper we consider software dependency graphs of object-oriented software and we study one…

Software Engineering · Computer Science 2017-04-11 Vincenzo Musco , Martin Monperrus , Philippe Preux

Power law distributions have been found in many natural and social phenomena, and more recently in the source code and run-time characteristics of Object-Oriented (OO) systems. A power law implies that small values are extremely common,…

Software Engineering · Computer Science 2007-05-23 Richard Wheeldon , Steve Counsell

The in-degree and out-degree distributions of a growing network model are determined. The in-degree is the number of incoming links to a given node (and vice versa for out-degree. The network is built by (i) creation of new nodes which each…

Statistical Mechanics · Physics 2009-10-31 P. L. Krapivsky , G. J. Rodgers , S. Redner

In this paper, we study how object-oriented classes are used across thousands of software packages. We concentrate on "usage diversity'", defined as the different statically observable combinations of methods called on the same object. We…

Software Engineering · Computer Science 2018-07-06 Diego Mendez , Benoit Baudry , Martin Monperrus

Due to notable discoveries in the fast evolving field of complex networks, recent research in software engineering has also focused on representing software systems with networks. Previous work has observed that these networks follow…

Social and Information Networks · Computer Science 2011-05-24 Lovro Šubelj , Marko Bajec

We introduced a new approach to describe Java software as graph, where nodes represent a Java file - called compilation unit (CU) - and an edges represent a relations between them. The software system is characterized by the degree…

Software Engineering · Computer Science 2009-05-21 Alessandro Murgia , Giulio Concas , Michele Marchesi , Roberto Tonelli , Ivana Turnu

The degree of dependencies among the modules of a software system is a key attribute to characterize its design structure and its ability to evolve over time. Several design problems are often correlated with undesired dependencies among…

Software Engineering · Computer Science 2018-10-29 J. Andrés Díaz-Pace , Antonela Tommasel , Daniela Godoy

Software systems emerge from mere keystrokes to form intricate functional networks connecting many collaborating modules, objects, classes, methods, and subroutines. Building on recent advances in the study of complex networks, I have…

Statistical Mechanics · Physics 2009-11-10 C. R. Myers

In software engineering, impact analysis involves predicting the software elements (e.g., modules, classes, methods) potentially impacted by a change in the source code. Impact analysis is required to optimize the testing effort. In this…

Software Engineering · Computer Science 2024-11-14 Vincenzo Musco , Martin Monperrus , Philippe Preux

Interfaces are widely used as central design elements of Java applications. Although interfaces are abstract types similar to abstract classes, the usage of interfaces in Java applications may considerably differ from the usage of abstract…

Software Engineering · Computer Science 2014-08-01 Hani Abdeen , Osama Shata

This work weakens well-known consistency models using graphs that capture applications' characteristics. The weakened models not only respect application semantic, but also yield a performance benefit. We introduce a notion of dependency…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-10-07 Lewis Tseng , Alec Benzer , Nitin H. Vaidya

Causal Models are like Dependency Graphs and Belief Nets in that they provide a structure and a set of assumptions from which a joint distribution can, in principle, be computed. Unlike Dependency Graphs, Causal Models are models of…

Artificial Intelligence · Computer Science 2013-03-08 John F. Lemmer

One of the modern paradigms to develop a system is object oriented analysis and design. In this paradigm, there are several objects and each object plays some specific roles. After identifying objects, the various relationships among…

Software Engineering · Computer Science 2015-11-10 Zeynab Rashidi

Efficient processing of large-scale graphs in distributed environments has been an increasingly popular topic of research in recent years. Inter-connected data that can be modeled as graphs arise in application domains such as machine…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-01-25 Vasiliki Kalavri , Vladimir Vlassov , Seif Haridi

Random graphs are more and more used for modeling real world networks such as evolutionary networks of proteins. For this purpose we look at two different models and analyze how properties like connectedness and degree distributions are…

Probability · Mathematics 2019-02-05 Klemens Taglieber , Uta Freiberg

Graphs can have different properties that lead to several graph types and may allow for a varying representation of diverse information. In order to clarify the modeling power of graphs, we introduce a partial order on the most common graph…

Discrete Mathematics · Computer Science 2022-09-08 Josephine M. Thomas , Silvia Beddar-Wiesing , Alice Moallemy-Oureh , Rüdiger Nather

The object-oriented class is, in general, the most utilized element in programming and modeling. It is employed throughout the software development process, from early domain analysis phases to later maintenance phases. A class diagram…

Software Engineering · Computer Science 2017-10-03 Sabah Al-Fedaghi

Two large, open source software systems are analyzed from the vantage point of complex adaptive systems theory. For both systems, the full dependency graphs are constructed and their properties are shown to be consistent with the assumption…

Adaptation and Self-Organizing Systems · Physics 2010-01-19 G. A. Kohring

In this tutorial I will present how a combination of linear and dependent type can be useful to describe different properties about higher order programs. Linear types have been proved particularly useful to express properties of functions;…

Programming Languages · Computer Science 2013-07-01 Marco Gaboardi

The expression problem describes how most types can easily be extended with new ways to produce the type or new ways to consume the type, but not both. When abstract syntax trees are defined as an algebraic data type, for example, they can…

Programming Languages · Computer Science 2024-03-12 David Binder , Ingo Skupin , Tim Süberkrüb , Klaus Ostermann
‹ Prev 1 2 3 10 Next ›