{"id":"https://openalex.org/W2981523683","doi":"https://doi.org/10.1109/ms.2019.2934192","title":"Better Code Reviews With Design by Contract","display_name":"Better Code Reviews With Design by Contract","publication_year":2019,"publication_date":"2019-10-22","ids":{"openalex":"https://openalex.org/W2981523683","doi":"https://doi.org/10.1109/ms.2019.2934192","mag":"2981523683"},"language":"en","primary_location":{"id":"doi:10.1109/ms.2019.2934192","is_oa":true,"landing_page_url":"https://doi.org/10.1109/ms.2019.2934192","pdf_url":"https://ieeexplore.ieee.org/ielx7/52/8880048/08880061.pdf","source":{"id":"https://openalex.org/S6725529","display_name":"IEEE Software","issn_l":"0740-7459","issn":["0740-7459","1937-4194"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310320439","host_organization_name":"IEEE Computer Society","host_organization_lineage":["https://openalex.org/P4310320439","https://openalex.org/P4310319808"],"host_organization_lineage_names":["IEEE Computer Society","Institute of Electrical and Electronics Engineers"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"IEEE Software","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"bronze","oa_url":"https://ieeexplore.ieee.org/ielx7/52/8880048/08880061.pdf","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5010128377","display_name":"George Fairbanks","orcid":"https://orcid.org/0000-0003-2595-2801"},"institutions":[{"id":"https://openalex.org/I1291425158","display_name":"Google (United States)","ror":"https://ror.org/00njsd438","country_code":"US","type":"company","lineage":["https://openalex.org/I1291425158","https://openalex.org/I4210128969"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"George Fairbanks","raw_affiliation_strings":["Software Engineering, Google, United States"],"affiliations":[{"raw_affiliation_string":"Software Engineering, Google, United States","institution_ids":["https://openalex.org/I1291425158"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":["https://openalex.org/A5010128377"],"corresponding_institution_ids":["https://openalex.org/I1291425158"],"apc_list":null,"apc_paid":null,"fwci":0.6783,"has_fulltext":false,"cited_by_count":3,"citation_normalized_percentile":{"value":0.78791283,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":96},"biblio":{"volume":"36","issue":"6","first_page":"53","last_page":"56"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9955999851226807,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9955999851226807,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10430","display_name":"Software Engineering Techniques and Practices","score":0.9907000064849854,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T11986","display_name":"Scientific Computing and Data Management","score":0.968999981880188,"subfield":{"id":"https://openalex.org/subfields/1802","display_name":"Information Systems and Management"},"field":{"id":"https://openalex.org/fields/18","display_name":"Decision Sciences"},"domain":{"id":"https://openalex.org/domains/2","display_name":"Social Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/design-by-contract","display_name":"Design by contract","score":0.706143319606781},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.6447862386703491},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.6341367363929749},{"id":"https://openalex.org/keywords/implementation","display_name":"Implementation","score":0.6140292882919312},{"id":"https://openalex.org/keywords/software-engineering","display_name":"Software engineering","score":0.4964447617530823},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.4869462251663208},{"id":"https://openalex.org/keywords/quality","display_name":"Quality (philosophy)","score":0.4686073064804077},{"id":"https://openalex.org/keywords/source-lines-of-code","display_name":"Source lines of code","score":0.45554888248443604},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.22056812047958374},{"id":"https://openalex.org/keywords/software-development","display_name":"Software development","score":0.17080983519554138},{"id":"https://openalex.org/keywords/software-construction","display_name":"Software construction","score":0.1258752942085266}],"concepts":[{"id":"https://openalex.org/C80291951","wikidata":"https://www.wikidata.org/wiki/Q1200691","display_name":"Design by contract","level":5,"score":0.706143319606781},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.6447862386703491},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.6341367363929749},{"id":"https://openalex.org/C26713055","wikidata":"https://www.wikidata.org/wiki/Q245962","display_name":"Implementation","level":2,"score":0.6140292882919312},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.4964447617530823},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.4869462251663208},{"id":"https://openalex.org/C2779530757","wikidata":"https://www.wikidata.org/wiki/Q1207505","display_name":"Quality (philosophy)","level":2,"score":0.4686073064804077},{"id":"https://openalex.org/C199519371","wikidata":"https://www.wikidata.org/wiki/Q942695","display_name":"Source lines of code","level":3,"score":0.45554888248443604},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.22056812047958374},{"id":"https://openalex.org/C529173508","wikidata":"https://www.wikidata.org/wiki/Q638608","display_name":"Software development","level":3,"score":0.17080983519554138},{"id":"https://openalex.org/C186846655","wikidata":"https://www.wikidata.org/wiki/Q3398377","display_name":"Software construction","level":4,"score":0.1258752942085266},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.0},{"id":"https://openalex.org/C138885662","wikidata":"https://www.wikidata.org/wiki/Q5891","display_name":"Philosophy","level":0,"score":0.0},{"id":"https://openalex.org/C111472728","wikidata":"https://www.wikidata.org/wiki/Q9471","display_name":"Epistemology","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1109/ms.2019.2934192","is_oa":true,"landing_page_url":"https://doi.org/10.1109/ms.2019.2934192","pdf_url":"https://ieeexplore.ieee.org/ielx7/52/8880048/08880061.pdf","source":{"id":"https://openalex.org/S6725529","display_name":"IEEE Software","issn_l":"0740-7459","issn":["0740-7459","1937-4194"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310320439","host_organization_name":"IEEE Computer Society","host_organization_lineage":["https://openalex.org/P4310320439","https://openalex.org/P4310319808"],"host_organization_lineage_names":["IEEE Computer Society","Institute of Electrical and Electronics Engineers"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"IEEE Software","raw_type":"journal-article"}],"best_oa_location":{"id":"doi:10.1109/ms.2019.2934192","is_oa":true,"landing_page_url":"https://doi.org/10.1109/ms.2019.2934192","pdf_url":"https://ieeexplore.ieee.org/ielx7/52/8880048/08880061.pdf","source":{"id":"https://openalex.org/S6725529","display_name":"IEEE Software","issn_l":"0740-7459","issn":["0740-7459","1937-4194"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310320439","host_organization_name":"IEEE Computer Society","host_organization_lineage":["https://openalex.org/P4310320439","https://openalex.org/P4310319808"],"host_organization_lineage_names":["IEEE Computer Society","Institute of Electrical and Electronics Engineers"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"IEEE Software","raw_type":"journal-article"},"sustainable_development_goals":[{"display_name":"Quality Education","score":0.5,"id":"https://metadata.un.org/sdg/4"}],"awards":[],"funders":[],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W2981523683.pdf","grobid_xml":"https://content.openalex.org/works/W2981523683.grobid-xml"},"referenced_works_count":4,"referenced_works":["https://openalex.org/W221670187","https://openalex.org/W1542708116","https://openalex.org/W2158641382","https://openalex.org/W2161825580"],"related_works":["https://openalex.org/W2311164424","https://openalex.org/W4246401116","https://openalex.org/W2006365753","https://openalex.org/W1568266756","https://openalex.org/W4312763760","https://openalex.org/W4282830668","https://openalex.org/W3158548065","https://openalex.org/W4236461108","https://openalex.org/W2149635184","https://openalex.org/W1998490923"],"abstract_inverted_index":{"Design":[0],"by":[1,48,54,59],"contract":[2],"(DBC)":[3],"is":[4],"a":[5,20,23],"technique":[6],"that":[7],"improves":[8],"the":[9,27,35,39,50,56,62],"quality":[10],"of":[11],"your":[12],"team's":[13],"code.":[14],"It":[15,72],"yields":[16],"code":[17,57],"with":[18],"both":[19],"logical":[21],"and":[22,34],"procedural":[24],"nature,":[25],"where":[26],"contracts":[28],"state":[29],"declaratively":[30],"what":[31],"will":[32],"happen,":[33],"implementations":[36],"procedurally":[37],"cause":[38],"desired":[40],"effect.":[41],"The":[42],"team":[43],"can":[44],"reason":[45,67],"either":[46],"logically,":[47],"using":[49,81],"contracts,":[51],"or":[52],"procedurally,":[53],"following":[55],"line":[58],"line,":[60],"but":[61],"former":[63],"allows":[64],"them":[65],"to":[66],"about":[68],"far":[69],"larger":[70],"programs.":[71],"also":[73],"creates":[74],"conditions":[75],"for":[76],"deliberate":[77],"practice":[78],"so":[79],"developers":[80],"DBC":[82],"grow":[83],"their":[84],"design":[85],"skills":[86],"faster.":[87]},"counts_by_year":[{"year":2023,"cited_by_count":1},{"year":2022,"cited_by_count":2}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
