12
Gr3 計算機ソフトウェア 権藤研 小林研 西崎研 佐伯研 宮崎研 渡部研 横田理央研 横田治夫研 デファゴ研

Gr3 計算機ソフトウェア 小林研 権藤研 佐伯研 デファゴ研 宮 …西崎研究室 xプログラミング言語の理論と応用 xプログラミング言語の理論

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Gr3 計算機ソフトウェア 小林研 権藤研 佐伯研 デファゴ研 宮 …西崎研究室 xプログラミング言語の理論と応用 xプログラミング言語の理論

Gr3 計算機ソフトウェア権藤研小林研

西崎研佐伯研

宮崎研

渡部研横田理央研横田治夫研

デファゴ研

Page 2: Gr3 計算機ソフトウェア 小林研 権藤研 佐伯研 デファゴ研 宮 …西崎研究室 xプログラミング言語の理論と応用 xプログラミング言語の理論

M/(A?�"����K�R 4G�<��

�"����C-�"���3LC

9B��!��9B��9BP�I����WF1V

9B�-C9BD@4�-C9B�ST�-C�!� ��;U

=/(A?�"����4@6#

�"����*'���N:

+$J)

���!

2.4�5O4

7Q4

%0,

*'8E

&U8E

>H

MTQFGE<�¡�

p3+��xiq<�

t°�

Page 3: Gr3 計算機ソフトウェア 小林研 権藤研 佐伯研 デファゴ研 宮 …西崎研究室 xプログラミング言語の理論と応用 xプログラミング言語の理論

d�¤v$¬¯v�! ��"MTQFGE<�¡=¬¯29<|+8*C#�

! �-7"11��e8­,>0~�<�¤/¦®n;�d3707+C#�

! 2B;"S&RFGE<��$�¤$¬¯2A�37+C#�

1,+65~�;:,j�4C.%�

Page 4: Gr3 計算機ソフトウェア 小林研 権藤研 佐伯研 デファゴ研 宮 …西崎研究室 xプログラミング言語の理論と応用 xプログラミング言語の理論

計算工学専攻 小林研 SA.CS� Software Analytics Laboratory

コード・実行時のログ・開発者の行動などを解析し 開発に役立つ情報を抽出・活用することで

ソフトウェア開発で楽をするための研究を行っています

キーワード: ソフトウェア工学,開発支援ツール,デバッグ,プログラム解析

実行ログの解析バグ

自動検出 実行状況を把握 !振舞いの理解支援・傾向分析

開発行動履歴の解析

Eclipse!

変更を予測し推薦

!開発者の「経

験」の抽出・活用

ソースコード解析

コードチェッカー !

再利用可能コード片 !!

!詳細な依存解析

大量のソースコードからマイニング

Our Web URL

説明会日程は Webをチェック

Page 5: Gr3 計算機ソフトウェア 小林研 権藤研 佐伯研 デファゴ研 宮 …西崎研究室 xプログラミング言語の理論と応用 xプログラミング言語の理論

権藤研:ソフトウェア開発環境 ---ソフトウェア作りを楽にするソフトウェア---

プログラムが大きすぎて 全体が把握できない.

ここを変更したら,影響は どこまで及ぶだろう?

悩める プログラマ

ソフトウェア工学,ソフトウェア開発ツール プログラム理解,ソフトウェア保守,プログラム可視化 ソフトウェア開発における人的要素,プログラミング教育

研究テーマ �¬­nC�«�¦¡�

Page 6: Gr3 計算機ソフトウェア 小林研 権藤研 佐伯研 デファゴ研 宮 …西崎研究室 xプログラミング言語の理論と応用 xプログラミング言語の理論

佐伯研:ソフトウェア工学 Saeki Lab.: Software Engineering

“良い”ソフトウェアを“楽に”作ろう! ~高品質なソフトウェアを短期間で開発~

ソフトウェア変更の分析/支援

•  大事な要求の欠落 (漏れ) •  曖昧な記述

•  仕様書内の矛盾

知識資源を用いて発見

class%C%{%%%void%m1()%{%%%%%if%(…)%%%%%do_feature();%%%}%}�

LOCK �Feature Location: ソフトウェア機能の実装箇所 を特定し, 修正を簡単に

要求工学: どう良い要求仕様を作る?

コード差分の分析: バージョン間で行われたコード 変更の差分を読みやすく加工

要求獲得 の様子

視覚化技術を用いた 要求獲得・管理支援

リファクタリング支援: プログラムを自動的に キレイにしよう!

視覚化

Page 7: Gr3 計算機ソフトウェア 小林研 権藤研 佐伯研 デファゴ研 宮 …西崎研究室 xプログラミング言語の理論と応用 xプログラミング言語の理論

Concrete problem / Initial context

Discretization (hex)

Abstract representation

Abstract solution

Concrete solution

Step 1

Step 2

Step 3

Step 4

Robot SoftwareNetwork

Robo

ts

Sensors Motors

Local subsystemMotor

sSensors

Local subsystem

Motors

Sensors

Local subsystem

ZigbeeTime Sync.

Network Mon.

RoutingMulticast ControlSLAM

"Controller

Group Applications

Collision-free protocol

Distributed motion planning

Coordination building blocksGeometric

Algorithms

Vision Real-time

Positioning

Target Applications - distributed mobile robot networks - sensor networks

Distributed Algorithms - tolerating dynamic and malicious faults - higher scalability, dynamic topologiesProgramming Framework - fault-tolerant distributed software - protocol composition

coordination / cooperation / consistency / consensusCloudIoTSmartGrid Robot swarms

Distributed SystemsDependable Distributed Systems Lab. Défago研デ フ ァ ゴ高信頼分散システム

Page 8: Gr3 計算機ソフトウェア 小林研 権藤研 佐伯研 デファゴ研 宮 …西崎研究室 xプログラミング言語の理論と応用 xプログラミング言語の理論

西崎研究室

X プログラミング言語の理論と応用X プログラミング言語の理論

X λ計算などの計算モデルや型理論。プログラミング言語の諸性質を数学的に解明。

X プログラムの検証と応用X 数理論理学に基づくモデル検査という技術をさまざまな方面に応用。

X 研究の方向X 理論→数学的にしっかりと考えていく。

X 応用→おもしろい応用を考えていく。

Page 9: Gr3 計算機ソフトウェア 小林研 権藤研 佐伯研 デファゴ研 宮 …西崎研究室 xプログラミング言語の理論と応用 xプログラミング言語の理論

YX[^_�! [^_�5*%9=

! /�.���<3;�)1-����ZC��hR�ik���?FT�OK%'+6� ��2:!�%9=�[^�B>

! ��[^+�4 ! ?FTLU

! E@/�.����IC��?FT(bG])LU

! ?FTLU�����;#:(6

! OKNf�OKag�OK%'+6�

! Nf`A�dM��QJDNf�=&=

! @��'"�:= 7,;�IC��Nf�ag

! 8�$�j\�Sc��OKag

! �2:!�%9=

! ?VHP]We����0=

/�.����OS(5.;���) �

)1-�����2:!�%9=�

GPU

Copula

Page 10: Gr3 計算機ソフトウェア 小林研 権藤研 佐伯研 デファゴ研 宮 …西崎研究室 xプログラミング言語の理論と応用 xプログラミング言語の理論

  

   

   

  

Page 11: Gr3 計算機ソフトウェア 小林研 権藤研 佐伯研 デファゴ研 宮 …西崎研究室 xプログラミング言語の理論と応用 xプログラミング言語の理論

��X��Y!%�!

���@WGW=UHNWC8�45 +�3�(-&!

#��*-&BIE:;973.�!

��?LNSW?OU 1"�7�� JPAK,�

•  3.69R>QAM7/�!•  +���JT<PLU<!•  )DNWFU<!

-&73��V3�2�!•  1��!•  '�0�!•  $��!

Page 12: Gr3 計算機ソフトウェア 小林研 権藤研 佐伯研 デファゴ研 宮 …西崎研究室 xプログラミング言語の理論と応用 xプログラミング言語の理論

渡部研究室Programming Systems Group

様々なプログラミング・パラダイム(プログラミングに関する考え方)例:OOP,関数型,自己反映,アクター,AOP,COP,FRP

基礎諸性質を明らかにする

応用新しい応用領域の

開拓

表現使いやすい言語の設計と実装

研究テーマ・自己反映(リフレクション)にもとづく安全で適応的な分散システム・関数リアクティブ言語による組み込み系ソフトウェアの高度化・形式手法によるヒューマンエラーに対する耐性解析・プログラムの振る舞い分析にもとづくIoTデバイスへの攻撃可能性解析・プログラムの実行解析によるソフトウェアの理解支援

www.psg.c.titech.ac.jp