著者
門田 暁人 高田 義広 鳥居 宏次
出版者
一般社団法人電子情報通信学会
雑誌
電子情報通信学会論文誌. D-I, 情報・システム, I-コンピュータ (ISSN:09151915)
巻号頁・発行日
vol.80, no.7, pp.644-652, 1997-07-25
被引用文献数
34

ソフトウェアの保守, 再利用などのためには, 解析や理解の容易なプログラムを作成しておくことが重要である. ところが, 完成したプログラムを多数のユーザに配布する場合には, システムの安全性の確保や知的財産権の保護などのために, 内部の解析が困難なプログラムの作成が要求される場合がある. そのような場合には, 解析が容易なように作成したプログラムを, 解析が困難になるように変換する方式が有用であると考えられる. このようなプログラムの等価変換を, プログラムの難読化と呼ぶ. 本論文では, ループを含むプログラムを自動的に難読化する2通りの方法を提案し, それぞれの方法の有効性を評価するための実験について報告する. 実験の結果, 極めて小規模なプログラムに対しても, 提案する方法が有効であることがわかった.
著者
高田 義広 鳥居 宏次
出版者
一般社団法人電子情報通信学会
雑誌
電子情報通信学会論文誌. D-I, 情報・システム, I-コンピュータ (ISSN:09151915)
巻号頁・発行日
vol.77, no.9, pp.646-655, 1994-09-25
被引用文献数
6

ソフトウェア開発管理の観点から,プログラマの能力を客観的,正確,かつ,容易に測定する方法が要求されている.この問題に対して,本論文ではキーストロークからプログラマのデバッグ能力を測定する方法を提案する.ここで言うデバッグ能力とは,ソフトウェア故障を発見してからその原因を修正するまでの時間的効率である.提案する方法では,まず,キーストロークを監視して,各時刻のプログラマの活動を分類する.次に,得られた活動系列にプログラマモデルを適合させることによって,プログラマの特徴を表すパラメータを抽出する.このプログラマは,活動系列をマルコフ過程とみなして定義した.最後に,それらパラメータからデバッグ能力の評価値を算出する.主な評価値は,1個の欠陥の修正に要する時間の推定値Dである.適用実験の結果から,本方法が実際のソフトウェア開発において有効に働くことがわかった.特に,生産性に関する尺度(共通な仕様に対するプログラムの作成時間)とDとの間に強い相関が見出せた.
著者
野村 研仁 仲田 恭典 井上 克郎 鳥居 宏次 木村 陽一 米山 寛二 ノムラ ケンジ ナカタ ヤスノリ イノウエ カツロウ トリイ コウジ キムラ ヨウイチ ヨネヤマ カンジ Nomura Kenji Nakata Yasunori Inoue Katsuro Torii Koji Kimura Yoichi Yoneyama Kanji
出版者
情報処理学会
雑誌
情報処理学会研究報告ソフトウェア工学(SE) (ISSN:09196072)
巻号頁・発行日
vol.1987, no.38, pp.1-8, 1987-06-24

プログラムの実行時エラーの原因を効率よく発見するためには,デバッグに関する多くの経験的知識が必要である.熟練したプログラマーは,処理系が発生する実行時エラーメッセージを見ると,過去の経験に照らし合わせていくつかのエラー原因を推測し,ソースプログラムや実行結果を詳しく調べることによりエラー原因を特定する.実行時エラーメッセージを認識してからエラー原因を推定するまでの間に熟練したプログラマーが行う推論に用いる知識は,実行時エラーの原因診断システムには,ほとんど用いられていないのが現状である.本稿では,熟練プログラマーがデバッグの際に用いる知識の整理,これらの知識および推論方法を用いるPL/Iプログラムの実行時エラー原因診断エキスパートシステムの試作について報告する.When 'expert' programmer debugs programs, he uses many heuristic knowledges to find out the causes of errors. He at first infers the candidates for the causes of the errors from error messages and next verifies each candidate. Using these domain knowledges, we designed an expert system for diagnosing run-time errors in PL/I programs. We had devoloped a prototype of this system on the XEROX 1108 using the KEE. This prototype infers the cause of "data exception error", which practically happens frequently, in such a way that at first generating the hypothesis from error messages and then verifying these hypothesis.
著者
真野 芳久 杉藤 芳雄 鳥居 宏次
出版者
一般社団法人情報処理学会
雑誌
情報処理 (ISSN:04478053)
巻号頁・発行日
vol.18, no.8, pp.p808-813, 1977-08-15

