論文の概要: An Empirical Study of Untangling Patterns of Two-Class Dependency Cycles
- arxiv url: http://arxiv.org/abs/2306.10599v1
- Date: Sun, 18 Jun 2023 17:14:56 GMT
- ステータス: 処理完了
- システム内更新日: 2023-10-23 19:26:46.885084
- Title: An Empirical Study of Untangling Patterns of Two-Class Dependency Cycles
- Title(参考訳): 2クラス依存サイクルのアンタングリングパターンに関する実証的研究
- Authors: Qiong Feng, Shuwen Liu, Huan Ji, Xiaotian Ma, Peng Liang
- Abstract要約: 依存性のサイクルは、ソフトウェアの品質と保守性に大きな課題をもたらします。
本稿では,ソフトウェア開発者が2つのクラス間の依存性サイクルを実際に解決するために使用する繰り返しパターンについて,実証的研究を行う。
- 参考スコア(独自算出の注目度): 2.318009397997528
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Dependency cycles pose a significant challenge to software quality and
maintainability. However, there is limited understanding of how practitioners
resolve dependency cycles in real-world scenarios. This paper presents an
empirical study investigating the recurring patterns employed by software
developers to resolve dependency cycles between two classes in practice. We
analyzed the data from 18 open-source projects across different domains and
manually inspected hundreds of cycle untangling cases. Our findings reveal that
developers tend to employ five recurring patterns to address dependency cycles.
The chosen patterns are not only determined by dependency relations between
cyclic classes, but also highly related to their design context, i.e., how
cyclic classes depend on or are depended by their neighbor classes. Through
this empirical study, we also discovered three common mistakes developers
usually made during cycles' handling. These recurring patterns and common
mistakes observed in dependency cycles' practice can serve as a taxonomy to
improve developers' awareness and also be used as learning materials for
students in software engineering and inexperienced developers. Our results also
suggest that, in addition to considering the internal structure of dependency
cycles, automatic tools need to consider the design context of cycles to
provide better support for refactoring dependency cycles.
- Abstract(参考訳): 依存性のサイクルは、ソフトウェアの品質と保守性に大きな課題をもたらします。
しかし、実際のシナリオにおいて、実践者が依存性のサイクルをどのように解決するかの理解は限られている。
本稿では,ソフトウェア開発者が2つのクラス間の依存性サイクルを実際に解決するための繰り返しパターンについて,実証的研究を行った。
さまざまなドメインにまたがる18のオープンソースプロジェクトのデータを分析し,数百のサイクルアンタングリングケースを手作業で調査した。
私たちの調査によると、開発者は依存性サイクルに対処するために5つの繰り返しパターンを使う傾向があります。
選択されたパターンは、巡回クラス間の依存関係関係によって決定されるだけでなく、その設計コンテキスト、すなわち、巡回クラスが隣のクラスに依存するか、あるいは依存するかに非常に関係している。
この経験的な研究を通じて、通常、サイクルのハンドリング中に開発者が犯した3つのよくある間違いを発見した。
これらの繰り返しのパターンと依存性サイクルのプラクティスに見られるよくある誤りは、開発者の認識を改善するための分類法となり、ソフトウェア工学の学生や経験の浅い開発者のための教材としても使われる。
また,依存性サイクルの内部構造を考慮することに加えて,自動ツールが依存関係サイクルのリファクタリングを支援するために,サイクルの設計コンテキストを考慮する必要があることも示唆した。
関連論文リスト
- Deep End-to-End Survival Analysis with Temporal Consistency [49.77103348208835]
本稿では,大規模長手データの処理を効率的に行うために,Survival Analysisアルゴリズムを提案する。
我々の手法における中心的な考え方は、時間とともにデータにおける過去と将来の成果が円滑に進化するという仮説である時間的一貫性である。
我々のフレームワークは、安定したトレーニング信号を提供することで、時間的一貫性を大きなデータセットに独自に組み込む。
論文 参考訳(メタデータ) (2024-10-09T11:37:09Z) - A Controlled Study on Long Context Extension and Generalization in LLMs [85.4758128256142]
広義のテキスト理解とテキスト内学習は、完全な文書コンテキストを利用する言語モデルを必要とする。
長期コンテキストモデルを直接訓練する際の実装上の課題のため、長期コンテキストを扱うためにモデルを拡張する多くの方法が提案されている。
我々は,一貫したベースモデルと拡張データを利用して,標準化された評価による拡張メソッドの制御プロトコルを実装した。
論文 参考訳(メタデータ) (2024-09-18T17:53:17Z) - Hierarchical Reinforcement Learning for Temporal Abstraction of Listwise Recommendation [51.06031200728449]
我々はmccHRLと呼ばれる新しいフレームワークを提案し、リストワイドレコメンデーションにおける時間的抽象化のレベルを異なるものにする。
階層的な枠組みの中では、ハイレベルエージェントがユーザ知覚の進化を研究し、低レベルエージェントがアイテム選択ポリシーを作成している。
その結果,本手法による性能改善は,いくつかのよく知られたベースラインと比較して有意な結果が得られた。
論文 参考訳(メタデータ) (2024-09-11T17:01:06Z) - Insights into Deep Learning Refactoring: Bridging the Gap Between Practices and Expectations [13.084553746852382]
ディープラーニングソフトウェアは、ソフトウェアが進化するにつれて、徐々に複雑になってきています。
ディープラーニングの文脈におけるコードの洞察はまだ不明だ。
関連ツールの研究と開発は、プロジェクトの保守性とコード品質を改善するために不可欠である。
論文 参考訳(メタデータ) (2024-05-08T07:35:14Z) - Caformer: Rethinking Time Series Analysis from Causal Perspective [7.354128514581098]
本稿では,因果的観点からの時系列解析のためのCaformerという新しいフレームワークを紹介する。
本フレームワークは,動的学習,環境学習,依存学習という3つのコンポーネントから構成される。
我々のCaformerは5つの主流時系列分析タスクで一貫した最先端性能を示す。
論文 参考訳(メタデータ) (2024-03-13T14:28:02Z) - Critical Learning Periods Emerge Even in Deep Linear Networks [102.89011295243334]
クリティカルラーニング期間(Critical Learning periods)は、一時的な感覚障害が行動や学習表現に恒久的な影響を及ぼす発達初期の期間である。
生物学的ネットワークと人工ネットワークの急激な違いにもかかわらず、両方のシステムで臨界学習期間が経験的に観察されている。
論文 参考訳(メタデータ) (2023-08-23T16:01:50Z) - Unsupervised 3D registration through optimization-guided cyclical
self-training [71.75057371518093]
最先端のディープラーニングベースの登録方法は、3つの異なる学習戦略を採用している。
本稿では,教師なし登録のための自己指導型学習パラダイムを提案する。
腹部, 肺の登録方法の評価を行い, 測定基準に基づく監督を一貫して上回り, 最先端の競争相手よりも優れていた。
論文 参考訳(メタデータ) (2023-06-29T14:54:10Z) - Lifelong Machine Learning of Functionally Compositional Structures [7.99536002595393]
この論文は、機能的な構成構造の生涯学習のための汎用的な枠組みを提示する。
このフレームワークは、学習を2つの段階に分ける: 既存のコンポーネントを組み合わせて新しい問題を同化する方法を学び、新しい問題に対応するために既存のコンポーネントを適応する方法を学ぶ。
教師付き学習評価の結果,1)構成モデルでは,多様なタスクの生涯学習が向上し,2)多段階のプロセスでは構成知識の生涯学習が可能となり,3)フレームワークが学習するコンポーネントは自己完結的かつ再利用可能な機能を表すことがわかった。
論文 参考訳(メタデータ) (2022-07-25T15:24:25Z) - elBERto: Self-supervised Commonsense Learning for Question Answering [131.51059870970616]
本稿では、市販QAモデルアーキテクチャと互換性のあるコモンセンスフレームワークの自己教師型双方向表現学習を提案する。
このフレームワークは5つの自己教師型タスクから構成されており、リッチコモンセンスを含むコンテキストから追加のトレーニング信号を完全に活用するようモデルに強制する。
elBERtoは、単純な語彙的類似性比較が役に立たないような、アウト・オブ・パラグラフや非エフェクトな問題に対して、大幅に改善されている。
論文 参考訳(メタデータ) (2022-03-17T16:23:45Z) - Regular Decision Processes for Grid Worlds [0.0]
本稿では、最近導入された非マルコフ報酬関数と遷移関数の両方をサポートする正規決定過程の実験的研究について述べる。
我々は、正規決定プロセスのためのツールチェーン、オンライン、インクリメンタルラーニングに関連するアルゴリズム拡張、モデルフリーおよびモデルベースソリューションアルゴリズムの実証的評価、そして正規だが非マルコフ的グリッドワールドにおける応用を提供する。
論文 参考訳(メタデータ) (2021-11-05T17:54:43Z) - Structure by Architecture: Structured Representations without
Regularization [31.75200752252397]
生成モデルなどの下流タスクにオートエンコーダを用いた自己教師型表現学習の課題について検討する。
我々はアグレッシブな正規化を必要とせずに構造化表現を学習できる新しいオートエンコーダアーキテクチャを設計する。
これらのモデルが、生成、絡み合い、外挿を含む様々な下流タスクの結果を改善する表現をいかに学習するかを実証する。
論文 参考訳(メタデータ) (2020-06-14T04:37:08Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。