Andrea Capiluppi Dipartimento di Automatica e Informatica Politecnico di Torino, Italy & Computing Dept. The Open University, UK AICA 2004, Benevento,

Slides:



Advertisements
Similar presentations
The Robert Gordon University School of Engineering Dr. Mohamed Amish
Advertisements

Design Concepts and Principles
UML (Sequence Diagrams, Collaboration and State Chart Diagrams) Presentation By - SANDEEP REDDY CHEEDEPUDI (Student No: ) - VISHNU CHANDRADAS (Student.
Display of Information for Time-Critical Decision Making Eric Horvitz Decision Theory Group Microsoft Research Redmond, Washington 98025
Balance Rhythm Proportion Dominance Unity
Software Quality Ranking: Bringing Order to Software Modules in Testing Fei Xing Michael R. Lyu Ping Guo.
Mining for High Complexity Regions Using Entropy and Box Counting Dimension Quad-Trees Rosanne Vetro, Wei Ding, Dan A. Simovici Computer Science Department.
Multiple Criteria for Evaluating Land Cover Classification Algorithms Summary of a paper by R.S. DeFries and Jonathan Cheung-Wai Chan April, 2000 Remote.
1 Presented by Jean-Daniel Fekete. 2  Motivation  Mélange [Elmqvist 2008] Multiple Focus Regions.
Software Metrics II Speaker: Jerry Gao Ph.D. San Jose State University URL: Sept., 2001.
Anna Ruokonen/TUT Open source and empirical studies An Empirical Study of Open-Source and Closed-Source Software Products by Paulson, J.W.; Succi,
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
Software Defect Modeling at JPL John N. Spagnuolo Jr. and John D. Powell 19th International Forum on COCOMO and Software Cost Modeling 10/27/2004.
CMP3265 – Professional Issues and Research Methods Research Proposals: n Aims and objectives, Method, Evaluation n Yesterday – aims and objectives: clear,
Science and Engineering Practices
Crime Analysis/Mapping Crime Analysis is the process of analyzing crime to identify patterns and suspects. –Who is doing what to whom, where, and when.
Conclusions & Recommendations
Factor Analysis Psy 524 Ainsworth.
Achieving Authentic Inquiry in Your Classroom Presented by Eric Garber.
What research is Noun: The systematic investigation into and study of materials and sources in order to establish facts and reach new conclusions. Verb:
Dependency Tracking in software systems Presented by: Ashgan Fararooy.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 1 Refactoring.
Database Design - Lecture 2
Quantifying the dynamics of Binary Search Trees under combined insertions and deletions BACKGROUND The complexity of many operations on Binary Search Trees.
Representing variables according to the ISO/IEC standard.
The Effect of Computers on Student Writing: A Meta-Analysis of Studies from 1992 to 2002 Amie Goldberg, Michael Russell, & Abigail Cook Technology and.
Chapter 6 : Software Metrics
Timothy Reeves: Presenter Marisa Orr, Sherrill Biggers Evaluation of the Holistic Method to Size a 3-D Wheel/Soil Model.
Qualitative and Quantitative Research Quantitative Deductive: transforms general theory into hypothesis suitable for testing Deductive: transforms general.
Evaluation of Alternative Methods for Identifying High Collision Concentration Locations Raghavan Srinivasan 1 Craig Lyon 2 Bhagwant Persaud 2 Carol Martell.
Reviewing Recent ICSE Proceedings For:.  Defining and Continuous Checking of Structural Program Dependencies  Automatic Inference of Structural Changes.
By: TARUN MEHROTRA 12MCMB11.  More time is spent maintaining existing software than in developing new code.  Resources in M=3*(Resources in D)  Metrics.
Version control – Project repository, version management capability, make facility, issue/bug tracking Change control Configuration audit – compliments.
1 1 Slide © 2014 Cengage Learning. All Rights Reserved. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole.
Advanced Scientific Visualization
(1) A “Software ICU” for assessing and maintaining software project health Philip Johnson Collaborative Software Development Laboratory Information and.
Accuracy Based Generation of Thermodynamic Properties for Light Water in RELAP5-3D 2010 IRUG Meeting Cliff Davis.
V Material obtained from summer workshop in Guildford County, July-2014.
Hierarchical Clustering of Gene Expression Data Author : Feng Luo, Kun Tang Latifur Khan Graduate : Chien-Ming Hsiao.
Unpacking the Elements of Scientific Reasoning Keisha Varma, Patricia Ross, Frances Lawrenz, Gill Roehrig, Douglas Huffman, Leah McGuire, Ying-Chih Chen,
International Workshop on Principles of Software Evolution1Vienna, 11 September 2001 Evolution Metrics Tom Mens Programming Technology Lab Vrije Universiteit.
1 European Commission 2007 European Commission Directorate General for Economic and Financial Affairs Report: The Economic Climate Tracer – A tool to visualise.
Yongqin Gao, Greg Madey Computer Science & Engineering Department University of Notre Dame © Copyright 2002~2003 by Serendip Gao, all rights reserved.
Software Safety Case Why, what and how… Jon Arvid Børretzen.
Software Architecture Evaluation Methodologies Presented By: Anthony Register.
Measurement and quality assessment Framework for product metrics – Measure, measurement, and metrics – Formulation, collection, analysis, interpretation,
Evolution in Open Source Software (OSS) SEVO seminar at Simula, 16 March 2006 Software Engineering (SU) group Reidar Conradi, Andreas Røsdal, Jingyue Li.
Module III Multivariate Analysis Techniques- Framework, Factor Analysis, Cluster Analysis and Conjoint Analysis Research Report.
1 Measuring Similarity of Large Software System Based on Source Code Correspondence Tetsuo Yamamoto*, Makoto Matsushita**, Toshihiro Kamiya***, Katsuro.
1 Experience from Studies of Software Maintenance and Evolution Parastoo Mohagheghi Post doc, NTNU-IDI SEVO Seminar, 16 March 2006.
Parastoo Mohagheghi 1 A Multi-dimensional Framework for Characterizing Domain Specific Languages Øystein Haugen Parastoo Mohagheghi SINTEF, UiO 21 October.
Scatter Plots Scatter plots are a graphic representation of collated biviariate data via a mathematical diagram using Cartesian coordinates. The data.
Lucent Technologies - Proprietary 1 Interactive Pattern Discovery with Mirage Mirage uses exploratory visualization, intuitive graphical operations to.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Dynamics of Binary Search Trees under batch insertions and deletions with duplicates ╛ BACKGROUND The complexity of many operations on Binary Search Trees.
Research Methodology II Term review. Theoretical framework  What is meant by a theory? It is a set of interrelated constructs, definitions and propositions.
Using category-Based Adherence to Cluster Market-Basket Data Author : Ching-Huang Yun, Kun-Ta Chuang, Ming-Syan Chen Graduate : Chien-Ming Hsiao.
1 The FreeBSD Project: a Replication Case Study of Open Source Development.
Politecnico di Torino Andrea Capiluppi Characterizing the Open Source Software Process: a Horizontal Study A. Capiluppi, P.
Sociology. Sociology is a science because it uses the same techniques as other sciences Explaining social phenomena is what sociological theory is all.
Today we will discuss on - Scientific Method Scientific method is the systematic study through prearranged steps that ensures utmost objectivity and.
Exploring Software Evolution Using Spectrographs Jingwei Wu, Richard C. Holt, Ahmed Hassan School of Computer Science University of Waterloo Waterloo ON.
Laurea Triennale in Informatica – Corso di Ingegneria del Software I – A.A. 2006/2007 Andrea Polini XVI. Software Evolution.
Intelligent Database Systems Lab 國立雲林科技大學 National Yunlin University of Science and Technology Advisor : Dr. Hsu Graduate : Yu Cheng Chen Author: Michael.
Conclusions & Recommendations
Assessment of Geant4 Software Quality
Lecture 9- Design Concepts and Principles
MANAGING DATA RESOURCES
Lecture 9- Design Concepts and Principles
IRSN work and perspectives
Presentation transcript:

Andrea Capiluppi Dipartimento di Automatica e Informatica Politecnico di Torino, Italy & Computing Dept. The Open University, UK AICA 2004, Benevento, 29 Sett 2004 Folder Structure Evolution in Open Source Software Maurizio Morisio Dipartimento di Automatica e Informatica Politecnico di Torino, Italy Juan F. Ramil Computing Dept. The Open University, UK

AICA Sett 2004 – Benevento Outline  Motivation  Definitions and Attributes  Selection of Projects  Identification and Analysis of Patterns  Conclusions and Future Work

AICA Sett 2004 – Benevento Motivation

AICA Sett 2004 – Benevento Empirical Evidence Theories, Models Good Practice Motivation

AICA Sett 2004 – Benevento Motivation  On going empirical investigation into the evolution of Open Source Systems (OSS)  Goal: understand evolutionary behaviour of long-lived software systems and generate heuristics and guidelines  Similar approach to the one used by Lehman and collaborators in study of commercial systems: ✗ Generate empirical hypotheses ✗ Observe commonalities and differences ✗ Revise existing empirical hypotheses, generate new ones  Long-term goal: achieve theories and models of software evolution through longitudinal studies  Our approach: combine observations at different levels of granularity: system, subsystem, module, function

AICA Sett 2004 – Benevento Motivation  Particular goal of this study: observe evolution through another level of granularity: disposition of source files in folders  Research questions: ✗ does the evolution of the folder structure provides interesting and useful information on the evolution of a system? ✗ Is there any relationship between folder structure and other characteristics of the evolution, such as growth rate?  Question was assessed using empirical data derived from a number of OSS systems

AICA Sett 2004 – Benevento Definitions and Attributes

AICA Sett 2004 – Benevento Definitions and Attributes  Source File: each file containing source code (before build)  Source Folder: each folder containing at least one source file root Level Parent Folder F1 F2  Folder Tree: graphical representation of the structure of source folders  Level: subset of nodes having the same distance from the root

AICA Sett 2004 – Benevento An Example of a Folder Tree Maximum distance = depth of the tree Maximum number of folders in a level = width of tree

AICA Sett 2004 – Benevento Possible Evolution of a Folder Tree [Vertical expansion] [Horizontal expansion]

AICA Sett 2004 – Benevento Attributes  Size: as indicator of functional power (locs, Kbs, number of files, number of folders)  Folder tree: structure (visualization through GraphViz, an OSS tool)  Activity rate: evolution speed, types of activity - Counting added and deleted elements is relatively easy - Counting modified elements: we focus on elements changed over a period, not on the amount of individual changes: number of files touched per release

AICA Sett 2004 – Benevento Selection of Projects

AICA Sett 2004 – Benevento Selection of Projects  Large initial pool of software systems (400), used in a previous study for characterizing OS software  From that sample, we extract the larger projects for the present study  Results of the extraction was 26 systems ✗ In total 992 release data points  These were characterized by analysing the evolution of folder tree evolution

AICA Sett 2004 – Benevento Initial Characterization (example 1)  High correlation between different size measures (locs, files, Kbytes)  Majority of the projects situated below a threshold of source code size, when measured at latest available RSN

AICA Sett 2004 – Benevento Initial Characterization (example 2)  Average size of files in folders stay generally below a threshold in size (20 Kb)

AICA Sett 2004 – Benevento Identification and Analysis of Patterns

AICA Sett 2004 – Benevento Identification of patterns  Horizontally expanding (10 out of 25)  Vertically shrinking (4 out of 25)  Vertically expanding (11 out of 25) ✗ Generally associated with horizontal expansions  Study of relation between patterns of folder tree evolution, functional growth and activity rate

AICA Sett 2004 – Benevento Horizontally expanding  Smooth growth of source files  Peaks of activity rate around major releases

AICA Sett 2004 – Benevento Vertically shrinking  Size of project stable along evolution  Modifications are diffused in the whole code base during the evolution

AICA Sett 2004 – Benevento Vertically expanding  Periods of linear and super-linear growth  Peaks of activity rate consist mainly of additions, rather than modifications

AICA Sett 2004 – Benevento Conclusions  Majority of systems display expansion at least in one of their structural dimensions - a sign of healthy evolution  Folder trees are useful to examine evolution of software systems  Growth and activity rate trends are useful especially to recognize stages in software evolution  Current and future work: ✗ Relationship between type of folder structure evolution and the type of application domain – vertical, horizontal ✗ Observations at different levels of granularity for identifying stages of evolution ✗ Relationship between change and complexity ✗ Qualitative abstraction and simulation

AICA Sett 2004 – Benevento Empirical Evidence Theories, Models Good Practice Conclusions

AICA Sett 2004 – Benevento Final Remarks  Some of our data and tools used in present and past works, available at:  Need for collaboration between different groups in sharing data, tools and interpretation

AICA Sett 2004 – Benevento…questions?