Saba note

醜悪コード Ugly hacks ITものづくり

Debugの手順(初心者級のディレクターとプログラマー用)

Debugの概要

電化製品の取扱説明書のトラブルシューティングの際に最も最初に太字で大きく書かれている「電源が入っていますか?」にはなかなか共感できるものがあります。そもそもこれぐらいの低次元なトラブルが多発しているというのが残念なところではありますが、通常のトラブルはこれとさほど変わりません。
ここではWebアプリのデバック方法を経験を元に記述してます。

エラーが確認できるURI

そもそもエラーが確認できるURIを共有せずにデバックをはじめるという本末転倒型の方々を散々見てきました。またこのエラーが確認できるURIにはいくつかその開発メンバー全員で共有しないといけない条件があります。

  • アクセスURI
  • アクセスしている環境(開発中はいろいろな環境があると思います。)
  • アクセスURIにアクセスした上で、エラーが再現できる条件

デバックの前にこの条件を確実に共有してください。これが出来ない場合はデバックしても意味がないのでしないでよいです。
アクセスURIは条件によっていろいろな形をとります。Gitなどでリポジトリを共有している際には特にドメインが同じになるとは限りません。共有すべきURIは単にパスの部分だけかもしれません。その上最新のHEADを落としてこないとデバックの意味がないかもしれません。また再現するためのパスや引数に条件があるかもしれません。それを共有しましょう。
アクセスしている環境は、上記のGitのリポジトリだけで開発をすすめている場合はローカル環境で開発していることがほとんどだと思います。共有の開発環境(プレビュー環境)がある場合はそのURIで共有した方がいいかもしれません。しかしサーバーなどの環境依存で起こっているエラーやバグである可能性もあります。どの環境で起こっているエラーかというのも重要な情報です。(というか、これがないと本末転倒)