<?xml version="1.0" encoding="utf-8"?>
<TEI xmlns="http://www.tei-c.org/ns/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:hal="http://hal.archives-ouvertes.fr/" xmlns:gml="http://www.opengis.net/gml/3.3/" xmlns:gmlce="http://www.opengis.net/gml/3.3/ce" version="1.1" xsi:schemaLocation="http://www.tei-c.org/ns/1.0 http://api.archives-ouvertes.fr/documents/aofr-sword.xsd">
  <teiHeader>
    <fileDesc>
      <titleStmt>
        <title>HAL TEI export of hal-02353681</title>
      </titleStmt>
      <publicationStmt>
        <distributor>CCSD</distributor>
        <availability status="restricted">
          <licence target="https://creativecommons.org/publicdomain/zero/1.0/">CC0 1.0 - Universal</licence>
        </availability>
        <date when="2026-05-26T10:32:16+02:00"/>
      </publicationStmt>
      <sourceDesc>
        <p part="N">HAL API Platform</p>
      </sourceDesc>
    </fileDesc>
  </teiHeader>
  <text>
    <body>
      <listBibl>
        <biblFull>
          <titleStmt>
            <title xml:lang="en">Empirical Study of Programming to an Interface</title>
            <author role="aut">
              <persName>
                <forename type="first">Benoît</forename>
                <surname>Verhaeghe</surname>
              </persName>
              <email type="md5">ab4070086241400a4a428bf8994f05e0</email>
              <email type="domain">badetitou.fr</email>
              <idno type="idhal" notation="string">badetitou</idno>
              <idno type="idhal" notation="numeric">1162738</idno>
              <idno type="halauthorid" notation="string">1214562-1162738</idno>
              <idno type="ORCID">https://orcid.org/0000-0002-4588-2698</idno>
              <idno type="GOOGLE SCHOLAR">kt1CnYAAAAAJ</idno>
              <affiliation ref="#struct-432037"/>
              <affiliation ref="#struct-123963"/>
            </author>
            <author role="aut">
              <persName>
                <forename type="first">Christopher</forename>
                <surname>Fuhrman</surname>
              </persName>
              <idno type="idhal" notation="numeric">798196</idno>
              <idno type="halauthorid" notation="string">1705340-798196</idno>
              <idno type="ORCID">https://orcid.org/0000-0001-8010-1087</idno>
              <affiliation ref="#struct-136804"/>
            </author>
            <author role="aut">
              <persName>
                <forename type="first">Latifa</forename>
                <surname>Guerrouj</surname>
              </persName>
              <idno type="halauthorid">1705341-0</idno>
              <affiliation ref="#struct-136804"/>
            </author>
            <author role="aut">
              <persName>
                <forename type="first">Nicolas</forename>
                <surname>Anquetil</surname>
              </persName>
              <email type="md5">64133be016183b2e48e611fac63103b5</email>
              <email type="domain">inria.fr</email>
              <idno type="idhal" notation="string">nicolas-anquetil</idno>
              <idno type="idhal" notation="numeric">184119</idno>
              <idno type="halauthorid" notation="string">38244-184119</idno>
              <idno type="ORCID">https://orcid.org/0000-0003-1486-8399</idno>
              <idno type="GOOGLE SCHOLAR">https://scholar.google.com/citations?user=DSMdD9UAAAAJ</idno>
              <idno type="IDREF">https://www.idref.fr/15665959X</idno>
              <idno type="ARXIV">https://arxiv.org/a/anquetil_n_1</idno>
              <idno type="RESEARCHERID">http://www.researcherid.com/rid/AFN-4193-2022</idno>
              <affiliation ref="#struct-432037"/>
            </author>
            <author role="aut">
              <persName>
                <forename type="first">Stéphane</forename>
                <surname>Ducasse</surname>
              </persName>
              <email type="md5">5da97c2837b65f20186e33a01b85efad</email>
              <email type="domain">inria.fr</email>
              <idno type="idhal" notation="string">stephane-ducasse</idno>
              <idno type="idhal" notation="numeric">939</idno>
              <idno type="halauthorid" notation="string">17081-939</idno>
              <idno type="IDREF">https://www.idref.fr/034814884</idno>
              <idno type="ORCID">https://orcid.org/0000-0001-6070-6599</idno>
              <idno type="ARXIV">https://arxiv.org/a/ducasse_s_1</idno>
              <idno type="GOOGLE SCHOLAR">https://scholar.google.fr/citations?user=7fHNqtoAAAAJ</idno>
              <affiliation ref="#struct-432037"/>
            </author>
            <editor role="depositor">
              <persName>
                <forename>Lse</forename>
                <surname>Lse</surname>
              </persName>
              <email type="md5">5da97c2837b65f20186e33a01b85efad</email>
              <email type="domain">inria.fr</email>
            </editor>
          </titleStmt>
          <editionStmt>
            <edition n="v1" type="current">
              <date type="whenSubmitted">2019-11-07 13:57:05</date>
              <date type="whenModified">2026-04-23 09:02:01</date>
              <date type="whenReleased">2019-11-07 14:57:57</date>
              <date type="whenProduced">2019-11-11</date>
              <date type="whenEndEmbargoed">2019-11-07</date>
              <ref type="file" target="https://inria.hal.science/hal-02353681v1/document">
                <date notBefore="2019-11-07"/>
              </ref>
              <ref type="file" subtype="author" n="1" target="https://inria.hal.science/hal-02353681v1/file/Fuhrman%202019%2019359.pdf" id="file-2353681-2258600">
                <date notBefore="2019-11-07"/>
              </ref>
            </edition>
            <respStmt>
              <resp>contributor</resp>
              <name key="152987">
                <persName>
                  <forename>Lse</forename>
                  <surname>Lse</surname>
                </persName>
                <email type="md5">5da97c2837b65f20186e33a01b85efad</email>
                <email type="domain">inria.fr</email>
              </name>
            </respStmt>
          </editionStmt>
          <publicationStmt>
            <distributor>CCSD</distributor>
            <idno type="halId">hal-02353681</idno>
            <idno type="halUri">https://inria.hal.science/hal-02353681</idno>
            <idno type="halBibtex">verhaeghe:hal-02353681</idno>
            <idno type="halRefHtml">&lt;i&gt;Automated Software Engineering (ASE 2019)&lt;/i&gt;, Nov 2019, San Diego, United States</idno>
            <idno type="halRef">Automated Software Engineering (ASE 2019), Nov 2019, San Diego, United States</idno>
            <availability status="restricted">
              <licence target="https://about.hal.science/hal-authorisation-v1/">HAL Authorization<ref corresp="#file-2353681-2258600"/></licence>
            </availability>
          </publicationStmt>
          <seriesStmt>
            <idno type="stamp" n="CNRS">CNRS - Centre national de la recherche scientifique</idno>
            <idno type="stamp" n="INRIA">INRIA - Institut National de Recherche en Informatique et en Automatique</idno>
            <idno type="stamp" n="INRIA-LILLE">INRIA Lille - Nord Europe</idno>
            <idno type="stamp" n="INRIA_TEST">INRIA - Institut National de Recherche en Informatique et en Automatique</idno>
            <idno type="stamp" n="TESTALAIN1">TESTALAIN1</idno>
            <idno type="stamp" n="CRISTAL">Centre de Recherche en Informatique, Signal et Automatique de Lille (CRISTAL)</idno>
            <idno type="stamp" n="INRIA2">INRIA 2</idno>
            <idno type="stamp" n="CRISTAL-RMOD" corresp="CRISTAL">CRISTAL-RMOD</idno>
            <idno type="stamp" n="UNIV-LILLE">Université de Lille</idno>
            <idno type="stamp" n="TEST-HALCNRS">Collection test HAL CNRS</idno>
            <idno type="stamp" n="INRIA-CANADA">INRIA-CANADA</idno>
            <idno type="stamp" n="LRA">Laboratoire de Recherche en Architecture - ENSA Toulouse </idno>
          </seriesStmt>
          <notesStmt>
            <note type="audience" n="2">International</note>
            <note type="invited" n="0">No</note>
            <note type="popular" n="0">No</note>
            <note type="peer" n="1">Yes</note>
            <note type="proceedings" n="1">Yes</note>
          </notesStmt>
          <sourceDesc>
            <biblStruct>
              <analytic>
                <title xml:lang="en">Empirical Study of Programming to an Interface</title>
                <author role="aut">
                  <persName>
                    <forename type="first">Benoît</forename>
                    <surname>Verhaeghe</surname>
                  </persName>
                  <email type="md5">ab4070086241400a4a428bf8994f05e0</email>
                  <email type="domain">badetitou.fr</email>
                  <idno type="idhal" notation="string">badetitou</idno>
                  <idno type="idhal" notation="numeric">1162738</idno>
                  <idno type="halauthorid" notation="string">1214562-1162738</idno>
                  <idno type="ORCID">https://orcid.org/0000-0002-4588-2698</idno>
                  <idno type="GOOGLE SCHOLAR">kt1CnYAAAAAJ</idno>
                  <affiliation ref="#struct-432037"/>
                  <affiliation ref="#struct-123963"/>
                </author>
                <author role="aut">
                  <persName>
                    <forename type="first">Christopher</forename>
                    <surname>Fuhrman</surname>
                  </persName>
                  <idno type="idhal" notation="numeric">798196</idno>
                  <idno type="halauthorid" notation="string">1705340-798196</idno>
                  <idno type="ORCID">https://orcid.org/0000-0001-8010-1087</idno>
                  <affiliation ref="#struct-136804"/>
                </author>
                <author role="aut">
                  <persName>
                    <forename type="first">Latifa</forename>
                    <surname>Guerrouj</surname>
                  </persName>
                  <idno type="halauthorid">1705341-0</idno>
                  <affiliation ref="#struct-136804"/>
                </author>
                <author role="aut">
                  <persName>
                    <forename type="first">Nicolas</forename>
                    <surname>Anquetil</surname>
                  </persName>
                  <email type="md5">64133be016183b2e48e611fac63103b5</email>
                  <email type="domain">inria.fr</email>
                  <idno type="idhal" notation="string">nicolas-anquetil</idno>
                  <idno type="idhal" notation="numeric">184119</idno>
                  <idno type="halauthorid" notation="string">38244-184119</idno>
                  <idno type="ORCID">https://orcid.org/0000-0003-1486-8399</idno>
                  <idno type="GOOGLE SCHOLAR">https://scholar.google.com/citations?user=DSMdD9UAAAAJ</idno>
                  <idno type="IDREF">https://www.idref.fr/15665959X</idno>
                  <idno type="ARXIV">https://arxiv.org/a/anquetil_n_1</idno>
                  <idno type="RESEARCHERID">http://www.researcherid.com/rid/AFN-4193-2022</idno>
                  <affiliation ref="#struct-432037"/>
                </author>
                <author role="aut">
                  <persName>
                    <forename type="first">Stéphane</forename>
                    <surname>Ducasse</surname>
                  </persName>
                  <email type="md5">5da97c2837b65f20186e33a01b85efad</email>
                  <email type="domain">inria.fr</email>
                  <idno type="idhal" notation="string">stephane-ducasse</idno>
                  <idno type="idhal" notation="numeric">939</idno>
                  <idno type="halauthorid" notation="string">17081-939</idno>
                  <idno type="IDREF">https://www.idref.fr/034814884</idno>
                  <idno type="ORCID">https://orcid.org/0000-0001-6070-6599</idno>
                  <idno type="ARXIV">https://arxiv.org/a/ducasse_s_1</idno>
                  <idno type="GOOGLE SCHOLAR">https://scholar.google.fr/citations?user=7fHNqtoAAAAJ</idno>
                  <affiliation ref="#struct-432037"/>
                </author>
              </analytic>
              <monogr>
                <meeting>
                  <title>Automated Software Engineering (ASE 2019)</title>
                  <date type="start">2019-11-11</date>
                  <settlement>San Diego</settlement>
                  <country key="US">United States</country>
                </meeting>
                <imprint/>
              </monogr>
            </biblStruct>
          </sourceDesc>
          <profileDesc>
            <langUsage>
              <language ident="en">English</language>
            </langUsage>
            <textClass>
              <keywords scheme="author">
                <term xml:lang="en">GitHub</term>
                <term xml:lang="en">cochange</term>
                <term xml:lang="en">software repositories</term>
                <term xml:lang="en">empirical study</term>
                <term xml:lang="en">coupling</term>
                <term xml:lang="en">Java interfaces</term>
              </keywords>
              <classCode scheme="halDomain" n="info.info-pl">Computer Science [cs]/Programming Languages [cs.PL]</classCode>
              <classCode scheme="halTypology" n="COMM">Conference papers</classCode>
              <classCode scheme="halOldTypology" n="COMM">Conference papers</classCode>
              <classCode scheme="halTreeTypology" n="COMM">Conference papers</classCode>
            </textClass>
            <abstract xml:lang="en">
              <p>A popular recommendation to programmers in object-oriented software is to "program to an interface, not an implementation" (PTI). Expected benefits include increased simplicity from abstraction, decreased dependency on implementations , and higher flexibility. Yet, interfaces must be immutable, excessive class hierarchies can be a form of complexity, and "speculative generality" is a known code smell. To advance the empirical knowledge of PTI, we conducted an empirical investigation that involves 126 Java projects on GitHub, aiming to measuring the decreased dependency benefits (in terms of cochange).</p>
            </abstract>
          </profileDesc>
        </biblFull>
      </listBibl>
    </body>
    <back>
      <listOrg type="structures">
        <org type="researchteam" xml:id="struct-432037" status="OLD">
          <idno type="RNSR">200919009C</idno>
          <orgName>Analyses and Languages Constructs for Object-Oriented Application Evolution</orgName>
          <orgName type="acronym">RMOD</orgName>
          <date type="start">2015-01-01</date>
          <date type="end">2023-03-31</date>
          <desc>
            <address>
              <country key="FR"/>
            </address>
            <ref type="url">http://www.inria.fr/equipes/rmod</ref>
          </desc>
          <listRelation>
            <relation active="#struct-104752" type="direct"/>
            <relation active="#struct-300009" type="indirect"/>
            <relation active="#struct-410272" type="direct"/>
            <relation name="UMR9189" active="#struct-120930" type="indirect"/>
            <relation name="UMR9189" active="#struct-374570" type="indirect"/>
            <relation name="UMR9189" active="#struct-441569" type="indirect"/>
          </listRelation>
        </org>
        <org type="laboratory" xml:id="struct-123963" status="VALID">
          <idno type="IdRef">163975698</idno>
          <idno type="RNSR">200622587E</idno>
          <orgName>Laboratoire de recherche en architecture</orgName>
          <orgName type="acronym">LRA</orgName>
          <date type="start">2006-01-01</date>
          <desc>
            <address>
              <addrLine>ENSA 83 rue Aristide Maillol BP 10629 31106 Toulouse cedex 1</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">https://lra.toulouse.archi.fr/lra</ref>
          </desc>
          <listRelation>
            <relation active="#struct-135013" type="direct"/>
            <relation active="#struct-443875" type="direct"/>
          </listRelation>
        </org>
        <org type="institution" xml:id="struct-136804" status="VALID">
          <idno type="IdRef">080094201</idno>
          <idno type="ISNI">0000000122224302</idno>
          <idno type="ROR">https://ror.org/0020snb74</idno>
          <idno type="Wikidata">Q3577916</idno>
          <orgName>École de technologie supérieure [Montréal]</orgName>
          <orgName type="acronym">ÉTS</orgName>
          <date type="start">1974-01-01</date>
          <desc>
            <address>
              <addrLine>1100, rue Notre-Dame Ouest Montréal (Qc) H3C 1K3 Canada</addrLine>
              <country key="CA"/>
            </address>
            <ref type="url">http://www.etsmtl.ca/</ref>
          </desc>
        </org>
        <org type="laboratory" xml:id="struct-104752" status="VALID">
          <idno type="RNSR">200818245B</idno>
          <idno type="ROR">https://ror.org/04eej9726</idno>
          <orgName>Centre Inria de l'Université de Lille</orgName>
          <desc>
            <address>
              <addrLine>Parc Scientifique de la Haute Borne 40, avenue Halley Bât.A, Park Plaza 59650 Villeneuve d'Ascq</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">http://www.inria.fr/lille/</ref>
          </desc>
          <listRelation>
            <relation active="#struct-300009" type="direct"/>
          </listRelation>
        </org>
        <org type="institution" xml:id="struct-300009" status="VALID">
          <idno type="ROR">https://ror.org/02kvxyf05</idno>
          <orgName>Institut National de Recherche en Informatique et en Automatique</orgName>
          <orgName type="acronym">Inria</orgName>
          <desc>
            <address>
              <addrLine>Domaine de VoluceauRocquencourt - BP 10578153 Le Chesnay Cedex</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">http://www.inria.fr/en/</ref>
          </desc>
        </org>
        <org type="laboratory" xml:id="struct-410272" status="VALID">
          <idno type="IdRef">18388695X</idno>
          <idno type="RNSR">201521249L</idno>
          <idno type="ROR">https://ror.org/05vrs3189</idno>
          <idno type="Wikidata">Q116959497</idno>
          <orgName>Centre de Recherche en Informatique, Signal et Automatique de Lille - UMR 9189</orgName>
          <orgName type="acronym">CRIStAL</orgName>
          <date type="start">2015-01-01</date>
          <desc>
            <address>
              <addrLine>Université de Lille - Campus scientifique - Bâtiment ESPRIT - Avenue Henri Poincaré - 59655 Villeneuve d’Ascq</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">https://www.cristal.univ-lille.fr/</ref>
          </desc>
          <listRelation>
            <relation name="UMR9189" active="#struct-120930" type="direct"/>
            <relation name="UMR9189" active="#struct-374570" type="direct"/>
            <relation name="UMR9189" active="#struct-441569" type="direct"/>
          </listRelation>
        </org>
        <org type="institution" xml:id="struct-120930" status="VALID">
          <idno type="IdRef">256304629</idno>
          <idno type="ISNI">0000000122034461</idno>
          <idno type="ROR">https://ror.org/01x441g73</idno>
          <orgName>Centrale Lille</orgName>
          <desc>
            <address>
              <addrLine>École Centrale de Lille - Cité Scientifique - CS 20048 59651 Villeneuve d'Ascq Cedex</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">https://centralelille.fr/</ref>
          </desc>
        </org>
        <org type="regroupinstitution" xml:id="struct-374570" status="VALID">
          <idno type="IdRef">223446556</idno>
          <idno type="ISNI">0000 0001 2242 6780</idno>
          <idno type="ROR">https://ror.org/02kzqn938</idno>
          <idno type="Wikidata">Q3551621</idno>
          <orgName>Université de Lille</orgName>
          <desc>
            <address>
              <addrLine>EPE Université de Lille. -- 42 rue Paul Duez, 59000 Lille</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">https://www.univ-lille.fr/</ref>
          </desc>
        </org>
        <org type="regroupinstitution" xml:id="struct-441569" status="VALID">
          <idno type="IdRef">02636817X</idno>
          <idno type="ISNI">0000000122597504</idno>
          <idno type="ROR">https://ror.org/02feahw73</idno>
          <orgName>Centre National de la Recherche Scientifique</orgName>
          <orgName type="acronym">CNRS</orgName>
          <date type="start">1939-10-19</date>
          <desc>
            <address>
              <country key="FR"/>
            </address>
            <ref type="url">https://www.cnrs.fr/</ref>
          </desc>
        </org>
        <org type="institution" xml:id="struct-135013" status="VALID">
          <idno type="IdRef">133015572</idno>
          <idno type="ROR">https://ror.org/019xp4858</idno>
          <orgName>École nationale supérieure d'architecture de Toulouse</orgName>
          <orgName type="acronym">ENSA Toulouse</orgName>
          <desc>
            <address>
              <addrLine>83 rue Aristide Maillol - BP 10629 - 31106 Toulouse cedex 1</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">http://www.toulouse.archi.fr/fr/index.html</ref>
          </desc>
        </org>
        <org type="regroupinstitution" xml:id="struct-443875" status="VALID">
          <idno type="ROR">https://ror.org/017tgbk05</idno>
          <orgName>Communauté d'universités et établissements de Toulouse</orgName>
          <orgName type="acronym">Comue de Toulouse</orgName>
          <desc>
            <address>
              <addrLine>41 Allée Jules Guesde, 31000 Toulouse</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">https://www.univ-toulouse.fr/</ref>
          </desc>
        </org>
      </listOrg>
    </back>
  </text>
</TEI>