Intelligent API Engineering: Systematically Leveraging APIs Through Development Knowledge and Usage Data

智能 API 工程:通过开发知识和使用数据系统地利用 API

基本信息

  • 批准号:
    RGPIN-2022-03505
  • 负责人:
  • 金额:
    $ 1.82万
  • 依托单位:
  • 依托单位国家:
    加拿大
  • 项目类别:
    Discovery Grants Program - Individual
  • 财政年份:
    2022
  • 资助国家:
    加拿大
  • 起止时间:
    2022-01-01 至 2023-12-31
  • 项目状态:
    已结题

项目摘要

Software is ever more prevalent in our daily lives and businesses. In today's interconnected world, software for servers, desktops, mobile devices, wearables, and IoT devices interact using software interfaces called Application Programming Interfaces (API). Furthermore, each software program may internally employ multiple APIs to access ready made software functionality (e.g., for machine learning, and data). Because software developers increasingly rely on APIs to leverage existing software, it is becoming more important than ever to streamline how these APIs are developed. The practice of providing access to software functionality while hiding implementation details behind an API can save software development time and lower costs. However, APIs are often developed in ad-hoc ways, leaving their users at the mercy of API developers. Because API developers often have little empirical evidence on which to base their decisions, they may not reliably know how to improve their APIs. These ad-hoc development practices can give rise to API user dissatisfaction and lead to multitudes of questions from API users on open forums complaining about APIs and asking how to circumvent them. Even well known and lucrative software APIs, such as the Android API, are not immune to these challenges and suffer from user complaints. Despite advances in the automation of API usage, relying on external APIs still requires some degree of blind faith. API users must trust that the APIs that they use will be maintained and remain stable and available. However, API developers do not currently have the resources to extract API users needs at scale. Additionally, few techniques exist to monitor and analyze deployed APIs in order to maintain and improve them. Techniques, approaches, and guidelines to help develop APIs are thus required to improve API development practices. The goal of this research proposal is to improve API engineering practices through the cultivation of developer knowledge and usage tendencies. To achieve this goal, my research program is geared towards an intelligent API lifecycle based on empirical evidence. Thus, I intend to provide API development feedback for API developers by creating techniques to monitor the API usage patterns contained in large software repository data. I plan to leverage the mined data to extract actionable improvement suggestions for API developers. Finally, I propose to create a repository of traceability links between known API changes and API usages and create a scalable analytical infrastructure to allow API developers to better engineer their APIs. The results of these research activities will advance the current state of practice for API developers, resulting in better, more usable, software. Furthermore, this research proposal aims to train highly qualified personnel (HQP), preparing them to excel in a data-driven world and contribute to the state-of-the-art in software engineering research and practice in Canada.
软件在我们的日常生活和商业中越来越普遍。在当今的互联世界中,服务器、台式机、移动设备、可穿戴设备和物联网设备的软件使用称为应用程序编程接口 (API) 的软件接口进行交互。此外,每个软件程序可以在内部使用多个 API 来访问现成的软件功能(例如,用于机器学习和数据)。由于软件开发人员越来越依赖 API 来利用现有软件,因此简化这些 API 的开发方式变得比以往任何时候都更加重要。提供对软件功能的访问同时将实现细节隐藏在 API 后面的做法可以节省软件开发时间并降低成本。然而,API 通常是以临时方式开发的,使用户受到 API 开发人员的摆布。由于 API 开发人员通常没有什么经验证据可以作为决策依据,因此他们可能无法可靠地知道如何改进其 API。这些临时开发实践可能会引起 API 用户的不满,并导致 API 用户在开放论坛上提出大量问题,抱怨 API 并询问如何规避它们。即使是众所周知且利润丰厚的软件 API(例如 Android API)也无法免受这些挑战并遭受用户投诉。尽管 API 使用的自动化取得了进步,但依赖外部 API 仍然需要一定程度的盲目信仰。 API 用户必须相信他们使用的 API 将得到维护并保持稳定和可用。然而,API 开发人员目前没有资源来大规模提取 API 用户需求。此外,很少有技术可以监控和分析已部署的 API 以维护和改进它们。因此,需要帮助开发 API 的技术、方法和指南来改进 API 开发实践。本研究提案的目标是通过培养开发人员知识和使用倾向来改进 API 工程实践。为了实现这一目标,我的研究计划面向基于经验证据的智能 API 生命周期。因此,我打算通过创建监视大型软件存储库数据中包含的 API 使用模式的技术,为 API 开发人员提供 API 开发反馈。我计划利用挖掘的数据为 API 开发人员提取可行的改进建议。最后,我建议创建一个已知 API 更改和 API 使用之间的可追溯性链接存储库,并创建一个可扩展的分析基础设施,以允许 API 开发人员更好地设计他们的 API。这些研究活动的结果将推动 API 开发人员当前的实践状态,从而产生更好、更可用的软件。此外,该研究计划旨在培训高素质人才(HQP),让他们在数据驱动的世界中脱颖而出,并为加拿大最先进的软件工程研究和实践做出贡献。

