論文の概要: RESTRuler: Towards Automatically Identifying Violations of RESTful
Design Rules in Web APIs
- arxiv url: http://arxiv.org/abs/2402.13710v1
- Date: Wed, 21 Feb 2024 11:25:22 GMT
- ステータス: 処理完了
- システム内更新日: 2024-02-22 15:59:07.089795
- Title: RESTRuler: Towards Automatically Identifying Violations of RESTful
Design Rules in Web APIs
- Title(参考訳): RESTRuler: Web APIにおけるRESTfulデザインルールの違反を自動的に識別する
- Authors: Justus Bogner, Sebastian Kotstein, Daniel Abajirov, Timothy Ernst,
Manuel Merkel
- Abstract要約: 静的解析を用いてオープンAPI記述における設計規則違反を検出する,JavaベースのオープンソースツールであるRESTRulerを紹介する。
堅牢性のため、RESTRulerは、使用済みの現実世界のOpenAPI定義の99%をうまく分析した。
パフォーマンス効率向上のために、このツールは大部分のファイルに対して良好に動作し、CPUとRAM使用率の低い23秒未満で84%の分析が可能になった。
- 参考スコア(独自算出の注目度): 3.4711214580685557
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: RESTful APIs based on HTTP are one of the most important ways to make data
and functionality available to applications and software services. However, the
quality of the API design strongly impacts API understandability and usability,
and many rules have been specified for this. While we have evidence for the
effectiveness of many design rules, it is still difficult for practitioners to
identify rule violations in their design. We therefore present RESTRuler, a
Java-based open-source tool that uses static analysis to detect design rule
violations in OpenAPI descriptions. The current prototype supports 14 rules
that go beyond simple syntactic checks and partly rely on natural language
processing. The modular architecture also makes it easy to implement new rules.
To evaluate RESTRuler, we conducted a benchmark with over 2,300 public OpenAPI
descriptions and asked 7 API experts to construct 111 complicated rule
violations. For robustness, RESTRuler successfully analyzed 99% of the used
real-world OpenAPI definitions, with some failing due to excessive size. For
performance efficiency, the tool performed well for the majority of files and
could analyze 84% in less than 23 seconds with low CPU and RAM usage. Lastly,
for effectiveness, RESTRuler achieved a precision of 91% (ranging from 60% to
100% per rule) and recall of 68% (ranging from 46% to 100%). Based on these
variations between rule implementations, we identified several opportunities
for improvements. While RESTRuler is still a research prototype, the evaluation
suggests that the tool is quite robust to errors, resource-efficient for most
APIs, and shows good precision and decent recall. Practitioners can use it to
improve the quality of their API design.
- Abstract(参考訳): HTTPベースのRESTful APIは、アプリケーションやソフトウェアサービスでデータと機能を利用できるようにするための最も重要な方法の1つです。
しかし、API設計の品質はAPIの理解性とユーザビリティに強く影響を与え、多くのルールが規定されている。
多くの設計ルールの有効性を示す証拠はあるが、実践者が設計における規則違反を特定することは依然として困難である。
そこで我々は,静的解析を用いてオープンAPI記述における設計規則違反を検出するJavaベースのオープンソースツールであるRESTRulerを提案する。
現在のプロトタイプは、単純な構文チェックを超えて、部分的に自然言語処理に依存する14のルールをサポートしている。
モジュールアーキテクチャにより、新しいルールの実装も容易になる。
RESTRulerを評価するために、2300以上の公開OpenAPI記述によるベンチマークを実施し、7人のAPI専門家に111の複雑なルール違反の構築を依頼しました。
堅牢性のために、RESTRulerは、使用済みの現実世界のOpenAPI定義の99%をうまく分析した。
パフォーマンス効率の面では、ほとんどのファイルでうまく動作し、cpuとram使用量が少ない23秒未満で84%を解析できた。
最後に、有効性のために、RESTRulerは91%の精度(ルール毎に60%から100%まで)と68%のリコール(46%から100%まで)を達成した。
これらのルール実装の違いに基づいて、我々は改善の機会をいくつか挙げた。
RESTRulerはまだ研究のプロトタイプであるが、この評価はツールがエラーに対して非常に堅牢であり、ほとんどのAPIでリソース効率が良く、正確で適切なリコールを示していることを示唆している。
実践者はAPI設計の質を向上させるためにそれを使うことができます。
関連論文リスト
- Are Human Rules Necessary? Generating Reusable APIs with CoT Reasoning and In-Context Learning [14.351476383642016]
そこで我々は,Stack OverflowコードスニペットのAPIzationを自動的に実行する,Code2APIという新しいアプローチを提案する。
Code2APIは、追加のモデルトレーニングや手作業のルールを必要としない。
他の外部ツールに頼ることなく、パーソナルコンピュータに簡単にデプロイできる。
論文 参考訳(メタデータ) (2024-05-06T14:22:17Z) - ReGAL: Refactoring Programs to Discover Generalizable Abstractions [66.37493420911979]
Generalizable Abstraction Learning (ReGAL)は、コードカプセル化によって再利用可能な関数のライブラリを学ぶ方法である。
ReGALによって発見された共有関数ライブラリは、プログラムが様々な領域で容易に予測できることを示している。
CodeLlama-13Bでは、ReGALはグラフィックスで11.5%、日付理解で26.1%、MinecraftベースのテキストゲームであるTextCraftで8.1%という絶対的な精度向上を実現している。
論文 参考訳(メタデータ) (2024-01-29T18:45:30Z) - Exception-aware Lifecycle Model Construction for Framework APIs [4.333061751230906]
本稿では,フレームワークAPIコードから例外要約情報を抽出するために静的解析手法を採用する。
フレームワーク/ライブラリプロジェクトの例外対応APIライフサイクルモデルを生成する。
60バージョンにおける例外無意識のAPIライフサイクルモデリングと比較して、JavaExpは18%以上のAPI変更を識別できる。
論文 参考訳(メタデータ) (2024-01-05T06:35:47Z) - Leveraging Large Language Models to Improve REST API Testing [51.284096009803406]
RESTGPTはAPI仕様を入力として、機械解釈可能なルールを抽出し、仕様内の自然言語記述からサンプルパラメータ値を生成する。
評価の結果、RESTGPTはルール抽出と値生成の両方において既存の技術よりも優れています。
論文 参考訳(メタデータ) (2023-12-01T19:53:23Z) - Tool-Augmented Reward Modeling [58.381678612409]
本稿では,外部環境へのアクセスによるRMの強化により,制約に対処するツール拡張された嗜好モデリング手法であるThemisを提案する。
我々の研究は、外部ツールをRMに統合し、様々な外部ソースとの相互作用を可能にすることを目的としている。
人間の評価では、テミスで訓練されたRLHFはベースラインと比較して平均32%の勝利率を得る。
論文 参考訳(メタデータ) (2023-10-02T09:47:40Z) - Adaptive REST API Testing with Reinforcement Learning [54.68542517176757]
現在のテストツールは効率的な探索機構がなく、全ての操作とパラメータを等しく扱う。
現在のツールは、仕様にレスポンススキーマがない場合や、変種を示す場合に苦労している。
我々は、強化学習を取り入れた適応型REST APIテスト手法を提案し、探索中の操作を優先順位付けする。
論文 参考訳(メタデータ) (2023-09-08T20:27:05Z) - RestGPT: Connecting Large Language Models with Real-World RESTful APIs [44.94234920380684]
ツール強化された大規模言語モデル(LLM)は、幅広いタスクに対処する上で、目覚ましい進歩を遂げている。
複雑な命令に対処する実践的な課題に対処するために,ロバストネスの力を利用するRestGPTを提案する。
RestGPTを十分に評価するために,実世界の2つのシナリオと人手による指示からなる高品質なベンチマークであるRestBenchを提案する。
論文 参考訳(メタデータ) (2023-06-11T08:53:12Z) - Do RESTful API Design Rules Have an Impact on the Understandability of
Web APIs? A Web-Based Experiment with API Descriptions [4.26177272224368]
参加者105名を対象に,制御型Webベースハイブリッド実験を行った。
私たちは、APIスニペットを使って、12の設計ルールを2つのバージョンで研究しました。
12のルールのうち11のルールにおいて,「違反」は理解作業において「ルール」よりも有意に悪い結果を示した。
論文 参考訳(メタデータ) (2023-05-12T09:48:23Z) - Gradient-Free Structured Pruning with Unlabeled Data [57.999191898036706]
ラベルのないデータのみを使用する勾配のない構造化プルーニングフレームワークを提案する。
元々のFLOPカウントの最大40%は、考慮されたすべてのタスクで4%未満の精度で削減できる。
論文 参考訳(メタデータ) (2023-03-07T19:12:31Z) - Embedding Code Contexts for Cryptographic API Suggestion:New
Methodologies and Comparisons [9.011910726620536]
APIレコメンデーションのための新しいニューラルネットワークベースのアプローチであるMulti-HyLSTMを提案する。
プログラム分析を使用して、APIの埋め込みと推奨をガイドします。
245のテストケースの分析では、商用ツールのCodotaと比較して、トップ1の推奨精度は88.98%に達した。
論文 参考訳(メタデータ) (2021-03-15T22:27:57Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。