大規模制御システム向けオブジェクト指向開発手法HOOD
最初の会社で護衛艦の射撃制御システムの大規模な開発を実施していた時から、分析からオブジェクト指向開発で実施していた。
もう、20年近く前になる。その時は、まだオブジェクト指向開発方法論が十分に確立されていないこともあり、分析はではシュレイヤー&メラー法、設計ではBooch法(開発言語がAdaやC++なので)などを組み合わせて会社の中でプロセスを体系化して利用していた。その中でこのHOODのアプローチも併用している。
現在でもHOODは発展しながら利用されているようだが、もともとはAda言語を利用する大規模な制御システム向けなので、航空管制や軍事防衛、鉄道、原子炉などのミッションクリティカルな分野で利用が多い。
HOODの特徴は名前の通り、階層的にシステムを分割していき、最終的にコンポーネントとへと導いていく。そのアプローチの手順と考え方および独特のアイコンが記載されている。今現在はUMLに対応している。
一般的なオブジェクト指向開発方法論とは異なり、「大規模」を対象とするので、いきなりクラスとかオブジェクトという切り出しはしない、ある程度の粒度にドメイン分割をしたのちに実施する。
20年前の大規模は今の携帯電話や自動車の車載システムなどと変わらないか、むしろ大きいのでHOODの考え方を導入することは価値があるだろう。
HOODの面白い特徴はいくつかあるが、最初からターゲット環境の変化など移植性の問題も扱う点が特徴だ。
これはAdaが言語仕様やAdaを使った開発でターゲット環境からの依存をなすための高い移植性や保守性を保つように設計されていることに対してHOODも作業手順を取り込んでいる。
現場の実開発では、オブジェクト指向開発方法論はどれか1つで十分ということはなく、何かの方法論を中心にしながらも、他の方法論の良いところを取り入れることが大切となる。
そうすることで、いろいろな技術的課題に対して、いくつかのアプローチを取る選択肢が増えるし、技術的なノウハウも持つことができる。
=HSCI Takanari Hashimoto(URL:http://hsc-i.com/)=
| 固定リンク
「パソコン・インターネット」カテゴリの記事
- 6つのテーマを同時並行作業(2019.07.05)
- すっかりご無沙汰してしましました(2018.05.27)
- CCCC(C AND C++CODE COUNTER)GUIランチャーの公開(2017.04.13)
- 作成したYicesのGUIからオプションを変えSMTを行う(2017.01.19)
- 『Yices』によるSMTソルバ(2017.01.18)
この記事へのコメントは終了しました。
コメント