Fortranに対しては, プログラミング方法論の観点からなされているものも含めて様々な批判がある. しかし, Fortranは現実的な面では多くの長所を備えているたとえば, 言語仕様の面で多少の差異はあるがほとんどの計算機システムにFortranコンパイラが用意されていてかなりの移植性(portability)が保証されていること, プログラムの蓄積が容易なこと, 効率の良いオブジェクト・コードとなること, 等であり, Fortranは最も広く使用されている言語のエつである. 今後この状態が急激に変化するとは考えにくい.
著者
柳 正純 門田 暁人 高田 義広 鳥居 宏次
出版者
一般社団法人電子情報通信学会
雑誌
電子情報通信学会技術研究報告. SS, ソフトウェアサイエンス
巻号頁・発行日
vol.94, no.334, pp.9-16, 1994-11-17
被引用文献数
3

我々は,プログラマーのキーストロークを監視・分析するシステムにより,人手を介さずに,バグの混入を報告する方式について検討している.ところが,キーストロークより得られるデータの上に,バグの混入に関連する行動の特徴が現れるかどうかは,従来,ほとんど調査されていない.そこで,そのようなキーストロークデータを収集し,プログラマの行動の特徴を検出するためのシステムを設計し試作した.試作したシステムを適用した例から,本システムがデータの収集に有効に働くことがわかった.また,バグ混入時の特徴をいくつか発見し,上述のような警告方式が実現可能であることを示唆するデータが得られた.
著者
会沢 実 練 林 飯田 元 井上 克郎 鳥居 宏次
雑誌
全国大会講演論文集
巻号頁・発行日
vol.48, pp.111-112, 1994-03-07
被引用文献数
1

大規模なソフトウェアのソースプログラムは,開発,保守のそれぞれの過程を通じて頻繁に変更を加えられる.変更されたプログラムの履歴からバグの作り込まれた時間の特定などの解析を行なう際,バージョン間の差分を求めるツールは非常に有用なものである.開発者は,プログラムテキスト間の差分を基にどの部分に変更が加えられたかを知ることができる.このようなプログラムの差分を求めるツールとしては,UNIXのdiffなどが広く用いられている.diffでは行単位のストリング比較を基にして差分を求めている.しかし,Cのプログラムのようにブロック構造を持つテキストの差分を求める場合,ネストの深さの変化や制御の流れの違いなども開発者にとっては重要な情報である.diffの差分の計算方法では,このようなプログラムの構造に関わる変化の有無をとらえることは困難である.本研究では,構文木の比較を基にしたプログラムテキスト比較ツール(progdiff)の試作を行なった.progdiffでは,ユーザがプログラムの階層構造の変化を容易に把握できるよう,表示方法についても工夫している.progdiffの入力は,C言語で記述されたプログラムテキストであるprogdiffは主に次の3つの部分から構成される.(1)入力された2つのCプログラムからそれぞれに対応する構文木を生成する.(2)木の比較アルゴリズムを利用して2つの構文木の各頂点の最大の対応を求める.(3)対応のとれていない頂点を両者の差分として,プログラムテキストの形で表示を行なう.次章以降において,ツールを構成するそれぞれの部分について説明する.
著者
大和 正武 門田暁人 高田 義広 松本 健一 鳥居 宏次
出版者
一般社団法人情報処理学会
雑誌
情報処理学会論文誌 (ISSN:18827764)
巻号頁・発行日
vol.40, no.2, pp.613-622, 1999-02-15
被引用文献数
19

