EclipseCon	NA2016	報告	
	
田中	
ビューファイブ	LLC	
2016/05/13
アジェンダ	
•  Eclipse	Founda:on	&	Eclipse	Conference	
•  Eclipse	Con	NA2016 報告	
–  Textual	DSL	関連	
–  Graphical	DSL	関連	
–  EMF	Forms 関連	
–  PolarSys	WG 関連	
–  その他	
•  最後に
Eclipse	Founda:on について	
•  オープンソースソフトウェア推進団体	
–  2001年11月に設立	
–  会員数:約	230	社・団体(2015年末)	
–  hIp://www.eclipse.org/org/founda:on/reports/annual_report.php	
–  参考 (報告者の概算)	
•  Luna	SR2	(2/27/2015	〜)	のダウンロード数:~	8.8	million (以下のURLの
合計数)	
hIp://www.eclipse.org/downloads/packages/release/luna/sr2	
(Java/JavaEE	で ~6.4	million)
Eclipse	Founda:on について	
•  Ac:ve	Projects	
–  276	(160	[mature]	+	116	[incuba:ng])	projects	
–  hIp://projects.eclipse.org/search/projects	
	
•  Working	Groups	
–  Automo:ve	
–  Internet	of	Things	(IoT)	*	
–  Loca:onTech	
–  Long	Term	Support	
–  OpenMDM	
–  PolarSys	*	
–  Science	
*	:	後で少し触れます
EclipseCon について	
•  EclipseCon	(Eclipse	Conference)は Eclipse コミュニティー参加者の集まり
(発表会・情報交換会的イベント)。	
•  2016	年の EclipseCon	スケジュール	
–  North	America	(NA):	3/7-10	@	RESTON	VA,	USA		
–  France:	6/7-9	@	TOULOUSE,	FRANCE		
–  Europe:	10/25-27	@	LUDWIGSBURG,	GERMANY	
•  報告者は従来 3 年毎に参加	
–  モデルベースソフトウェア開発コミュニティ	
–  2015/2016 連続参加	
–  参加者は22か国から281名(米、加、独、仏、英 …)	
–  日本からの参加は報告者のみ	
今回のスポンサー	->	
<-	OMG	会議の前週に同一会場にて
Eclipse と	OMG	
•  OMG	
–  基本的に(国際)業界標準「仕様」を策定	
•  Eclipse	Founda:on	
–  OMG標準の実装を含め各種技術のオープンソース化を推進	
–  OMG標準の実装に関わる事例	
•  UML/SysML/MARTE/fUML+PSCS	(Papyrus)	
•  EMOF	(EMF/ecore)	
•  MOF	QVT	(QVTo,	QVTd	(ATL))	
•  BPMN	(BPMN2	Modeler)	
•  SOA	(SCA	Tools)	
•  MOF	Model	to	Text	(Acceleo)	
•  …		
–  3年程度の周期で	OMG/Eclipse	合同ワークショップも開催
hIps://www.eclipsecon.org/na2016/conference/schedule/session/2016-03-07	
	
EclipseCon	NA	は例年月曜日(チュートリアルDay)から木曜日夕刻までの4日間
hIps://www.eclipsecon.org/na2016/conference/schedule/session/2016-03-08
hIps://www.eclipsecon.org/na2016/conference/schedule/session/2016-03-09
hIps://www.eclipsecon.org/na2016/conference/schedule/session/2016-03-10
hIps://www.flickr.com/photos/108559379@N08/24985913334/	
Wai:ng	for	a	keynote	to	begin:
hIps://www.flickr.com/photos/108559379@N08/25380624720/	
hIps://www.flickr.com/photos/108559379@N08/25054737173/	
Mike	Milinkovich	
Execu:ve	Director	
Eclipse	Founda:on	
Par:cipants!
Textual	DSL 関連	
•  eXXXtreme	Tutorial	-	Xtext,	Xbase	and	Xtend	
–  Home	Automa:on	
–  Building	a	REST	DSL	
•  Xtext	2.9	-	New	&	Noteworthy	
•  User-Centric	Diagram	Editors	
–  開発の動機と Demo	
•  Demo	自体は1年前に紹介したものと同じ	
•  10	Java	Idioms	Stomped	with	Xtend	
–  セッション不参加	
•  EclipseCon	Europe2015の同名の動画が公開されている	
•  Crea:ng	a	Standalone	Generator	with	Xtend	
–  Science	WGでの Xtext 利用事例
Xtext	
•  Home	Automa:on	サンプルモデル	
Device	Window	can	be	OPEN,	CLOSED	
Device	Hea:ng	can	be	ON,	OFF	
	
