...

2MB

by user

on
Category: Documents
11

views

Report

Comments

Description

Transcript

2MB
日本におけるMISRA Cの普及と
これからの発展
2015/10/14
二上貴夫
東陽テクニカ / [SESSAME/MISRAリエゾン]
Copyright © 2015 TOYO Corporation. All Rights Reserved.
お話の要点
C言語の産業史
コード品質の調査と現実
品質の向上活動とMISRA C
自動車業界での取り込み
標準の外側をカバーしよう
Copyright © 2015 TOYO Corporation. All Rights Reserved.
なぜ C言語
物理世界に一番近い言語
機械のIO
C
C++ C#
Java
人の感覚
Long long history to reach long long
1970 K&R C
1980 ANSI C
int life
1989 ISO C
long life
1999 ISO C99
long long life
Copyright © 2015 TOYO Corporation. All Rights Reserved.
石田晴久訳 K&R著
プログラミング言語C
ANSI時代の何でやねんCプログラマ
int16_t life=100, i=0;
…
life = life + foo( par[i], par[i++] );
自分のマシンではちゃんと動作するのに
仲間のマシンでは発狂しちゃう、
文法通り書いてるのに、何でやねん?
1986 SCSIバス解析装置の組込みプログラミング
Copyright © 2015 TOYO Corporation. All Rights Reserved.
80~90年代 Cと組込み開発現場
多様な組込みプロセッサが出現
IOインストラクション方式/メモリマップド方式
純ノイマンアーキテクチャ/ハーバードアーキテクチャ
CISC / RISC
並列データフロー型
共通開発言語の必要性
仕様記述の半分は、“プログラムを読んでね”
ワークステーションで開発、ターゲットに移植
性能は、C言語&プロセッサ専用表現で出す
開発チーム、企業が自前でコーディング規約
Copyright © 2015 TOYO Corporation. All Rights Reserved.
5
我、QACに出会う
Cプログラムの問題指摘ツールは、国産でいくつかあったが高価
で買えない。
たまたま見かけたQACのパンフレットにはISO-9000と書いて
あったし、無料で使える、ふふふっ。
実際に自分のCプログラムを分析してみると、
うゎー、なんやこれは!?!!?!
Copyright © 2015 TOYO Corporation. All Rights Reserved.
90年代後半 私は測るのが好き
本気であれこれと測ってみた
人材活用でCコード解析センター発足
営業、ツールスミス、 Cコードアナリスト、 レポータ
200プロジェクト500万行のCプログラム
宇宙機、自動車、カーナビ、モータ制御、ゲーム、ケータイ、、、
勉強会しよう
みんな共通の悩みがあるね、
勉強しよう
神棚に納めたコーディング規約
到達しないコード誕生
コンパイラと人によるSCM
Copyright © 2015 TOYO Corporation. All Rights Reserved.
7
MISRA C開発と日本の接点
日本の自動車業界に起きた静かな危機
MIRA の予測が現実になる:
C言語特性に起因するプログラム不具合は看過できない
レベルに達する
自動車OEMメーカは、
自社開発でも部品メーカからの調達でも苦労
HONDA技術者がMISRA-C ‘97 委員会に参加
MISRA C – 邦訳 1999 初版
Copyright © 2015 TOYO Corporation. All Rights Reserved.
2000年~ 自動車業界での動き
自動車技術会の一連の活動
MISRAの開発ガイドラインをTP化
MISRA CをTP化
自動車工業会(OEMメーカの立場)
MISRA Cにもとずいたコーディングガイドラインを策定
Copyright © 2015 TOYO Corporation. All Rights Reserved.
MISRA C と MISRA C 研究会
NPO SESSAME で 研究会を発足
Deep understanding of MISRA C documentation
Discuss rationale, scenarios & develop examples
Publish as “Study book”
Feedback recommendations to MISRA
Copyright © 2015 TOYO Corporation. All Rights Reserved.
経産省といいつつ、IPAの調査では
Compiler/Debugger
Analyzer / Instrument
Evaluation board
IDE
ICE
Verification tool / Simulator
Project management tool
Static code Check tool
Source code analysis tool
SCM tool
Test Support tool
Analysis Design tool
Document Management tool
QM tool
Code generation
(*) Ministry of Economy, Trade & Industry
[Japanese Dept of Commerce]
Requirement management
Numeric analysis
Others
0%
Copyright © 2015 TOYO Corporation. All Rights Reserved.
10%
20%
30%
40%
50%
60%
70%
80%
90%
今年の MISRA C 研究会
MISRA C-2012が研究テーマ
• プログラミングの技能向上とプログラム品質の向上を目指す
• ECUプログラマ, 大学研究者, コンパイラ開発者, システム技
術者など24名が参画
Copyright © 2015 TOYO Corporation. All Rights Reserved.
今後の課題 MISRA Cからの逸脱承認
- OEM各社の巨大な悩み
サプライヤ各社のルール逸脱扱い方が多種多様で問題の温床に
特にTier2,3と層が進むと分散が激化
JAMA priority – work with MISRA to define a unified policy
for Approved Deviation Compliance
http://monoist.atmarkit.co.jp/mn/arti
cles/1307/16/news015.html
Copyright © 2015 TOYO Corporation. All Rights Reserved.
13
もう一つの研究会
SESSAMEでは、今年から
より深い静的解析を行うための勉強会を開催
形式的検証のオープン技術を利用した高信頼テスト
技術の勉強が主眼
先々は、日本の半導体開発技術(VDEC)と組込み
ソフトウェア技術(SESSAME)の組み合わせでブ
レークスルーを期待
Copyright © 2015 TOYO Corporation. All Rights Reserved.
14
お役に立てば幸いです
Questions?
質問は受けますが、
悩みは自分で解決しましょう
[email protected]
“I will make every effort to respond to your questions as time permits.”
Copyright © 2015 TOYO Corporation. All Rights Reserved.
Fly UP