著者
名倉 正剛 薄井 駿 高田 眞吾
出版者
日本ソフトウェア科学会
雑誌
コンピュータ ソフトウェア (ISSN:02896540)
巻号頁・発行日
vol.38, no.2, pp.2_71-2_89, 2021

<p>Androidアプリケーションはイベント駆動型ソフトウェアである.開発者はAndroid API内のコールバックメソッドを継承し内部を記述することでイベントに対する処理を実装する.Android フレームワークから継承したクラスを作成する際に,実装すべきコールバックメソッドを実装し忘れている場合,アプリケーションが予想外の振る舞いをする可能性がある.本研究では,そのような実装漏れメソッドを検出し,開発者に提示する手法を提案する.提案手法では,同じ基底クラスを持つサブクラスの多くに実装されているメソッドや,同時に実装されているメソッドに着目し,既存プロジェクトを解析して得たメソッドの実装頻度と実装の共起関係を基に実装漏れメソッドを検出して,開発者に提示する.提案手法を Android Studio のプラグインとして実装し,既存の Android プロジェクトを対象に評価実験を行った結果,実装漏れメソッドのうちの半数以上を未実装メソッドの上位 15 % 以内に検出し提示できることを確認した.</p>
著者
名倉 正剛 高田 眞吾 土居 範久
出版者
一般社団法人情報処理学会
雑誌
情報処理学会論文誌 (ISSN:18827764)
巻号頁・発行日
vol.48, no.2, pp.588-603, 2007-02-15

近年,ユーザに意識させずにソフトウェアの動作する機器を自動的に連携させるために,"シームレスコンピューティング" という概念が注目されている.分散コンポーネント技術をシームレスコンピューティングに適応させるためには,コンポーネントが動作する機器をネットワークに接続するだけで,ネットワーク上のその他の機器と自動的に連携するという,いわゆる"Plug and Play" ができる必要がある.そのためには,満たさなければならない要件がいくつかある.本研究ではそれらのうち,コンポーネントを発見するための方法と,発見したコンポーネントを利用する際にコンポーネントの異種性を吸収するための方法に着目する.それらの要件を満たし,異種分散コンポーネントの存在するサーバやそれを利用するクライアントをネットワークに接続することによって,Plug and Play で動作させる環境を提案し,この環境を実現するシステムを実装する.Recently, "Seamless Computing", which is a concept for automated integration of appliances executing many software, has attracted a great deal of attention. To accommodate technologies for distributed components to Seamless Computing, it is necessary to be able to "Plug and Play" appliances that execute component software through integrating automatically with other appliances attached to the network. Many requirements need to be satisfied to make this possible. In this work, we focus on the discovery of components and the integration of heterogeneous components. We propose an environment where servers with heterogeneous distributed components and clients using those components can be executed through Plug and Play. We implement a system to realize this environment.