SlideShare une entreprise Scribd logo
1  sur  42
Télécharger pour lire hors ligne
計測器の組込みソフトウェア開発への
ZIPC適用事例

2011/10/05
コニカミノルタセンシング株式会社
久保 明

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.
はじめに
本発表が、ソフトウェアエンジニアが幸せに
なることのお役に立てたら嬉しい

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

2
AGENDA
• 計測器組み込みソフトの現状
• ZIPC選定理由
• 実施内容
• 結果
• 今後の計画
• 導入のポイント
Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

3
計測器

色の「ものさし」
Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

4
計測器組み込みソフトの現状
• 製品寿命が長くメンテナンスが重要
• 大規模化、短納期化
• 仕様変更へ短期間で対応

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

5
ZIPC選定理由
• コード生成能力
• STM設計経験あり
• グループ内での導入実績

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

6
不安点
• 習得時間
• 効果
• 不具合

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

7
習得時間がかかるのでは?
サポートを活用

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

8
効果が出ないのでは?
Small Feedback Cycle

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

9
ツールの不具合があるのでは?
標準的機能を用いる

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

10
実施内容
1. 導入計画
2. 適用
① キー認識
② 画面遷移

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

11
導入計画
• Small Start
–キー認識から
–基本機能

• 工夫点
–イベント、状態に名前付け(名称選択)

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

12
イベント/状態追加時の差
StateC を追加

B=1

EventC
を追加

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

13
番号選択の場合
B=2

処理関数
{
=>遷移先
}

処理関数名称=事象番号+状態番号
遷移先名称=状態番号

追加により以降の状態や事象に変更が生じる
Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

14
名称選択の場合
B=B

処理関数
{
=>遷移先
}

処理関数名称=事象名称+状態名称
遷移先名称=状態番号名称

追加により以降の状態や事象に変更が生じない
Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

15
キー認識の実施プロセス
機能要求仕様書作成

ZIPC適用部分
STM作成
シミュレーション
テスト デバッグ
実機搭載
テスト

デバッグ

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

16
STM作成
• E型通常
• 実機に近い条件
–ポート割り込み
–周期ハンドラ

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

17
プログラム構成
ポート割り込み

サンプリング
周期ハンドラ
サンプリング周期

キー

キー
ドライバ

タスク起床
キータスク
キー取得
応答

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

18
シミュレーション

• テストに活用
–バッチファイル
–カバレッジ
Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

19
バッチファイル
回帰テストが可能
// ZIPC Batch File Format Ver.5.00
#START
FIG 6
BRC ALL
LGC
RST
BRK TIM 1 01000 #0
BRK TIM 5 20000 #STOP
RUN 0 #STOP
#0
INT "KEYINT"
SME "KeyTask" “Port" "1"
BRC 1
RUN 0 #STOP
#STOP
LGS ".¥OK.log"
END

バッチファイルの
イメージ

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

20
カバレッジ

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

21
課題
• 実機での調整は必要

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

22
画面遷移の実施プロセス
画面遷移図作成

ZIPC適用部分
STM(第1階層)作成
画面遷移表作成
ZIPC適用部分
STM(第2階層)作成

実機搭載
テスト

デバッグ

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

23
第1階層(画面遷移図)
オープニング画面

○○画面

メニュー画面

△△画面

××画面

□□画面

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

24
第2階層(画面遷移表)
画面No

画面名称

オープニング画面

1
画面の説明
□□□□□□□□□□□□□□□□□□□□□
□

□

X

X

X

X

X

□

電源投入後最初の画面

□

□ □ □ □ V e r . 1 . 0 0 0 0 0 1 □ □ □ □
□□□□□□□□□□□□□□□□□□□□□
□(c)KONICA □MINOLTA□□□
□□□□□SENSING□INC.□□□□
□□ □ 2 0 1 1 □□ □□ □ □□ □□ □ □□ □ □

キー処理

各キーを押した時の処理の説明

○キー

無効

△キー

無効

×ー

無効

□キー

テスト日

結果

無効

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

25
STM作成
• S型通常
• 階層化
• 開始アクティビティ

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

26
S型通常の理由
• 画面遷移は状態の階層が深い
• S型は階層に依存がある

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

27
階層化
等価

理解しやすい
Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

28
開始アクティビティ

煩雑化回避
Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

