組込みエンジニアに求められる能力

組込みシステムに関する知識や技術を説明します‼︎

c言語プログラム解析


こんばんわ、慶さんです!


他人のプログラムをバグ潰しするのは、とても難解だと感じます。他人のソースコードで書かれたプログラムのロジックやデータ構造を把握することは難解だからです。


そこで実際に講師の方がおっしゃっていたことは、

⑴現象を把握する。

コマンドライン等で、テストをして、表面上の出力結果だけではなく、内部でどう動いたからこういう結果になったということを正しく把握する。

⑵原因を特定する

こういった処理の時は、こういうソースを書くといったロジックをたくさん自分の知識に蓄えることで、初めて、バグの原因はここなのではないかと把握できる。

それでもわからない場合は、チェックポイントで値がどのようなものが、返ってきているのかをデバッグして把握する。

⑶修正する

原因を把握したら、どのように修正すれば仕様通りの動きを実現できるのかを考える。


以下の流れで、業務を遂行することで、正しくデバッグを行えるということです。


補足ですが、テスト項目は、正常系は当然ですが、異常系、境界値、限界値をテストすることが、製品として世に出すためには不可欠です。