{"title":"在积极发展的开源系统中,源文件夹结构的演变","authors":"A. Capiluppi, M. Morisio, J. Fernández-Ramil","doi":"10.1109/METRIC.2004.1357886","DOIUrl":null,"url":null,"abstract":"Predicting when and how a software system evolves is one of the most fascinating challenges of software engineering. No matter what approach one is using to study such evolution, empirical studies, including observations of systems used in the real world, and of their processes, are needed in order to define correlations, find recurring patterns, and eventually predict how systems are likely to evolve. In the empirical study presented in this paper, we take 25 software systems released as open source, and observe their evolution. Our focus is not only on how much systems grow in size, but rather on how code structure is adapted and gets modified over time and releases. The goal here is to recognize recurring patterns and practices used in evolving long-lived real world software systems. In our study we find three dominant patterns of code structure evolution of open source systems: horizontal expansion, vertical expansion, vertical shrinkage By detailed studied of exemplars of these three patterns one can identify under which conditions a particular pattern is more likely to prevail than the others.","PeriodicalId":261807,"journal":{"name":"10th International Symposium on Software Metrics, 2004. Proceedings.","volume":"88 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2004-09-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"31","resultStr":"{\"title\":\"The evolution of source folder structure in actively evolved open source systems\",\"authors\":\"A. Capiluppi, M. Morisio, J. Fernández-Ramil\",\"doi\":\"10.1109/METRIC.2004.1357886\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Predicting when and how a software system evolves is one of the most fascinating challenges of software engineering. No matter what approach one is using to study such evolution, empirical studies, including observations of systems used in the real world, and of their processes, are needed in order to define correlations, find recurring patterns, and eventually predict how systems are likely to evolve. In the empirical study presented in this paper, we take 25 software systems released as open source, and observe their evolution. Our focus is not only on how much systems grow in size, but rather on how code structure is adapted and gets modified over time and releases. The goal here is to recognize recurring patterns and practices used in evolving long-lived real world software systems. In our study we find three dominant patterns of code structure evolution of open source systems: horizontal expansion, vertical expansion, vertical shrinkage By detailed studied of exemplars of these three patterns one can identify under which conditions a particular pattern is more likely to prevail than the others.\",\"PeriodicalId\":261807,\"journal\":{\"name\":\"10th International Symposium on Software Metrics, 2004. Proceedings.\",\"volume\":\"88 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2004-09-11\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"31\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"10th International Symposium on Software Metrics, 2004. Proceedings.\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/METRIC.2004.1357886\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"10th International Symposium on Software Metrics, 2004. Proceedings.","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/METRIC.2004.1357886","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
The evolution of source folder structure in actively evolved open source systems
Predicting when and how a software system evolves is one of the most fascinating challenges of software engineering. No matter what approach one is using to study such evolution, empirical studies, including observations of systems used in the real world, and of their processes, are needed in order to define correlations, find recurring patterns, and eventually predict how systems are likely to evolve. In the empirical study presented in this paper, we take 25 software systems released as open source, and observe their evolution. Our focus is not only on how much systems grow in size, but rather on how code structure is adapted and gets modified over time and releases. The goal here is to recognize recurring patterns and practices used in evolving long-lived real world software systems. In our study we find three dominant patterns of code structure evolution of open source systems: horizontal expansion, vertical expansion, vertical shrinkage By detailed studied of exemplars of these three patterns one can identify under which conditions a particular pattern is more likely to prevail than the others.