システム開発業界で経験したくない事個人的トップ5 中編

前回記事はこちら→システム開発業界で経験したくない事個人的トップ5 前編

トップ4:納期遅延


どんな業界でもそうだとは思いますが、約束した期日にモノを納めないと相手にとても迷惑がかかり、信用をなくしてしまいます。そしてすごくもめます。

納品物が大きくなるほど (システムの規模=金額=影響範囲) 納期厳守レベルはアップするので、こっちも提案する時や工数の見積りにはすごく時間をかけ慎重に進めます。

しかし思い通りに運ばないのがこの業界の常、いや世の中の常ですね。
大小あるにせよ人間のすることですから納品遅延は一度や二度はやってしまうものです。

納期が近づくにつれ現場はピリピリムード。PMやPLは吠えますし、普段は現場などに現れないレアキャラ(偉いさん)が頻繁に登場するようになり自然と会議が増え、会議室ではPMやPLが吠えられます。

現場のPMによっては「悪いのはお前だ」と言わんばかりに、犯人探しや吊し上げに精をだすヤツがいますがそうなるともう最悪です。

(とりあえずマネージャーが未熟な者だと、ほんとプロジェクトとしては影響大です。でもこの未熟者を追い詰めてるのって、結局は会社なんですけどね。)

そして誰しもがあの頃に戻りたいと思うわけです。あの頃とはプロジェクト初期の平和な日々 ですね。

僕の経験上、遅延原因は
1.要件誤認識、確認漏れによる設計不備
2.お客様の要求を飲み過ぎ

の順に多い気がします。

1の要件定義、設計というのはシステム開発において上流工程であり、後続には下流工程であるプログラム開発(製造)以降が待ってます。
この上流があやふやだったり変更ばかりだと、下流全域にも多大な影響を及ぼします。プログラムの作り直しやテストのやり直しが発生しますから。

誤りが発覚しそれが極めて大きな影響を及ぼしそうだとなった場合、つまりシステムの枝葉ではなく幹である場合、現場は皆無表情になり、張りつめた空気に支配され、徹夜モード突入の臭いが立ち込めます。
そして実際にモード突入となり、今までの苦労が水の泡とわかり崩れ落ちます。
いわゆる『水泡に帰す』。

その分、こっち側の誤りじゃなくお客様の誤解と判明した時は皆歓喜し誰でもよいからほんと胴上げしたくなりますから。

2は「この要件で開発します」と仕様が確定したにも関わらず、プロジェクト終盤になりお客様から「あれは間違いだった」「そんな話はしていない」「そこをまげて、頼む」などという訂正要求が必ずあります。

これはある程度仕方のないことで、お客様も全部正確に100%の要求できるわけじゃありませんから。付き合いもありますし、限られた範囲内で受け付けることはあるのですが、それを延々と受け入れ続けてしまうとそれは両者にとって得することなど何もなく、その先は地獄になります。
いつまでもシステムが完成しないわけですから。

筋を通して断れないシステム開発側のPMや営業、要件確認を熟し切れなかった開発チーム、お客様側にモンスターユーザーがいたり会社の上下関係がモロ影響してしまうなど、地獄に向かってしまう理由はさまざまです。

実はこの2のケースが一番、システム屋泣かせだと僕は思ってます。
システム仕様が定まらないと現場責任者(PM、PL)は自社とお客様の板挟みで疲弊、作業者(SE、プログラマー)は終わりの見えないプロジェクトにモチベーションを維持出来なくなり疲労困憊です。

現場責任者のように立場ある人達が納期厳守の圧力の中、板挟みの重圧と目の前の課題の多さにより病んでしまい、入院・退職や突然音信不通になりとんでしまうところを今まで何度か見てきました。

昨今、働き方改革などといった政策が誕生しましたが、それの良し悪しは一旦おいといて、社会全体で過重労働廃止にむけたこのような動きにより一部の立場ある人間が押し潰されることが少なくなるのを祈るばかりです。

上記2つ以外にも、技術や要求仕様の難易度見誤りや参画メンバーのスキル不足などがありますがちょっと長くなったのでここでは書きません。

防止策として、お客様には可能な限り定期的な時間をとって頂き要件確定や設計レビューを都度開催し確実にコミットし仕様を固めていきます。まぁ現実的にはなかなか時間をとって頂けないんですけど、ここは運命共同体と理解してもらう必要があります。まぁお客様側のキーマンには時間をとって頂くことも契約の一部にしてましたけどね。

また、「仕様変更は○月○日まで」と契約時に取り決めるんですけどね。通用しないこともあるんです。しかしこっちも商売であり、身を護りたいですから断固交渉しますよ。

システムとして成り立たないような齟齬であれば追加料金で。それ以外は次期残課題で扱ったり、「こういった手段でしばらく運用で乗りきってください」などとこちらから代替案を出してしのぐ事が多いですかね。