29
所感
• STM設計能力重要
• コード生成は、理解しやすい
• シミュレーションは難しい

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

30
結果
• 導入効果
• 解決しなかったこと
• 反省点

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

31
導入効果
• 工数削減
• コードとドキュメントの一致
• シミュレーション環境での検証

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

32
工数削減
計画

実際

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

33
コードとドキュメントの一致
• コードの自動生成が重要
• STMで確認
• ドキュメントメンテナンス不要

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

34
シミュレーション環境での検証
• 回帰テスト
• 実機では難しい信号の再現
解決しなかったこと
• STM設計レベル向上
• GUI仕様書=ZIPC設計書

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

36
反省点
導入
計画
実際

キー

機能使いすぎ
Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

37
今後の計画
• 水平展開
• 事前検証
–Garakabu2

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

38
導入のポイント
• 導入を目的にしない
• Small Start
• サポートの活用

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

39
最後にもうひとつ

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

40
Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

41
私たちは、ソフトウェアの作り方を変
えていくタイミングにある

Copyright(c) 2011 KONICA MINOLTA SENSING, INC. All rights reserved.

42

Contenu connexe

Similaire à Zipcカンファレンス20110927

チラシルiOSでの広告枠開発
チラシルiOSでの広告枠開発チラシルiOSでの広告枠開発
チラシルiOSでの広告枠開発Satoshi Takano
 
Rancherを活用した開発事例の紹介 ~Rancherのメリットと辛いところ~
Rancherを活用した開発事例の紹介 ~Rancherのメリットと辛いところ~Rancherを活用した開発事例の紹介 ~Rancherのメリットと辛いところ~
Rancherを活用した開発事例の紹介 ~Rancherのメリットと辛いところ~Recruit Technologies
 
Visual Regression Testing における画面要素単位での差異検出手法
Visual Regression Testing における画面要素単位での差異検出手法Visual Regression Testing における画面要素単位での差異検出手法
Visual Regression Testing における画面要素単位での差異検出手法ToshiyukiKurabayashi
 
注目の最新技術「WebRTC」とは? -技術概要と事例紹介-
注目の最新技術「WebRTC」とは? -技術概要と事例紹介-注目の最新技術「WebRTC」とは? -技術概要と事例紹介-
注目の最新技術「WebRTC」とは? -技術概要と事例紹介-Yusuke Naka
 
Software is eating the world
Software is eating the worldSoftware is eating the world
Software is eating the worldOsaka University
 
VRライブ・コミュニケーションサービス「バーチャルキャスト」でのモノビットエンジンの採用事例と最新情報
VRライブ・コミュニケーションサービス「バーチャルキャスト」でのモノビットエンジンの採用事例と最新情報VRライブ・コミュニケーションサービス「バーチャルキャスト」でのモノビットエンジンの採用事例と最新情報
VRライブ・コミュニケーションサービス「バーチャルキャスト」でのモノビットエンジンの採用事例と最新情報モノビット エンジン
 
D1-2-OS2_オンプレミスのVMワークロードをGCPへ移行する
D1-2-OS2_オンプレミスのVMワークロードをGCPへ移行するD1-2-OS2_オンプレミスのVMワークロードをGCPへ移行する
D1-2-OS2_オンプレミスのVMワークロードをGCPへ移行するHideaki Tokida
 
14th apr2015 リックテレコ勉強会
14th apr2015 リックテレコ勉強会14th apr2015 リックテレコ勉強会
14th apr2015 リックテレコ勉強会Kensaku Komatsu
 
VRライブ・コミュニケーションサービス「バーチャルキャスト」でのモノビットエンジンの採用事例と最新情報 - モノビットエンジン - GTMF 2018 O...
VRライブ・コミュニケーションサービス「バーチャルキャスト」でのモノビットエンジンの採用事例と最新情報 - モノビットエンジン - GTMF 2018 O...VRライブ・コミュニケーションサービス「バーチャルキャスト」でのモノビットエンジンの採用事例と最新情報 - モノビットエンジン - GTMF 2018 O...
VRライブ・コミュニケーションサービス「バーチャルキャスト」でのモノビットエンジンの採用事例と最新情報 - モノビットエンジン - GTMF 2018 O...Game Tools & Middleware Forum
 