Rule	'Close	Window,	when	hea:ng	turned	on'	
		when	Hea:ng.ON	
		then	Window.CLOSED	
	
Rule	'Switch	off	hea:ng,	when	windows	gets	opened'	
		when	Window.OPEN	
		then	Hea:ng.OFF
Device	Window	can	be	OPEN,	CLOSED	
Device	Hea:ng	can	be	ON,	OFF	
	
Rule	'Close	Window,	when	hea:ng	turned	on'	
		when	Hea:ng.ON	
		then	Window.CLOSED	
	
Rule	'Switch	off	hea:ng,	when	windows	gets	opened'	
		when	Window.OPEN	
		then	Hea:ng.OFF	
	
Model:	
	declara:ons+=Declara:on*;	
Declara:on	:		
	Device	|	Rule;	
Device	:	
	'Device'	name=ID	'can'	'be'	
	 	states+=State	(','	states+=State)*;	
State	:	
	name=ID;	
Rule:	
	'Rule'	descrip:on=STRING	
	 	'when'	when=[State|QualifiedName]	
	 	'then'	then=[State|QualifiedName];	
QualifiedName	:	ID	('.'	ID)*;	
Xtext	
•  DSL	の文法を定義
Xtext
DEMO
Xtext	
•  Xtext	2.9	-	New	&	Noteworthy	スライド	
–  本スライドデータは EclipseCon サイトに公開されていませんが、本日
のMBSD	コミュニティーで紹介したいということで依頼し送って貰いま
した	
–  TypeFox 社 の Sven	Exinge さんと Jan	Köhnlein さんに感謝します
Graphical	DSL	(Sirius) 関連	
•  Modeling	Avengers	:	Open	Source	Technology	Mix	for	Saving	
the	World	
–  GEMOC	project	:	Sirius	を含む各種OSSツールの連携・統合利用プロ
ジェクト	
•  How	to	Make	Robust	and	Scalable	Modeling	Workbenches	
with	Sirius	
–  Sirius	:ps:	Sirius	の	Ge{ng	Started	を終えた後に復習+次の段階の
学習に使えそうです	
•  言いたい事が何かを考えながら読み進んでください
Sirius	
•  Sirius 事例紹介	
–  本コミュニティで過去にSiriusワークショップを2回開催して
います	
–  Sirius	を使うと EMF	Ecore モデルに基づいてグラフィカル
エディターを作成できます	
•  コード生成を行う場合には	Acceleo	を使います	
–  事例: Arduino	Designer (EclipseCon	2015	より)
Sirius	Tutorials	
Ecore	モデル	
Sirius	
グラフィカルエディタ!	
興味を持たれた方へ:	
hIps://eclipse.org/sirius/getstarted.html
Arduino	Designer	
•  Obeo	社の Mélanie	Bats	さんにより昨年 Github	上に公開さ
れたプロジェクト	
–  hIps://github.com/mbats/arduino	
•  EclipseCon	NA2015 での講演動画が InfoQ	で公開されていま
す
hIp://www.infoq.com/presenta:ons/arduino-designer
Arduino	 hIps://www.arduino.cc
Arduino	[hardware	(wiring)]	
hIps://www.arduino.cc/en/tutorial/blink
Arduino	IDE	[So~ware]	
setup	
loop	
IDE	付属のサンプルより
Arduino	Designer	[hardware]
Arduino	Designer	[so~ware]
Arduino	Designer	
arduino.ecore	(main	part)
Arduino	Designer	
•  Ecore	ファイルがあるので、グラフィカルエディタを
Sirius で作成できます	
–  [EMF]	Genmodel 生成	
–  [EMF]	Model	code	&	Edit/Editor	projects 生成	
–  [eclipse]	Plugins	を組み込んだ	Eclipse	起動	
–  [Sirius]	Viewpoint	Specifica:on	Project	作成	
–  [Sirius]	odesign マッピングファイル定義
EClass	(concept)	 Graphical	Element	
from	 to	
arduino.ecore	に基づく	
図形要素へのマッピング
DEMO
Sirius	
•  Modeling	Avengers	:	Open	Source	Technology	Mix	
for	Saving	the	World		
–  スライド	
•  hIp://cedric.brun.io/talks/ModelingAvengers/#/	
–  動画	
•  hIp://www.infoq.com/presenta:ons/smart-farming-system-tools	
•  GEMOC	Studio	demo:	star:ng	at	~	8	min	40	sec
Sirius	
•  Gemoc	プロジェクト	
–  The	GEMOC	Ini:a:ve	
•  ANR	INS	Project	GEMOC	
•  hIp://gemoc.org/ins/
Sirius	適用例	
•  Gallery	Page	
–  各種ドメインへの適用事例	
•  hIps://eclipse.org/sirius/gallery.html	
•  Sirius で何を作るか、事例を眺めて考えると楽しいかもしれません
EMF/EMF	Forms 関連	
•  Ecore	Editor-	Reloaded	
–  例題で説明します	
•  Make	it	happen!	-	Crea:ng	a	complex	form-based	UI	
in	30	minutes (過去にワークショップで紹介しました)	
•  EMFForms	goes	AngularJS	
•  Tailor-made	model	comparison:	how	to	customize	
EMF	Compare	for	your	modeling	language	
•  Model	Migra:on	with	Edapt
EMF	Forms	
•  EMF	Forms 概要	
•  Ecore	Editor	&	Genmodel	Editor	(v1.8.0	~)	
–  ブログ	
•  hIp://eclipsesource.com/blogs/tutorials/emf-forms-editors/	
–  Mars	にインストールが必要	
•  hIps://www.eclipse.org/ecp/emfforms/download.html	
•  1.8.x	Service	Releases	Update	Site	
•  “EMF	Forms	Ecore	Editor”	
–  Eclipse の次のリリースに入れる計画のようです
DEMO
組み込みシステム系の活動	
•  (一般的)組み込みシステム系	
–  Arduino	C++	IDE	for	Eclipse	
•  PolarSys	WG	
–  Open	source	tools	for	embedded	systems	
–  hIps://www.polarsys.org
PolarSys	WG関連	
•  本年は UML	tool を利用したものが中心 	
–  Let's	play:	Lego	meets	Papyrus	UML	
•  Papyrus	+	MOKA	
–  Evel	Knievel	versus	Incremental	Always	Advancing	
•  xtUML	
–  Papyrus	for	Real	Time:	Executable	modeling	on	Eclipse	
•  Papyrus-RT	
–  Mars	explora:on	guided	by	PolarSys
PolarSys	WG とは	
hIps://www.polarsys.org/about-us
PolarSys	WG の目的・対象領域	
hIps://www.polarsys.org/about-us
hIps://www.polarsys.org/solu:ons	
PolarSys の主なソリューション	
•  System	and	So~ware	Engineering	
–  Capella 	SysML	利用開発経験に基づき開発手法も組み込んだモデルベース開発環境	
–  Papyrus	for	UML/SysML 	モデリングツール(+コード生成)	
•  So~ware	development	
–  C/C++	for	Embedded	Linux	
–  Papyrus	RT	ROSE-RT	などの流れを汲むリアルタイム用UMLツール(+コード生成)	
•  xtUML(BridgePoint)との統合も視野に入れて開発が行なわれている	
–  Papyrus	for	UML	
–  Egit	
–  EGerrit	
•  Tools	Development	Kit	
–  Kitalpha	
•  Verifica:on	and	Valida:on	
–  Titan	
–  Trace	Compass
PolarSys	WG セション模様	
•  PolarSys	WG の多くのツールを使い Toy	Rover	(シンプルな探査ロボット)
を低予算($200-300程度?)で構築するコンテストを予定(ツールを使いき
ちんと設計することのコンテスト)。デモでは Papyrus-RT(?) でモデル作成。	
	
•  UMLツール(Papyrus)にOMG仕様を実装したMokaを組み込み、LEGOで
作った自動車のアセンブルラインをEV3で動かすデモ講演あり。	
–  更に、UML	ProfileとしてBPMNやBMMなどを組み込み活用した事例も確認。	
•  その他	
–  リアルタイムシステム向けUMLツールにPapyrus-RTとxtUMLがあり、両者が協
力体制にある(Papyrus-RTに機能追加を計画)。	
–  ソリューションの一つであるTrace	Compassツールを使った実時間システムト
ラブルシューティング(参加できず)
hIps://www.eclipse.org/org/press-release/20160222_papyrus_industry_consor:um.php	
…..
Papyrus-RT 情報	
•  インストール方法	
–  hIps://wiki.eclipse.org/Papyrus-RT/User_Guide/Installa:on	
•  UML-RT	モデルの作成からコード生成・実行まで (PingPong	モデル)	
–  hIps://wiki.eclipse.org/Papyrus-RT/User_Guide/Ge{ng_Started	
	
•  UML-RT	specifica:on	文書は本年6月を目標に準備中とのこと
xtUML 情報	
•  ホームページ	
–  hIps://xtuml.org	
–  Executable,	translatable	UML
EclipseCon:ここ2年のロボット系デモ他	
•  EclipseCon	NA	2016	
–  PolarSys	Rover	demo	(Raspberry	Pi?):	PolarSys	tools	must	be	used	
–  Papyrus4Lego	Car	Factory	demo	(Mindstorms	EV3)	
–  Obeo	Robot	demo	(Mindstorms	EV3)	
–  Goldman	Sacks	Robot	demo	(Mindstorms	EV3	&	Eclipse	Collec:ons)	
–  Robo:cs	Related	ac:vi:es	
•  IoT	Summit:	14	sessions	
•  C++	IDE	for	Arduino	
•  EclipseCon	NA	2015	
–  Xtext	XRobot	demo	(Mindstorms	EV3)	
–  Obeo	Arduino	Designer	demo	(Arduino	UNO)	
–  IBM	Robot	Car	demo	(Raspberry	Pi)	
–  Robo:cs	Related	ac:vi:es	
•  IoT	Day:	7	sessions
hIps://www.flickr.com/photos/108559379@N08/25049422273/	
hIps://www.flickr.com/photos/108559379@N08/25572337166/	
hIps://www.eclipsecon.org/na2016/session/lets-play-lego-meets-papyrus-uml	PolarSys	Rover	prototype	
hIps://www.youtube.com/watch?v=VSzkiu9uhgU	
hIps://www.youtube.com/watch?v=ywAHnBl8gz4
hIps://www.eclipsecon.org/na2016/iot-summit	
hIp://iot.eclipse.org		
IoT	関連: IoT	Summit
InfoQ	記事	
•  InfoQ.com		
–  スポンサー参加し、インタビュー実施やプレゼンテーション録画	
•  EclipseCon	NA	2016	関連記事	
–  Eclipse	Founda:on	Releases	Next-Genera:on	IDE,	Eclipse	Che	4.0	
•  hIp://www.infoq.com/news/2016/03/eclipse-che-release	
–  Microso~	Joins	the	Eclipse	Founda:on	
•  hIp://www.infoq.com/news/2016/03/microso~-eclipse	
hIps://www.flickr.com/photos/108559379@N08/25497782932/
Presenta:on 資料/録画データ 他	
•  EclipseCon	NA	2016	サイトの	Session	Slides	ページ	
–  hIps://www.eclipsecon.org/na2016/conference/session-slides	
•  全てのスライドが公開されている訳ではありません(60-70%?)	
	
•  InfoQ.com	による録画データ(現在15件が登録)	
–  hIps://www.eclipsecon.org/na2016/content/recorded-sessions	
•  幾つかの部屋に機器を設置し録画していました(これからも追加される模様)	
–  hIp://www.infoq.com/eclipsecon-2016/	
•  Eclipse	News:	Discover	Model-Based	Engineering	
–  hIp://www.eclipse.org/community/eclipse_newsleIer/2016/april/	
•  Papyrus	関連の記事4件
少々の感想	
•  Eclipse	Modeling	
–  Eclipse 環境の	MBSD	は従来	DSL	(Xtext,	Sirius,	…	),	UML,	EMF	など各種ツールそ
れぞれが上流から下流までのツール群を揃えようとしていました	
–  今回気付いたのは欧州の取り組みで、既存ツール群(+独自要素)をうまく組み
合わせ効率良くより良いものを作り出す仕組みを追求していることです	
–  Sirius(GEMOC)やPolarSysの話を聞いていると、構造的なモデルは	
•  まずXtextで簡単に作成	
•  次にSiriusでグラフィカルモデルとして表現・提示	
•  シミュレーションツールを用意し早い段階でモデル検証(valida:on)を行い	
•  モデルの詳細化を行い(UMLツール他)	
•  コード生成につなぐ ・・・ というプロセスを何度か聞きました	
•  比較的大規模システム志向のPapyrus-RTと限られたリソースに対応でき
るxtUMLの協力は印象的!	
•  Eclipse	Che	他をベースとしたクラウド上への展開	
–  現在はまだテキストベースですが、来年はどうなっているでしょう?	
•  次にIoT への適用が来そう?
最後に	
•  共通の理解を得るため「スケッチとしてのモデル」もありですが、どうせな
らモデルを有効利用しましょう	
–  モデルベースソフトウェア開発コミュニティーで いろいろな可能性をぜひ一
緒に検討しましょう	
–  良ければワークショップにも顔を出してください	
–  Xtext,	Sirius/Acceleo,	EMF	Forms	開発元とは良好な関係にありますので、使
われる際にサポートが必要なら声をかけて下さい	
•  昨年も言いましたが今年も言います: 皆さんも EclipseCon に参加しませ
んか?

EclipseCon NA2016 report