組込みソフトウェア

 組み込みソフトウェアに関する標準化は、従来はシステム開発対象分野との関連で議論されることが多かったと見られるが、近年はソフトウェア開発というコンテキストで議論される機会が多くなって来たようである。

 IPA(独立行政法人情報処理推進機構)のSEC(ソフトウェア・エンジニアリング・センター)では、組込み系のソフトウェア・エンジニアリング推進に注力し、標準化に関連する数多くのガイドライン、ガイドブックを公表してきている。ESxRシリーズともいわれる一連のガイドとして次のものがある。
  「組込みソフトウェア向け品質作り込みガイド」
  「組込みソフトウェア向け開発プロセスガイド」
  「組込みソフトウェア開発向けコーディング作法ガイド[C言語版]」
  「組込みソフトウェア向けプロジェクトマネジメントガイド[計画書編]」
  現在、「組込みソフトウェア開発向けコーディング作法ガイド[C言語版]」はJIS化の準備が進められている。

 国際標準化の例としては、組込みソフトウェアのプログラミング関連の規格を列挙してみると次のようなものがある。
  ・ISO/IEC TR 18015 Programming languages, their environments and system software interfaces -- Technical Report on C++ Performance パフォーマンスが重要な分野でのC++言語とそのライブラリの特性を議論したテクニカルレポート。
  ・ISO/IEC TR 18037 Programming languages -- C -- Extensions to support embedded processors 組込み用プロセッサの特性を引き出せるようなプログラムを可搬性のあるC言語で記述することを可能とする。
  ・ISO/IEC TR 24731 Programming languages, their environments and system software interfaces -- Extensions to the C library  C言語の安全なプログラミングを促進するためのライブラリのテクニカルレポート。
  組込み系でも、多少特定の分野となるが、プログラマブルコントローラの分野では、EC 61131-3(JIS B3503)で規定されている標準化された言語があり、それには次のものが含まれている。Ladder Diagram (LD)、Structured Text (ST) 、Instruction List (IL) 、Function Block Diagram (FBD) 、また言語ではないが、プログラムの実行制御要素としてのSFC(Sequential Function Chart)がある。