著者
崔 恩瀞 藤原 賢二 吉田 則裕 林 晋平
出版者
日本ソフトウェア科学会
雑誌
コンピュータ ソフトウェア (ISSN:02896540)
巻号頁・発行日
vol.32, no.1, pp.1_47-1_59, 2015-01-26 (Released:2015-03-26)

リファクタリングとは,ソフトウェアの外部的振る舞いを変化させることなく,内部の構造を改善するプロセスを指す.研究者・実務者ともに,開発プロジェクトにおいて過去に実施されたリファクタリングを知りたいという要求がある.そこで,リファクタリングの実施を自動的に検出する手法(リファクタリング検出手法)が数多く提案されている.これらの手法は,多様な国際会議や論文誌において発表されており,研究者や実務者にとって研究成果を概観することは容易ではない.本稿では,リファクタリング検出手法の中でも,盛んに研究が行われている成果物の変更履歴解析に基づく手法を中心に紹介を行う.まず,本稿におけるリファクタリング検出の定義および分類について述べる.その後,成果物の変更履歴解析に基づく手法を紹介し,今後行われる研究の方向性について考察を行う.
著者
吉岡 信和 大久保 隆夫 宗藤 誠治
出版者
日本ソフトウェア科学会
雑誌
コンピュータ ソフトウェア (ISSN:02896540)
巻号頁・発行日
vol.28, no.3, pp.3_43-3_60, 2011-07-26 (Released:2011-09-26)

不特定多数が接続するインターネットが普及し,その上でのサービスが企業や個人にとって非常に重要な位置を占めるようになってきている.社会から見てサービスの利便性が向上している反面,悪意のある攻撃による社会への被害も増えてきており,サービスをセキュアに提供することが必須になってきている.しかし,セキュリティに関して考慮すべきことは多く,サービスをセキュアに提供することは容易ではない.本論文では,セキュリティの課題を整理し,その課題が,ソフトウェア技術によってどのように解決できるかを紹介する.そして,未解決な課題がどこにあるかを整理し,今後の研究の方向性を考察する.
著者
竹川 佳成 松村 耕平
出版者
日本ソフトウェア科学会
雑誌
コンピュータ ソフトウェア (ISSN:02896540)
巻号頁・発行日
vol.35, no.2, pp.2_95-2_108, 2018

本研究では,1人でのライブ中継形式のレポートを支援するシステム「ポケレポGO」を提案する.ライブ中継ストリーミングサービスの普及に伴い,だれもが自分の興味・関心,身の回りの出来事を放送できるようになった.1人でのライブ中継形式のレポートにおいては,撮影後に編集ができないことや,多くの作業を同時に行うことが求められるため,放送の品質の低下や,限られた情報の伝達による信頼性の低下といった問題を引き起こす可能性がある.これらの問題を解決するために,複数業務を円滑に進めるための機能をもつシステムを開発した.提案システムのプロトタイプシステムを実装し,評価実験によりプロトタイプシステムで撮影した映像の品質は,複数人で取材をする形態の比較手法と同等であることが明らかになった.
著者
佐藤 健
出版者
日本ソフトウェア科学会
雑誌
日本ソフトウェア科学会大会講演論文集
巻号頁・発行日
vol.19, pp.2A1, 2002

本論文は関数記号のないホーン節によって記述された仕様に関する極小変更の計算手法を述べる. 我々は以前, 仮説論理プログラミングを用いた極小変更仕様の計算を提案したが, そこでは変更部に対応する仮説を生成し, そのあと極小性検査が必要であった. 本論文では拡張論理プログラミングへの変換を用いることにより直接に極小変更仕様を計算する手法を提案する.
著者
名倉 正剛 薄井 駿 高田 眞吾
出版者
日本ソフトウェア科学会
雑誌
コンピュータ ソフトウェア (ISSN:02896540)
巻号頁・発行日
vol.38, no.2, pp.2_71-2_89, 2021

