Upgrade to Pro — share decks privately, control downloads, hide ads and more …

共に創る未来:ソフトウェア開発における共創・協働のアプローチと戦略

 共に創る未来:ソフトウェア開発における共創・協働のアプローチと戦略

技術士会 2024年6月度情報工学部会 で講演させていただいたときの発表資料です。
https://www.engineer.or.jp/c_dpt/infoeng/topics/010/010201.html

Yoshitake Kobayashi

June 21, 2024
Tweet

More Decks by Yoshitake Kobayashi

Other Decks in Technology

Transcript

  1. 5 © 2024 Toshiba Corporation オープンソースソフトウェア(OSS)の始まり Richard Stallman • Free

    Software (自由なソフトウェア)を提唱 Source Wikimedia Commons (Creative Commons Attribution 2.0 Generic license) ソースコードが公開され、誰でも利用目的を問わず使用、調査、再利用、 修正、拡張、再配布が可能なソフトウェアの総称 詳しい定義:https://opensource.org/osd
  2. 6 © 2024 Toshiba Corporation 6 © 2024 Toshiba Corporation

    すこし遅くなりましたが自己紹介 ⚫ 名 前 : 小林 良岳 (こばやし よしたけ) ⚫ 所 属 : 株式会社 東芝 ⚫ 略 歴 : • EDS Australia 〔システムアドミニストレータ〕 • 電気通信大学 〔助教〕 • 東芝 〔~今に至る〕 ⚫ 専 門 : • オペレーティングシステム (OS) • オープンソースソフトウェア (OSS) ⚫ 社外活動 : • Core Embedded Linux Project SC Chair • Civil Infrastructure PlatformTM Project TSC Chair • TOPPERS Project 理事 Civil Infrastructure Platform are the trademark of The Linux Foundation in the U.S. and other countries
  3. 7 © 2024 Toshiba Corporation 今までの取り組み 技術公開 (課題の共有) 技術獲得 製品適用

    協業開発 (共創) コミュニティ 活動 1 2 3 Linux®/OSSの製品適用 OSS関係のカンファレンスで発表 OSSプロジェクトの立上げや運営 Linux® is the registered trademark of Linus Torvalds in the U.S. and other countries.
  4. 9 © 2024 Toshiba Corporation 製品適用:関わった製品例(直接的・間接的) なぜこれだけ多くの製品に関われたの? 郵便区分機 産業用 コントローラ

    放送システム 気象レーダ 発電制御 コントローラ エレベーター 群管理システム マルチファンクション プリンター … 他たくさん (60以上)
  5. 10 © 2024 Toshiba Corporation 価値を作る3つの領域 Commodity Platform Ref: How

    to Contribute to the Linux Kernel, and Why it Makes Economic Sense (James Bottomley, Novell; LinuxCon Japan 2009) Delivery Support for the innovation (価値提供に必須の技術) Unique Innovation (企業が顧客に提供する価値)
  6. 11 © 2024 Toshiba Corporation 価値を作る3つの領域 • Unique Innovation の領域

    • 市場で勝ち抜く上で直接効く領域 • 他社を寄せ付けない企業としての絶対領域 • Delivery Support for the Innovation の領域 • 直接差異化にはならないが市場で勝ち抜くために必須となる領域 • 共通性があるが発展させる要素も多数ある領域 • 常に更新され、最新技術が取り込まれている • Commodity Platformの領域 • 技術が枯れていて発展の要素がほとんどない • 技術内容が単純で、誰でも容易に満足なものが作れる • 特定企業が決定的なものを出しており、購入で間に合う Ref: How to Contribute to the Linux Kernel, and Why it Makes Economic Sense (James Bottomley, Novell; LinuxCon Japan 2009) Unique Innovation (企業が顧客に提供する価値) Commodity Platform Unique Innovation (企業が顧客に提供する価値) Delivery Support for the innovation (価値提供に必須の技術)
  7. 12 © 2024 Toshiba Corporation 数値でみるOSSの現状 引用:数字で見る Linux Foundation ,

    https://www.linuxfoundation.jp/publications/2024/01/linux-foundation-annual-report-2023-jp/
  8. 13 © 2024 Toshiba Corporation OSSを使う、とは? • 必要なオープンソースを見極め、 • ライセンスを守りつつ、

    • 利用しているものを把握して、 • 次に活かす 選択したOSSを適用するまでのギャップを少なくする ベストなOSS選択 製品にとって ベストな形で OSSを適用 オープンソースの活動 で解決する部分 製品ごとの最適化 が必要な部分 ベストなOSS選択 製品にとって ベストな形で OSSを適用 選ぶ 使う 管理する 事業スピードの加速のためにも、 オープンソースの活用が重要 ここ大事!
  9. 14 © 2024 Toshiba Corporation 価値を作る3つの領域 Commodity Platform Ref: How

    to Contribute to the Linux Kernel, and Why it Makes Economic Sense (James Bottomley, Novell; LinuxCon Japan 2009) Delivery Support for the innovation (価値提供に必須の技術) Unique Innovation (企業が顧客に提供する価値)
  10. 15 © 2024 Toshiba Corporation 目次 • 過去 • 現在

    • そして(おそらく近い)未来
  11. 16 © 2024 Toshiba Corporation 過去 CE Linux Forum (CELF)

    CE Workgroup (CEWG) Core Embedded Linux Project (CELP) の活動について
  12. © 2024 Toshiba Corporation 17 CE Linux Forumの成り立ち 最初のきっかけは、パナソニック(当時、松下電器)とソニーが手を組んで、情報家電 向けのLinux開発を進めるフォーラムを作ったのが始まり(2003年)

    松下電器産業 櫛木CTO(当時) ソニー 所CTO(当時) Appointed Member (ステアリング会議での議決権あり) Associated Member (ステアリング会議での発言権あり) 松下 SONY IBM 日立 シャープ Philips Sumsung NEC HP Support Member (活動参加のみ) TI Motorola Intel Sanyo JVC 三菱 ARM CAC KENWOOD LINEO LG Montavista NOKIA Phoenix Softier ST TimSys THOMSON 東芝 参加メンバの例 https://www.celinuxforum.org/
  13. 18 © 2024 Toshiba Corporation 18 © 2024 Toshiba Corporation

    OSSプロジェクトの立上げ なぜPJ立上げ? 同じ悩みを抱えているから! 仲間募集 = Join Us!
  14. 19 © 2024 Toshiba Corporation • System size • Boot

    time • Power management • Realtime • Security 当時、組込み機器でLinuxを用いるために解決すべきとされた技術課題の例
  15. © 2024 Toshiba Corporation 20 CE Linux Forum 組織構造 Workgroups

    (解決する課題ごとに適宜立上げ/解散) Power Management Boot time System Size Mobile phone DTV Architecture Group (AG) Steering Committee (SC) …. …. 参考プラットフォーム仕様などの検討 個別課題に関する仕様などの検討 運営に関する意思決定 SCのサポート 技術内容の吟味、WG間調整 Linuxコミュニティとの調整 Open Projects (個人提案を審査の上、AGにて採択) Power Management Boot time System Size
  16. © 2024 Toshiba Corporation 21 CELF/CEWG/CELP20年の歴史 2003/07 2011/01 2017/06 2023/07

    設立 The Linux Foundationと合流&改名 改名 Japan Technical Jamboree (2004/10~) OSSコミュニティへのコントリビューション Open Project (2008~2018) CELF Specification V1.0 (2004/05) PJ終了 技術活動 イベント 参画 AG / SCメンバ (2003/07~) Episode II Elinux wiki (2006/12~) Embedded Linux Conference (2005/01~) SC運営 (2014~) 残務整理
  17. © 2024 Toshiba Corporation 22 Japan Technical Jamboree (2004/10~) イベント

    Episode II Embedded Linux Conference (2005/01~) 技術活動 CELF/CEWG/CELP20年の歴史 2003/07 2011/01 2017/06 2023/07 設立 The Linux Foundationと合流&改名 改名 OSSコミュニティへのコントリビューション Open Project (2008~2018) PJ終了 参画 AG / SCメンバ (2003/07~) Elinux wiki (2006/12~) 残務整理 SC運営 (2014~) CELF Specification V1.0 (2004/05)
  18. 23 © 2024 Toshiba Corporation CELF黒歴史 • 2004/05: CELF Embedded

    Linux Specification を出版 https://lkml.org/lkml/2004/5/17/149 「あのねえ、こんな仕様書を書けば誰か がタダで実装してくれると思っている の? だとしたらトンデモない間違いだ よ。こんなのが書けるんだったらもう何 かコードを書いているんでしょ。それを 先ずコミュニティーに持って来なよ!仕 様書なんてどうでも良いから」 Ref: A Special Talk, 上田理, Sony, 2012
  19. 24 © 2024 Toshiba Corporation 一方で弊社のCELF参画中の黒歴史: OSSの作者に利用許可を求めた From: "Poul-Henning Kamp“

    Subject: Re: Confirmation: your copyright about NTP To: “******@toshiba.co.jp" Citat: Dear NTP Project Members. We are considering using your program "NTP" in our products. Before going any further, however, we would like to confirm the following so that we are sure to fully respect your rights. You are of the copyrights in the program. You have distributed the program under the attached license that permits us to use and redistribute the program with or without modification provided that any conditions stated in the license are met. If you would please send me a return email confirming the above, that would be most appreciated. And thank you very much for taking the time to create such a useful program. Thank you in advance for your kindness. Let me get this straight: You, a major worldwide megacorp which employs thousands of laywers, have downloaded the NTP reference implementation on the internet, containing a license for you to use it, with only certain trivial restrictions. But you do not trust the contents of the license file to be legally binding, thus you send emails to addresses which you have never been in contact with before, to people you have no way of authenticating, asking them, if the content of the file is correct. You then expect that the return mail you may or may not get, will cover your ass in whatever legal proceedings you foresee you might expose yourself to, as a result of you using the NTP reference implementation. Let the record show that somebody is not getting their money worth of competent legal assistance. You could have done what every major IT company has done until now, companies like Sun, IBM, Cisco, who trust the license file and happily uses the NTP reference implementation without any legal worries. But instead of actually researching this point, you sent this pointless email instead. No, I (see below) will neither confirm nor deny my participation or the license status of the code I may, or may not, have written for the NTP reference implementation. If you want such assurance from me, you will have to send me a registered letter, my address can be found in any danish phone book or on the Internet, containing the questions you want answered, and a suitable token of appreciation, to make it worth my time to answer them. Proof of a sensible monetary donation to the NTP project would work, as long as I do not need to ask my lawyer to answer your questions. Until such time, I will place you in legal jeopardy with respect to your use of the NTP reference implementation, with my statement above, and my signature below; sign: Somebody who may or may not be, Poul-Henning Kamp Who may or may not have written parts of the NTP reference implemenation, which may or may not be covered by the license restrictions you quoted. Ref: http://www.version2.dk/blog/i-am-not-nice-man-11355 「ちょっと確認させてよ、ライセンスって知っ てる?あなたたちのような弁護士何人も抱 えている会社が何言っているの?IBMも Ciscoも理解して使ってるよ。」 NTP(時刻同期のためのソフトウェア)の作者からの返信(2009年6月)
  20. 25 © 2024 Toshiba Corporation CELF&弊社の黒歴史から学んだこと • コントリビューションあってこそ、OSSコミュニティは活性化する • コミュニティを尊重する

    • 何かを得るには自ら動く • 早めに聞いて、早くフィードバックをもらう 理想は言えども(当時の)日本の技術者は外に出ていかない問題 技術公開 (課題の共有) 技術獲得 製品適用 協業開発 (共創) コミュニティ 活動
  21. 26 © 2024 Toshiba Corporation 一方で私:2008年入社後感じたこと OSSの世界では知名度が低い …東芝のことを知ってもらいたい! ⚫技術アピールが必要 →

    何か貢献!(できることから) ⚫結果として会社の想い(アイデア)が受け入れられるはず まずは発表する! (コードも一緒に出す)
  22. © 2024 Toshiba Corporation 27 技術活動 CELF Specification V1.0 (2004/05)

    CELF/CEWG/CELP20年の歴史 2003/07 2011/01 2017/06 2023/07 設立 The Linux Foundationと合流&改名 改名 OSSコミュニティへのコントリビューション Open Project (2008~2018) PJ終了 参画 AG / SCメンバ (2003/07~) Elinux wiki (2006/12~) 残務整理 SC運営 (2014~) Japan Technical Jamboree (2004/10~) イベント Episode II Embedded Linux Conference (2005/01~)
  23. © 2024 Toshiba Corporation 28 CELPの活動 (イベント:Japan Technical Jamboree) Jamboree

    ELC US/EUR Community HOP STEP JUMP • 日本の組込み開発者の持つアイディアや問題意識を コミュニティーに届けるきっかけ作り • 2004/10 から 毎年約4回のペースで開催 • 開催回数は 80回 (2023/5) • 企業・大学等から開発者が結集 • ベテランはもとより初心者も参加 • Linuxコミュニティーに はばたいた技術や開発者多数 参考:Core Embedded Linux Project紹介資料より引用 Core Embedded Linux Project
  24. © 2024 Toshiba Corporation 29 CELPの活動 (イベント:Embedded Linux Conference) •

    組込みLinuxに焦点を絞った開発者会議 • 春に米国、秋に欧州で開催 • 毎回500人を超える参加者 • 50を超える技術セッション • Technical Showcaseでデモを展示 Jamboree ELC US/EUR Community HOP STEP JUMP 参考:Core Embedded Linux Project紹介資料より引用 Core Embedded Linux Project
  25. 30 © 2024 Toshiba Corporation CELPの活動:Japan Technical Jamboreeの発表件数推移 日本のLinux技術者がコミュニティに参画するきっかけとなれた! (件)

    (年月) 0 2 4 6 8 10 12 2004/12/17 2005/7/15 2005/9/30 2005/11/25 2006/1/20 2006/3/24 2006/5/26 2006/7/13 2006/8/25 2006/10/27 2006/12/8 2007/2/22 2007/4/27 2007/7/12 2007/8/31 2007/10/25 2007/12/21 2008/2/21 2008/4/25 2008/7/4 2008/8/29 2008/10/30 2008/12/18 2009/1/30 2009/3/26 2009/5/22 2009/6/12 2009/7/17 2009/10/2 2009/12/18 2010/3/5 2010/6/4 2010/9/3 2010/12/10 2011/3/18 2011/5/20 2011/9/30 2011/12/9 2012/3/23 2012/6/21 2012/9/20 2012/12/7 2013/3/8 2013/6/7 2013/9/13 2013/12/11 2014/5/23 2014/7/25 2014/10/24 2014/12/19 2015/4/10 2015/6/19 2015/9/18 2015/11/13 2016/3/11 2016/6/3 2016/9/9 2016/12/2 2017/3/17 2017/6/23 2017/9/1 2017/12/1 2018/3/2 2018/5/25 2018/9/28 2018/11/30 2019/3/8 2019/5/24 2019/9/20 2019/12/13 2020/3/6 2020/6/26 2021/3/11 2021/5/27 2022/2/4 2022/6/9 2023/5/25
  26. 31 © 2024 Toshiba Corporation 海外のカンファレンスでの発表(2010年~) 1.Evaluation of Data Reliability

    on Linux File Systems (ELC 2010, Apr. 2010) 2.Linux Kernel Acceleration for Long-term Testing (ELC-E, Oct. 2010) 3.Moving Forward: Overcoming Compatibility Issues (ELC, Apr. 2011) 4.Automated Regression Test Environment For Multiple Kernels (LinuxCon EU, Oct. 2011) 5.Ineffective and effective way to find out latency bottlenecks by Ftrace (ELC, Feb. 2012) 6.Improvement of Scheduling Granularity for Deadline Scheduler (ELC-E, Oct. 2012) 7.Deadline Miss Detection with SCHED_DEADLINE (ELC, Feb. 2013) 8.An Essential Relationship between Real-time and Resource Partitioning (ELC-E Oct 2013) 9.Expectation of LTSI Testing (LTSI Workshop, Oct 2013) 10.Using RT Preempt patch with LTSI kernel (ELC 2014, Apr. 2014) 10.Collaboration with LTSI Testing (LTSI Workshop, Apr 2014) 11.Using Embedded Linux for Infrastructure Systems (ELCE 2014, Oct 2014) 12.Poky meets Debian: Understanding How to Make an Embedded Linux by Using an Existing Distribution's Source Code (ELC, Apr 2015) 13.BoFs: Applying Linux to the Social Infrastructure (ELC, Apr 2015) 14.Applying Linux to the Civil Infrastructure Systems (LinuxCon Japan, Jul 2015) 15.CE Workgroup Shared Embedded Linux Distribution Project (ELC-E, Oct 2015) 16.Introducing the Civil Infrastructure Platform (ELC, Apr 2016) 17.The Latest Status of the CE Workgroup Shared Embedded Linux Distribution Project (ELC, Apr 2016) 18.Introducing the Civil Infrastructure Platform (LCJ, Jun2016) 19.Time is ready for the Civil Infrastructure Platform (ELC-E, Oct 2016) 20.Using RT Preempt patch with LTSI kernel (ELC 2014, Apr. 2014) 21.Civil Infrastructure Platform: Industrial Grade SLTS Kernel and Base-layer Development (Open Source Summit Japan 2017) 22.Debian on Civil Infrastructure System (DebConf2017, August 2017) 23.Civil Infrastructure Platform: Industrial Grade Open Source Base-Layer Development (ELCE and OSS EU 2017, Oct. 2017) 24.Civil Infrastructure Platform: Industrial Grade SLTS Kernel and Base-layer Development (Open Source Summit Japan 2018, Jun 2018) 25.Civilization runs on Debian (DebConf 2018, July 2018) 26.Civil Infrastructure Platform: Two Year Experience of Industrial Grade Open Source Base-Layer Development (Open Source Summit Europe 2018, October 2018) 27.How to Make Smart Cities Stay Smart with Open Source Projects (Smart City Event 2019, January 31, 2019) 28.Open Source Projects to Live Long and Prosper: Linux for Smart Infrastructure and Industry (Open Source Summit Europe 2019, October 29, 2019) 29.State of CIP Project (CIP mini-summit Europe 2019, October 2019) 30.CIP Installed: Sustainable Software Stacks in Long-living Products (Open Source Summit North America, June 29, 2020) 31.State of Civil Infrastructure Platform (CIP mini-summit Europe 2020, October 2020) 32.The InnerSource Learning Path (InnerSource Commons APAC 2020 Virtual Summit, December 2020) 31 © 2024 Toshiba Corporation 社会インフラ OSSプロジェクト 信頼性・性能 年2~3回は何かしらの発表をした
  27. © 2024 Toshiba Corporation 32 Japan Technical Jamboree (2004/10~) イベント

    Episode II Embedded Linux Conference (2005/01~) CELF/CEWG/CELP20年の歴史 2003/07 2011/01 2017/06 2023/07 設立 The Linux Foundationと合流&改名 改名 PJ終了 参画 AG / SCメンバ (2003/07~) 残務整理 SC運営 (2014~) 技術活動 OSSコミュニティへのコントリビューション Open Project (2008~2018) Elinux wiki (2006/12~) CELF Specification V1.0 (2004/05)
  28. 33 © 2024 Toshiba Corporation • 組込み機器でLinuxを用いるために解決すべき技術課題 • System size

    • Boot time • Power management • Realtime • Security • 手段 • Linuxの標準機能に取り込む • 課題を提案して仲間を集めて活動に繋ぐ • Wikiを立ち上げ技術情報を積極的に公開 CELPの活動 (技術開発)
  29. 34 © 2024 Toshiba Corporation CELPの活動 (技術開発支援: Open Project) •

    コミュニティーにある 重要な開発プロジェクトに 開発資金を供与するプログラム • 開発プロジェクトは公募制 Steering Committee Architecture Group Members Open Projects 参加 選択結果 選択 承認 Linuxコミュニティ コントリビューション CELP さまざまな技術課題をコミュニティメンバーと共に解決する仕組み
  30. 35 © 2024 Toshiba Corporation CELPの活動 (技術開発支援: eLinux Wiki) •

    組込みOSS情報満載のWikiを運営 • 組込みシステム開発に関わる 情報のポータルサイトとして 多くの人が活用 ノウハウをオープンにして誰もが参照できる場を提供(オープンドキュメント)
  31. 36 © 2024 Toshiba Corporation • 組込み機器でLinuxを用いるために解決すべき技術課題 • System size

    - done • Boot time - done • Power management - done • Realtime – in progress • Security – in progress • 手段 • Linuxの標準機能に取り込む • 課題を提案して仲間を集めて活動に繋ぐ • Wikiを立ち上げ技術情報を積極的に公開 CELPの活動スコアカード (技術開発)
  32. © 2024 Toshiba Corporation 37 技術活動 OSSコミュニティへのコントリビューション Open Project (2008~2018)

    Elinux wiki (2006/12~) CELF Specification V1.0 (2004/05) Japan Technical Jamboree (2004/10~) イベント Episode II Embedded Linux Conference (2005/01~) CELF/CEWG/CELP20年の歴史 2003/07 2011/01 2017/06 2023/07 設立 The Linux Foundationと合流&改名 改名 PJ終了 参画 AG / SCメンバ (2003/07~) 残務整理 SC運営 (2014~)
  33. © 2024 Toshiba Corporation 38 PJ運営: CELP内部検討プロジェクト (組込みディストリビューション/社会インフラLinux) • 社内アンケートを広く実施し、2つの活動を提案

    • 社会インフラ向けLinux技術開発 • 組込み向け標準ディストリビューション Civil Infrastructure Platform プロジェクトに発展
  34. 39 © 2024 Toshiba Corporation • 失敗はそれなりにあった・・・・ • CELPが関わった技術は多くの製品に搭載 •

    家電から社会インフラへLinux適用範囲が広がる中、 CELPの活動をもとにOSSプロジェクトを設立 • CELPとしても個人としてもコミュニティと繋がりを構築 • 意識せずとも頼れる背後霊ネットワーク • (何人かは守護霊になってくれたのだろうか・・・) 個人的CELP活動まとめ 何といっても頼り頼られる人脈ができたことが宝
  35. 41 © 2024 Toshiba Corporation CIP立上げのきっかけ • CEWG内で開始した社会インフラ向けLinux PJ (2014/9)

    • シーメンスから Open Industry Platformの提案 (2014/12) 2015/2 F2Fで打合せ 2016/4 CIPを正式に立上げ
  36. 42 © 2024 Toshiba Corporation つながるシステム → つながる社会 コネクティッドカー スマホで空車検索、レンタル、交通状況を把握

    して最適サービス提供 スマートシティ 多様な交通機関、インテリジェントな交通管制、 スマートエネルギー管理、危機管理 インダストリー データ収集で製造プロセス改善 予防保守でダウンタイム最小化
  37. その他 ビル管理 ヘルスケア 放送 産業 工場自動化 産業ネットワーク CNC制御 エネルギー 発電・送電

    タービン制御 交通 監視制御 自動改札 車両制御 社会を支えるシステム
  38. 44 © 2024 Toshiba Corporation 機器は我々の生活を支えるシステムの起点かつ最後の要 実際に起きていること https://www.toshiba-energy.com/renewable-energy/product/vpp.htm CPS(*)の常態化 •

    クラウド側(Cyber)と機器側(Physical)の 機能が連携 • 機器のもつデータをクラウド側処理 • 機器制御の一部をクラウドで実行 機器側機能の特化 • 即時性の高い厳密なタイミング制御 • 機器の信頼性や安全性確保 • セキュアな環境の維持 VPP(バーチャルパワープラント:仮想発電所) (*) Cyber Physical System
  39. 45 © 2024 Toshiba Corporation 45 © 2024 Toshiba Corporation

    Smart Cities need a smart infrastructure IoT technology to be applied to industrial systems
  40. 46 © 2024 Toshiba Corporation 46 © 2024 Toshiba Corporation

    Smart Cities need a smart infrastructure IoT technology to be applied to industrial systems
  41. 47 © 2024 Toshiba Corporation 47 © 2024 Toshiba Corporation

    Image: http://zdnet1.cbsistatic.com/hub/i/r/2016/02/29/10863f77-89b2-40c0-9d8c-dbaa5feb65be/resize/770xauto/490141cef9bddc0db66b492698b53a50/powerplant.jpg A Power Plant System: 25-60 years products life-cycle Very reluctant to perform product updates and upgrades of hardware and base software platform
  42. 48 © 2024 Toshiba Corporation 発電所向けコントローラ Linux®/OSSが発電所のような社会を支えるシステムで利用されている ・ボイラーの制御 ・プラント全体のモニタリング ・タービンの起動と停止

    100ミリ秒以上で制御。 DCSコントローラ ・バルブ制御 ・周波数検出 ・速度検出 5~30ミリ秒で制御。 タービン向け コントロールモジュール 発電所の監視と制御に使用する DI/DO/AI/AOとその制御 I/O コントロールモジュール 発電機信号のI/Oと高速制御 発電機向け コントロールモジュール Ref: Power Plants run on Linux CIP, CIP mini-Summit 2019 自社製 μITRON
  43. 49 © 2024 Toshiba Corporation 49 © 2024 Toshiba Corporation

    理想と現実のギャップ 目指したい姿 解決すべき課題 ⚫ IoTを社会インフラシステム にも適用する ⚫ 製品品質と寿命を 確実なものにする ⚫ 何万台ものつながった システムのセキュリティを保つ 産業レベル 品質 持続可能性 セキュリティ
  44. 50 © 2024 Toshiba Corporation OSSプロジェクト Civil Infrastructure Platform を設立

    参加企業 • Platinum • Renesas Electronics • SIEMENS • TOSHIBA • Silver • Bosch • Cybertrust • Hitachi • Linutronix • MOXA • Plat’Home
  45. 51 © 2024 Toshiba Corporation 51 © 2024 Toshiba Corporation

    CIPの目指す姿 ⚫ IoTを社会インフラシステム にも適用する ⚫ 製品品質と寿命を 確実なものにする ⚫ 何万台ものつながった システムのセキュリティを保つ • 長期製品ライフサイクル • 互換性維持 • 標準化対応 • 信頼性 • 機能安全 • リアルタイム性 • セキュリティ、脆弱性管理 • ファームウェア更新 • リグレッションリスク最小化 産業レベル 品質 持続可能性 セキュリティ 目指したい姿 解決すべき課題
  46. 52 © 2024 Toshiba Corporation 課題解決に向けた姿:CIPが目指す “Open Source Base Layer

    (OSBL)” CIPコアパッケージ (数十個) CIPカーネル (10年超の長期保証、LTSカーネルベース) 追加のパッケージ (数百個) OSBL 企業独自のミドルウェア、 アプリケーション 典型的なLinux ディストリビューション の範囲 ⚫ 社会インフラのような高い信頼性や長期保守が求められる製品向けの共通OSS集 ⚫ Linuxディストリビューションや関連するOSSと共に利用
  47. 53 © 2024 Toshiba Corporation 課題解決に向けた姿:CIPが目指す “Open Source Base Layer

    (OSBL)” CIPコアパッケージ (数十個) CIPカーネル (10年超の長期保証、LTSカーネルベース) 追加のパッケージ (数百個) OSBL 企業独自のミドルウェア、 アプリケーション 典型的なLinux ディストリビューション の範囲 ⚫ 社会インフラのような高い信頼性や長期保守が求められる製品向けの共通OSS集 ⚫ Linuxディストリビューションや関連するOSSと共に利用 あれ? この形って・・・
  48. 54 © 2024 Toshiba Corporation 価値を作る3つの領域とCIP OSBL Commodity Platform Ref:

    How to Contribute to the Linux Kernel, and Why it Makes Economic Sense (James Bottomley, Novell; LinuxCon Japan 2009) Delivery Support for the innovation (価値提供に必須の技術) Unique Innovation (企業が顧客に提供する価値) CIPコアパッケージ (数十個) CIPカーネル (10年超の長期保証、LTSカーネルベース) 追加のパッケージ (数百個) 企業独自のミドルウェア、 アプリケーション
  49. 55 © 2024 Toshiba Corporation CIPを企業に適用する コーポレートレベル 部門レベル 事業/製品レベル ファームウェア更新

    セキュリティ強化 コンテナランタイム … カーネル、基本パッケージ、SDK、 ビルドチェーン、品質保証 CIPコアパッケージ (数十~数百) 追加のパッケージ (数百~数千) CIPカーネル (10年超の長期保証、 LTSカーネルベース) ドメイン独自の 拡張 ドメイン独自の 拡張 … 個々の製品に対する、ライセンス確認、セキュリティ問題チェック、ソフトウェア保守、アプリケーション対応・テストなどで 最大70%もの工数削減が可能 レイヤー構造を持つインダストリアル製品向けLinuxディストリビューションを CIPのOSBLを用いて作成 ディストリビューション
  50. 56 © 2024 Toshiba Corporation 56 © 2024 Toshiba Corporation

    目標と進む道 1. 目指す姿 → OSBL 1.産業レベルの品質 2.持続可能性 3.セキュリティ 2. (What) 何から始めるか? → 相談して決める! 3. (How) どのように行うか? → 仲間と一緒に進める!(プロジェクトの中と外) CIPコアパッケージ CIPカーネル
  51. 57 © 2024 Toshiba Corporation 57 © 2024 Toshiba Corporation

    目標と進む道 1. 目指す姿 → OSBL 1.産業レベルの品質 2.持続可能性 3.セキュリティ 2. (What) 何から始めるか? → 相談して決める! 3. (How) どのように行うか? → 仲間と一緒に進める!(プロジェクトの中と外) CIPコアパッケージ CIPカーネル
  52. 58 © 2024 Toshiba Corporation CIPの開発の原則 : Upstream First Policy

    “Upstream First”モデル Upstreamにパッチがある場合だけ プロジェクトで利用可 Upstream CIPプロジェクト 独自コミュニティ・モデル Upstream Upstreamから派生を作成して プロジェクトで独自進化
  53. 59 © 2024 Toshiba Corporation アップストリームのOSSプロジェクトと連携 Upstream Projects 1 Upstream

    first 2 Use the Upstream code 3 Integrate CIP Open Source Base Layer (OSBL) Contribute, Collaborate and use by CIP LTS mainline meta- debian SWUpdate
  54. 60 © 2024 Toshiba Corporation 60 © 2024 Toshiba Corporation

    目標と進む道 1. 目指す姿 → OSBL 1.産業レベルの品質 2.持続可能性 3.セキュリティ 2. (What) 何から始めるか? → 相談して決める! 3. (How) どのように行うか? → 仲間と一緒に進める!(プロジェクトの中と外) CIPコアパッケージ CIPカーネル
  55. 61 © 2024 Toshiba Corporation CIPの技術活動範囲 課題解決に向け優先順位をつけて活動 (現在は6つの活動に注力) アプリケーションコンテナ基盤 (中期)

    アプリケーションフレームワーク (オプション、中期) モニタリング 特定用途向け通信(OPC UAなど) 設定・ログ管理 リアルタイム/仮想化 トレーサ・レポートツール 構成管理 デバイス管理 (更新、ダウンロード) 機能安全、 アーキテクチャ/設計戦略 (NERC CIP、IEC61508など) 標準化 他とのコラボレート OSSライセンス確認 輸出管理 アプリケーションの ライフサイクル管理 マルチメディア セキュリティ セキュア更新 6 2 5 リアルタイムサポート CIP Coreパッケージ 3 1 超長期サポートカーネル (STLS) 4 テスト自動化 3 ビルド環境 (bitbake、dpkgなど) 1 3 長期サポート戦略: セキュリティパッチ管理 ユ ー ザ レ ベ ル カ ー ネ ル レ ベ ル デバイスに載るソフトウェアスタック 製品の開発・保守 ツール コンセプト ミドルウェア/ライブラリ Linux カーネル
  56. 62 © 2024 Toshiba Corporation CIP組織構成 (*): Workgroup CIPの内部プロジェクトとカバー範囲 SLTS

    カーネル 1 リアルタイム 2 CIP Core 3 テスト 4 セキュリティ WG(*) 5 ソフトウェア 更新WG 6 産業レベル品質 持続可能性 セキュリティ 技術委員会 (TSC) 運営委員会 (GB)
  57. 63 © 2024 Toshiba Corporation なぜこの順番か? Linuxカーネルは必須 使う対象は制御機器が多い • 最低10年は保守期間がないと製品向けに安心して使えない

    • 厳密なタイミング制御が必要 • Linuxではリアルタイム対応機能が標準化されていない SLTS カーネル 1 リアルタイム 2 CIPカーネル
  58. 64 © 2024 Toshiba Corporation なぜこの順番か? Linuxカーネルは必須 使う対象は制御機器が多い CIP OSBLとしての形を作る

    形はあるが、どの程度大丈夫なの? • 最低10年は保守期間がないと製品向けに安心して使えない • 厳密なタイミング制御が必要 • Linuxではリアルタイム対応機能が標準化されていない SLTS カーネル 1 リアルタイム 2 CIP Core 3 テスト 4 CIPコアパッケージ CIPカーネル
  59. 65 © 2024 Toshiba Corporation 65 © 2024 Toshiba Corporation

    目標と進む道 1. 目指す姿 → OSBL 1.産業レベルの品質 2.持続可能性 3.セキュリティ 2. (What) 何から始めるか? → 相談して決める! 3. (How) どのように行うか? → 仲間と一緒に進める!(プロジェクトの中と外) CIPコアパッケージ CIPカーネル
  60. 66 © 2024 Toshiba Corporation 66 © 2024 Toshiba Corporation

    超長期サポートを実現する (産業レベル品質、持続可能性)
  61. 67 © 2024 Toshiba Corporation Upstream 10年のサポート期間を持つCIPカーネルの開発活動の仕組み UpstreamであるLinux Kernelコミュニティと連携して長期保守を実現 Mainline/LTS

    LTS kernel Kernel Team Branch / Platform 脆弱性チェック 修正チェック コントリビューション CIP SLTSカーネル テスト
  62. 68 © 2024 Toshiba Corporation CIP Kernel Team: カーネル開発のタイムライン 2020

    2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 コミュニティ LTS 4.4 4.19 5.10 6.1 LTS期間はUpstreamコミュニティと共に、以降はCIP自らが主体的にセルフメンテナンス CIP SLTS 4.4 4.19 5.10 6.1 いまここ Upstream First Self-maintenance Upstream First Self-maintenance Upstream First Self-maintenance Maintained by the LTS Project Upstream First Self-maintenance Version
  63. 69 © 2024 Toshiba Corporation 69 © 2024 Toshiba Corporation

    セキュリティスタンダート準拠を加速する (セキュリティ、産業レベル品質、持続可能性)
  64. 74 © 2024 Toshiba Corporation CIP Security WG : 産業機器向けのセキュリティスタンダード準拠を目指す

    選択した規格 : IEC 62443-4 なぜIEC62443-4か? → 汎用性が高く適用可能な範囲が広い *ISA 99 indicates IEC 62443 Power, Energy Smart Grid Railway Plant (Petroleum, Chemical) Operator System Component Standards Targets Designated System IACS (General purpose) IEC 62443 CSMS NERC CIP NIST IR7628 ISO/IEC 62278 IEEE 1686 IEC 61850 Note: International Standard Local Standard = WIB SSA CSA (EDSA)
  65. 75 © 2024 Toshiba Corporation CIPを使う立場の悩みと要求 ⚫ 悩み: 要件準拠が大変 ⚫

    要求: OSBLを使うと簡単 究極のゴール ⚫ 理想:IEC62443-4準拠 ⚫ 現実:製品単位で取得 CIPの目指すところ ⚫ IEC 62443-4の認証取得 しやすい状況を作る *: Noted that this image is under planning and for only illustrative purposes. Component User application User manual Design document Evaluation document User equipment S/W Document H/W Guideline and evidence Certified platform Compliant environment for evaluation Implement for security Evaluation evidence Security requirement Application note Implements guideline Test cases Equipment for evaluation (TBD.) Reference implementations Application (sample) User manual Design document Evaluation document board Linux Kernel (CIP) CIP Core (e.g. Reference board) CIP deliverables* Implement for security Evaluation evidence Security requirement Application note Implements guideline Test cases Equipment for evaluation (TBD.) Reference implementations CIP Security WG : なにを目指すか?
  66. 76 © 2024 Toshiba Corporation CIP Security WG : なにを目指すか?

    CIPを使う立場の悩みと要求 ⚫ 悩み: 要件準拠が大変 ⚫ 要求: OSBLを使うと簡単 究極のゴール ⚫ 理想:IEC62443-4準拠 ⚫ 現実:製品単位で取得 CIPの目指すところ ⚫ IEC 62443-4の認証取得 しやすい状況を作る *: Noted that this image is under planning and for only illustrative purposes. Component User application User manual Design document Evaluation document User equipment S/W Document H/W Guideline and evidence Certified platform Compliant environment for evaluation Implement for security Evaluation evidence Security requirement Application note Implements guideline Test cases Equipment for evaluation (TBD.) Reference implementations Application (sample) User manual Design document Evaluation document board Linux Kernel (CIP) Middleware (e.g. Device driver) (e.g. Reference board) CIP deliverables* Implement for security Evaluation evidence Security requirement Application note Implements guideline Test cases Equipment for evaluation (TBD.) Reference implementations 開発コスト 検証済み プラットフォーム 取得の困難さ ガイドラインと エビデンス 基準が不明確 評価実施に使える テストを準備
  67. 77 © 2024 Toshiba Corporation CIP Security WG : 活動の手順と現在の状況

    Investigation of IEC-62443-4-2 Final CIP assessment for IEC-62443-4-x Gap assessment of CIP capabilities against 4-1 & 4-2 Contract signing with IEC/ISO 17065 accredited CB* Investigation of IEC-62443-4-1 requirements Requirement discussion with Certification Body 1. IEC-62443-4-1 / IEC-62443-4-2 を理解する 2. IEC-62443-4-2の各要件を満たすために必要なOSSパッケージを選定 3. 調査結果が正しいか認証機関に確認 4. 認証機関でギャップアセスメントを実施 5. 対応項目への対応を実施 6. 最終アセスメントを実施 → 現在ココ Security Level 2と3を満たせそうなことが判明 ギャップを把握し対応項目を得た Done In progress CB* Certification Body 進捗状況 (IEC62443-4-1) Not-started Started Pass 15 Ready for Review 28 4 5
  68. 78 © 2024 Toshiba Corporation 最低10年の長期サポート ユーザーランドの長期サポート (Debian® ELTSと連携) CVEの継続的なモニタリングと対応

    複数のSOCに対するセキュリティテストの自動実行 IEC-62443-4-x アセスメント済みプラットフォーム CIP OSBLを製品活用する大手企業からの強力なサポート CIPの活動の価値 ポイント CIP Non-CIP (OSS) 産業レベル 品質 持続可能性 セキュリティ 仲間 Debian® is a registered trademark owned by Software in the Public Interest, Inc.
  69. 81 © 2024 Toshiba Corporation こんな経験はありませんか? • 一緒にやってるプロジェクトで他チームを待っていたら遅れた ・・・ •

    バグを見つけて、通知したのに何時まで経っても直ってこない ・・・ • 似たような機能を作ってしまい、両方メンテナンスしないといけない ・・・
  70. 82 © 2024 Toshiba Corporation こんな経験はありませんか? ソフトの機能を使いたい! 同じ会社にある二つのチームが、別々のソフトウェア部品を提供する時、 片方のチームのソフトウェアが、もう一方のチームのソフトウェアに依存する状況 例:表示用データを取得するAPIに依存するサービス

    ケース チーム チーム 利用 提供 リクエストが届かない ケースはどうするか? チームごとに事情は異なる ・機能の優先度 ・開発スケジュール など 直ぐには提供出来ない! 表示データ 提供API (未実装) データ表示 サービス
  71. 83 © 2024 Toshiba Corporation こんな時、あなたならどうしますか? 1. 「静観」:黙っている 3. 「圧力」:上層部を通してやらせる

    デメリット メリット ・圧力という開発に関係のない作業に注力しなければならない。 ・何度も使えるものでもなく発展しない。 ・チーム間や個人間の信頼を損なう。 必要な機能が手に入る (かもしれない) 2. 「回避」:勝手にやる デメリット メリット ・成果は同じ機能を必要としている他の利用者に提供されない ・本来の役割範疇でないコードを長期的にメンテナンスしなければならない ・会社全体として、同じ課題に対する重複したプロジェクトとコードを取得してしまう 要求機能が足りない部分を ローカルに変更・機能追加 して補なえる デメリット メリット ・要求された機能がいつまでたっても提供されない。 作業を最小限に することができる
  72. 84 © 2024 Toshiba Corporation InnerSource なら、まとめて解決できます! InnerSource で全ての欠点を解決して効果を得よう! ・・・

    でも、そもそも InnerSource って? • 共通の課題に対する解決方法を再利用することで、 組織に高い価値を生み出すことに集中できる • エンジニア同士が新しいさまざまな技術やバラエティに 富んだ人々と一緒に仕事をする事ができる 開発効率向上 コスト削減 DevEx(*)向上 (*) Developer Experience
  73. 85 © 2024 Toshiba Corporation Dirk Riehle, Inner Source (Software

    Development), InnerSource Summit 2 ・・・ を企業内で実践することです。 Welcome visitors! Open all artifacts! InnerSource とは? • InnerSource は、企業内のソフトウェア開発にオープンソースの実践と ベストプラクティスと原則を適用したものです。 • InnerSource ソフトウェアは、会社としてはプロプライエタリなものとなりますが、 内部にはオープンで、誰もが利用したり貢献したりできるようになります。 つまり ・・・
  74. 87 © 2024 Toshiba Corporation どのように InnerSource は機能するのか? ケース チーム

    A チーム B 機能を使いたい! 期限内に実装して Bチームにリリースすることはできない・・・ コントリビュータ ホスト Aチームが提供するソフトウェアをBチームが利用する場合 「コントリビューション」します! 利用 提供 ホストチームメンバ ゲスト
  75. 88 © 2024 Toshiba Corporation InnerSource の効果とは? ・ニーズが確定している機能を受け取れるので、 良いプロダクトを作る支援 となる

    メンテナンスの負担をせず、 必要な時に機能を手に入れられる ・スケーラブルな戦略ができるようになる ・必要とする時と場所に エンジニアリングの時間を 有機的に投入することが可能 ・全ての利用者との間で優先順位の 調整を行うことができる 品質向上 会社 リソース配分を最適化できる 余力ができ、他へ注力できる 必要な機能 が手に入る チーム B 〔ゲスト〕 チーム A 〔ホスト〕 必要な機能 が手に入る 要求X OK! 要求Y 要求Z 機能X 機能Y 機能Z 開発の利点 戦力倍増する 開発効率向上・コスト削減
  76. 89 © 2024 Toshiba Corporation InnerSource の効果とは? 当事者の利点 従来の会社のサイロがなくなる 仕事への満足度が高くなる

    プロジェクトに貢献する人が増え、会社全体からのアイデアが自然に融合し生まれる ポジティブなFBの繰り返しで ポジティブなFBの繰り返しで トレーニングや教育にもなる コントリビューター ホストチームメンバ 同僚や新しいチームに参加を推奨する プロジェクト全体をより理解できる ホストチームの負担が軽減するようになる プロジェクトを理解している人が増える DevEx向上
  77. 90 © 2024 Toshiba Corporation InnerSource 実践のための準備 1. 問題意識を共有する・発見する 2.

    共通の問題意識をもつ人達で意見交換する 3. 課題を解決する 4.(個別の領域部分を作る) 5. 4の途中で出てくる共通部分の問題は共有する 6. ノウハウが共有され、新しいアイデアが出る (可能性がある) 7. 1に戻る InnerSource に必要なもの(「共通」の問題・課題) 共有スペース 実装(ISS) 問題 意識 アイデア オーナー (ホスト) 賛同者 (有識者) ユーザ (ゲスト候補)
  78. © 2024 Toshiba Corporation 91 91 © 2024 Toshiba Corporation

    「共通課題」 を見つけるには? •まずは身近なところから ・ 同じ部門・組織の中から ・ 同じ事業ドメインの中から ・ 会社全体で •どのようなタイミングで考えるのが良いか? ・ 新しいプロジェクトを始めるとき ・ 要件定義やシステム設計するとき ・ リファクタリングするとき
  79. 92 © 2024 Toshiba Corporation 共通課題の解決に向けたInnerSource の原則 オープン性 → 透明性

    → 常にドアが解放されていて、受け入れ可能な状態 意思決定プロセス、コード、ToDoなどが見えるようになってる状態 (ゲストに対して) ありとあらゆるサポートを惜しまない (結果的に) 仲間になってくれる 共通の課題意識に基づき、お互いに協力する 優先的な メンターシップ → 自発的な コードコントリビューション → 見える化して、協力し合う(賞賛しあう)
  80. © 2024 Toshiba Corporation 93 93 © 2024 Toshiba Corporation

    InnerSourceの効果まとめ • InnerSource は、企業内にオープンソース開発の良いところを持ち込むものです • InnroSource には、共通の課題を持つ「ホストチーム」と「ゲストチーム」の さまざまなメンバーが関わります。 • InnerSource は参加チーム全てに多くの効果をもたらします • InnerSource の成功には、オープン性、透明性、自発的なコントリビューションと 優先的なメンターシップ が大切です オープンにコラボレーションする開発で企業価値も開発者体験も向上
  81. 94 © 2024 Toshiba Corporation (再掲)価値を作る3つの領域 Unique Innovation (企業が顧客に提供する価値) Commodity

    Platform Ref: How to Contribute to the Linux Kernel, and Why it Makes Economic Sense (James Bottomley, Novell; LinuxCon Japan 2009) Delivery Support for the innovation (価値提供に必須の技術) OSSが対象とする領域 Commodity Platform Delivery Support for the innovation (価値提供に必須の技術) Unique Innovation (企業が顧客に提供する価値) InnerSourceが対象とする領域
  82. 99 © 2024 Toshiba Corporation そして暗躍 ① InnerSource Learning Pathを

    全て翻訳!(Upstream first!) ② CodeZineに記事執筆 引用元:https://innersourcecommons.org/ja/learn/learning-path/ https://codezine.jp/article/detail/14809 https://innersourcecommons.connpass.com/event/271207/ ③ InnerSource Commons Japan Meetupで発表
  83. 101 © 2024 Toshiba Corporation 日本におけるInnerSourceの今! InnerSourceに関して日本初のイベントが開催されます! https://gatherings.innersourcecommons.org/tokyo-2024/ Let’s get

    together!! InnerSource Gatheringsは、ソフトウェア開発 において組織の壁を越えたコラボレーションを実現 するための秘訣を探るイベントです。