写真a

新田 直也 (ニッタ ナオヤ)

NITTA Naoya

職名

准教授

学位

博士(工学)(奈良先端科学技術大学院大学), 修士(工学)(奈良先端科学技術大学院大学)

専門分野

ソフトウェア, 情報学基礎理論, 総合領域, 情報学

出身大学 【 表示 / 非表示

  •  
    -
    1991年03月

    大阪大学   工学部   原子力工学   卒業

出身大学院 【 表示 / 非表示

  •  
    -
    2002年03月

    奈良先端科学技術大学院大学  情報科学研究科  情報処理学  博士課程  修了

学内職務経歴 【 表示 / 非表示

  • 2005年04月
    -
    2010年03月

    甲南大学   理工学部   講師  

学外略歴 【 表示 / 非表示

  • 2002年04月
    -
    2005年03月

      奈良先端科学技術大学院大学 情報科学研究科  

所属学協会 【 表示 / 非表示

  • 2005年04月
    -
    継続中
     

    ACM

  • 2005年04月
    -
    継続中
     

    IEEE Computer Society

  • 2005年04月
    -
    継続中
     

    情報処理学会

  • 2005年04月
    -
    継続中
     

    日本ソフトウェア科学会

 

研究経歴 【 表示 / 非表示

  • アーキテクチャ理解のための動的解析技術に関する研究

    (選択しない)  

    研究期間: 2011年04月  -  継続中

    大規模ソフトウェアのアーキテクチャ理解を支援するための動的解析技術の確立を目指している. 現在, 本研究室で開発したデルタ抽出技術をアーキテクチャ理解に応用する研究に取り組んでいる.

  • PUSH型/PULL型双方向リファクタリングを実現するための代数的ソフトウェアアーキテクチャ記述法

    (選択しない)  

    研究期間: 2013年08月  -  継続中

    データ転送方式をPUSH型にするかPULL型にするかはアーキテクチャ構成する上での重要な要素である. 本研究では, 形式的手法に基づいて, PUSH型とPULL型の間で双方向に変更可能なリファクタリングを実現し, Javaプログラムのプロトタイプを自動生成する手法の構築を目指している.

  • 複数クラスを疎結合化する自動リファクタリングに関する研究

    (選択しない)  

    研究期間: 2014年08月  -  継続中

    大規模な既存ソフトウェアの保守性・再利用性の向上を目指して, 互いに依存しあっている複数のクラスを疎結合化しシステム全体の複雑性を低減するアーキテクチャレベルの自動リファクタリング技術の構築に取り組んでいる.

  • 機能追加時の制約に基づく対話的機能捜索手法に関する研究

    (選択しない)  

    研究期間: 2016年08月  -  継続中

    オブジェクト指向プログラムに機能を追加する際に生じる静的および動的制約を用いて, ソースコード中における任意の機能の実装箇所を特定する対話的機能捜索技術の研究に取り組んでいる.

  • アプリケーションフレームワークを用いた開発における実装支援手法

    (選択しない)  

    研究期間: 2011年04月  -  継続中

    個別のアプリケーション開発において, アプリケーションフレームワークの利用方法の把握に多大な時間が費やされることは少なくない. そこで本研究では, サンプルアプリケーションの動的解析を行って自動でフレームワーク利用例を抽出する技術の開発を行った.

全件表示 >>