<p>Androidアプリケーションはイベント駆動型ソフトウェアである.開発者はAndroid API内のコールバックメソッドを継承し内部を記述することでイベントに対する処理を実装する.Android フレームワークから継承したクラスを作成する際に,実装すべきコールバックメソッドを実装し忘れている場合,アプリケーションが予想外の振る舞いをする可能性がある.本研究では,そのような実装漏れメソッドを検出し,開発者に提示する手法を提案する.提案手法では,同じ基底クラスを持つサブクラスの多くに実装されているメソッドや,同時に実装されているメソッドに着目し,既存プロジェクトを解析して得たメソッドの実装頻度と実装の共起関係を基に実装漏れメソッドを検出して,開発者に提示する.提案手法を Android Studio のプラグインとして実装し,既存の Android プロジェクトを対象に評価実験を行った結果,実装漏れメソッドのうちの半数以上を未実装メソッドの上位 15 % 以内に検出し提示できることを確認した.</p>
著者
東 和幸 高橋 仁 中川 博之 土屋 達弘
出版者
日本ソフトウェア科学会
雑誌
コンピュータ ソフトウェア (ISSN:02896540)
巻号頁・発行日
vol.36, no.4, pp.4_25-4_31, 2019-10-25 (Released:2019-12-25)

近年では,開発環境の変化に伴って開発者が大量の自然言語文書を扱う機会が増えており,文書をトピック分類するためのトピックモデルであるLDAが注目されている.文書のトピック分類を行う際,分類の精度をあげるために前処理として,分類の妨げとなる単語をストップワードとして除去することが重要であるが,通常のストップワードリストでは対象文書にのみ頻出する単語に対応できないという問題があった.また,1トピックに集約されるべき文書が複数トピックに分散してしまう問題があった.本稿では,これらの問題を解消するため,LDA適用の前後に対象文書からのストップワード抽出と類似トピック統合の2種類の処理を追加する.前処理では,Document Frequencyと単語の類似度を用いて,対象文書からストップワードリストを作成する.また,後処理では分類されたトピックについて構成する単語の類似度からそれぞれのトピック間距離を算出し類似トピックを統合する.LDAを用いたメーリングリストの分類に本手法を適用し,既存手法と比較することで,トピック分類の精度が向上することを確認した.
著者
幾谷 吉晴 上野 秀剛
出版者
日本ソフトウェア科学会
雑誌
コンピュータ ソフトウェア (ISSN:02896540)
巻号頁・発行日
vol.32, no.3, pp.3_84-3_90, 2015-07-24 (Released:2015-09-24)

本論文ではNIRSを用いてプログラム理解における1)数値計算,2)変数の記憶,3)条件分岐の判断が脳活動へ及ぼす影響を調査する.20人の被験者に3種類のコード片を理解する課題と,3段階の難易度の暗算を行う課題を与え,前頭極を計測する実験を行う.実験の結果,暗算の難易度によって脳活動に差が見られない一方で,変数の記憶を必要とする課題において有意に高い脳活動が見られた.結果はNIRSを用いた脳活動計測によりプログラム理解における記憶への負荷を評価できる可能性を示している.
著者
田浦 健次朗
出版者
日本ソフトウェア科学会
雑誌
コンピュータ ソフトウェア (ISSN:02896540)
巻号頁・発行日
vol.27, no.4, pp.4_144-4_171, 2010-10-26 (Released:2010-12-26)

GXPは,分散環境におけるシステム管理から並列処理までを,極力小さな導入コストで,多様な環境で行えるようにすることを目指した並列シェルである.2003年末からプロトタイプの開発が開始され,2度のスクラップを経て現在第3版が公開されている.いわゆる並列シェルの機能—同じコマンドラインを多数ホスト上で実行する—を基本としているが,既存の並列シェルと比べ,速度(応答時間), スケーラビリティに優れている.また,「分散環境での並列処理を支援する」という目標に沿って,従来の並列シェルにはない設計指針や機能が多数盛り込まれている.例えば(1) ファイアウォールやNATの存在する分散環境で柔軟に動作する,(2) SSH, Sun Grid Engine, TORQUEなど多様なアクセス方法のホストが混在した環境で動作する,(3) 1ホストにインストールすれば残りのホストにインストールする必要がない,(4) 多数のホスト上で環境変数やカレントディレクトリを設定したり,柔軟に実行ホストを選択したりしながら対話的に処理を進めて行くことができる,などである.さらに,makeを用いたワークフロー(依存関係のある仕事の集合)の記述とその分散並列処理系を組み込んでおり,makefileを記述するだけで,粗粒度タスクの集合を並列実行することができる.これらにより,システム管理の支援を主な対象とした従来の並列シェルと比べ,適用可能範囲が大きく拡大しており,総じて,分散環境を用いて様々なレベルの仕事を行うための,心地よい「環境」として用いることができるソフトウェアになっている.
著者
青山 幹雄 木下 康介 山下 和希
出版者
日本ソフトウェア科学会
雑誌
コンピュータ ソフトウェア (ISSN:02896540)
巻号頁・発行日
vol.30, no.3, pp.3_102-3_108, 2013