项目成果

期刊论文数量(0)
专著数量(0)
科研奖励数量(0)
会议论文数量(0)
专利数量(0)

数据更新时间:{{ journalArticles.updateTime }}

{{ item.title }}
{{ item.translation_title }}
  • DOI:
    {{ item.doi }}
  • 发表时间:
    {{ item.publish_year }}
  • 期刊:
  • 影响因子:
    {{ item.factor }}
  • 作者:
    {{ item.authors }}
  • 通讯作者:
    {{ item.author }}

数据更新时间:{{ journalArticles.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ monograph.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ sciAawards.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ conferencePapers.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ patent.updateTime }}

Lamothe, Maxime其他文献

Lamothe, Maxime的其他文献

{{ item.title }}
{{ item.translation_title }}
  • DOI:
    {{ item.doi }}
  • 发表时间:
    {{ item.publish_year }}
  • 期刊:
  • 影响因子:
    {{ item.factor }}
  • 作者:
    {{ item.authors }}
  • 通讯作者:
    {{ item.author }}

{{ truncateString('Lamothe, Maxime', 18)}}的其他基金

Intelligent API Engineering: Systematically Leveraging APIs Through Development Knowledge and Usage Data
智能 API 工程:通过开发知识和使用数据系统地利用 API
  • 批准号:
    DGECR-2022-00371
  • 财政年份:
    2022
  • 资助金额:
    $ 1.82万
  • 项目类别:
    Discovery Launch Supplement

相似国自然基金

多智能体协同驱动的API文档逆向解析与需求自动生成方法研究
  • 批准号:
  • 批准年份:
    2025
  • 资助金额:
    0.0 万元
  • 项目类别:
    省市级项目
基于多源软件信息融合的API知识识别方法研究
  • 批准号:
  • 批准年份:
    2024
  • 资助金额:
    0 万元
  • 项目类别:
    青年科学基金项目
基于API知识图谱的代码检测和修复技术
  • 批准号:
    62302437
  • 批准年份:
    2023
  • 资助金额:
    30.00 万元
  • 项目类别:
    青年科学基金项目
妊娠期体重轨迹通过影响子代呼吸道菌群在婴幼儿API阳性喘息中的作用及机制研究
  • 批准号:
  • 批准年份:
    2022
  • 资助金额:
    30 万元
  • 项目类别:
    青年科学基金项目
面向代码优化的API替换研究
  • 批准号:
  • 批准年份:
    2022
  • 资助金额:
    53 万元
  • 项目类别:
    面上项目
Pim-2磷酸化API-5负调控XAF-1促进高危前列腺癌发生的机制研究
  • 批准号:
  • 批准年份:
    2021
  • 资助金额:
    0.0 万元
  • 项目类别:
    省市级项目