本稿では 視線によるテキストウィンドウの自動スクロール方式を提案し 提案方式による自動スクロールが可能なテキストブラウザを用いた評価実験の結果について述べる. 従来の視線を入力とするインタフェースでは 視線情報をポインティングデバイスの代替として利用しており メニューやアイコンの選択のために一時的にではあるが作業対象から視線を外す必要があった. これに対して提案する方式では ウィンドウ内での視線の移動に着目する. 作業者はウィンドウ内で視線を移動させるだけで 表示したいテキスト部分をウィンドウ中央部に移動させ 表示させた状態でスクロールを停止させることができる. 評価実験の結果から テキストのスクロールにより文字列を検索するという作業(タスク)においては 視線による自動スクロールはキーボード操作によるスクロールと比較して同程度かそれ以上に有効であることが分かった. この場合 ウィンドウ中央から注視点までの垂直方向の距離をスクロール速度に比例させる制御方式が 他の方式に比べ優れていることが確認できた.This paper proposes a method and implementation for a system to automatically scroll a text window by tracking where a user is looking at. A user of the system can access a portion of the displayed document without using keyboard or mouse. Existing eye-tracking methods, which use eye-gaze as a substitute for pointing devices, require a user to "look at" menus and icons to manipulate a window display. In contrast, our proposed method uses eye movement within a window to control its display. A position of a user's gaze within a text window determines how to scroll the window, what portion of the text to display, and where to stop. Our user study demonstrates that the effectives of scrolling using this method is as good as one with convetional keyboard control as respects string search by scrolling. In particular, we have found that a controlling mechanism to determine the speed of scrolling in terms of the distance of the gaze point from the center of the window was both qualitatively and quantitatively superior to other control mechanisms in the string search by scrolling.
著者
神谷 芳樹 バーカー マイク 松本 健一 鳥居 宏次 井上 克郎 鶴保 征城
出版者
特定非営利活動法人 産学連携学会
雑誌
産学連携学 (ISSN:13496913)
巻号頁・発行日
vol.2, no.2, pp.2_26-2_37, 2006 (Released:2007-09-20)
参考文献数
29

ソフトウェア工学の分野で計測に基づいて生産性や品質への貢献を目指すのがエンピリカルソフトウェア工学の立場である.そこでは研究対象としてのソフト開発現場の獲得が鍵となるがその実現は容易ではない.筆者らはこの立場から課題の解決を狙い,2003年からソフトウェア産業力強化を命題とする国の施策をトリガに新しい産学官連携の枠組みを構築した.本論ではこの試みの考え方と構成を示し,2年半余経過時の到達点,実現した産学での現場データ共有状況,明らかになった課題を報告する.そしてこの経験を一般化し,テクノロジー・アービトラージとマーケットメイクという金融界の概念に示唆を受けた産学の仲介者の役割に関する考察を示す.
著者
荻原 剛志 飯田 元 新田 稔 井上 克郎 鳥居 宏次 Ogihara Takeshi Iida Hajimu Nitta Minoru Inoue Katsuro Torii Koji オギハラ タケシ イイダ ハジム ニッタ ミノル イノウエ カツロウ トリイ コウジ
出版者
情報処理学会
雑誌
情報処理学会研究報告プログラミング(PRO) (ISSN:09196072)
巻号頁・発行日
vol.1988, no.94, pp.89-98, 1988-12-09

我々はソフトウェアの開発過程を形式的に記述し,実行するための関数型言語PDL(Process Description Language)およびそのインタプリタを作成した.PDLでは開発過程をツールの起動やウィンドウ操作の系列として記述する.PDLはこれらの操作のための関数や複数の操作を並列実行するための関数を持つ.また,さまざまなマクロ機能があり,定義の記述を容易に行うことができる.PDLインタプリタは,実行中に検出した未定義関数をそのつどユーザに定義させる機能などを持ち,十分詳細化されていない記述も実行可能である.また,デバッグ機能やヒストリ機能,関数定義の画面編集機能などの機能も備えている.我々はすてにJSD(ジャクソンシステム開発法)など,いくつかの開発技法をPDLて記述し,実行している.PDLインタプリタは現在,いくつかのUNIXワークステーション上で稼働中である.
著者
藤田 房之 高田 義広 松本 健一 鳥居 宏次
出版者
一般社団法人電子情報通信学会
雑誌
電子情報通信学会技術研究報告. SS, ソフトウェアサイエンス
巻号頁・発行日
vol.93, no.244, pp.73-80, 1993-09-21

