A Common Language of Software Evolution in Repositories (CLOSER)
Version Control Systems (VCSs) are used by development teams to manage the collaborative evolution of source code, and there are several widely used industry standard VCSs. In addition to the code files themselves, metadata about the changes made are also recorded by the VCS, and this is often used...
Gespeichert in:
| Veröffentlicht in: | Software Jg. 4; H. 1; S. 1 |
|---|---|
| Hauptverfasser: | , |
| Format: | Journal Article |
| Sprache: | Englisch |
| Veröffentlicht: |
MDPI AG
06.01.2025
|
| Schlagworte: | |
| ISSN: | 2674-113X, 2674-113X |
| Online-Zugang: | Volltext |
| Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
| Abstract | Version Control Systems (VCSs) are used by development teams to manage the collaborative evolution of source code, and there are several widely used industry standard VCSs. In addition to the code files themselves, metadata about the changes made are also recorded by the VCS, and this is often used with analytical tools to provide insight into the software development, a process known as Mining Software Repositories (MSRs). MSR tools are numerous but most often limited to one VCS format and, therefore, restricted in their scope of application in addition to the initial effort required to implement parsers for verbose textual VCS output. To address this limitation, a domain-specific language (DSL), the Common Language of Software Evolution in Repositories (CLOSER), was defined that abstracted away from specific implementations while isomorphically mapping to the data model of all major VCS formats. Using CLOSER directly as a data model or as an intermediate stage in a conversion analysis approach could make use of all major repositories rather than be limited to a single format. The initial barrier to adoption for MSR approaches was also lowered as CLOSER output is a concise, easily machine-readable format. CLOSER was implemented in tooling and tested against a number of common expected use cases, including a direct use in MSR analysis, proving the fidelity of the model and implementation. CLOSER was also successfully used to convert raw output logs from one VCS format to another, offering the possibility that legacy analysis tools could be used on other technologies without any changes being required. In addition to the advantages of a generic model opening all major VCS formats for analysis parsing, the CLOSER format was found to require less code and complete parsing faster than traditional VCS logging outputs. |
|---|---|
| AbstractList | Version Control Systems (VCSs) are used by development teams to manage the collaborative evolution of source code, and there are several widely used industry standard VCSs. In addition to the code files themselves, metadata about the changes made are also recorded by the VCS, and this is often used with analytical tools to provide insight into the software development, a process known as Mining Software Repositories (MSRs). MSR tools are numerous but most often limited to one VCS format and, therefore, restricted in their scope of application in addition to the initial effort required to implement parsers for verbose textual VCS output. To address this limitation, a domain-specific language (DSL), the Common Language of Software Evolution in Repositories (CLOSER), was defined that abstracted away from specific implementations while isomorphically mapping to the data model of all major VCS formats. Using CLOSER directly as a data model or as an intermediate stage in a conversion analysis approach could make use of all major repositories rather than be limited to a single format. The initial barrier to adoption for MSR approaches was also lowered as CLOSER output is a concise, easily machine-readable format. CLOSER was implemented in tooling and tested against a number of common expected use cases, including a direct use in MSR analysis, proving the fidelity of the model and implementation. CLOSER was also successfully used to convert raw output logs from one VCS format to another, offering the possibility that legacy analysis tools could be used on other technologies without any changes being required. In addition to the advantages of a generic model opening all major VCS formats for analysis parsing, the CLOSER format was found to require less code and complete parsing faster than traditional VCS logging outputs. |
| Author | Garrity, Jordan Cutting, David |
| Author_xml | – sequence: 1 givenname: Jordan surname: Garrity fullname: Garrity, Jordan – sequence: 2 givenname: David orcidid: 0000-0002-1088-4749 surname: Cutting fullname: Cutting, David |
| BookMark | eNpdkM1LAzEQxYNUsNaeve5RD2vzuUlulqXVwkKhVfC2JNmkpLSbkmwV_3tXW0Q8zWPemx_MuwaDNrQWgFsEHwiRcJKC6z5UtBQiCCG6AENccJojRN4Gf_QVGKe07RNYYiKJHILHaVaG_T60WaXazVFtbBZctj7jstl72B0739u-zVb2EJLvQvQ2ZXdltVzPVvc34NKpXbLj8xyB1_nspXzOq-XTopxWuUGUo9xwgo2wmtECUmG0Yo7QwiFFLXGCIIIkpUbihjGjiwY7pjXTSAthC6r66xFYnLhNUNv6EP1exc86KF__LELc1Cp23uxs3RjHFOQI2sJR3nChnOhfNhYXEnJme9bkxDIxpBSt--UhWH_3Wf_rk3wBT1Vqrw |
| Cites_doi | 10.1145/1095430.1081755 10.1109/MSR.2013.6624029 10.1145/502059.502041 10.1109/FOSM.2008.4659248 10.1109/MS.2010.39 10.1109/MSR.2007.31 10.1109/MS.2005.140 10.1109/32.859533 10.1002/smr.344 10.1109/ICSM.2006.38 10.1109/ICSE.2013.6606588 10.1109/TSE.2005.71 10.1007/s10664-011-9181-9 |
| ContentType | Journal Article |
| DBID | AAYXX CITATION DOA |
| DOI | 10.3390/software4010001 |
| DatabaseName | CrossRef DOAJ Directory of Open Access Journals |
| DatabaseTitle | CrossRef |
| DatabaseTitleList | CrossRef |
| Database_xml | – sequence: 1 dbid: DOA name: DOAJ Directory of Open Access Journals url: https://www.doaj.org/ sourceTypes: Open Website |
| DeliveryMethod | fulltext_linktorsrc |
| EISSN | 2674-113X |
| ExternalDocumentID | oai_doaj_org_article_dcf5a0710e6f47d78af8002ce269075e 10_3390_software4010001 |
| GroupedDBID | AAYXX AFZYC ALMA_UNASSIGNED_HOLDINGS CITATION GROUPED_DOAJ MODMG |
| ID | FETCH-LOGICAL-c1471-c732c8eb546048cba5f346f1a4e3f83131944c92d55cb6d2f5bb5b1b88e64ac73 |
| IEDL.DBID | DOA |
| ISSN | 2674-113X |
| IngestDate | Fri Oct 03 12:49:07 EDT 2025 Thu Oct 16 04:44:25 EDT 2025 |
| IsDoiOpenAccess | true |
| IsOpenAccess | true |
| IsPeerReviewed | true |
| IsScholarly | true |
| Issue | 1 |
| Language | English |
| LinkModel | DirectLink |
| MergedId | FETCHMERGED-LOGICAL-c1471-c732c8eb546048cba5f346f1a4e3f83131944c92d55cb6d2f5bb5b1b88e64ac73 |
| ORCID | 0000-0002-1088-4749 |
| OpenAccessLink | https://doaj.org/article/dcf5a0710e6f47d78af8002ce269075e |
| ParticipantIDs | doaj_primary_oai_doaj_org_article_dcf5a0710e6f47d78af8002ce269075e crossref_primary_10_3390_software4010001 |
| PublicationCentury | 2000 |
| PublicationDate | 2025-01-06 |
| PublicationDateYYYYMMDD | 2025-01-06 |
| PublicationDate_xml | – month: 01 year: 2025 text: 2025-01-06 day: 06 |
| PublicationDecade | 2020 |
| PublicationTitle | Software |
| PublicationYear | 2025 |
| Publisher | MDPI AG |
| Publisher_xml | – name: MDPI AG |
| References | Cubranic (ref_10) 2005; 31 Li (ref_15) 2005; 30 ref_13 ref_24 ref_23 ref_11 Graves (ref_12) 2000; 26 ref_22 ref_21 Lanubile (ref_1) 2010; 27 ref_20 ref_3 ref_2 ref_19 ref_18 ref_16 ref_9 Engler (ref_14) 2001; 35 Robles (ref_4) 2012; 17 Zimmermann (ref_17) 2004; 4 ref_5 Kagdi (ref_8) 2007; 19 Spinellis (ref_7) 2005; 22 ref_6 |
| References_xml | – volume: 30 start-page: 306 year: 2005 ident: ref_15 article-title: PR-Miner: Automatically extracting implicit programming rules and detecting violations in large software code publication-title: ACM SIGSOFT Softw. Eng. Notes doi: 10.1145/1095430.1081755 – volume: 4 start-page: 2 year: 2004 ident: ref_17 article-title: Preprocessing CVS Data for Fine-Grained Analysis publication-title: Proc. MSR – ident: ref_6 – ident: ref_9 – ident: ref_18 doi: 10.1109/MSR.2013.6624029 – ident: ref_5 – volume: 35 start-page: 57 year: 2001 ident: ref_14 article-title: Bugs as deviant behavior: A general approach to inferring errors in systems code publication-title: ACM SIGOPS Oper. Syst. Rev. doi: 10.1145/502059.502041 – ident: ref_24 – ident: ref_2 doi: 10.1109/FOSM.2008.4659248 – volume: 27 start-page: 52 year: 2010 ident: ref_1 article-title: Collaboration Tools for Global Software Engineering publication-title: IEEE Softw. doi: 10.1109/MS.2010.39 – ident: ref_11 – ident: ref_13 doi: 10.1109/MSR.2007.31 – volume: 22 start-page: 108 year: 2005 ident: ref_7 article-title: Version control systems publication-title: IEEE Softw. doi: 10.1109/MS.2005.140 – volume: 26 start-page: 653 year: 2000 ident: ref_12 article-title: Predicting fault incidence using software change history publication-title: IEEE Trans. Softw. Eng. doi: 10.1109/32.859533 – volume: 19 start-page: 77 year: 2007 ident: ref_8 article-title: A survey and taxonomy of approaches for mining software repositories in the context of software evolution publication-title: J. Softw. Maint. Evol. Res. Pract. doi: 10.1002/smr.344 – ident: ref_16 doi: 10.1109/ICSM.2006.38 – ident: ref_3 doi: 10.1109/ICSE.2013.6606588 – volume: 31 start-page: 446 year: 2005 ident: ref_10 article-title: Hipikat: A project memory for software development publication-title: IEEE Trans. Softw. Eng. doi: 10.1109/TSE.2005.71 – volume: 17 start-page: 75 year: 2012 ident: ref_4 article-title: On the reproducibility of empirical software engineering studies based on data retrieved from development repositories publication-title: Empir. Softw. Eng. doi: 10.1007/s10664-011-9181-9 – ident: ref_19 – ident: ref_22 – ident: ref_23 – ident: ref_21 – ident: ref_20 |
| SSID | ssj0002923939 |
| Score | 2.2793133 |
| Snippet | Version Control Systems (VCSs) are used by development teams to manage the collaborative evolution of source code, and there are several widely used industry... |
| SourceID | doaj crossref |
| SourceType | Open Website Index Database |
| StartPage | 1 |
| SubjectTerms | Git mercurial mining software repositories MSR repository data SVN |
| Title | A Common Language of Software Evolution in Repositories (CLOSER) |
| URI | https://doaj.org/article/dcf5a0710e6f47d78af8002ce269075e |
| Volume | 4 |
| hasFullText | 1 |
| inHoldings | 1 |
| isFullTextHit | |
| isPrint | |
| journalDatabaseRights | – providerCode: PRVAON databaseName: DOAJ Directory of Open Access Journals customDbUrl: eissn: 2674-113X dateEnd: 99991231 omitProxy: false ssIdentifier: ssj0002923939 issn: 2674-113X databaseCode: DOA dateStart: 20220101 isFulltext: true titleUrlDefault: https://www.doaj.org/ providerName: Directory of Open Access Journals |
| link | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwrV09T8MwELVQxcCCQIAoX_LAUIaojePPjVK1YqgKooC6RbZzlrqkqC3l7-NLAiosLKyWbdl38d17VvyOkGsWlNLchkTIjCe8MDqxqVKJDNwKZkCL6pXr61hNJno2M49bpb7wn7BaHrg2XLfwQVjMgxCHq0JpGxDjeGDI6wRg9I2oZ4tMYQxmBqW9TK3lk0Ve313FqPZhlxD5BOKaH2loS62_SiujA7Lf4EHar9dxSHagPCK3fYoPNxYlHTfXiXQR6LSZmw43zfdC5yVFBL2ao9QHrGhnMH6YDp9ujsnLaPg8uE-aUgeJT2N6SLzKmNfgBJfxSHlnRci4DKnlkAWdpfGgcO4NK4TwThYsCOeES53WILmNo09Iq1yUcEqo7BVaSq5CygV3PLVKQw8yUMoYkJq3Sedr5_lbrWiRRyaARsp_GalN7tAy391QirpqiA7KGwflfzno7D8mOSd7DAvv4t2HvCCt9fIdLsmu36znq-VV5ftPuC2ykQ |
| linkProvider | Directory of Open Access Journals |
| openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=A+Common+Language+of+Software+Evolution+in+Repositories+%28CLOSER%29&rft.jtitle=Software&rft.au=Garrity%2C+Jordan&rft.au=Cutting%2C+David&rft.date=2025-01-06&rft.issn=2674-113X&rft.eissn=2674-113X&rft.volume=4&rft.issue=1&rft.spage=1&rft_id=info:doi/10.3390%2Fsoftware4010001&rft.externalDBID=n%2Fa&rft.externalDocID=10_3390_software4010001 |
| thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=2674-113X&client=summon |
| thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=2674-113X&client=summon |
| thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=2674-113X&client=summon |