服务质量感知功能互补的可解释云API推荐方法研究
  • 批准号:
    62102348
  • 批准年份:
    2021
  • 资助金额:
    30 万元
  • 项目类别:
    青年科学基金项目
面向App软件开发的API通用表示模型预训练方法及其应用研究
  • 批准号:
  • 批准年份:
    2021
  • 资助金额:
    30 万元
  • 项目类别:
    青年科学基金项目
安卓API接口式仿生广谱絮凝剂对重金属高效絮凝和解吸回收
  • 批准号:
    52000036
  • 批准年份:
    2020
  • 资助金额:
    24.0 万元
  • 项目类别:
    青年科学基金项目

相似海外基金

OpenAI API Lesson content generator with localised careers signposting
具有本地化职业路标的 OpenAI API 课程内容生成器
  • 批准号:
    10082614
  • 财政年份:
    2023
  • 资助金额:
    $ 1.82万
  • 项目类别:
    Collaborative R&D
No-code platform to understand and connect to any Insurance API increasing efficency in the insurance industry
无代码平台可理解并连接到任何保险 API,从而提高保险行业的效率
  • 批准号:
    10037656
  • 财政年份:
    2023
  • 资助金额:
    $ 1.82万
  • 项目类别:
    Collaborative R&D
Framework for Rational Amorphous API Development
Rational 非晶 API 开发框架
  • 批准号:
    2890494
  • 财政年份:
    2023
  • 资助金额:
    $ 1.82万
  • 项目类别:
    Studentship
Morello-HAT: Morello High-Level API and Tooling
Morello-HAT:Morello 高级 API 和工具
  • 批准号:
    EP/X015955/1
  • 财政年份:
    2022
  • 资助金额:
    $ 1.82万
  • 项目类别:
    Research Grant
A POSIX API with dependent types
具有依赖类型的 POSIX API
  • 批准号:
    573158-2022
  • 财政年份:
    2022
  • 资助金额:
    $ 1.82万
  • 项目类别:
    University Undergraduate Student Research Awards
Library Fission: Improving APIs by observing real-world API usage
Library Fission:通过观察现实世界的 API 使用情况来改进 API
  • 批准号:
    576388-2022
  • 财政年份:
    2022
  • 资助金额:
    $ 1.82万
  • 项目类别:
    Alliance Grants
International Feasibility Study with Sri Lanka for Innovative Manufacture Facility of Retinol as a Pharmaceutical Grade API.
与斯里兰卡进行医药级原料药视黄醇创新生产设施的国际可行性研究。
  • 批准号:
    10020015
  • 财政年份:
    2022
  • 资助金额:
    $ 1.82万
  • 项目类别:
    Collaborative R&D
An Innovative, ML-driven API for online fashion retailers, allowing virtual ‘try-before-buy’, reducing waste & improving carbon footprints
面向在线时尚零售商的创新型、机器学习驱动的 API,允许虚拟“先试后买”,减少浪费
  • 批准号:
    10035159
  • 财政年份:
    2022
  • 资助金额:
    $ 1.82万
  • 项目类别:
    Collaborative R&D
学習活動のデジタルバンクを実現する認証基盤の機能拡張とAPI化ツールの開発
扩展认证基础设施的功能并开发API工具,以实现学习活动的数字银行
  • 批准号:
    22K12297
  • 财政年份:
    2022
  • 资助金额:
    $ 1.82万
  • 项目类别:
    Grant-in-Aid for Scientific Research (C)
Multiple Ordered Fungible Handshakes (MOFHS) as a tool to improve security at API interfaces
多重有序同质握手 (MOFHS) 作为提高 API 接口安全性的工具
  • 批准号:
    10032286
  • 财政年份:
    2022
  • 资助金额:
    $ 1.82万
  • 项目类别:
    Feasibility Studies
{{ showInfoDetail.title }}

作者:{{ showInfoDetail.author }}

知道了