論文の概要: 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設計の質を向上させるためにそれを使うことができます。
関連論文リスト
- LlamaRestTest: Effective REST API Testing with Small Language Models [50.058600784556816]
LlamaRestTestは、2つのカスタムLCMを使って現実的なテストインプットを生成する新しいアプローチである。
LlamaRestTestは、RESTGPTで強化された仕様でさえ、コードカバレッジとエラー検出において最先端のツールを上回っている。
論文 参考訳(メタデータ) (2025-01-15T05:51:20Z) - APIRL: Deep Reinforcement Learning for REST API Fuzzing [3.053989095162017]
APIRLは、REST APIをテストするための、完全に自動化された深層強化学習ツールである。
APIRLは、現実世界のREST APIの最先端よりも、はるかに多くのバグを見つけることができます。
論文 参考訳(メタデータ) (2024-12-20T15:40:51Z) - ExploraCoder: Advancing code generation for multiple unseen APIs via planning and chained exploration [70.26807758443675]
ExploraCoderはトレーニング不要のフレームワークで、大規模な言語モデルにコードソリューションで見えないAPIを呼び出す権限を与える。
ExploraCoderは,事前のAPI知識を欠いたモデルのパフォーマンスを著しく向上させ,NAGアプローチの11.24%,pass@10の事前トレーニングメソッドの14.07%を絶対的に向上させることを示す。
論文 参考訳(メタデータ) (2024-12-06T19:00:15Z) - Understanding Code Understandability Improvements in Code Reviews [79.16476505761582]
GitHub上のJavaオープンソースプロジェクトからの2,401のコードレビューコメントを分析した。
改善提案の83.9%が承認され、統合され、1%未満が後に復活した。
論文 参考訳(メタデータ) (2024-10-29T12:21:23Z) - Reinforcement Learning-Based REST API Testing with Multi-Coverage [4.127886193201882]
MUCORESTは、Qラーニングを利用してコードカバレッジと出力カバレッジを最大化する、新しい強化学習(RL)ベースのAPIテストアプローチである。
MUCORESTは、発見されたAPIバグの数で、最先端のAPIテストアプローチを11.6-261.1%上回っている。
論文 参考訳(メタデータ) (2024-10-20T14:20:23Z) - FANTAstic SEquences and Where to Find Them: Faithful and Efficient API Call Generation through State-tracked Constrained Decoding and Reranking [57.53742155914176]
APIコール生成は、大規模言語モデルのツール使用能力の基盤となっている。
既存の教師付きおよびコンテキスト内学習アプローチは、高いトレーニングコスト、低いデータ効率、APIドキュメントとユーザの要求に反する生成APIコールに悩まされる。
本稿では,これらの制約に対処するため,FANTASEと呼ばれる出力側最適化手法を提案する。
論文 参考訳(メタデータ) (2024-07-18T23:44:02Z) - KAT: Dependency-aware Automated API Testing with Large Language Models [1.7264233311359707]
KAT(Katalon API Testing)は、APIを検証するためのテストケースを自律的に生成する、AI駆動の新たなアプローチである。
実世界の12のサービスを用いたKATの評価は、検証カバレッジを改善し、文書化されていないステータスコードを検出し、これらのサービスの偽陽性を低減できることを示している。
論文 参考訳(メタデータ) (2024-07-14T14:48:18Z) - 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) - RestGPT: Connecting Large Language Models with Real-World RESTful APIs [44.94234920380684]
ツール強化された大規模言語モデル(LLM)は、幅広いタスクに対処する上で、目覚ましい進歩を遂げている。
複雑な命令に対処する実践的な課題に対処するために,ロバストネスの力を利用するRestGPTを提案する。
RestGPTを十分に評価するために,実世界の2つのシナリオと人手による指示からなる高品質なベンチマークであるRestBenchを提案する。
論文 参考訳(メタデータ) (2023-06-11T08:53:12Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。