ステークホルダ間の動的な利害の相互作用の分析方法を提案する.従来のステークホルダ分析はステークホルダの組織における役割などの単一で静的な属性に基づいている.しかし,ステークホルダの利害は複合的で相互に影響する.本稿は,ステークホルダの役割とその活動を起点として利害を定義し,ステークホルダ間の動的な利害相互作用をi*を拡張してモデル化する方法を示す.さらに,ステークホルダ間の利害相互作用をその活動の貢献/リスク評価マトリクスにより評価し,ステークホルダを絞り込む方法を示す.提案方法を大学の節電問題に適用し,有用性を評価した.
著者
安田 和矢 伊藤 信治 中村 知倫 原田 真雄 肥後 芳樹
出版者
日本ソフトウェア科学会
雑誌
コンピュータ ソフトウェア (ISSN:02896540)
巻号頁・発行日
vol.38, no.4, pp.4_23-4_32, 2021-10-22 (Released:2021-12-22)

近年,ソースコードのデバッグ作業を効率化する自動プログラム修正が注目されている.従来の自動プログラム修正手法では,欠陥が含まれる命令を,ソースコード中の別の箇所に出現する式 (素材コード片) を用いて書き換えることで,欠陥を修正する.したがって,必要な素材コード片がソースコード中に存在しない場合,欠陥を修正できない.本研究では,修正対象システムで特定のコード記述パターンがよく用いられる,という開発者の知見を活用し,事前定義したコード記述パターンに基づき素材コード片を生成する手法を提案する.これにより,ソースコード中に素材コード片が存在しない場合でも,プログラムの自動修正が可能となる.実製品の開発中に検出・修正された欠陥48件に提案手法を適用した結果,既存手法では修正できた欠陥の数が9件だったところ,提案手法では2件増加し11件となった.
著者
市井 誠 小川 秀人
出版者
日本ソフトウェア科学会
雑誌
コンピュータ ソフトウェア (ISSN:02896540)
巻号頁・発行日
vol.32, no.3, pp.3_70-3_76, 2015

リファクタリングにおける振舞い保持を検証するため,プログラム等価性検証手法を提案する.提案手法は,プログラム構造の差分を抽象構文木に基づくモデルを用いて検出する.差分検出にあたり,リファクタリングにより意図された構造の変更を差分から除外するため,リファクタリングパターンに従ったモデル変換を実施する.また,提案手法をC/C++言語を対象とした検証ツールPOM/EQとして実装した.さらに,実装したツールの適用実験を行い,ある組込み製品にて実施されたリファクタリングのうち,56%を正しく判定できた.
著者
油谷 曉 垣内 正年 香取 啓志 尾久土 正己 猪俣 敦夫 藤川 和利 砂原 秀樹 眞鍋 佳嗣 千原 國宏
出版者
日本ソフトウェア科学会
雑誌
コンピュータ ソフトウェア (ISSN:02896540)
巻号頁・発行日
vol.28, no.4, pp.318-332, 2011

