Web APIs - challenges, design points, and research opportunities invited talk at the 2nd international workshop on API usage and evolution (WAPI '18)
Web Application Programming Interfaces (web APIs) provide programmatic, network-based access to remote data or functionalities. Applications, for example, use the Google Places API to learn about nearby establishments, use the Twitter, Instagram, or Facebook API to connect users with friends and fam...
Saved in:
| Published in | 2018 IEEE ACM 2nd International Workshop on API Usage and Evolution (WAPI) p. 18 |
|---|---|
| Main Author | |
| Format | Conference Proceeding |
| Language | English |
| Published |
New York, NY, USA
ACM
02.06.2018
|
| Series | ACM Conferences |
| Subjects |
Software and its engineering
> Software creation and management
> Software post-development issues
> Documentation
Software and its engineering
> Software creation and management
> Software post-development issues
> Software evolution
|
| Online Access | Get full text |
| ISBN | 9781450357548 1450357547 |
| DOI | 10.1145/3194793.3194801 |
Cover
| Abstract | Web Application Programming Interfaces (web APIs) provide programmatic, network-based access to remote data or functionalities. Applications, for example, use the Google Places API to learn about nearby establishments, use the Twitter, Instagram, or Facebook API to connect users with friends and family, or use the Stripe API to accept end-user payments. Increasingly, applications themselves consist of micro-services that expose their capabilities to one another using web APIs.
In comparison to library APIs, which are a common subject of software engineering research, web APIs present unique challenges - both for providers and consumers - that are arguably much less explored yet [3]. For one, in web APIs, providers control both the API and the runtime providing the capabilities exposed by the API. In consequence, providers may extend, change, or even remove these capabilities or the API, with possibly severe effects for consuming applications. In contrast, applications typically depend on specific versions of software libraries, which can be used even as the library evolves. Being controlled by another party and invoked via network, web API consumers also have to consider and possibly mitigate varying quality of service (QoS) characteristics. Primarily, the availabilities and response times of web APIs change over time, possibly impacting application performance or functionality. Furthermore, the use of library APIs is eased by mechanisms like auto-complete or IDE-integrated documentation (at least in typed languages). In contrast, web APIs commonly lack machine-understandable specifications and consume and provide data in the form of strings. To correctly use a web API, developers have to familiarize with semi-structured documentation pages, often written in HTML - there are only few IDE-based error-checking approaches for web APIs yet [2]. Whereas for many programming languages central package manager services provide unified access to available libraries (think Maven for Java, npm for JavaScript, or RubyGems for Ruby), comprehensive listings of web APIs do not exist, hardening their discovery and selection.
In this talk, we outline the characteristics of web APIs causing these challenges. We discuss relevant design points, both for providers and consumers, how these design points have been implemented by different web API paradigms in recent years, and recent attempts to bride these paradigms [1]. Throughout the talk, we give examples of our research to address web API-related challenges. Our goal is to inspire WAPI attendees to take on some of the many research opportunities surrounding web APIs. |
|---|---|
| AbstractList | Web Application Programming Interfaces (Web APIs) provide programmatic, network-based access to remote data or functionalities. Applications, for example, use the Google Places API to learn about nearby establishments, use the Twitter, Instagram, or Facebook API to connect users with friends and family, or use the Stripe API to accept end-user payments. Increasingly, applications themselves consist of micro-services that expose their capabilities to one another using web APIs. In comparison to library APIs, which are a common subject of software engineering research, web APIs present unique challenges - both for providers and consumers - that are arguably much less explored yet. In this talk, we outline the characteristics of web APIs causing these challenges. We discuss relevant design points, both for providers and consumers, and how these design points have been implemented by different web API paradigms in recent years. Throughout the talk, we give examples of our research to address web API-related challenges. Our goal is to inspire WAPI attendees to take on some of the many research opportunities surrounding web APIs. Web Application Programming Interfaces (web APIs) provide programmatic, network-based access to remote data or functionalities. Applications, for example, use the Google Places API to learn about nearby establishments, use the Twitter, Instagram, or Facebook API to connect users with friends and family, or use the Stripe API to accept end-user payments. Increasingly, applications themselves consist of micro-services that expose their capabilities to one another using web APIs. In comparison to library APIs, which are a common subject of software engineering research, web APIs present unique challenges - both for providers and consumers - that are arguably much less explored yet [3]. For one, in web APIs, providers control both the API and the runtime providing the capabilities exposed by the API. In consequence, providers may extend, change, or even remove these capabilities or the API, with possibly severe effects for consuming applications. In contrast, applications typically depend on specific versions of software libraries, which can be used even as the library evolves. Being controlled by another party and invoked via network, web API consumers also have to consider and possibly mitigate varying quality of service (QoS) characteristics. Primarily, the availabilities and response times of web APIs change over time, possibly impacting application performance or functionality. Furthermore, the use of library APIs is eased by mechanisms like auto-complete or IDE-integrated documentation (at least in typed languages). In contrast, web APIs commonly lack machine-understandable specifications and consume and provide data in the form of strings. To correctly use a web API, developers have to familiarize with semi-structured documentation pages, often written in HTML - there are only few IDE-based error-checking approaches for web APIs yet [2]. Whereas for many programming languages central package manager services provide unified access to available libraries (think Maven for Java, npm for JavaScript, or RubyGems for Ruby), comprehensive listings of web APIs do not exist, hardening their discovery and selection. In this talk, we outline the characteristics of web APIs causing these challenges. We discuss relevant design points, both for providers and consumers, how these design points have been implemented by different web API paradigms in recent years, and recent attempts to bride these paradigms [1]. Throughout the talk, we give examples of our research to address web API-related challenges. Our goal is to inspire WAPI attendees to take on some of the many research opportunities surrounding web APIs. |
| Author | Wittern, Erik |
| Author_xml | – sequence: 1 givenname: Erik surname: Wittern fullname: Wittern, Erik email: witternj@us.ibm.com organization: IBM T.J. Watson Research Center |
| BookMark | eNqNkD1PwzAURY0ACSidGVg8MpBi18-xvVFVfFSqBAOI0XLil9aQOlEcBv49qZqJienq6uje4VyQk9hEJOSKsxnnIO8EN6CMmO1TM35EpkbpATAhlQR9_KefkWlKn4yxea5BCXFO7j-woIvXVaIZLbeurjFuMN1SjylsIm2bEPuhuuhphwldV25p07ZN13_H0AdMl-S0cnXC6ZgT8v748LZ8ztYvT6vlYp05rlSfFVKiLyqjdYGAufNMe-C5AsX93JWCCWO0N57nlVbeAJTAhZsrLXVeQQViQq4PvwERbduFnet-rAYQUouBzg7UlTtbNM1XspzZvSI7KrKjIlt0AathcPPPgfgFjjJj4Q |
| CODEN | IEEPAD |
| ContentType | Conference Proceeding |
| Copyright | 2018 Owner/Author |
| Copyright_xml | – notice: 2018 Owner/Author |
| DBID | 6IE 6IL CBEJK RIE RIL |
| DOI | 10.1145/3194793.3194801 |
| DatabaseName | IEEE Electronic Library (IEL) Conference Proceedings IEEE Xplore POP ALL IEEE Xplore All Conference Proceedings IEEE Electronic Library (IEL) IEEE Proceedings Order Plans (POP All) 1998-Present |
| DatabaseTitleList | |
| Database_xml | – sequence: 1 dbid: RIE name: IEEE/IET Electronic Library url: https://proxy.k.utb.cz/login?url=https://ieeexplore.ieee.org/ sourceTypes: Publisher |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Computer Science |
| EISBN | 9781450357548 1450357547 |
| EndPage | 18 |
| ExternalDocumentID | 8443583 |
| Genre | orig-research |
| GroupedDBID | 6IE 6IF 6IL 6IN AAJGR ABLEC ACM ADPZR ALMA_UNASSIGNED_HOLDINGS APO BEFXN BFFAM BGNUA BKEBE BPEOZ CBEJK GUFHI IEGSK OCL RIB RIC RIE RIL AAWTH LHSKQ |
| ID | FETCH-LOGICAL-a177t-b55edbf988be4e6ad08d4167471d2ac303998d9d16f87d944c413a278586f4f43 |
| IEDL.DBID | RIE |
| ISBN | 9781450357548 1450357547 |
| IngestDate | Wed Aug 27 02:07:50 EDT 2025 Wed Jan 31 06:49:58 EST 2024 Wed Jan 31 06:45:59 EST 2024 |
| IsPeerReviewed | false |
| IsScholarly | false |
| Keywords | web APIs software engineering |
| Language | English |
| License | Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for third-party components of this work must be honored. For all other uses, contact the Owner/Author. |
| LinkModel | DirectLink |
| MeetingName | ICSE '18: 40th International Conference on Software Engineering |
| MergedId | FETCHMERGED-LOGICAL-a177t-b55edbf988be4e6ad08d4167471d2ac303998d9d16f87d944c413a278586f4f43 |
| PageCount | 1 |
| ParticipantIDs | ieee_primary_8443583 acm_books_10_1145_3194793_3194801_brief acm_books_10_1145_3194793_3194801 |
| PublicationCentury | 2000 |
| PublicationDate | 20180602 2018-Jun |
| PublicationDateYYYYMMDD | 2018-06-02 2018-06-01 |
| PublicationDate_xml | – month: 06 year: 2018 text: 20180602 day: 02 |
| PublicationDecade | 2010 |
| PublicationPlace | New York, NY, USA |
| PublicationPlace_xml | – name: New York, NY, USA |
| PublicationSeriesTitle | ACM Conferences |
| PublicationTitle | 2018 IEEE ACM 2nd International Workshop on API Usage and Evolution (WAPI) |
| PublicationTitleAbbrev | WAPI |
| PublicationYear | 2018 |
| Publisher | ACM |
| Publisher_xml | – name: ACM |
| SSID | ssj0002684733 |
| Score | 1.6717284 |
| Snippet | Web Application Programming Interfaces (web APIs) provide programmatic, network-based access to remote data or functionalities. Applications, for example, use... Web Application Programming Interfaces (Web APIs) provide programmatic, network-based access to remote data or functionalities. Applications, for example, use... |
| SourceID | ieee acm |
| SourceType | Publisher |
| StartPage | 18 |
| SubjectTerms | Conferences Documentation Information systems -- World Wide Web -- Web services Software Software and its engineering -- Software creation and management -- Software post-development issues -- Documentation Software and its engineering -- Software creation and management -- Software post-development issues -- Software evolution Software and its engineering -- Software creation and management -- Software post-development issues -- Software version control Software and its engineering -- Software notations and tools -- Software libraries and repositories Software Engineering Software libraries Web APIs |
| Subtitle | invited talk at the 2nd international workshop on API usage and evolution (WAPI '18) |
| Title | Web APIs - challenges, design points, and research opportunities |
| URI | https://ieeexplore.ieee.org/document/8443583 |
| hasFullText | 1 |
| inHoldings | 1 |
| isFullTextHit | |
| isPrint | |
| link | http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwjV1LS8NAEB5sT558Y30xgqBCU02ySbbeRC1VUHuw1FvYV7CoSbFpD_4Qf6-zSVpRBD3ltdkNzCTzzeSbGYADGZGPEBrlMDJuDjMqcYQ6VQ43niZvgyCDLqp93oXdPrt5DB4XoDnPhTHGFOQz07K7xb98namJDZWdcEbGnfs1qEU8LHO15vEUW7Uk8v2qeo_LghNSLhs2atktt01fakK9fmuiUtiQzhLczlYvqSPPrUkuW-r9R2HG_z7eMqx_Zethb26HVmDBpKuwNGvXgNXbuwYfAyPxvHc9RgcvZj1Uxk28LEgc2MuGaU6HItU44-Ph_cji80la1F09w-t0aiEqPoiXZxQ5EnpEj8Z_iyuiDcCPn7IRZqldD_uWvFbMezWtNB2PBvbKocuP16HfuXq46DpVWwZHuFGUOzIIjJZJm3NpmAmFPuWa2WSGyNWeUGQTyYXTbe2GCY90mzFFhlJ4EQ94mLCE-RtQT7PUbAKaULuKiSRwffpie0KKhAm6l2tNsIfxBuyTzGLrb4zjMoU6iCu5xpVcG3D455hYvg1N0oA1K7R4VNbxiCt5bf1-ehsWCRzxkha2A_X8bWJ2CYDkcq_QvE80otTt |
| linkProvider | IEEE |
| linkToHtml | http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwjV1LT9tAEB7xONATLVA1pS1TCQkq4YDtWXvTW8VDSXk0h0Rws_ZlgSh2RBwO_SH9vZ21nVRUldqTX-tdSzP2fDP-ZgZgV6fsIyTOBMTGLSBn8kCZIxNIF1n2Nhgy2Lra51XSH9PXG3GzBAeLXBjnXE0-c12_W__Lt6WZ-VDZoSQ27jJehlVBRKLJ1lpEVHzdkjSO2_o9IYlDVi8fOOr6rfRtX5aVeXjWRqW2ImfrcDlfvyGP3Hdnle6aH3-UZvzfB3wJW7_z9XC4sESvYMkVG7A-b9iA7fu7CT-vncYvw8EUAzyed1GZHuBJTePAYXlXVHyoCotzRh5-m3iEPivqyqufcVA8eZCKI_X9HlWFjB8x4vHPIovoQ_DT23KCZeHXw7Gnr9Xznj61uo771_7KXig_bcH47HR03A_axgyBCtO0CrQQzuq8J6V25BJlj6Qln86QhjZShq0iO3G2Z8Mkl6ntERk2lSpKpZBJTjnFr2GlKAv3BtAlNjSkchHG_M2OlFY5Kb5XWsvAh2QHPrLMMu9xTLMmiVpkrVyzVq4d2PvnmEw_3rm8A5teaNmkqeSRtfJ6-_fTO7DWH11eZBeDq_NteMFQSTYksXewUj3O3HuGI5X-UGvhL4cW2Do |
| 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%3Abook&rft.genre=proceeding&rft.title=2018+IEEE+ACM+2nd+International+Workshop+on+API+Usage+and+Evolution+%28WAPI%29&rft.atitle=Web+APIs+-+Challenges%2C+Design+Points%2C+and+Research+Opportunities%3A+Invited+Talk+at+the+2nd+International+Workshop+on+API+Usage+and+Evolution+%28WAPI+%2718%29&rft.au=Wittern%2C+Erik&rft.date=2018-06-01&rft.pub=ACM&rft.spage=18&rft.epage=18&rft_id=info:doi/10.1145%2F3194793.3194801&rft.externalDocID=8443583 |
| thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=9781450357548/lc.gif&client=summon&freeimage=true |
| thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=9781450357548/mc.gif&client=summon&freeimage=true |
| thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=9781450357548/sc.gif&client=summon&freeimage=true |