ログイン

不具合の無いプログラムを組むには?

 2019.10.8 ゴリラーブログ ブログ ものぐさゴリラー本山

 

こんにちは、はじめまして!ものぐさゴリラー本山です!

基本的に面倒くさがりですが、やるならこだわる性格です。

ブログ作成も仕事〜ネタ的要素までありみたいなので色々書いてみます!

 

では早速、今回の内容に……。

今回はプログラムを開発する上で必要な最も基本的な単体テストについてお話します。

 

私が新人〜2年目くらいの頃なので随分前の事なのですが、プログラムの品質が著しく悪かった!!

今も大して…という自虐は置いておいて、その時どの様に改善を試みたのかを共有します。

 

背景

(ほぼ前振りで書いてしまいましたが)プログラムの品質が許容範囲を越えて悪かった。

特に初めて経験する機能や業務などではテストケースの抽出漏れが多く、

自分の担当が完了し(たと思って)、後の人に引き継いだあとに

自分の作業範囲で発見出来ていないバグが多数ありました。

 

何が悪かったのか

  • テストケースの不備

体系的なケース抽出が出来ておらず、場当たり的で実施すべきテストが不足していた。

 

どうなっているべきか

  • 経験済みの機能は当然の事、初めての機能に対してもテストケース抽出漏れを防ぐ

    →ブラックボックス面の強化

 

対策

  • テストケースの抽出はイベントからの条件分岐により、ツリー構造をイメージして抽出する

  →マインドマップツールを利用するとイメージし易いです。例えば↓の様に。

 

 

結果

これらの取り組みでどの程度品質が向上したのか、正確な情報はわかりません。

ただ、取り組みを開始してから1年ちょっと後、大火事プロジェクトに火消しで入った時の事です。

結構面倒臭い画面の開発やバッチを作ったんですが、単体テストより後のテストフェーズでバグが一つも出なかったそうです。

(以降のテストケースの精度は皆でレビューしているし、大丈夫でしょう(笑))

 

マインドマップのツールは基本機能をキーボードだけで操作出来るものがオススメです。

勢いを殺すこと無くテストケースを洗い出せます。Excelなどにいきなり書くよりずっと早いかと。

 

それではまた!

 

© 2019 Mountain Gorilla Co., Ltd.