- Amazon.co.jp ・本 (231ページ)
- / ISBN・EAN: 9784798113746
作品紹介・あらすじ
組込みエンジニア教科書シリーズ第4弾。本書は、第1弾『構造化モデリング』で紹介した構造化手法の考え方に基づいた組込みソフトウェアの設計を、ソースコードからリバースして行うという方法を紹介します。組込みソフトウェア開発の現場では、引き継ぐべきソースコードが存在することが非常に多いものです。そのソースコードを活用したうえで、効率的な開発を行い、良質なソフトウェアをつくりだすために、ソースコードからモデルを作成するのが「リバースモデリング」です。ソースコードからのリバース方法とソースコードのリファクタリング、体系的な保守である再利用とプロダクトラインの概要、リアルタイムOS上への搭載方法、ソースコードが劣化していく原因を分析しプロセスを改善する方法などについて解説します。
感想・レビュー・書評
-
既存のソースコードからモデルを再構築することで設計図を手に入れ、全体構造を把握した上での開発を薦めている。ただただ、ソースコードを弄ぶよりも、こうしたアプローチで広い視野を手に入れ、リファクタで可読性をソースコードの可読性を向上させることが重要だと思った。
詳細をみるコメント0件をすべて表示 -
役立つ内容ばかりであった。
1.リバース設計
・関数呼び出し関係図作成
⇒階層構造、結合度チェック
・上記を元に構造図を作成
⇒全体の結合度チェック
2.リファクタリング
細かく分けて、その後凝集させる
(分けていないと凝集できない)
対象となるものは以下
・複数機能があるモジュール
・フラグ渡し
・グローバルデータ使用
3.リユース
固定部と変動部を明確にする
(コンパイルスイッチが目安)
変動部はコンパイルスイッチ、コンポーネント、
テンプレート&フックで分離する -
SESSAMEのWG2によるテキスト化。派生開発の課題とも呼べるソースコードの劣化に対処するため、リファクタリングの方法について事例に沿って解説している。過去に読んだことのあるソフトウェアサイエンスの名著からエッセンスを凝縮している感じ。電気ポットの実例で具体的に説明しているので実感が湧く。購入して常に手元に置いて仕事に活用したい。作業の流れは以下の通り。
ソースをリバースして構造上の課題を分析。課題の構造をリファクタリング。例として分割と凝縮。フラグによる制御の廃止など。
変動部と変動点を抽出してリユース。コンパイルスイッチを整理して変動点マップへ、プロダクトラインの管理に活用。モジュール分割が終わったらリアルタイム設計。dfdからスレッドの抽出。時間制約などに着目してタスクの枠組みを決定。タスク間のインターフェイスを決める。設計が終わったら、ソフトウェアメトリクスで、設計品質の定量評価。例として凝縮度と結合度について判定基準を紹介している。最後にソフトウェア開発者の仕事のやり方について因果ループ図で良し悪しを説明。ここでスマートに仕事を回せるかが決まってくる。上位マネージャーが身につけるべき分析力。