2009年7月22日に日本で皆既日食という天体ショーが起こり,様々な組織が皆既日食映像の伝送実験や多彩なイベントを行った.4K超高精細映像の伝送方法について共同研究を行っている朝日放送株式会社(ABC)では大規模なIPネットワークを使用した全天4K超高精細映像の伝送実験を企画し,奈良先端科学技術大学院大学(NAIST)も参加協力を行った.この伝送実験では,世界初の試みとして,皆既日食が起こっている場所の臨場感を全天4K超高精細映像を使用して可能な限り伝送するという目的で行われ,無事に実験の目的を達成することができた.本論文では,NAIST独自で非圧縮全天4K超高精細映像のLayer 3ネットワークを用いた伝送実証実験を行い,有効な伝送手法として実験を成功させたことについて報告し考察を与えることとする.
著者
都築 夏樹 吉田 則裕 戸田 航史 山本 椋太 高田 広章
出版者
日本ソフトウェア科学会
雑誌
コンピュータ ソフトウェア (ISSN:02896540)
巻号頁・発行日
vol.37, no.2, pp.2_97-2_103, 2020-04-23 (Released:2020-05-20)

ソフトウェアのテスト手法の1つであるファジングでは,テストケースを自動で生成,実行し,テストを自動化できる.現在,カバレッジに基づくファジングツールの開発が盛んに行われており,後発ツールの方が優位であることを示すために,ツール同士の比較評価が行われている.しかし,ベンチマークが評価ごとに異なることが多く,評価に用いられたベンチマークとは別のベンチマークを適用した場合に同様の性能を示すか不明である.そこで,カバレッジに基づくファジングツールの評価に利用された実績がある3つのベンチマークに対して4つのツールを適用した.その結果,一部の例外があるものの,統計的には後発ツールが優れていることがわかった.
著者
野田 夏子 岸 知二
出版者
日本ソフトウェア科学会
雑誌
コンピュータソフトウェア (ISSN:02896540)
巻号頁・発行日
vol.30, no.3, pp.3-17, 2013-07-25
参考文献数
52

ソフトウェアプロダクトライン開発は,ビジネス目的を共有し,また技術的にも類似性を持ったプロダクト群を全体最適の視点から体系的に開発するものである.資産の体系的な再利用が行われることから,ソフトウェアの構築の効率化を図ることができる.一方でソフトウェア開発においては構築より検証に多大なコストがかかる場合も多い.さらに,プロダクトライン開発においては資産から構築しうる膨大なプロダクトをどのように検証するのか,また資産そのものをどのように検証するのかなど,従来のソフトウェアの検証の課題に加えて特有の課題を持つ.本稿では,プロダクトライン開発において検証をどのように行えば良いのか,現時点の技術動向を紹介する.
著者
山中 淳彦 佐藤 雅彦
出版者
日本ソフトウェア科学会
雑誌
コンピュータ ソフトウェア (ISSN:02896540)
巻号頁・発行日
vol.14, no.4, pp.4_388-4_401, 1997-07-15 (Released:2018-11-05)

本論文では、代入を持つ関数型言語Λを提案する.この言語の定義を示し、操作的意味論がChurch-Rosser性や参照透明性のような良い性質を持つことを示す.次に、Λと[5]で提案された同様の関数型言語Λ94とを比較し、両者の間に成り立つ関係を調べる.Λの操作的意味論はΛ94のそれよりも簡潔に与えられており、そのためΛに対しては決定的な操作的意味論を自然に定義することができる.
著者
萩原 早紀 栗原 一貴
出版者
日本ソフトウェア科学会
雑誌
コンピュータ ソフトウェア (ISSN:02896540)
巻号頁・発行日
vol.33, no.1, pp.1_52-1_62, 2016

本論文では,俗に&ldquo;コミュ障&rdquo;と呼ばれている人間の性質に注目し,その中で他人と視線を合わせられない症状をもつ人々を社会福祉学的な観点から支援するためのシースルー型HMD を使用したシステムの提案を行う.この&ldquo;コミュ障&rdquo;支援システムは,彼ら/彼女らが他人と視線を合わせられないというコミュニケーション上の問題を緩和・改善するために,顔検出技術と視覚情報提示により相手の顔を隠したり,視線をそらす癖を改善するように指示したり,視線の挙動の客観的なデータを提示したり,コミュニケーション上の危険状態が発生した場合その場から脱出する手段を与えてくれる.このシステムのプロトタイプを実装し,評価した結果,いくつかの機能は有効に働き,今後の改善点が得られた.
著者
小野澤 拓 岩崎 英哉 鵜川 始陽
出版者
日本ソフトウェア科学会
雑誌
コンピュータ ソフトウェア (ISSN:02896540)
巻号頁・発行日
vol.38, no.3, pp.3_23-3_40, 2021-07-27 (Released:2021-09-27)

