ソフトウェア開発者の日常

こだわりなく書きたいことを書いていきます。

思い込みで無駄な時間を使ってしまうか慌ててしまう

先日、既存のプログラムを再利用する機会がありました。
再利用にあたり、CASEが使われているクエリを修正しなければいけないことに気がつきました。

データベースの値が1なら5000、0なら0を検索結果として戻るためにCASEは使われています。
再利用後は、CASEを止めてJOINした別のテーブルの値を用いて、検索結果を戻すようにしなければなりません。

思い込みで無駄な時間を使ってしまう

クエリの修正をしなくてはならないことは覚えていたので、該当のクエリを修正し始める前に、こんなクエリにしなければならないと考え、既存のプログラムのクエリを元にしないで、新たなクエリを考えだしました。

CASEを止めてJOINした別のテーブルの値を用いる部分ができたので、既存のクエリのCASE以外の部分を反映しようと、既存のクエリを改めて確認しました。

確認した結果、新たにJOINしなければいけないと考えたテーブルは、既存のクエリでもJOINしていました。
JOINした後のテーブルの別名を指定して、値をデータベースから取得するようにするだけで目的を果たせるようになっていました。

既存のクエリは修正後にはあまり使えないと思い込んでしまったために、無駄な時間を使ってしまいました。
既存のクエリを元に、修正できるのか、新たなクエリを考えた方が早いのかという判断が必要でした。

f:id:AJYA:20170404061549j:plain
photo credit: World Economic Forum Davos Insights: Addressing Identity through Positive Narratives via photopin (license)

思い込みで慌ててしまう

システムの作成が終ったのでお客さんに連絡しようと思い、ふと最近のメールを読み返すと、選択肢の変更依頼がありました。
読み返すまで変更をしたつもりでいて、念のためと表示を確認すると変更前の状態です。

変更したつもりになっていました。
お客さんへの連絡をしなければいけない期限も迫っています。
慌てて選択肢を変更し動作確認を行って、お客さんへの連絡の期限に間に合いました。

思い込みがないか、連絡の前日に再確認を行う時間を確保して、確認の結果翌日に連絡できるように余裕を持たせたいです。