This document discusses ecological studies of open source software ecosystems. It describes research on the GNOME and R ecosystems. The research aims to determine factors that influence the success of open source projects within an ecosystem by drawing analogies to biological ecology. Studies of the GNOME ecosystem examined contributor migrations between projects over time and project clustering. Studies of the R ecosystem analyzed its package dependency network.
ICSME 2016 keynote: An ecosystemic and socio-technical view on software maint...Tom Mens
These are the slides of my ICSME 2016 keynote, presented on 5 October 2016 in Raleigh, North Carolina. I focus on the difficulties of maintaining and evolving software ecosystems, large collections of interacting software components that are maintained by a large and active community of contributors and that evolve together in the same environment. Software ecosystems are becoming ubiquitous due to the omnipresence of open source software. I present several problems that arise during maintenance and evolution of software ecosystems, and I argue how some of these challenges should be addressed by adopting a socio-technical view and by relying on a multidisciplinary and mixed methods research approach. I illustrate this with examples of social network analysis, complex systems research, ecological biodiversity, and survival analysis.
Graphical vs. textual representations were compared in a requirements comprehension study. Subjects (N=28 students) viewed requirements documents presented graphically, textually, or with both. Results showed no significant difference in comprehension accuracy between representations. However, graphical representations required significantly more visual effort as measured by eye movements. Subjects also preferred graphical representations but found them more difficult. The document structure influenced whether subjects adopted a top-down or bottom-up problem-solving strategy.
The document introduces the Ptidej Tool Suite for reverse engineering, identifying design patterns and defects in object-oriented programs. It provides an example of the Composite design pattern and describes spaghetti code as an example of a design defect. The tool suite was developed by the Ptidej Team at the University of Montreal to help evaluate and enhance the quality of OO programs through the use of design patterns.
This document describes SMURF, a SVM-based incremental anti-pattern detection approach. It presents SMURF, compares it to previous approaches, and reports on an empirical study evaluating SMURF. The study shows that SMURF has higher precision and recall than previous approaches, can be applied to subsets or whole systems, and its accuracy improves when incorporating practitioner feedback. Future work involves applying SMURF in real-world settings and integrating it into development tools.
130817 latifa guerrouj - context-aware source code vocabulary normalization...Ptidej Team
This document summarizes the contributions of Latifa Guerrouj's PhD thesis on context-aware source code vocabulary normalization. The thesis introduced two context-aware approaches for vocabulary normalization: TIDIER and TRIS. TIDIER is inspired by speech recognition and uses context-aware dictionaries and hill climbing to normalize identifiers. Experiments showed TIDIER outperformed previous approaches and correctly mapped 48% of abbreviations. TRIS treats normalization as an optimization problem to minimize a cost function. Experiments found TRIS had higher accuracy than state-of-the-art approaches like CamelCase and Samurai, with a medium to large effect size on C code.
This document proposes an approach to formalize security patterns using formal methods like Petri nets. It describes security patterns, formal methods, and how Petri nets can be used to model the behavior of security patterns. An example of a sender-receiver pattern is analyzed by comparing its Petri net and code structures. Future work includes applying this approach to real systems and using other formal methods to provide running analysis and testing.
This document presents a method called DECOR for automatically generating detection algorithms for design defects from specifications. DECOR involves a 10-step process where design defects are specified using rule cards that describe structural and semantic properties more precisely. A framework called SAD then parses the rule cards, builds models of the defects, and visits the models to generate detection algorithms. Preliminary results applying DECOR to detect blobs and spaghetti code in open-source programs show detection precisions ranging from 20-82% depending on the defect and project.
130823 eric vitouley - supporting source code maintenance using screencastsPtidej Team
This document discusses research into linking screencast videos to source code. It defines screencasts as digital videos that record computer desktop actions, often with narration. The document outlines researching extracting text from screencasts using speech-to-text and comparing it to source code identifiers and documentation using similarity algorithms. Current work includes splitting screencasts into scenes and computing inter-scene similarities, as well as trying to directly link screencasts and source code by splitting identifiers. The goal is to build a model to retrieve traceability links between screencasts and source code.
ICSME 2016 keynote: An ecosystemic and socio-technical view on software maint...Tom Mens
These are the slides of my ICSME 2016 keynote, presented on 5 October 2016 in Raleigh, North Carolina. I focus on the difficulties of maintaining and evolving software ecosystems, large collections of interacting software components that are maintained by a large and active community of contributors and that evolve together in the same environment. Software ecosystems are becoming ubiquitous due to the omnipresence of open source software. I present several problems that arise during maintenance and evolution of software ecosystems, and I argue how some of these challenges should be addressed by adopting a socio-technical view and by relying on a multidisciplinary and mixed methods research approach. I illustrate this with examples of social network analysis, complex systems research, ecological biodiversity, and survival analysis.
Graphical vs. textual representations were compared in a requirements comprehension study. Subjects (N=28 students) viewed requirements documents presented graphically, textually, or with both. Results showed no significant difference in comprehension accuracy between representations. However, graphical representations required significantly more visual effort as measured by eye movements. Subjects also preferred graphical representations but found them more difficult. The document structure influenced whether subjects adopted a top-down or bottom-up problem-solving strategy.
The document introduces the Ptidej Tool Suite for reverse engineering, identifying design patterns and defects in object-oriented programs. It provides an example of the Composite design pattern and describes spaghetti code as an example of a design defect. The tool suite was developed by the Ptidej Team at the University of Montreal to help evaluate and enhance the quality of OO programs through the use of design patterns.
This document describes SMURF, a SVM-based incremental anti-pattern detection approach. It presents SMURF, compares it to previous approaches, and reports on an empirical study evaluating SMURF. The study shows that SMURF has higher precision and recall than previous approaches, can be applied to subsets or whole systems, and its accuracy improves when incorporating practitioner feedback. Future work involves applying SMURF in real-world settings and integrating it into development tools.
130817 latifa guerrouj - context-aware source code vocabulary normalization...Ptidej Team
This document summarizes the contributions of Latifa Guerrouj's PhD thesis on context-aware source code vocabulary normalization. The thesis introduced two context-aware approaches for vocabulary normalization: TIDIER and TRIS. TIDIER is inspired by speech recognition and uses context-aware dictionaries and hill climbing to normalize identifiers. Experiments showed TIDIER outperformed previous approaches and correctly mapped 48% of abbreviations. TRIS treats normalization as an optimization problem to minimize a cost function. Experiments found TRIS had higher accuracy than state-of-the-art approaches like CamelCase and Samurai, with a medium to large effect size on C code.
This document proposes an approach to formalize security patterns using formal methods like Petri nets. It describes security patterns, formal methods, and how Petri nets can be used to model the behavior of security patterns. An example of a sender-receiver pattern is analyzed by comparing its Petri net and code structures. Future work includes applying this approach to real systems and using other formal methods to provide running analysis and testing.
This document presents a method called DECOR for automatically generating detection algorithms for design defects from specifications. DECOR involves a 10-step process where design defects are specified using rule cards that describe structural and semantic properties more precisely. A framework called SAD then parses the rule cards, builds models of the defects, and visits the models to generate detection algorithms. Preliminary results applying DECOR to detect blobs and spaghetti code in open-source programs show detection precisions ranging from 20-82% depending on the defect and project.
130823 eric vitouley - supporting source code maintenance using screencastsPtidej Team
This document discusses research into linking screencast videos to source code. It defines screencasts as digital videos that record computer desktop actions, often with narration. The document outlines researching extracting text from screencasts using speech-to-text and comparing it to source code identifiers and documentation using similarity algorithms. Current work includes splitting screencasts into scenes and computing inter-scene similarities, as well as trying to directly link screencasts and source code by splitting identifiers. The goal is to build a model to retrieve traceability links between screencasts and source code.
Dr Lael Parrott at the Landscape Science Cluster Seminar, May 2009pdalby
This document summarizes how concepts from complex systems studies can inform natural resource management. It discusses how ecosystems and landscapes are complex systems with emergent properties arising from local interactions. Agent-based models are useful for modeling ecological complexity across scales. Examples shown include a model of grassland resilience under disturbance and the relationship between grazing and spatial complexity. Understanding community assembly is explored through a spatial model linking local communities. The document concludes that embracing complexity requires new tools like multi-scale models and monitoring to manage social-ecological systems.
Applying biological evolution to software ecosystems: A case study with GnomeTom Mens
Presented by Maelick Claes (Software Engineering Lab, Département d'Informatique, COMPLEXYS Research Insitute of UMONS) at BENEVOL 2012 research seminar on software evolution in Delft, The Netherlands, 3 December 2012
Engineering computational ecosystems (2nd year PhD seminar)Danilo Pianini
This tutorial will introduce the research field of pervasive computing, with particular focus on spatial computing and pervasive ecosystems. It will show the applicative domain with a focus on pervasive displays, analysing the main challenges such systems present to software engineers. It will also show how relevant is the role of the simulation and properties checking in this area, in which a complete system deployment prior to release is almost impossible.
Advancing Spatio-temporal Analysis of Ecological Data Examples in R.pdfSabrina Green
This document discusses using R software for spatio-temporal analysis of ecological data. It provides three examples analyzing GPS trajectory data for gull birds, mapping species distributions over space and time, and detecting changes over time using maps. R is well-suited for these tasks due to packages for spatial and statistical analysis that allow exporting outputs like maps to other programs. The examples demonstrate R's ability to produce useful outputs for geo-ecology.
Social and Technical Evolution of the Ruby on Rails Software EcosystemTom Mens
Presentation by Eleni Constantinou (postdoctoral researcher at the Software Engineerin Lab of the University of Mons, Belgium) during the Workshop on Ecosystem Architecuters (WEA2016), Copenhagen, Denmark, 29 November 2016.
Abstract: Software ecosystems evolve through an active community of developers who contribute to projects within the ecosystem. However, development teams change over time, suggesting a potential impact on the evolution of the technical parts of the ecosystem. The impact of such modifications has been studied by previous works, but only temporary changes have been investigated, while the long-term effect of permanent changes has yet to be explored. In this paper, we investigate the evolution of the ecosystem of Ruby on Rails in GitHub in terms of such temporary and permanent changes of the development team. We use three viewpoints of the Rails ecosystem evolution to discuss our preliminary findings: (1) the base project; (2) the forks; and (3) the entire ecosystem containing both base project and forks.
Social and Technical Evolution of the Ruby on Rails Software Ecosystemeconst
Presentation of the paper "Social and Technical Evolution of Software Ecosystems: A Case Study of Rails" during the Workshop on Ecosystem Architectures (WEA2016), Copenhagen, Denmark, 29 November 2016.
This document summarizes and compares several land use and land cover change (LUCC) modeling tools that can be used within geographic information systems (GIS). It describes tools available in common GIS software like ESRI's ArcGIS and Idrisi, as well as standalone modeling programs including CLUE, DINAMICA, SLEUTH, Land Use Scanner, Environment Explorer, and MOLAND. Many of these tools use cellular automata and statistical regression to model and predict future LUCC based on historical trends and environmental factors. The document provides links to websites with more information about these different modeling programs.
The newly released book Sustainable Urban Environments - An Ecosystem Approach ‘helps the reader grasp opportunities for integration of knowledge and technologies in the design, construction and management of the built environment.’ In the first edition of the Delft Environment Initiative Lecture Series on 21-09-2011 several contributors to Sustainable Urban Environments discussed their views on the most pressing challenges facing us in the urban environment today and how they should be integrated in education. These are the slides accompanying the ‘elevator pitches’ they gave. http://home.tudelft.nl/en/research/environment/mini-symposium-sustainable-urban-environments/
This is my second in a series of 4 lectures on the topic of Evolving Software Ecosystems, presented during the NATO Marktoberdorf 2014 Summer School on Dependable Software System Engineering in Germany, August 2014.
Towards a comprehensive approach to spontaneous self-composition in pervasive...Danilo Pianini
Pervasive service ecosystems are emerging as a new paradigm for understanding and designing future pervasive computing systems featuring high degrees of scale, openness, adaptivity and toleration of long-term evolution. A key issue in this context is making certain patterns of behaviour emerge without any supervision or design-time intention, and a primary example is the fully-spontaneous composition of services, possibly at multiple levels. We argue that this can be successfully achieved only by a comprehensive approach exploiting together the main ingredients proposed so far in literature: (i) existence of intel- ligent components finding proper (semantic) matches of service descriptions, (ii) use of distributed evolutionary techniques to dynamically select appropriate ways of composing services, and (iii) approaches in which rating quality of composition is solely based on their successful exploitation. This proposal is presented through an example of spontaneous composition in crowd steering services.
Migration patterns of open source ecosystem contributors - An empirical case ...Tom Mens
We present our emerging research on evolving open source software ecosystems, collections of software projects maintained by the same community. Within such an ecosystem we aim to understand how contributors join, leave and move across different projects over time. In particular, we study where new contributors to a given subsystem come from, and where people go to if they stop contributing in this subsystem. We define novel metrics to measure these aspects of projects in the ecosystem. We are carrying out an empirical study on the GNOME ecosystem to study these aspects.
Citizen science project list for everyone interested in getting involved - but perhaps confused about where to start.
Most projects are available for worldwide participation, and are categorized by type (distributed computing, distributed thinking, other crowd-sourced projects, game-based citizen science). Projects that you can participate in directly through your Android-based smartphone or iPhone are listed separately for convenience. Special projects, such as ones designed specifically for students, and extra handy tools (e.g. measure apps and field guides) are also included.
More updated versions to come! Suggestions / alternative lists for specific geographic regions welcome!
1. The document discusses geo-informatics and its use for disaster risk reduction and sustainable development through digital platforms like Digital Earth and Digital Asia.
2. Key applications mentioned include public participatory GIS, adaptation for climate change, monitoring glacial lakes, and early warning systems using sensor networks.
3. The Graduate School of Media and Governance at Keio University conducts research related to global innovation systems, security, and emerging crises through its Global Security Research Center.
The document summarizes the Blue-Green Cities project which explores flood risks and benefits of flood risk reduction strategies using green infrastructure. The project aims to develop and evaluate strategies that manage flood risk while delivering multiple environmental, social and economic benefits. A spatial toolkit is being developed to analyze the distribution of benefits from green infrastructure solutions over time and space, such as reduced flooding, improved water quality and increased access to green spaces. Case studies in Portland, Oregon demonstrate how the toolkit can compare traditional grey infrastructure to green alternatives.
This document summarizes a seminar presentation on modeling for sustainability given by Benoit Combemale at Lancaster University on December 5, 2016. The presentation discussed using model-driven engineering approaches for developing sustainability systems. It proposed integrating engineering models, scientific models, and data from various sources to support informed decision making and dynamic adaptation for sustainability goals. Model-driven techniques could engage different stakeholders and allow exploration of scenarios to balance environmental, economic and social factors.
This document summarizes Gerard A.M. de Fraiture's contribution to an international seminar on sustainable domestic wastewater treatment in urban areas. Conventional wastewater treatment systems in western countries are not very sustainable. Research shows that anaerobic treatment, which mimics natural biological processes, is more sustainable as it recovers energy and nutrients in a decentralized manner. Promising technologies like upflow anaerobic sludge blanket reactors and recent algae technologies follow principles of separating solids from liquids and minimizing water use for transport. Simple, robust, affordable technologies at small scale can create jobs and economic opportunities while achieving sustainability goals.
This is my first in a series of 4 lectures on the topic of Evolving Software Ecosystems, presented during the NATO Marktoberdorf 2014 Summer School on Dependable Software System Engineering in Germany, August 2014.
The Software Sustainability Institute (SSI) provides services to help research groups sustain their software over the long term. It collaborates with groups in various fields to improve key software through advice, training, and partnerships. Case studies describe projects in fields like fusion energy, climate modeling, geospatial data, and computational chemistry. The SSI aims to promote best practices and change perceptions so software is recognized as a valuable long-term asset, not just for initial research. Sustaining software requires support for both technical aspects and community engagement over decades.
The document discusses using life cycle assessment (LCA) as a tool for designing more sustainable cities. LCA can help address environmental problems by assessing the full life cycle impacts of city infrastructure and design. The document presents an LCA of natural gas distribution networks in neighborhoods with varying densities. Results show the environmental impact is four times higher in a low-density neighborhood compared to medium and high-density neighborhoods, mainly due to differences in network length. LCA is presented as an appropriate tool for guiding urban ecodesign and decision-making by providing a comprehensive view of environmental impacts.
The document discusses the history and current state of software engineering and its application to IoT systems. It notes that 50 years after the earliest software projects, issues still include cost overruns, property damage, risks to life and death, and challenges ensuring quality. For IoT, fragmentation across hardware, software, APIs and standards poses significant problems. The document proposes that research into IoT software engineering could help address these issues through approaches like developing software to run across diverse IoT platforms, and automatically miniaturizing software through techniques like multi-objective optimization to suit different IoT device capabilities.
1) Issue trackers are often used to track more than just bugs, including features, enhancements, and refactoring work.
2) A manual analysis found that nearly half of issues labeled as "bugs" in issue trackers were actually not bugs.
3) Relying on issue tracker labels alone can introduce significant errors into datasets used for tasks like bug prediction and severity estimation. More work is needed to clean noisy and unreliable data.
More Related Content
Similar to 130918 maelick claes - ecological studies of open source software ecosystems
Dr Lael Parrott at the Landscape Science Cluster Seminar, May 2009pdalby
This document summarizes how concepts from complex systems studies can inform natural resource management. It discusses how ecosystems and landscapes are complex systems with emergent properties arising from local interactions. Agent-based models are useful for modeling ecological complexity across scales. Examples shown include a model of grassland resilience under disturbance and the relationship between grazing and spatial complexity. Understanding community assembly is explored through a spatial model linking local communities. The document concludes that embracing complexity requires new tools like multi-scale models and monitoring to manage social-ecological systems.
Applying biological evolution to software ecosystems: A case study with GnomeTom Mens
Presented by Maelick Claes (Software Engineering Lab, Département d'Informatique, COMPLEXYS Research Insitute of UMONS) at BENEVOL 2012 research seminar on software evolution in Delft, The Netherlands, 3 December 2012
Engineering computational ecosystems (2nd year PhD seminar)Danilo Pianini
This tutorial will introduce the research field of pervasive computing, with particular focus on spatial computing and pervasive ecosystems. It will show the applicative domain with a focus on pervasive displays, analysing the main challenges such systems present to software engineers. It will also show how relevant is the role of the simulation and properties checking in this area, in which a complete system deployment prior to release is almost impossible.
Advancing Spatio-temporal Analysis of Ecological Data Examples in R.pdfSabrina Green
This document discusses using R software for spatio-temporal analysis of ecological data. It provides three examples analyzing GPS trajectory data for gull birds, mapping species distributions over space and time, and detecting changes over time using maps. R is well-suited for these tasks due to packages for spatial and statistical analysis that allow exporting outputs like maps to other programs. The examples demonstrate R's ability to produce useful outputs for geo-ecology.
Social and Technical Evolution of the Ruby on Rails Software EcosystemTom Mens
Presentation by Eleni Constantinou (postdoctoral researcher at the Software Engineerin Lab of the University of Mons, Belgium) during the Workshop on Ecosystem Architecuters (WEA2016), Copenhagen, Denmark, 29 November 2016.
Abstract: Software ecosystems evolve through an active community of developers who contribute to projects within the ecosystem. However, development teams change over time, suggesting a potential impact on the evolution of the technical parts of the ecosystem. The impact of such modifications has been studied by previous works, but only temporary changes have been investigated, while the long-term effect of permanent changes has yet to be explored. In this paper, we investigate the evolution of the ecosystem of Ruby on Rails in GitHub in terms of such temporary and permanent changes of the development team. We use three viewpoints of the Rails ecosystem evolution to discuss our preliminary findings: (1) the base project; (2) the forks; and (3) the entire ecosystem containing both base project and forks.
Social and Technical Evolution of the Ruby on Rails Software Ecosystemeconst
Presentation of the paper "Social and Technical Evolution of Software Ecosystems: A Case Study of Rails" during the Workshop on Ecosystem Architectures (WEA2016), Copenhagen, Denmark, 29 November 2016.
This document summarizes and compares several land use and land cover change (LUCC) modeling tools that can be used within geographic information systems (GIS). It describes tools available in common GIS software like ESRI's ArcGIS and Idrisi, as well as standalone modeling programs including CLUE, DINAMICA, SLEUTH, Land Use Scanner, Environment Explorer, and MOLAND. Many of these tools use cellular automata and statistical regression to model and predict future LUCC based on historical trends and environmental factors. The document provides links to websites with more information about these different modeling programs.
The newly released book Sustainable Urban Environments - An Ecosystem Approach ‘helps the reader grasp opportunities for integration of knowledge and technologies in the design, construction and management of the built environment.’ In the first edition of the Delft Environment Initiative Lecture Series on 21-09-2011 several contributors to Sustainable Urban Environments discussed their views on the most pressing challenges facing us in the urban environment today and how they should be integrated in education. These are the slides accompanying the ‘elevator pitches’ they gave. http://home.tudelft.nl/en/research/environment/mini-symposium-sustainable-urban-environments/
This is my second in a series of 4 lectures on the topic of Evolving Software Ecosystems, presented during the NATO Marktoberdorf 2014 Summer School on Dependable Software System Engineering in Germany, August 2014.
Towards a comprehensive approach to spontaneous self-composition in pervasive...Danilo Pianini
Pervasive service ecosystems are emerging as a new paradigm for understanding and designing future pervasive computing systems featuring high degrees of scale, openness, adaptivity and toleration of long-term evolution. A key issue in this context is making certain patterns of behaviour emerge without any supervision or design-time intention, and a primary example is the fully-spontaneous composition of services, possibly at multiple levels. We argue that this can be successfully achieved only by a comprehensive approach exploiting together the main ingredients proposed so far in literature: (i) existence of intel- ligent components finding proper (semantic) matches of service descriptions, (ii) use of distributed evolutionary techniques to dynamically select appropriate ways of composing services, and (iii) approaches in which rating quality of composition is solely based on their successful exploitation. This proposal is presented through an example of spontaneous composition in crowd steering services.
Migration patterns of open source ecosystem contributors - An empirical case ...Tom Mens
We present our emerging research on evolving open source software ecosystems, collections of software projects maintained by the same community. Within such an ecosystem we aim to understand how contributors join, leave and move across different projects over time. In particular, we study where new contributors to a given subsystem come from, and where people go to if they stop contributing in this subsystem. We define novel metrics to measure these aspects of projects in the ecosystem. We are carrying out an empirical study on the GNOME ecosystem to study these aspects.
Citizen science project list for everyone interested in getting involved - but perhaps confused about where to start.
Most projects are available for worldwide participation, and are categorized by type (distributed computing, distributed thinking, other crowd-sourced projects, game-based citizen science). Projects that you can participate in directly through your Android-based smartphone or iPhone are listed separately for convenience. Special projects, such as ones designed specifically for students, and extra handy tools (e.g. measure apps and field guides) are also included.
More updated versions to come! Suggestions / alternative lists for specific geographic regions welcome!
1. The document discusses geo-informatics and its use for disaster risk reduction and sustainable development through digital platforms like Digital Earth and Digital Asia.
2. Key applications mentioned include public participatory GIS, adaptation for climate change, monitoring glacial lakes, and early warning systems using sensor networks.
3. The Graduate School of Media and Governance at Keio University conducts research related to global innovation systems, security, and emerging crises through its Global Security Research Center.
The document summarizes the Blue-Green Cities project which explores flood risks and benefits of flood risk reduction strategies using green infrastructure. The project aims to develop and evaluate strategies that manage flood risk while delivering multiple environmental, social and economic benefits. A spatial toolkit is being developed to analyze the distribution of benefits from green infrastructure solutions over time and space, such as reduced flooding, improved water quality and increased access to green spaces. Case studies in Portland, Oregon demonstrate how the toolkit can compare traditional grey infrastructure to green alternatives.
This document summarizes a seminar presentation on modeling for sustainability given by Benoit Combemale at Lancaster University on December 5, 2016. The presentation discussed using model-driven engineering approaches for developing sustainability systems. It proposed integrating engineering models, scientific models, and data from various sources to support informed decision making and dynamic adaptation for sustainability goals. Model-driven techniques could engage different stakeholders and allow exploration of scenarios to balance environmental, economic and social factors.
This document summarizes Gerard A.M. de Fraiture's contribution to an international seminar on sustainable domestic wastewater treatment in urban areas. Conventional wastewater treatment systems in western countries are not very sustainable. Research shows that anaerobic treatment, which mimics natural biological processes, is more sustainable as it recovers energy and nutrients in a decentralized manner. Promising technologies like upflow anaerobic sludge blanket reactors and recent algae technologies follow principles of separating solids from liquids and minimizing water use for transport. Simple, robust, affordable technologies at small scale can create jobs and economic opportunities while achieving sustainability goals.
This is my first in a series of 4 lectures on the topic of Evolving Software Ecosystems, presented during the NATO Marktoberdorf 2014 Summer School on Dependable Software System Engineering in Germany, August 2014.
The Software Sustainability Institute (SSI) provides services to help research groups sustain their software over the long term. It collaborates with groups in various fields to improve key software through advice, training, and partnerships. Case studies describe projects in fields like fusion energy, climate modeling, geospatial data, and computational chemistry. The SSI aims to promote best practices and change perceptions so software is recognized as a valuable long-term asset, not just for initial research. Sustaining software requires support for both technical aspects and community engagement over decades.
The document discusses using life cycle assessment (LCA) as a tool for designing more sustainable cities. LCA can help address environmental problems by assessing the full life cycle impacts of city infrastructure and design. The document presents an LCA of natural gas distribution networks in neighborhoods with varying densities. Results show the environmental impact is four times higher in a low-density neighborhood compared to medium and high-density neighborhoods, mainly due to differences in network length. LCA is presented as an appropriate tool for guiding urban ecodesign and decision-making by providing a comprehensive view of environmental impacts.
Similar to 130918 maelick claes - ecological studies of open source software ecosystems (20)
The document discusses the history and current state of software engineering and its application to IoT systems. It notes that 50 years after the earliest software projects, issues still include cost overruns, property damage, risks to life and death, and challenges ensuring quality. For IoT, fragmentation across hardware, software, APIs and standards poses significant problems. The document proposes that research into IoT software engineering could help address these issues through approaches like developing software to run across diverse IoT platforms, and automatically miniaturizing software through techniques like multi-objective optimization to suit different IoT device capabilities.
1) Issue trackers are often used to track more than just bugs, including features, enhancements, and refactoring work.
2) A manual analysis found that nearly half of issues labeled as "bugs" in issue trackers were actually not bugs.
3) Relying on issue tracker labels alone can introduce significant errors into datasets used for tasks like bug prediction and severity estimation. More work is needed to clean noisy and unreliable data.
The document discusses how to derive dependency structures for legacy J2EE applications. It proposes analyzing all application tiers together using a language-independent model and parsing various artifacts. Configuration files and limited data flow analysis are used to understand dependencies. Container dependencies are explicitly codified by studying technology specifications and codifying dependency rules to apply when certain code patterns are detected in applications. This allows completing an application's dependency graph.
The document discusses the state of practices of service identification in the industry for migrating legacy systems to service-oriented architectures (SOA). It finds that while service identification is seen as important, it remains primarily a manual process focused on identifying coarse-grained business services from source code and business processes. Wrapping and clustering functionalities are common techniques. Fully automating service identification is still challenging due to the need to understand complex legacy system dependencies. The document recommends service identification be business-driven and follow proven methodologies.
This document discusses techniques for testing advanced driver assistance systems (ADAS) through physics-based simulation. It faces challenges due to the large, complex, and multidimensional test input space as well as the computational expense of simulation. The document proposes using a genetic algorithm guided by decision trees to more efficiently search for critical test cases. Classification trees are built to partition the input space into homogeneous regions in order to better guide the selection and generation of test inputs toward more critical areas.
The document reports on the findings of a survey of 45 industrial practitioners on their experiences with legacy-to-SOA migrations. The key findings include: 1) Practitioners migrate legacy systems implemented in Cobol and Java to reduce maintenance costs and improve flexibility/interoperability; 2) Identifying services is an important step but is mostly manual and business-driven; 3) The most used techniques are functionality clustering and wrapping; 4) Desired service qualities are reusability, granularity and loose coupling; 5) Identified services prioritize domain-specific over technical services; 6) RESTful services are most targeted technology.
The document investigates the impact of linguistic anti-patterns (LAs) on program comprehension. It defines LAs as bad naming, documentation, and implementation practices. A study was conducted involving 92 students assessing programs with and without LAs. The study found that LAs negatively impact understandability by increasing time and reducing correctness. Certain LAs like A2, B4, and D1 had a stronger negative effect than others like E1. The study also found that providing knowledge about LAs can help mitigate their impact by making programs easier and faster to comprehend.
The document discusses research on identifying and analyzing the impact of patterns on the quality of multi-language systems. The objectives are to collect and categorize sets of programming languages used together, detect patterns in multi-language programs to track bugs and provide best practices, and study how patterns impact quality. The contributions will be a catalog of multi-language patterns and defects, a detection tool, and analysis of patterns' effects on quality attributes. Current work includes reviewing literature on language combinations and patterns to provide recommendations for high-quality multi-language development.
This document discusses research on change impact analysis in multi-language systems. It begins by outlining recommendations for best practices when using JNI, such as passing primitive types, minimizing calls between native and Java code, and properly handling strings. It then describes a qualitative analysis of JNI usage that identified common practices and issues. Finally, it proposes future work to survey developers on applying recommendations to facilitate change impact analysis in multi-language systems.
The document summarizes a recommendation system that suggests software processes for video game projects based on similarities to past projects. The system analyzes over 100 postmortems from previous games to build a database of development processes and project contexts. It uses principal component analysis to identify similar past projects and recommends a process by combining elements from similar projects' processes. The system was evaluated both quantitatively based on correctness and coverage metrics and qualitatively through surveys and a case study with a developer team.
Will io t trigger the next software crisisPtidej Team
This document discusses how the rise of the Internet of Things (IoT) could trigger a new software crisis due to issues like fragmentation, complexity, and lack of standards. It provides a brief history of software engineering challenges over the past 50 years such as cost overruns, safety issues, and prioritizing productivity over quality. The document then examines how these same problems are emerging in the IoT context today. It argues that IoT software engineering practices need to address issues like device software, cloud/app development, and privacy in order to avoid a major crisis.
This document discusses theories related to software design patterns. It notes that while design patterns are commonly used, there is a need for more research on how they impact software quality. The document proposes several areas for developing theories, including systematically categorizing existing patterns based on underlying principles, combining principles to identify new patterns, and developing theories of patterns from developer behavior and for building software systems. Formalizing patterns and identifying their relationships could help teaching and understanding of patterns.
Laleh M. Eshkevari defended her Ph.D dissertation on developing techniques for the automatic detection and classification of identifier renamings in software projects. Her dissertation outlined a taxonomy of renamings, described approaches for renaming detection based on line mapping, entity mapping and data flow analysis, and discussed methods for classifying renamings based on their form and semantic changes. Evaluation of the approaches on several open source projects showed high precision and recall for renaming detection and identified trends in how renamings are used in practice.
1) The document analyzes the co-occurrence of code smells like anti-patterns and clones in software systems and their impact on fault-proneness.
2) It finds that over 50% of classes with anti-patterns also have clones, and 59-78% of classes with clones also participate in anti-patterns.
3) Classes with both anti-patterns and clones are significantly more fault-prone than other classes, with the risk of faults being at least 7 times higher in one system studied.
Trustrace is an approach that uses software repository links like SVN commits to improve the trust in automatically recovered traceability links between requirements and code. It calculates an initial trust value for links based on IR techniques like VSM, and then reweights the links based on additional information from the software repository. An evaluation on two case studies found Trustrace improved precision over VSM alone and showed no significant difference in recall, supporting the hypothesis that Trustrace can improve link recovery accuracy over IR-only approaches.
The document presents a taxonomy called ProMeTA for classifying program metamodels used in program reverse engineering. ProMeTA defines characteristics such as target language, abstraction level, meta-language, and more to classify popular metamodels like AST, KDM, FAMIX. The taxonomy aims to provide a comprehensive guide for researchers and practitioners to select, design, and communicate metamodels. The paper also analyzes existing metamodels according to the ProMeTA taxonomy and identifies gaps to guide future metamodel development.
This document describes a controlled, multiple case study of software evolution and defects from industrial projects. It details the data sources used, including source code repositories, issue tracking databases, and interviews. Metrics such as code smells, size, effort, and defects were collected. Programming skills of developers were also measured. Code smell detection tools and custom scripts to analyze code changes were used to extract metrics on a variety of code issues and evolution over time. The data is available online for further analysis.
The document describes a study on detecting linguistic (anti)patterns in RESTful APIs. It presents an approach called DOLAR (Detection Of Linguistic Antipatterns in REST) that analyzes REST API URIs and detects antipatterns using heuristics-based algorithms. Experiments were conducted on 309 methods from 15 public REST APIs to test DOLAR's accuracy, the extensibility of the underlying SOFA framework, and the performance of detection algorithms. The results showed that 42% of methods exhibited contextualized resource names (a pattern) while 14% had contextless resource names (an antipattern), with detection taking under a second on average.
HCL Notes and Domino License Cost Reduction in the World of DLAUpanagenda
Webinar Recording: https://www.panagenda.com/webinars/hcl-notes-and-domino-license-cost-reduction-in-the-world-of-dlau/
The introduction of DLAU and the CCB & CCX licensing model caused quite a stir in the HCL community. As a Notes and Domino customer, you may have faced challenges with unexpected user counts and license costs. You probably have questions on how this new licensing approach works and how to benefit from it. Most importantly, you likely have budget constraints and want to save money where possible. Don’t worry, we can help with all of this!
We’ll show you how to fix common misconfigurations that cause higher-than-expected user counts, and how to identify accounts which you can deactivate to save money. There are also frequent patterns that can cause unnecessary cost, like using a person document instead of a mail-in for shared mailboxes. We’ll provide examples and solutions for those as well. And naturally we’ll explain the new licensing model.
Join HCL Ambassador Marc Thomas in this webinar with a special guest appearance from Franz Walder. It will give you the tools and know-how to stay on top of what is going on with Domino licensing. You will be able lower your cost through an optimized configuration and keep it low going forward.
These topics will be covered
- Reducing license cost by finding and fixing misconfigurations and superfluous accounts
- How do CCB and CCX licenses really work?
- Understanding the DLAU tool and how to best utilize it
- Tips for common problem areas, like team mailboxes, functional/test users, etc
- Practical examples and best practices to implement right away
Best 20 SEO Techniques To Improve Website Visibility In SERPPixlogix Infotech
Boost your website's visibility with proven SEO techniques! Our latest blog dives into essential strategies to enhance your online presence, increase traffic, and rank higher on search engines. From keyword optimization to quality content creation, learn how to make your site stand out in the crowded digital landscape. Discover actionable tips and expert insights to elevate your SEO game.
UiPath Test Automation using UiPath Test Suite series, part 6DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 6. In this session, we will cover Test Automation with generative AI and Open AI.
UiPath Test Automation with generative AI and Open AI webinar offers an in-depth exploration of leveraging cutting-edge technologies for test automation within the UiPath platform. Attendees will delve into the integration of generative AI, a test automation solution, with Open AI advanced natural language processing capabilities.
Throughout the session, participants will discover how this synergy empowers testers to automate repetitive tasks, enhance testing accuracy, and expedite the software testing life cycle. Topics covered include the seamless integration process, practical use cases, and the benefits of harnessing AI-driven automation for UiPath testing initiatives. By attending this webinar, testers, and automation professionals can gain valuable insights into harnessing the power of AI to optimize their test automation workflows within the UiPath ecosystem, ultimately driving efficiency and quality in software development processes.
What will you get from this session?
1. Insights into integrating generative AI.
2. Understanding how this integration enhances test automation within the UiPath platform
3. Practical demonstrations
4. Exploration of real-world use cases illustrating the benefits of AI-driven test automation for UiPath
Topics covered:
What is generative AI
Test Automation with generative AI and Open AI.
UiPath integration with generative AI
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Communications Mining Series - Zero to Hero - Session 1DianaGray10
This session provides introduction to UiPath Communication Mining, importance and platform overview. You will acquire a good understand of the phases in Communication Mining as we go over the platform with you. Topics covered:
• Communication Mining Overview
• Why is it important?
• How can it help today’s business and the benefits
• Phases in Communication Mining
• Demo on Platform overview
• Q/A
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceIndexBug
Imagine a world where machines not only perform tasks but also learn, adapt, and make decisions. This is the promise of Artificial Intelligence (AI), a technology that's not just enhancing our lives but revolutionizing entire industries.
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfMalak Abu Hammad
Discover how MongoDB Atlas and vector search technology can revolutionize your application's search capabilities. This comprehensive presentation covers:
* What is Vector Search?
* Importance and benefits of vector search
* Practical use cases across various industries
* Step-by-step implementation guide
* Live demos with code snippets
* Enhancing LLM capabilities with vector search
* Best practices and optimization strategies
Perfect for developers, AI enthusiasts, and tech leaders. Learn how to leverage MongoDB Atlas to deliver highly relevant, context-aware search results, transforming your data retrieval process. Stay ahead in tech innovation and maximize the potential of your applications.
#MongoDB #VectorSearch #AI #SemanticSearch #TechInnovation #DataScience #LLM #MachineLearning #SearchTechnology
Pushing the limits of ePRTC: 100ns holdover for 100 daysAdtran
At WSTS 2024, Alon Stern explored the topic of parametric holdover and explained how recent research findings can be implemented in real-world PNT networks to achieve 100 nanoseconds of accuracy for up to 100 days.
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...Neo4j
Leonard Jayamohan, Partner & Generative AI Lead, Deloitte
This keynote will reveal how Deloitte leverages Neo4j’s graph power for groundbreaking digital twin solutions, achieving a staggering 100x performance boost. Discover the essential role knowledge graphs play in successful generative AI implementations. Plus, get an exclusive look at an innovative Neo4j + Generative AI solution Deloitte is developing in-house.
Sudheer Mechineni, Head of Application Frameworks, Standard Chartered Bank
Discover how Standard Chartered Bank harnessed the power of Neo4j to transform complex data access challenges into a dynamic, scalable graph database solution. This keynote will cover their journey from initial adoption to deploying a fully automated, enterprise-grade causal cluster, highlighting key strategies for modelling organisational changes and ensuring robust disaster recovery. Learn how these innovations have not only enhanced Standard Chartered Bank’s data infrastructure but also positioned them as pioneers in the banking sector’s adoption of graph technology.
Threats to mobile devices are more prevalent and increasing in scope and complexity. Users of mobile devices desire to take full advantage of the features
available on those devices, but many of the features provide convenience and capability but sacrifice security. This best practices guide outlines steps the users can take to better protect personal devices and information.
Essentials of Automations: The Art of Triggers and Actions in FMESafe Software
In this second installment of our Essentials of Automations webinar series, we’ll explore the landscape of triggers and actions, guiding you through the nuances of authoring and adapting workspaces for seamless automations. Gain an understanding of the full spectrum of triggers and actions available in FME, empowering you to enhance your workspaces for efficient automation.
We’ll kick things off by showcasing the most commonly used event-based triggers, introducing you to various automation workflows like manual triggers, schedules, directory watchers, and more. Plus, see how these elements play out in real scenarios.
Whether you’re tweaking your current setup or building from the ground up, this session will arm you with the tools and insights needed to transform your FME usage into a powerhouse of productivity. Join us to discover effective strategies that simplify complex processes, enhancing your productivity and transforming your data management practices with FME. Let’s turn complexity into clarity and make your workspaces work wonders!
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slackshyamraj55
Discover the seamless integration of RPA (Robotic Process Automation), COMPOSER, and APM with AWS IDP enhanced with Slack notifications. Explore how these technologies converge to streamline workflows, optimize performance, and ensure secure access, all while leveraging the power of AWS IDP and real-time communication via Slack notifications.
Unlocking Productivity: Leveraging the Potential of Copilot in Microsoft 365, a presentation by Christoforos Vlachos, Senior Solutions Manager – Modern Workplace, Uni Systems
Presentation of the OECD Artificial Intelligence Review of Germany
130918 maelick claes - ecological studies of open source software ecosystems
1. Ecological Studies of Open Source Software Ecosystems
Empirical case studies with Gnome and R
Ma¨lick Claes, Tom Mens
e
Software Engineering Lab, Computer Science Department
Faculty of Science, University of Mons
18th September 2013
2. Research context
Ecosystems
Gnome studies
R studies
1 Research context
2 Ecosystems
3 Gnome studies
4 R studies
Ma¨lick Claes (UMONS)
e
Ecological Studies of Open Source Software Ecosystems
2013/09/18
2 / 23
3. Research context
Ecosystems
Gnome studies
R studies
ECOS (bit.ly/ecos-project)
Interdisciplinary project called “Ecological Studies of Open Source
Software Ecosystems” at the University of Mons (Belgium)
Tom Mens - Software Engineering Lab
Philippe Grosjeans - Numerical Ecology of Aquatic Systems Lab
(ECONUM)
Ma¨lick Claes (UMONS)
e
Ecological Studies of Open Source Software Ecosystems
2013/09/18
3 / 23
4. Research context
Ecosystems
Gnome studies
R studies
Long-term goals
How far can we drive the analogy between natural and software
ecosystems?
Determine the main factors that drive the success or failure of OSS
projects within their ecosystem
Investigate new techniques and mechanisms to predict and/or
improve survivability of OSS projects
Inspired by research in biological ecology
Use these insights to help
the developer community to improve upon their practices
companies and users to compare and adopt OSS projects
Ma¨lick Claes (UMONS)
e
Ecological Studies of Open Source Software Ecosystems
2013/09/18
4 / 23
5. Research context
Ecosystems
Gnome studies
R studies
1 Research context
2 Ecosystems
3 Gnome studies
4 R studies
Ma¨lick Claes (UMONS)
e
Ecological Studies of Open Source Software Ecosystems
2013/09/18
5 / 23
6. Research context
Ecosystems
Gnome studies
R studies
Biological Ecosystem
Ecosystem
Example: coral reef
Physical and biological components of an
environment considered in relation to each
other as a unit
High biodiversity:
polyps, sea
anemones, fish,
mollusks, sponges,
algae
combines all living organisms (plants,
animals, micro-organisms) and
physical components (light, water,
soil, rocks, minerals)
Ecology
Scientific study of the interactions that
determine the distribution and abundance
of organisms
Ma¨lick Claes (UMONS)
e
Ecological Studies of Open Source Software Ecosystems
2013/09/18
6 / 23
7. Research context
Ecosystems
Gnome studies
R studies
Software Ecosystem
Business-oriented software ecosystem
“a set of actors functioning as a unit and interacting with a shared market
for software and services, together with the relationships among them.”
(Jansen et al. 2009)
Examples
“App Stores” (Android, iOS)
Ma¨lick Claes (UMONS)
e
Eclipse platform & plugins
Ecological Studies of Open Source Software Ecosystems
2013/09/18
7 / 23
8. Research context
Ecosystems
Gnome studies
R studies
Software Ecosystem
Development-centric view
“a collection of software products that have some given degree of
symbiotic relationships.” (MesserschmiK & Szyperski 2003)
“a collection of software projects that are developed and evolve
together in the same environment.” (Lungu 2008)
Examples
GNOME &
KDE
Linux distributions (
Debian,
Ubuntu)
’s CRAN and others (CPAN, CTAN, . . . )
Ma¨lick Claes (UMONS)
e
Ecological Studies of Open Source Software Ecosystems
2013/09/18
8 / 23
9. Research context
Ecosystems
Gnome studies
R studies
Biological and Software Ecosystems in Summary
Ma¨lick Claes (UMONS)
e
Ecological Studies of Open Source Software Ecosystems
2013/09/18
9 / 23
10. Research context
Ecosystems
Gnome studies
R studies
Biological and Software Ecosystems in Summary
Ma¨lick Claes (UMONS)
e
Ecological Studies of Open Source Software Ecosystems
2013/09/18
9 / 23
11. Research context
Ecosystems
Gnome studies
R studies
1 Research context
2 Ecosystems
3 Gnome studies
4 R studies
Ma¨lick Claes (UMONS)
e
Ecological Studies of Open Source Software Ecosystems
2013/09/18
10 / 23
12. Research context
Ecosystems
Gnome studies
R studies
Reticulate evolution
Darwinian evolution cannot
Scleractinian coral polyps
always explain evolution of some
species: causes are not always
related to natural selection
The evolution tree of life:
acyclic graph
Reticulation: hybrid speciation,
horizontal gene transfer
Ma¨lick Claes (UMONS)
e
Ecological Studies of Open Source Software Ecosystems
2013/09/18
11 / 23
13. Research context
Ecosystems
Gnome studies
R studies
Migrations
Initial motivation
Horizontal gene transfer between projects?
Genotype of a project: contributors
Phenotype of a project: code
Can we make a parallel between code duplication and contributors?
Ma¨lick Claes (UMONS)
e
Ecological Studies of Open Source Software Ecosystems
2013/09/18
12 / 23
14. Research context
Ecosystems
Gnome studies
R studies
Migrations
Initial motivation
Horizontal gene transfer between projects?
Genotype of a project: contributors
Phenotype of a project: code
Can we make a parallel between code duplication and contributors?
Questions
Do joiners come from other GNOME projects or from outside the
ecosystem?
Do leavers tend to stay within other GNOME projects?
Does migration patterns change over time?
Do some projects attract or loose more contributors than others?
Ma¨lick Claes (UMONS)
e
Ecological Studies of Open Source Software Ecosystems
2013/09/18
12 / 23
15. Research context
Ecosystems
Gnome studies
R studies
Migrations
GNOME git repositories
16 years of history (1997 to 2012)
1,418 projects (stored in git repositories)
1,315,997 commits
11,094 identities, 5,923 distinct persons after identity merging
Metrics for 6-month periods
Local joiners
Global joiners
Local leavers
Global leavers
Ma¨lick Claes (UMONS)
e
Ecological Studies of Open Source Software Ecosystems
2013/09/18
13 / 23
16. Research context
Ecosystems
Gnome studies
R studies
Migrations
Local vs. global trend
−20
−10
0
10
Difference between global and local joiners
gimp
evolution
gtk+
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
Time
Ma¨lick Claes (UMONS)
e
Ecological Studies of Open Source Software Ecosystems
2013/09/18
14 / 23
17. Research context
Ecosystems
Gnome studies
R studies
Migrations
Local vs. global trend
−20
−15
−10
−5
0
5
10
Difference between global and local leavers
gimp
evolution
gtk+
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
Time
Ma¨lick Claes (UMONS)
e
Ecological Studies of Open Source Software Ecosystems
2013/09/18
15 / 23
18. Research context
Ecosystems
Gnome studies
R studies
Migrations
Collaboration factor
CF (p) = Collaboration factor for project p = percentage of coders in p
having contributed to other GNOME projects
Ma¨lick Claes (UMONS)
e
Ecological Studies of Open Source Software Ecosystems
2013/09/18
16 / 23
19. Research context
Ecosystems
Gnome studies
R studies
Migrations
Collaboration factor
CF (p) = Collaboration factor for project p = percentage of coders in p
having contributed to other GNOME projects
10
Difference between global and local joiners
0
GIMP = 65.3%
−20
GTK+ = 94.8%
−10
Evolution = 85.1%
gimp
evolution
gtk+
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
Time
Ma¨lick Claes (UMONS)
e
Ecological Studies of Open Source Software Ecosystems
2013/09/18
16 / 23
21. Research context
Ecosystems
Gnome studies
R studies
Project clustering
Hierarchical clustering
Distance between two projects represents the similarity of their community
and the intensity of their members
Ma¨lick Claes (UMONS)
e
Ecological Studies of Open Source Software Ecosystems
2013/09/18
18 / 23
22. Research context
gnome.boxes
Gnome studies
Ecosystems
gupnp.tools
gupnp.av
gupnp.vala
muine
monkey.media
gssdp
gupnp
Project clustering
Hierarchical clustering
postr
contact.lookup.applet
devilspie
librest
accounts.dialog
R studies
gnome.vfs
tasks
libsocialweb
Distance between two projects represents the similarity of their community
sound.juicer
pygobject
pygtk
and the intensity of their members
flow
gnome.admin.tools
system.tools.backends
Python clustering
gazpacho
gnoetry.extra
gnome.chart
pygio
bonobo.python
pybank
gnome.python.extras
pygda
gnome.python.desktop
release.notes
pygoocanvas
gnome.python
mhonarc
gael
libglade
dia.newcanvas
gnorpm
fontilus
nautilus.rpm
pygnome
pyorbit
viewcvs.web
blogs.web
jhmenu
gnome.web.photo
Ma¨lick Claes (UMONS)
e
d.feet
pygtk.web
gir.repository
pygi
gnome.webkit
Ecological Studies of Open Source Software Ecosystems
drwright
gfloppy
2013/09/18
18 / 23
24. Research context
Ecosystems
Gnome studies
R studies
Project clustering
Language clustering
C●
1e+07
● C++
C/C++ Header
●
C#● ●Python
Perl
JS● ●
PHP
●
LOC
Visual
●
Basic
Lisp
●
1e+05
●Java
●
IDL
yacc
●
Ruby
Objective C
●
●
Tcl/Tk Assembly
●
●
●
lex
●ASP.Net
●
Objective C++
●Haskell
100
Ma¨lick Claes (UMONS)
e
1000
Files
Ecological Studies of Open Source Software Ecosystems
10000
2013/09/18
20 / 23
25. Research context
Ecosystems
Gnome studies
R studies
1 Research context
2 Ecosystems
3 Gnome studies
4 R studies
Ma¨lick Claes (UMONS)
e
Ecological Studies of Open Source Software Ecosystems
2013/09/18
21 / 23
26. Research context
Ecosystems
Gnome studies
R studies
R Ecosystem
Open Source statistical analysis environment based on the S language
Highly used by (non computer) scientists
Modules, libraries and software installed using a package system
Comprehensive R Archive Network (CRAN):
∼ 4500 maintained packages
∼10 years of history
Very strict policy: unmaintained or buggy packages are archived
⇒ problems arises: dependency breaks, scientific studies reproducibility
Ma¨lick Claes (UMONS)
e
Ecological Studies of Open Source Software Ecosystems
2013/09/18
22 / 23