量子コンピュータ時代の製造業におけるDXセミナー~生産工程効率化に向けた新たなご提案~
量子コンピュータ時代の製造業におけるDXセミナー~生産工程効率化に向けた新たなご提案~量子コンピュータ時代の製造業におけるDXセミナー~生産工程効率化に向けた新たなご提案~
量子コンピュータ時代の製造業におけるDXセミナー~生産工程効率化に向けた新たなご提案~Fixstars Corporation
 
Yahoo!Japan北米DCでOCPのツボをみせてもらってきました - OpenStack最新情報セミナー 2016年5月
Yahoo!Japan北米DCでOCPのツボをみせてもらってきました - OpenStack最新情報セミナー 2016年5月Yahoo!Japan北米DCでOCPのツボをみせてもらってきました - OpenStack最新情報セミナー 2016年5月
Yahoo!Japan北米DCでOCPのツボをみせてもらってきました - OpenStack最新情報セミナー 2016年5月VirtualTech Japan Inc.
 
解説 Windows 10 May 2020 Update
解説 Windows 10 May 2020 Update解説 Windows 10 May 2020 Update
解説 Windows 10 May 2020 UpdateTomokazu Kizawa
 
Windows 10X .NETラボ勉強会 2020年6月27日
Windows 10X .NETラボ勉強会 2020年6月27日Windows 10X .NETラボ勉強会 2020年6月27日
Windows 10X .NETラボ勉強会 2020年6月27日Tomokazu Kizawa
 
KES IoT Logicのご紹介(金沢エンジニアリングシステムズ)
KES IoT Logicのご紹介(金沢エンジニアリングシステムズ)KES IoT Logicのご紹介(金沢エンジニアリングシステムズ)
KES IoT Logicのご紹介(金沢エンジニアリングシステムズ)Yasuhiro Kobayashi
 
3-コンテナスターターパックのご紹介
3-コンテナスターターパックのご紹介3-コンテナスターターパックのご紹介
3-コンテナスターターパックのご紹介KotaSato3
 
700億件のリアルタイム分析の実現と運用の実態
700億件のリアルタイム分析の実現と運用の実態700億件のリアルタイム分析の実現と運用の実態
700億件のリアルタイム分析の実現と運用の実態Eiji Yamamoto
 
X dev 20121106
X dev 20121106X dev 20121106
X dev 20121106Ken Azuma
 
Kubernetes上のWindows Server コンテナーのマイクロサービス間分離
Kubernetes上のWindows Server コンテナーのマイクロサービス間分離Kubernetes上のWindows Server コンテナーのマイクロサービス間分離
Kubernetes上のWindows Server コンテナーのマイクロサービス間分離Takashi Kanai
 

Similaire à Zipcカンファレンス20110927 (20)

チラシルiOSでの広告枠開発
チラシルiOSでの広告枠開発チラシルiOSでの広告枠開発
チラシルiOSでの広告枠開発
 
オンライン セミナー Infragistics ultimate 2015 vol.1 最新機能ハイライト(公開版)
オンライン セミナー Infragistics ultimate 2015 vol.1 最新機能ハイライト(公開版)オンライン セミナー Infragistics ultimate 2015 vol.1 最新機能ハイライト(公開版)
オンライン セミナー Infragistics ultimate 2015 vol.1 最新機能ハイライト(公開版)
 
Rancherを活用した開発事例の紹介 ~Rancherのメリットと辛いところ~
Rancherを活用した開発事例の紹介 ~Rancherのメリットと辛いところ~Rancherを活用した開発事例の紹介 ~Rancherのメリットと辛いところ~
Rancherを活用した開発事例の紹介 ~Rancherのメリットと辛いところ~
 
Visual Regression Testing における画面要素単位での差異検出手法
Visual Regression Testing における画面要素単位での差異検出手法Visual Regression Testing における画面要素単位での差異検出手法
Visual Regression Testing における画面要素単位での差異検出手法
 
注目の最新技術「WebRTC」とは? -技術概要と事例紹介-
注目の最新技術「WebRTC」とは? -技術概要と事例紹介-注目の最新技術「WebRTC」とは? -技術概要と事例紹介-
注目の最新技術「WebRTC」とは? -技術概要と事例紹介-
 
Software is eating the world
Software is eating the worldSoftware is eating the world
Software is eating the world
 
