1. Copyright ? Software Research Associates, Inc. All Rights Reserved
株式会社 SRA
阪井 誠
WG13「ソフトウェア開発の現状と今後の発展に向けたディスカッション」
Node-REDから見えた未来
- 変わるもの、変わらないもの -
2. Copyright ? Software Research Associates, Inc. All Rights Reserved
背景:効率的開発環境
? コンピュータの性能向上、ソフトウェア技術の向
上によって効率的に開発する環境が整いつつある
? マイクロサービスの普及や大規模なシステムオブ
システムなど、システム間の結合が増えている
? プロトタイピングが必要な局面が増えている
? 複雑なために実現可能性の確認が必要
? UIなど仕様の詳細を決めづらい
? とにかくリリースを急ぐ、など
? Visual IoTツールと呼ばれるNode-REDの開発経験
から、今後のソフトウェア開発を考える
3. Copyright ? Software Research Associates, Inc. All Rights Reserved 2
目次
? 背景
? 目次
? Visual IoTツールNode-RED
? Node-REDのすごいところ
? Node-REDから見えた未来
? まとめ
4. Copyright ? Software Research Associates, Inc. All Rights Reserved 3
Visual 開発ツールNode-RED
? Node-RED*はVisual IoTツールと呼ばれ,Webブラウザ上の
エディタでプログラミングする
? 長円のプログラムモジュールをノードと呼び、標準ノードのほか、
コントリビュートされた多機能なノードが豊富にある
? ノードを中央の編集領域に配置し,ノード間を接続してフロー
(処理)を作成する
? ノードには名前を付加できるが,単に配置するだけでも設定に
応じた内容が表示される
* JS Foundation,Node-RED is a visual wiring tool for the Internet of Things,https://nodered.org/
5. Copyright ? Software Research Associates, Inc. All Rights Reserved 4
Node-REDのすごいところ
? Hello Worldの入出力のノードを置き換えるだけで
Webプログラムになる
一瞬でデプロイ
非同期処理を
可視化 簡単デバッグ
多機能なノード群
6. Copyright ? Software Research Associates, Inc. All Rights Reserved
Node-REDの長所?短所
長所:
? 非同期処理が簡単に扱える
? アルゴリズムが可視化される
? 多機能なノード(モジュール)
? デプロイが一瞬
? 再利用が容易
短所:
? 単体テストの自動化ができない
? 発展途上
? 方式設計が重要
? ループが特殊
? マージ?保守に工夫が必要
7. Copyright ? Software Research Associates, Inc. All Rights Reserved
Node-REDから見えた未来
Node-REDで変わったこと
? イテレーションが短い
静的ビルド不要、デプロイが一瞬
? 作ったほうがはやい(実現可能性、機能要件の検討)
高機能で再利用が容易、デフォルトの利用
? 常に動作確認するので品質が高い
ドキュメントは後付けでも品質が高い(コード可読性は重視する)
Node-REDで変わらないこと
? コミュニケーション
完成度を高めるには顧客との意見交換が重要
? 設計が重要
非機能要件、アーキテクチャ、データ構造(永続化、インタフェース)
? 可読性が重要
プログラム構造、コメント(info)
8. Copyright ? Software Research Associates, Inc. All Rights Reserved
まとめ
? 重要なものは変わらない
? 顧客とのコミュニケーション
? ゴールの明確化
? 設計
? アーキテクチャ、データ構造、インタフェース
? 品質確保
? 機能要件、非機能要件
? 面倒なことは変わる
? 自動化できるもの、自動化のしくみづくり
? ○○ as code はパターンとデフォルトで設定中心に
? 実装と一致したドキュメント
? エビデンスよりも実装と一致した簡潔な説明へ
? ビッグバン結合から常時結合
? 実現可能性を常に確保
ソフト開発に何が重要かを議論したい