トップ3:バグ(プログラム不備、不正)


これはシステム開発経験者なら誰でも1度は経験すると思います。避けては通れないほど身近にいる恐怖です。

一言でバグと言っても、そのバグが与えるインパクトは大小さまざまです。お客様の業務に影響を与えないバグはインパクト小と言えますし、業務が止まってしまうあるいはデータを破壊してしまうのはインパクト大となります。

小の一例を挙げると、アプリケーションから表示されるメッセージに誤字があるだとか、従業員一覧照会画面など一覧明細に表示される順番が要望通りになっていない、などですかね。
これらが発生したからといって業務が止まることはまずありませんし、多くは「直しといてね!」で終わる話です。もちろんインパクト小とは言ってもこちらの不備であることに違いありませんから、他に問題がないかは全て調査しますし、ご迷惑をおかけしましたとお詫びします。

大になるとそうはいきません。
一例を挙げると、銀行振込や従業員への給与などの支払金額に誤りがあったり、更新(追加、変更、削除)してはいけないデータを誤って更新してしまっている、などですかね。

前者のようにお金関係は1円の間違いでも大問題ですし、後者もお客様の大切なデータを壊してしまうわけですからえらいことです。ちなみに前者後者共に直接の当事者ではありませんが、案件メンバーとして経験ありです。

例1 従業員への経費振込データ(銀行へ送る振込データ)ファイルの作成で、あるレアな条件を満たしてしまうと、1人ずつズレてしまい誤支給が発生させた。

例えば「Aさん100円、Bさん200円、Cさん300円」のところが「Aさん300円、Bさん100円、Cさん200円」に。
お客様から「振込データがおかしい、ズレているようだ」と一報が入った時は信じるのに時間がかかりました。そんなアホなことが起こるかと。しかしそれと同時に本当にズレているのであれば、これは途方もなく大きな問題になるとも思いました。

ま、結論は、ズレてたんですけどね。
これによりお客様の人事部担当の方々は全従業員への説明に終われ、経理部の会計処理も大忙しの大迷惑。会社の業務に多大な影響を与えてしまいました。

もちろん菓子折り一つや二つでおさまる問題ではないです。

例2 給与支給額計算に関する率をある時期、例えば4月から変動させるはずが1ヶ月早い3月から適用されてしまい、給与の過払を発生させた。

この変動はパート社員のみが対象だったのですが、それでも140万円を超える過払額となり、お客様は過払分をおまえの会社で負担せよと怒り狂いました。ごもっともではあります、がそれとこれとは話は別。払うことは出来ませんので、別の方法で誠心誠意対応させて頂きました。これ、全社員が対象の変動だったら、中小規模の会社の1つや2つは吹き飛ぶ額だったと思うと怖すぎます。

例3 ある夜間バッチ処理で更新対象となる従業員の選定ロジックに不備があったため、その後続の処理で期待値とは全くかけ離れた結果になるわ、その更に後続の処理でコケるわ(システムダウン)。

不正プログラムによる不正な選定→不正な選定による不正更新→不正更新によるデータ不整合からのシステムダウン。
まるでワン・ツー・右ストレートでノックダウン、コンボですねコンボ。

一連の処理対象データ全量は確か5万件前後、(後で紐解くと)この内不正更新がかかったと思われるデータは1/3程度。ここまでダイナミックだとどこまでが正解で間違いはどれなのかがよくわかりませんし、どうでもよくなります。
それよりもシステムダウンしたということは業務が停滞しますので一刻も早い復旧が求められます。復旧最優先です。

限られた時間の中でとったリカバリー策は「プログラムを改修(バグ改修)し、夜間ジョブのリラン」。
リランとは処理を再実行するという意味で、処理前のバックアップデータを復旧させ正しいプログラムを実行し正しい内容にするということですね。

この規模のトラブルになると1人でも技術者の手がほしい。システムダウンした時にまだ(不幸にも)現場に残っていたメンバーは漏れなく召集され、ほぼ全員が徹夜でした。

皆で力を合わせ、無事翌日昼過ぎに復旧させましたが3食分も食べてないから腹へった記憶の方が鮮明です。
後日談ですが、バグを作ってしまった開発担当者はそれから数日後現場からいなくなりました。その形を選んだのは担当者自身なのか雇い側なのかはわかりませんが、毎度辛いところです。担当者だけのせいではないんですけどね。こういうのの大半は。

大きなトラブル発生時の基本的な対応の流れは
関係者召集→原因究明→バグ対応→調査(他は問題ないかを総点検)→報告書作成→お客様に報告&謝罪
もちろんなるはやで。(自社への報告等は割愛してます)

謝罪や改善策を受け入れてもらえ、それで済めばよいですが場合によっては訴訟に発展するケースもあります。怖いです。

中編おわり。

SNSでもご購読できます。

コメントを残す

*