ネットワークを介してセンサからデータを収集したり,機器を制御する技術であるIoT (Internet of Things)が近年注目を集めている.eJS (embedded JavaScript)プロジェクトでは,IoTのプログラム開発にJavaScriptを利用可能とすることで,IoTアプリケーション開発の複雑さなどを軽減することを目指している.eJS プロジェクトでは,計算資源が限られるIoT機器や,その上で実行されるIoTアプリケーションに合わせてカスタマイズされたJavaScript仮想機械(eJSVM)を生成するフレームワークeJSTKを提供する.本研究では,eJSVM のふたつの新しいカスタマイズ項目を実現した.ひとつ目に,64 ビット環境向けと32 ビット環境向けのデータ構造を選択できるようにした.ふたつ目に,4種類の異なるごみ集めアルゴリズムから,対象アプリケーションと相性の良いアルゴリズムを選択できるようにした.実験により,これらのカスタマイズ項目の有効性を確認した.
著者
野田 夏子 岸 知二
出版者
日本ソフトウェア科学会
雑誌
コンピュータ ソフトウェア (ISSN:02896540)
巻号頁・発行日
vol.31, no.4, pp.4_66-4_76, 2014-10-24 (Released:2014-12-24)

ソフトウェアプロダクトライン開発では可変性管理が重要であり,その可変性を明示的に表現するためのモデル化手法が従来から複数提案されている.特に近年では,ソフトウェアプロダクトライン開発の広がりと,可変性を示すモデルの使われ方の広がりに伴い,従来の手法の拡張の提案もなされている.本解説論文では,代表的な可変性モデルであるフィーチャモデルを取り上げ,基本のフィーチャモデルとその代表的な拡張を紹介するとともに,ソフトウェアプロダクトライン開発の利用局面に応じた利用法について解説する.
著者
榎本 真俊 櫨山 寛章 奥田 剛 山口 英
出版者
日本ソフトウェア科学会
雑誌
コンピュータ ソフトウェア (ISSN:02896540)
巻号頁・発行日
vol.32, no.3, pp.3_58-3_69, 2015

インターネットの規模拡張性の検証やインターネット上の大規模攻撃を模擬する環境として,大規模なサーバクラスタ型テストベッド上に仮想計算機を用いて擬似的なインターネット環境を構築する,インターネットエミュレーションの研究が行われている.インターネットエミュレーションのうち,EBGPルータを用いAS(Autonomous System)網を構築し,ASレベルでのBGPのパス特性やAS間での連携が必要なインターネット技術またはソフトウェアの挙動の観察を目的としたエミュレーション手法を本稿ではASエミュレーションと呼ぶ.ASエミュレーションにおいて,サーバクラスタの限られた物理計算機上でAS数を最大化するために,仮想計算機技術が用いられる.この際,限られた物理計算機から個々の仮想計算機が必要とする量の資源を適切に割り当て,仮想計算機の多重度を上げる必要がある.メモリ資源に着目すると,EBGPで構成されたAS網で個々のBGPルータが必要とするメモリの最適解を求めることは,その計算量の複雑さから,現実的に困難であり,日々拡張していくインターネットの特性をサーバクラスタ上に模擬するためのメモリ量推定手法として向いていない.そこで,本論文ではソースコードレベルでの静的解析と小規模な実験における動態解析の結果を元に曲線回帰よってモデル化することで使用メモリ量の推定を行う手法を提案する.提案手法の妥当性は大規模サーバクラスタであるStarBEDにて,Quagga bgpdを用いたASエミュレーションに対し,Quagga bgpdのソースコードの静的解析と,仮想マシン100台まで動的解析を元にモデル化を行い,最大1500台の仮想マシンによるASエミュレーション環境の構築を通して,その適合性の検証を行った.その結果,提案手法は従来手法より計算量,規模追従性の点で優れていることが明らかとなった.