論文 【 表示 / 非表示

  • Revealing Implicit Correspondence between Bytecode Instructions and Expressions Determined by Java Compilers

    Izuru Kume, Masahide Nakamura, Naoya Nitta

    Proc. of the 25th Australasian Software Engineering Conference (ASWEC)     126 - 130   2018年11月  [査読有り]

    共著

  • Constraints Based Approach to Interactive Feature Location

    Daiki Fujioka, Naoya Nitta

    The 33rd IEEE International Conference on Software Maintenance and Evolution (ICSME 2017)     2017年09月  [査読有り]

    共著

    Feature location is a maintenance task to identify the
    implementation of a feature within the source code. To automate or support the task, extensive studies have been conducted on feature location techniques. In this paper, we focus on certain static and dynamic constraints regarding feature additions to object-oriented programs, and construct an interactive feature location procedure based on the constraints. We manually conducted a case study for several features of a real-world program on the assumption that the user always correctly answers the questions asked by the procedure. The results show that over 75% of the feature’s implementation could be efficiently covered by the procedure with relatively small number of execution traces.

  • Experiences of debugger-based architecture comprehension

    Naoya Nitta

    18th IEEE/ACIS International Conference on Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing (SNPD 2017)     2017年06月  [査読有り]

    単著

    Architecture comprehension is crucial for appropriately maintaining, evolving and reusing large scale software. However, in an actual software development, architecture descriptions are often insufficient, obsoleted or at worst missing, and most of the maintenance tasks are performed without sufficient understanding of the architecture. While many techniques to extract architectural information from existing source code have been proposed to support architecture comprehension, debuggers are still powerful for more exact comprehension of architectures. However, a debugger-based comprehension task usually becomes complicated and cumbersome. In this paper, we study debugger-based manual comprehension processes of real-world architectures. Through the case studies, we found that manual comprehension processes are basically driven by backward tracking of runtime flow of multiple non-primitive objects and such tracking task is cumbersome and time-consuming when only a debugger is available. We expect that the experiences of the case studies will be beneficial to exploring a dynamic analysis approach which can support exact comprehension of architectures.

    DOI

  • A Formal Approach for Guiding Architectural Design with Data Constraints

    Naoya Nitta

    The 15th IEEE/ACIS International Conference on Computer and Information Science (ICIS 2016)     2016年06月  [査読有り]

    単著

    The data managed in a software system is often controlled to behave dependently. Basically, dependent parts of the data can be controlled through their internal connections. However in a real-world system, dependencies among the data and its required behaviors are generally complex and designing its internal structure and control mechanism to satisfy all requirements becomes challenging. To cope with the problem, in this paper, we present a formal approach to guide an architecture design process so that given execution scenarios can be satisfied through iterative refinement of constraints among the data. For case studies, we applied our approach to a customer management system and a 3D game framework, and confirmed that a valid architectural design guide can be obtained.

    DOI

  • Composite Refactoring for Decoupling Multiple Classes

    Yusuke Takahashi, Naoya Nitta

    IEEE 23rd International Conference on Software Analysis, Evolution, and Reengineering (SANER 2016)     594 - 598   2016年03月  [査読有り]

    共著

    Abstract:
    An architecture level change of existing software requires tedious, error-prone and time-consuming tasks. However, current Integrated Development Environments (IDEs) do not support such high-level refactorings. In this paper, we present a scalable but simple composite refactoring for decoupling multiple classes. In addition, we introduce several primitive refactorings as components of the composite refactoring. The details of the results of applying our composite refactoring to an actual architectural change are also reported in this paper.

    DOI

全件表示 >>

講演・口頭発表等 【 表示 / 非表示

  • オンラインおよびオフライン動的解析プラットフォームの開発とそのオブジェクトフロー解析への応用

    石谷涼, 新田直也

    第202回ソフトウェア工学研究発表会  (小樽経済センター)  2019年07月  -  2019年07月    情報処理学会

    ソフトウェア工学のさまざまな分野において動的解析技術が用いられている.動的解析とは, プロ
    グラムの実行時の情報を収集し解析を行うプログラム解析技術で, 解析対象となるプログラムの実行終了
    後に解析を行うオフライン解析と, 実行の途中でそれまでに収集された情報の解析を行うオンライン解析
    に分類することができる. 本稿では, オンラインおよびオフライン解析ツールの開発支援を目的として本研
    究室で開発した動的解析プラットフォームの紹介を行う. また, 本プラットフォームを利用してJava プロ
    グラムを対象としたオブジェクトフロー解析ツールを開発したので報告する.

  • オブジェクト指向プログラムの性質に基づく対話的機能抽出手法の提案

    藤岡 大樹, 新田 直也

    第194回ソフトウェア工学研究会  2016年11月  -  2016年11月    情報処理学会

  • 影響波及を考慮したフレームワークアプリケーションの障害位置特定手法

    森岡 友樹, 新田 直也

    第190回ソフトウェア工学研究会  2015年12月  -  2015年12月    情報処理学会

  • データが動的に連動するソフトウェアの設計指針導出手法

    小林 謙太郎, 新田 直也

    第187回ソフトウェア工学研究会  2015年03月  -  2015年03月    情報処理学会

  • 複数クラスを横断する情報隠蔽を実現するリファクタリングフレームワーク

    高橋 祐介, 新田 直也

    第186回ソフトウェア工学研究会  2014年11月  -  2014年11月    情報処理学会

全件表示 >>

産業財産権 【 表示 / 非表示

  • 情報隠蔽装置、情報隠蔽方法、情報隠蔽プログラム、およびコンピュータ読み取り可能な記録媒体

    特願2005-12133  特願2005-12133  特願2005-12133

    新田直也

