Successfully reported this slideshow.

EclipseCon Europe 2019 modeling report

2

Share

1 of 59
1 of 59

EclipseCon Europe 2019 modeling report

2

Share

Download to read offline

今年の EclipseCon Europe のモデリング関連は、モデリングツールの Web 展開が中心でした。そのあたりの動向を報告しました。不適切な記述などあればコメント下さい。

今年の EclipseCon Europe のモデリング関連は、モデリングツールの Web 展開が中心でした。そのあたりの動向を報告しました。不適切な記述などあればコメント下さい。

More Related Content

Related Books

Free with a 14 day trial from Scribd

See all

Related Audiobooks

Free with a 14 day trial from Scribd

See all

EclipseCon Europe 2019 modeling report

  1. 1. Eclipse Conference Europe 2019 参加報告 --- モデルベースソフトウェア開発コミュニティ --- Dec. 12, 2019 view5 LLC 田中
  2. 2. 昨年日本で講演をしてくれた Mike Milinkovich さん
  3. 3. Eclipse Conference Europe (ECE) について • Eclipse Conference • North America (NA:北米) 原点であったが実質停止 • Europe(ドイツ) 最大規模で2019年はこれだけが開催 • France(フランス) 2019年は開催なし(実質停止?) • 昨年 Mike さんから「2019年は自前のイベントはできるだけ減らし、むしろ他のオー プンソース団体等のイベントに出展することでアピールしたい」という話を聞いて いました。 • 本年は OSGi 20周年記念ということで共同開催になっていました。 • 報告者は、当初 NA に参加していましたが、これが実質停止となったため、モデリン グ関連のセションが多い France にスイッチ。ところが、今年はこれも開催されな かったため、ECE に参加。
  4. 4. https://searchnetworking.techtarget.com/definition/OSG i
  5. 5. ECE 2019 の概要と参加の狙い • 開催場所:ドイツの Ludwigsburg • Stuttgart 空港から北に向けて電車で 16 駅(片道 2.9ユーロ) • 宮殿が有名で、その近くにある The Forum am Schlosspark という会議専用施設 • 日程 • 10月21日(Community Day)から24日まで • 参加者数: 500名前後(正式の発表がなかったので私の感覚の数字です) • Eclipse Foundation の4つの注力領域 • Cloud Native Java クラウドネイティブJava • IoT & Edge IoTとエッジ • Automotive 自動車(自動運転等) • Tools ツール • 今回の参加の狙い • ツール領域で Modeling in the cloud/on the web 関連のセション に参加し現状を把握すること
  6. 6. モデリング関連で見てきたことの概要 • Web IDE 系 • 少しだけ触れます • Modeling in the cloud (on the web) の動向 • この領域をリードするキープレーヤーは以下の3社 • Obeo 社 • TypeFox 社 • EclipseSource 社 • それぞれ取り組みが異なりますが、今回は EclipseSource 社が大攻勢をかけた印象があり ます。 • 基本を振り返った後、各社の取り組みを紹介します。 • Xtext ステータスアップデート • Systems Engineering 系 • 参加したセションについて少し触れます
  7. 7. Web IDE
  8. 8. Web IDE について • Web IDE という分類のセッションがあった訳ではありません。 • Eclipse としては Che (workspace manager) や Xtext での取り組みから Web 化の検討が始まっ ていたと言えると思います(i.e. 多分3〜4年前くらいから)。 • Cloud Computing 系技術(Docker、Kubernetes、Node、HTML/CSS/TypeScript など)との組み 合わせて進化し、実用化されています。 • Che • RedHat 社が Codenvy 社を引き継ぎ、OpenShift 製品に組み込んでいます。元々 Web IDE として自製 の GWT を利用したものがありますが、今では Theia ベースのものがメインとして有力視されていま す。 • Theia • TypeFox 社が中心となり開発した Theia は(VSCode の拡張サポートなど)オープンソースの世界で エンハンスを続けていますが、最近は Gitpod という、Github のソースコードを Theia ベースの Web IDE で編集できるようにするクラウドサービスに力をいれています。 • Theia 開発者の講演(Eclipse Theia 1.0)で経緯の説明がありました。 <Sven コメントについて> • IBM 社からは今年の夏頃に発表された codewind について、Microsoft 社からは VSCode の話 がありました。
  9. 9. Eclipse Theia 1.0 - The new platform for engineering tools • Theia と Visual Studio Codeとの違い • 拡張性:①言語サポートだけでなく既存のEclipseに相当する拡張性を実現、②VS Code Extensions、③Sprotty, Arduino Designer 他 • 中立性を保ったオープンソース:コントリビュータや他社との連携 • Desktop & Cloud:シングルソース • 何故 Cloud 上の IDE か • 最近の開発環境は複雑で Cloud ベースの開発ツールも多数あり、Cloudに基盤を置くのが自然 になりつつあったため • Disposable, Ready-to-Code Dev Environments for any project • 採用: Erricson, redhat, IBM, Google, arm, Arduino, SAP • Theia 1.0 ターゲット時期: March 2020
  10. 10. How we built gitpod.io, an online IDE based on Eclipse Theia • How というより Why 色を強く感じる内容でした。 • Eclipse での経験から • git を使っての DevOps /ソース管理に手間(Javaバージョンやdependencyなど、Pull Request 対応、Issue への対 応)がかかりすぎる、 iPad で使えない • 出来る限り無駄な時間を使わず、効率的なソフトウェア開発を行える仕組み・環境を追求した • DevOps 系の Dev Environment as Code という考え方に賛同 • Gitpod 操作系インタフェース紹介 • Gitpod クラウドサービス構築・展開の話 • 使い方 • Chromeブラウザに拡張を入れる(Gitpod ボタンが追加される) または • github のプロジェクトページを表示し、そのURLの前に “gitpod.io/#” を追記 (例えばhttp://gitpod.io/#https://github.com/eclipse/sprotty)
  11. 11. 関連セッション • Web IDE では Che と Theia が中心でしたが、IBM社やMS社の発表もありました(私は Community Day の下の Summit に午前中だけ参加したので Che の話だけしか聞けませんでし た)。 • Eclipse Che & Theia Contributor Summit (Community Day) でのセッション • How Codewind extends Che • Integrating custom debugger in modern hosted/web IDE using Debug Adapter Protocol • Improving Che's Extensibility • Che Roadmap • Life of a Theia Widget • Towards an Open Extension Registry & Marketplace • Migrating Classic SAP WebIDE to Theia • Hosting your custom Theia IDE on gitpod.io • Complete software design loop with Theia and Trace Compass • Theia Roadmap
  12. 12. 関連セッション • メインカンファレンスでの関連セッション • Building Cloud and Desktop IDEs with Theia • Managing lightweight, standalone and composable Che workspaces with Kubernetes Operators • Eclipse Theia 1.0 - The new platform for engineering tools • Move your VS Code extension into Eclipse Che • Using Theia to take trace analysis and visualization to the next level • Building a web-based IDE with Eclipse Theia • Eclipse Che 7: The new, the noteworthy and the future plans! • Evolution of Visual Studio Code Java Ecosystem • How we built gitpod.io, an online IDE based on Eclipse Theia. • Che7: Let’s code our Cloud native Quarkus microservice without the "GraalVM and co" setup hell.
  13. 13. Modeling in the cloud/on the web
  14. 14. Eclipse での Graphical Modeling/Editor の歴史 • Eclipse の最初は EMF + GEF の組み合わせ(GEFのAPIレベルが課題でした:個人的感想) • GMF が登場。当初勢いがあったのですが、メインストリームには至らず。 • BonitaSoft 社のように GMF で製品開発する会社も登場しました。 • 英国 Kent 大学のチームが開発したツールとのあわせ技でしのいでいました。 • その後も Graphiti 等幾つかの GMF 後継候補プロジェクトが現れました。 • 現在では GMF のランタイムを使う Sirius がこの領域で最も使えるツールとなっています。 • これまでの全てのツールは Eclipse の Plug-in Project として利用者のPC/Mac上でだけ動作する Graphical Editor を作成してきました。 • 近年、Java IDE としては 競合製品が勢いを持ち始め、また SWT の拡張・メンテナンスができなくなった ことなどもあり、Eclipse を発展的に拡張できないか各所で検討が始まっていました。 • Textual DSL ツールを推進する TypeFox 社が、Microsoft社のLanguage Server Protocolに目を向け、また Visual Studio Code にも触発され、オープンで拡張性を備えつつ近年の Web 技術を利用することでテキ ストベースの Web IDE の一つ(Theia)を実現しました。更にモデルの Visualization を行う Sprotty も開 発し、これがGraphical Modeling/Editor Web化の最初の一歩(多くの人が「これならいけそうだ」と感じ た)になったと言えます。
  15. 15. Web 化の考え方 • 従来利用者の開発・利用環境にインストールしていたものを機能分割し、 Web技術を活 用することで、サーバ側とフロントエンド側に分割配置します。 • フロントエンド(利用者側) • Webブラウザ • ブラウザ内で動作するエディタ (テキストの場合はMS社のMonaco editor等) • TypeScript/CSS 等で作成したUI対応機能 • Sprotty client-side • サーバ側(主にJava) • (Graphical) Language Server Protocol/Platform など • モデル管理機能(含むユーザ操作のバックエンド側処理) • マルチユーザ(チーム開発)対応機能 など • Sprotty server-side • 通信 • Graphical Language Server Protocol (GLSP) など
  16. 16. Modeling in the cloud/on the web TypeFox 社
  17. 17. Talks by TypeFox • Introduction to Kubernetes • How we built gitpod.io, an online IDE based on Eclipse Theia. • Web IDE で紹介したもの • Graphical Views for Web-Based Modeling Tools With Theia and Sprotty • Eclipse Theia 1.0 - The new platform for engineering tools • Web IDE で紹介したもの • Building Cloud and Desktop IDEs with Theia • Workshop: 主に Gitpod の使い方の説明
  18. 18. TypeFox 社の取り組み • itemis 社からのスピンアウト • Xtext より現在ではむしろ Theia をメインにビジネスを推進 • Gitpod (githubにあるソースコードを簡単にWeb IDEで利用できる)サービスを提供中 • Graphical エディタは、Textual DSL モデルを可視化したもの、という立場で、原則Text ファー スト • 技術としては約2年前に Sprotty を発表し Web 化を推進して行くように思えました(昨年の EclipseCon France での印象)が、ECE2019 ではその後の応用面の進展がそれほど見て取れませ んでした。 • TypeFox社は基本技術(Sprotty)に特化し、その応用面は Obeo 社や EclipseSource 社に任せよ うとしているのかもしれません(私が受けた印象ですが、Sprotty の応用に手を出さないのは TypeFox 社の現時点でのスタンスで、今後変わるかもしれません)
  19. 19. Graphical Views for Web-Based Modeling Tools With Theia and Sprotty • Sprotty について • Theia の拡張機能の一つとして(基本的に)モデルの可視化を実現 • https://github.com/eclipse/sprotty • デモで使われた依存性グラフと状態遷移モデル • https://github.com/TypeFox/npm-dependency-graph • https://github.com/TypeFox/theia-xtext-sprotty-example • これらは Gitpod を使うと簡単に動作確認出来ます
  20. 20. GRAPHICAL VIEWS FOR WEB-BASED MODELING TOOLS WITH THEIA AND SPROTTY (p.3) 23 講演スライドより
  21. 21. https://github.com/TypeFox/npm-dependency-graph
  22. 22. https://github.com/TypeFox/theia-xtext-sprotty-example
  23. 23. Modeling in the cloud/on the web EclipseSource 社
  24. 24. Talks by EclipseSource • Property editors in space (AR) • Data-centric editors for domain experts with EMF Forms • What every Eclipse developer should know about Eclipse 4 – FX • Your roadmap towards web-based tooling • The evolution of Papyrus, an open SysML and UML tool • Lifting the greatness of EMF into the cloud with EMF.cloud • Building web-based tools with Theia and Che • Eclipse Theia and Che, explained and explored! • Diagrams in web and space with GLSP • Modernizing Eclipse RCP/e4 applications and tools
  25. 25. EclipseSource 社の取り組み • EMF/EMF Form/JSON Form などの取り組みを行ってきた Integration を得意とする会社 • 既存のEclipseプロジェクトの成果を組み合わせることで Modeling in the cloud へのアプローチ に着手(ここ1年+αのこと) • 特徴としては、これまで開発されてきたEclipse技術(EMF Forms/JSON Forms* や Sprotty や LSP(Language Server Protocol)の拡張利用(GLSP*)など)に加えTypeScript 他の Web 技術 や新たに開発した EMF.cloud* (モデルサーバ)を 組み合わせる ことである程度実用的なもの を実現している点です。 (* 印は EclipseSource 社主導の Eclipse プロジェクトです) • 今回のECE2019では多くの発表を行い存在感を示していました。
  26. 26. Eclipse Theia and Che, explained and explored! • Theia や Che についての基本的な事柄を説明してくれます。最初にこの動 画を見ることをおすすめします。
  27. 27. Building web-based tools with Theia and Che • Theia と Che をベースとして Modeling in the cloud を実現する一つの形を、要素ごとに説明し ています(ほぼ全体をかばーしています)。 • Web-based tools のイメージ • 必要となる技術  フォームを使うモデリング要素 12:20  ダイアグラムを使うモデリング要素 16:10  モデルサーバ 20:25  コード生成を行う要素 22:40  生成されたコードを編集するための要素 24:40  テキスト型モデリング要素 26:50  モデルの分析等の要素 28:55  複数ユーザサポート要素 30:00  時間があれば動画を再生してみたいと思っています。
  28. 28. Building web-based tools with Theia and Che p. 3 31
  29. 29. Building web-based tools with Theia and Che p. 7
  30. 30. Lifting the greatness of EMF into the cloud with EMF.cloud • モデルサーバ部分に焦点を当てた説明です。
  31. 31. Lifting the greatness of EMF into the cloud with EMF.cloud p.19
  32. 32. Lifting the greatness of EMF into the cloud with EMF.cloud p.27
  33. 33. Diagrams in web and space with GLSP • Graphical Language Server Protocol (GLSP) に焦点を当てた説明です。
  34. 34. Diagrams in web and space with Eclipse GLSP p.4
  35. 35. Diagrams in web and space with Eclipse GLSP p.7
  36. 36. Diagrams in web and space with Eclipse GLSP p.8
  37. 37. Diagrams in web and space with Eclipse GLSP p.19
  38. 38. Your roadmap towards web-based tooling • Web-based tools にかじを切るべきかを検討する際にリスクも含め考えるべきことがら (EclipseSource社の経験から)を説明してくれます。 • 考えるべきポイント例 • Eclipseと比べるとツールが充実していない • テクノロジスイッチ(Webテクノロジ) • 既存のデスクトップツールの今後(2重に維持管理?) 他多数 • 一般論かと思いましたが、ECE終了後に見直すと、彼らが今回のECEで話をしたプロジェクト全体 をカバーしており、こういう取り組みのを行う際には誰もが検討すべきことだと思われます。 • もちろんケースバイケースであり、ここに含まれない個別の問題点も出てくると思います。
  39. 39. Modeling in the cloud/on the web Obeo 社
  40. 40. Talks by Obeo • A playful introduction to MBSE • Make your transition to cloud-tooling now thanks to an hybrid RCP/web approach! • Hands-On Sirius: Create Graphical Editors for your Domain-Specific Language • Your cloud-based modeling workbench in 15 minutes with Eclipse Sirius
  41. 41. Obeo社の取り組み • Sirius/ObeoDesigner/UML Designer/Capellaなどを開発し、これまで Eclipse で Graphical DSL を推進 • 昨年までは Obeo社を中心として Graphical Server Protocol (仕様を公開)をオープ ンに開発・利用するとしていました • 今回の発表では、Sirius のマッピング定義ファイル(odesignファイル)を含む従来 持っていた機能をサーバ側に置き、GraphQLのAPIとWebソケット通信を利用し各種 操作を行う方向に変わっていました。Sprotty も利用しています。 • EclipseSource社とは異なる方式になるため、今後の展開に注意が必要です • Web化したものをサービスプロバイダとして機能提供することも含め、各種の要 望・形態(on premise など)に対応すべく準備を進めています • Web化したSiriusのデモをブースで見せていました • https://www.youtube.com/watch?v=a_hx3lfRETI&t=9s
  42. 42. Your cloud-based modeling workbench in 15 minutes with Eclipse Sirius • Sirius の紹介と Obeo 社の “cloud-based modeling workbench” 開発環境の 紹介 • Sirius の紹介は従来通りでした。 • (想像ですが)これらを丁寧に紹介すると3時間程度はかかるので、参加しな かったチュートリアルではこれらを説明したのかもしれません。 • Web版のモデリングワークベンチはSiriusのWeb版相当。 • 通信はGLP/GLSPではなくGraphQL/WebSocketとのこと。 • 今回見た中では完成度が最も高いものでした。
  43. 43. Your cloud-based modeling workbench in 15 minutes with Eclipse Sirius p.52 46 講演スライドより
  44. 44. Modeling in the cloudについてのまとめ • 現時点で即利用できるほど実用的で完成度の高い技術はまだありませんでした。 しか し、昨年からの進化から判断すると、来年のEclipseConの時期には利用できるようになっ ていると思います。 • 現時点で、統合する機能の多様性は EclipseSource のもの、完成度の高さは Obeo のもの、という印象 • TypeFox社は技術力・ポテンシャルが高いので今後も動向を注目要です。 • EclipseSource社は各種技術をうまく統合しているため、機能的にはメニューの揃った (または拡張しやすい)ものになりそうです。 • Obeo社は、オープンソースの他にサービス・プロバイダとして高品質のものをそれなり の価格で出してきそうです。 • 現時点では2種類のテクノロジスタックが見えていますが、3種類になるかもしれません。 Eclipseのプロジェクト提案待ち? • https://www.eclipse.org/projects/tools/proposals.php 47
  45. 45. Xtext 関連
  46. 46. Xtext 関連 • 講演としては1件だけありました。 • “Towards Xtext 2.2.0” • 2019年に予定した機能拡張等の実現状況を確認(〜9割) • メンテナンスの内容紹介 • Xtext自体のビルド方式について • LSPの利用による各種IDE/Web IDE対応について • 今後の活動:ドキュメント(モデル文書)のハンドリング改善、ビルダ改善 • オープンソース開発に参加する形でのコントリビューションを期待 • (カンファレンス後)2019/12/3にXtext 2.2.0がリリースされました • https://blogs.itemis.com/en/xtext-2.20-release
  47. 47. Systems Engineering 関連
  48. 48. Systems Engineering 関連 • Systems Engineering 関連では以下のようなセション等がありました。 • 初日(Community Day)午後 • MODEL-BASED SYSTEMS ENGINEERING WITH ECLIPSE (MBSE@ECLIPSE) • Keynote(10/21) • OMPREHENSIVE DIGITAL TWIN: AN ENABLER FOR MODEL BASED SYSTEM ENGINEERING - JAN LEURIDAN, SIEMENS • Sirius(10/22) • STEPPING UP SIRIUS - TIPS AND TRICKS FOR YOUR VISUALIZATION JOURNEY! • Capella(10/22:残念ながら参加できず) • A PLAYFUL INTRODUCTION TO MBSE (INTERACTIVE TALK INSIDE)
  49. 49. MODEL-BASED SYSTEMS ENGINEERING WITH ECLIPSE • Eclipse における Systems Engineering 関連の話題を紹介・共有するセッション(各30分) • Building Custom Systems Engineering Tools with Eclipse Papyrus and More (EclipseSource) • Papyrus UML Light: UML Profile 機能を利用し DSL ツールに仕立て上げるための Papyrus サブセット • Sirius や Xtext のようなツールキットを持たないためドメインモデリングにはUMLツールも活用している模様 • Solving Privacy and Data Protection using Modeling tools • EU プロジェクトの PDP4E(https://www.pdp4e-project.eu) に基づく発表 • PDP4E: Methods and Tools for GDPR Compliance through Privacy and Data Protection Engineering • How a methodological guidance is a game changer for your MBSE Journey with Capella • Capella/Arcadia の紹介、Siemens の keynote へのつなぎ、Q&As • HybriDLUX – A Daily Dose of DSLs and beyond • Hybrid Domain-specific Language User Experience (EclipseSourceがパートナーとして参加する研究プロジェクト)の紹 介:automotive domain • The Future of Modeling... at Eclipse Foundation • EMFベースモデリングのクラウドへの展開(+巨大モデル対応、EMFに代わるもの検討、など)という方向性 • Lifting the greatness of EMF into the cloud with EMF.cloud & Eclipse GLSP • HTML/HTTP as transport、EMF.cloudとGLSPの紹介(EclipseSourceのModeling in the cloud対応のイントロ的な話)
  50. 50. https://wiki.eclipse.org/Getting_Started_with_Papyrus_UMLLight
  51. 51. OMPREHENSIVE DIGITAL TWIN: AN ENABLER FOR MODEL BASED SYSTEM ENGINEERING • キーノート講演 • 講演の対象ドメインは Automotive • 話題としては以下のようなものがキーワード • イノベーションを目指すと複雑さが伴うが、複雑さを抑えるとイノベーションのレベルが落ちる -> モデル(Digital Twin)を活用した開発(MBSE) • 関連するすべてのエンジニアリング領域(電気・機械など)を統合と共有 • 先にV&Vを:自動化やデータ分析やシミュレーション • AI技術を活用した(要件に基づく)設計・アーキテクチャの提示など • モデル・設計情報のクライアントへの最適な提供(Web UIなど) • Eclipse 他のオープンな世界で活動(一例が Eclipse での Capella 関連活動) • PLMとシミュレーションの統合 など • この領域の仕事をされている方には上記動画を参照されることをオススメします
  52. 52. STEPPING UP SIRIUS – TIPS AND TRICKS FOR YOUR VISUALIZATION JOURNEY! • Sirius についての発表ですが、Systems Engineering ツールの話題が含まれています • MBSEのキーノートと同じようにAutomotive領域のツールの話題が(Siriusの問題点を説明する 材料として)でてきますので、ご関心のある方はそのあたりに注目ください。 • スライドは今の所公開されていませんので動画を参照して下さい。 • 講演者はかつてitemis社に2年ほど在籍した後にBOSCH社に移籍し、MBSEツールの移行(再構 築)を行ったとのこと。 • ポイントですが、 Sirius 周辺で手を入れたのは主に「レイアウト機能向上」と「キャッシュ機 能追加による性能向上」だったと思います。 • Siriusはオープンソースなので改造して使うことが出来るということです。 • Obeo社の代表も聴講しており、終了後講演者と話し合い(オープンにして出せないかという話か) を持っていました。 • カスタム化はかなり本格的なものでした。
  53. 53. 内容をご自分で確認したい方のために • EclipseCon Europe に参加されるのが一番です。 是非来年は現地 Ludwigsburg でお目にかかりま しょう。 • 各セッションはボランティアにより動画撮影されていました。次の場所に順次アップされてゆくと 思います。 • Youtube の Eclipse Foundation の PLAYLISTS ページ( https://www.youtube.com/user/EclipseFdn/playlists ) へ • ついでに、他にどんな Playlist があるのか見てください。役に立つものがあるかもしれません。 • スライドデータは次の場所にあります(全スライドが掲載されるわけではありません) • https://www.eclipsecon.org/europe2019/session-slides • なお、プログラムのページから各セッションのページを表示させればそこにも(公開している場合はURL などが)あります。
  54. 54. 補足 • Youtubeにある動画で、今回の話題に関係するシーケンス番号は以下の通りです。 • このスライドの報告内容は参考程度とし、ご自分の目で内容を確認してください。 なお、シーケンス番号は12月10日時点のもので、今後も変更があるかもしれません (実際に1ヶ月前と異なっています)。 • Obeo社:21, 118 • EclipseSource社:12, 18, 20, 50, 68, 112, 130 • TypeFox社:11, 13, 110, 128 • その他 (Keynote by Siemens):55
  55. 55. 補足 (videos and slides)
  56. 56. 最後に • ご質問あれば(お答えできるかどうか分かりませんが)どうぞ。 • また、今後のコミュニティ活動について、ご要望などがあればお願いしま す。 • 本日のスライドは公開できるように加工して公開します。

×