組込みソフトウェア開発のためのリバースモデリング の商品レビュー
既存のソースコードからモデルを再構築することで設計図を手に入れ、全体構造を把握した上での開発を薦めている。ただただ、ソースコードを弄ぶよりも、こうしたアプローチで広い視野を手に入れ、リファクタで可読性をソースコードの可読性を向上させることが重要だと思った。
Posted by
役立つ内容ばかりであった。 1.リバース設計 ・関数呼び出し関係図作成 ⇒階層構造、結合度チェック ・上記を元に構造図を作成 ⇒全体の結合度チェック 2.リファクタリング 細かく分けて、その後凝集させる (分けていないと凝集できない) 対象となるも...
役立つ内容ばかりであった。 1.リバース設計 ・関数呼び出し関係図作成 ⇒階層構造、結合度チェック ・上記を元に構造図を作成 ⇒全体の結合度チェック 2.リファクタリング 細かく分けて、その後凝集させる (分けていないと凝集できない) 対象となるものは以下 ・複数機能があるモジュール ・フラグ渡し ・グローバルデータ使用 3.リユース 固定部と変動部を明確にする (コンパイルスイッチが目安) 変動部はコンパイルスイッチ、コンポーネント、 テンプレート&フックで分離する
Posted by
SESSAMEのWG2によるテキスト化。派生開発の課題とも呼べるソースコードの劣化に対処するため、リファクタリングの方法について事例に沿って解説している。過去に読んだことのあるソフトウェアサイエンスの名著からエッセンスを凝縮している感じ。電気ポットの実例で具体的に説明しているので...
SESSAMEのWG2によるテキスト化。派生開発の課題とも呼べるソースコードの劣化に対処するため、リファクタリングの方法について事例に沿って解説している。過去に読んだことのあるソフトウェアサイエンスの名著からエッセンスを凝縮している感じ。電気ポットの実例で具体的に説明しているので実感が湧く。購入して常に手元に置いて仕事に活用したい。作業の流れは以下の通り。 ソースをリバースして構造上の課題を分析。課題の構造をリファクタリング。例として分割と凝縮。フラグによる制御の廃止など。 変動部と変動点を抽出してリユース。コンパイルスイッチを整理して変動点マップへ、プロダクトラインの管理に活用。モジュール分割が終わったらリアルタイム設計。dfdからスレッドの抽出。時間制約などに着目してタスクの枠組みを決定。タスク間のインターフェイスを決める。設計が終わったら、ソフトウェアメトリクスで、設計品質の定量評価。例として凝縮度と結合度について判定基準を紹介している。最後にソフトウェア開発者の仕事のやり方について因果ループ図で良し悪しを説明。ここでスマートに仕事を回せるかが決まってくる。上位マネージャーが身につけるべき分析力。
Posted by
- ネタバレ
※このレビューにはネタバレを含みます
既存のコードを修正できないでいることがよくあるとお聞きしています。 自分でも、自分の作ったプログラムのバグが取れずに、ある方法で動かすと現象がでないので、そのままにしているものがあります。 どうにもなんともならなくなる前に、一度、作り直す機会があるとよいかもしれません。 CPUが変わるとき、OSが変わるとき、メモリの大きさが変わるとき、クロックが変わるとき、どんなときがよいかはわかりません。 何かが変わるときに、一緒に変えると、何が原因かがわからないので嫌だという話はお聞きしたことがあります。 その気持ちもわかるので、既存のソースを直すのは、実験的な作業だけにとどめたい気持ちもあります。 そんなぐだぐだした状態に喝を入れるヒントがみつかれば儲け物かもしれません。
Posted by
- 1