ソフトウェアの生産性や品質は,プログラマの能力に大きく依存することが指摘されている.しかし,プログラマの能力を客観的に測定するために収集すべきデータの種類や収集の方法は明らかになっていない.本報告では,プログラマのテスト・デバッグ能力を評価するための準備段階として,テスト・デバッグ過程の状態遷移のモデルを提案する.更に,提案するモデルのパラメータの推定に必要となる状態遷移時刻を,プログラマが入力したキーストロークのデータから自動的に推定する計測環境について述べる.評価実験の結果,開発した計測環境を用いることにより,プログラマの作業状況を撮影したビデオを観察することなしに,プログラマの状態遷移時刻の特定が可能であることが分かった.
著者
伊藤 充男 杉村 貴士 島 和之 松本 健一 鳥居 宏次
出版者
一般社団法人情報処理学会
雑誌
情報処理学会研究報告.IM, [情報メディア]
巻号頁・発行日
vol.98, no.9, pp.13-18, 1998-01-29

WWW ぺージの記述が HTML 規格に準拠していない場合, その解釈は WWW ブラウザに依存して異なる. このため, その WWW ぺージの作者が使用しているブラウザと異なるブラウザを使用した場合, 作者が意図している表示と異なることが多い. WWW ぺージを作成するときは, HTML 規格に準拠して, 特定のブラウザに依存しないように作成することが重要である. しかし, 現実にほとんどの WWW ぺージはブラウザに依存している. 本研究では, HTML 規格に準拠した WWW ぺージの記述を支援する HTML エディタを作成した.このエディタを用いることにより, WWWぺージの作者が HTML 規格を習得しなくても, ブラウザに依存しない WWW ぺージを記述することができる.
著者
大和 正武 門田暁人 松本 健一 井上 克郎 鳥居 宏次
出版者
一般社団法人情報処理学会
雑誌
情報処理学会論文誌 (ISSN:18827764)
巻号頁・発行日
vol.42, no.6, pp.1320-1329, 2001-06-15
被引用文献数
11

本稿では,一般的なGUI上でのターゲットのポインティング操作(ターゲットへマウスカーソルを移動し指し示す操作)に視線を利用することを目的として,ユーザの目の固視微動と視線の計測誤差の発生を考慮した3つのターゲット選択方式(Auto方式,Manual方式,SemiAuto方式)を比較検討する.(1) Auto方式では,ターゲットのサイズを仮想的に拡大する.(2) Manual方式では,ユーザが視線によるおおまかなポインティングを行った後で,ポインティング操作用デバイスをマウスに切り替える.(3) SemiAuto方式は,Auto方式とManual方式を組み合わせた方式である.一般的なGUIを想定した環境で評価実験を行った結果,SemiAuto方式による操作は従来のマウスのみを用いた操作に比べて,選択誤りを大幅に増やすことなく,操作時間は同程度かより短くなることが分かった.特に,非連続操作(カーソルの初期位置が不定の場合の選択操作)においては,操作時間を約2/3に短縮できた.The purpose of this paper is to increase the efficiency of pointingoperation --- an operation that moves and points a mouse cursor onto atarget item.We examined three pointing methods (Auto method, Manualmethod, and SemiAuto method) under the general GUI environment.By using the three examined methods, the computer user can select atarget even if jittery motions of user's eye and the measurementerror of an eye-tracking device occurred. (1) Auto method enlarges thetarget virtually. (2) Manual method switches the input device from theeye to the mouse after the user roughly pointed the target. (3)SemiAuto method is a method that combined Auto method and Manualmethod.The result of an experiment to evaluate three methods showedthat the efficiency of operation with SemiAuto method is same as orfaster than the mouse only operation without increasing errors largely.Especially, in the discontinuous selection situation (atarget selection whose cursor position is unpredictable), SemiAutomethod needed only about 2/3 of time of the mouse only operation.