VRライブ・コミュニケーションサービス「バーチャルキャスト」でのモノビットエンジンの採用事例と最新情報
VRライブ・コミュニケーションサービス「バーチャルキャスト」でのモノビットエンジンの採用事例と最新情報VRライブ・コミュニケーションサービス「バーチャルキャスト」でのモノビットエンジンの採用事例と最新情報
VRライブ・コミュニケーションサービス「バーチャルキャスト」でのモノビットエンジンの採用事例と最新情報
 
D1-2-OS2_オンプレミスのVMワークロードをGCPへ移行する
D1-2-OS2_オンプレミスのVMワークロードをGCPへ移行するD1-2-OS2_オンプレミスのVMワークロードをGCPへ移行する
D1-2-OS2_オンプレミスのVMワークロードをGCPへ移行する
 
14th apr2015 リックテレコ勉強会
14th apr2015 リックテレコ勉強会14th apr2015 リックテレコ勉強会
14th apr2015 リックテレコ勉強会
 
Accel series 2021 Winter
Accel series 2021 WinterAccel series 2021 Winter
Accel series 2021 Winter
 
VRライブ・コミュニケーションサービス「バーチャルキャスト」でのモノビットエンジンの採用事例と最新情報 - モノビットエンジン - GTMF 2018 O...
VRライブ・コミュニケーションサービス「バーチャルキャスト」でのモノビットエンジンの採用事例と最新情報 - モノビットエンジン - GTMF 2018 O...VRライブ・コミュニケーションサービス「バーチャルキャスト」でのモノビットエンジンの採用事例と最新情報 - モノビットエンジン - GTMF 2018 O...
VRライブ・コミュニケーションサービス「バーチャルキャスト」でのモノビットエンジンの採用事例と最新情報 - モノビットエンジン - GTMF 2018 O...
 
量子コンピュータ時代の製造業におけるDXセミナー~生産工程効率化に向けた新たなご提案~
量子コンピュータ時代の製造業におけるDXセミナー~生産工程効率化に向けた新たなご提案~量子コンピュータ時代の製造業におけるDXセミナー~生産工程効率化に向けた新たなご提案~
量子コンピュータ時代の製造業におけるDXセミナー~生産工程効率化に向けた新たなご提案~
 
Yahoo!Japan北米DCでOCPのツボをみせてもらってきました - OpenStack最新情報セミナー 2016年5月
Yahoo!Japan北米DCでOCPのツボをみせてもらってきました - OpenStack最新情報セミナー 2016年5月Yahoo!Japan北米DCでOCPのツボをみせてもらってきました - OpenStack最新情報セミナー 2016年5月
Yahoo!Japan北米DCでOCPのツボをみせてもらってきました - OpenStack最新情報セミナー 2016年5月
 
解説 Windows 10 May 2020 Update
解説 Windows 10 May 2020 Update解説 Windows 10 May 2020 Update
解説 Windows 10 May 2020 Update
 
Windows 10X .NETラボ勉強会 2020年6月27日
Windows 10X .NETラボ勉強会 2020年6月27日Windows 10X .NETラボ勉強会 2020年6月27日
Windows 10X .NETラボ勉強会 2020年6月27日
 
KES IoT Logicのご紹介(金沢エンジニアリングシステムズ)
KES IoT Logicのご紹介(金沢エンジニアリングシステムズ)KES IoT Logicのご紹介(金沢エンジニアリングシステムズ)
KES IoT Logicのご紹介(金沢エンジニアリングシステムズ)
 
3-コンテナスターターパックのご紹介
3-コンテナスターターパックのご紹介3-コンテナスターターパックのご紹介
3-コンテナスターターパックのご紹介
 
700億件のリアルタイム分析の実現と運用の実態
700億件のリアルタイム分析の実現と運用の実態700億件のリアルタイム分析の実現と運用の実態
700億件のリアルタイム分析の実現と運用の実態
 
X dev 20121106
X dev 20121106X dev 20121106
X dev 20121106
 
Kubernetes上のWindows Server コンテナーのマイクロサービス間分離
Kubernetes上のWindows Server コンテナーのマイクロサービス間分離Kubernetes上のWindows Server コンテナーのマイクロサービス間分離
Kubernetes上のWindows Server コンテナーのマイクロサービス間分離
 

Zipcカンファレンス20110927