Works(作品) 【 表示 / 非表示

  • AR落書きアプリgARffiti

    本郷亜季, 新田直也  コンピュータソフト 

    2019年06月
     
     
     

    AR技術を体験を通して知ることができるアプリケーションとして, 現実空間内の水平面・垂直面に仮想的に落書きができるスマホアプリgARffitiの開発を行った.

  • なんぼーくん川渡パズル用人工知能

    Nitta Lab., Konan  コンピュータソフト 

    2015年09月
     
     
     

    甲南大学のキャラクターであるなんぼー君を主人公とした川渡パズルゲームを人工知能に解かせるアンドロイドアプリ。

  • なんぼーくん川渡パズルゲーム

    Nitta Lab., Konan  コンピュータソフト 

    2015年09月
     
     
     

    甲南大学のキャラクターであるなんぼー君を主人公とした川渡パズルゲームのアンドロイドアプリ。

学術関係受賞 【 表示 / 非表示

  • 日本ソフトウェア科学会 2007年度論文賞授賞

    2007年06月13日   日本ソフトウェア科学会  

    受賞者:  新田直也

  • 情報処理学会 平成15年度山下記念研究賞

    2003年07月25日   情報処理学会   

    受賞者:  新田直也

科研費(文科省・学振)獲得実績 【 表示 / 非表示

  • 項書換え系を対象としたモデル検査手法に関する研究

    基盤研究(B)

    研究期間:  2003年04月  -  2004年03月 

    モデル検査法と項書換え系の理論を融合し,一般に無限の状態空間を持つソフトウェアに対しても自動検証できるようモデル検査法を理論的に拡張することを目指す.

共同・受託研究活動実績(公開) 【 表示 / 非表示

  • ソフトウェア開発・保守作業支援のための実証的研究

    提供機関: 東京コンピュータサービス株式会社  国内共同研究

    研究期間: 2013年04月  -  継続中 

    ソフトウェアの開発および保守工程において発生する膨大な作業を支援するため、現在、さまざまな研究が進められている。しかしながらそれらの研究の多くは、

    1. 研究機関では、研究成果を実証できるような実践的な開発プロジェクトを実施することが困難である
    2. 研究機関では、研究成果を使いこなせるような一定レベルの技術者を一定数確保することが困難である

    などの理由により、研究成果の有効性の厳密な検証が行われていないのが現状である。
     そこで本研究では、大学とソフトウェア開発企業が連携をすることによって、大学における研究成果の厳密な実証実験を行うことを目指す。

研究シーズへのリンク 【 表示 / 非表示

共同研究希望テーマ 【 表示 / 非表示

  • アーキテクチャの動的側面に関する評価・解析の実証的研究

  • アーキテクチャレベルのリファクタリングに関する実証的研究

  • 動的解析技術を用いた大規模ソフトウェア理解に関する実証的研究

  • アプリケーションフレームワークの利用支援に関する研究

 

その他教育活動及び特記事項 【 表示 / 非表示

  • 2009年10月
     
     

    A Practice of Collaborative Project-Based Learning for Mutual Edification between Programming Skill and Artistic Craftsmanship

  • 2009年04月
    -
    2013年04月

    情報系学生と芸術系学生のコラボレーションによる実践的プロジェクト実習

  • 2008年12月
     
     

    3Dゲーム用アプリケーションフレームワークの開発を通したエンピリカルなソフトウェア工学教育の試行

 

所属学協会等の委員歴 【 表示 / 非表示

  • 2016年04月
    -
    継続中

    情報処理学会   ソフトウェアエンジニアリング教育委員会

  • 2009年04月
    -
    2011年03月

    情報処理学会   ソフトウェア工学研究会 運営委員

社会貢献活動 【 表示 / 非表示

  • 文部科学省 成長分野を支える情報技術人材の育成拠点の形成(enPiT) ビッグデータ・AI分野 運営委員

    2016年04月
    -
    現在

    文部科学省のプロジェクト「成長分野を支える情報技術人材の育成拠点の形成(enPiT)」のビッグデータ・AI分野の運営委員会に、甲南大学の代表として参加し、教育活動を行っている。

  • 甲南高校模擬講義

    2007年04月
    -
    現在

    ソフトウェア開発に関する模擬講義を毎年一回づつ行っている。

 

提供可能な資源 【 表示 / 非表示

  • Javaプログラムを対象とした動的解析プラットフォーム

    Javaプログラムを対象とした、
    1. 実行トレース収集ツール
    2. 実行トレース解析ツール
    を基本とするプラットフォームをEclipseプラグインとして開発している。

  • アプリケーションフレームワークの利用例抽出ツール

    Javaで記述されたアプリケーションフレームワークの使用例をサンプルプログラムの動的解析を行うことで自動で抽出するツール。Eclipseプラグインとして開発している。

  • Android用3Dゲームフレームワーク(RadishForAndroid)

    Javaで記述されたAndroid用3Dゲームフレームワーク。

  • 高速なマーカレスARエンジン

    Javaで記述された動画像のリアルタイム解析に基づくマーカレスARエンジン。現在のところスマートフォンには未対応。