誠ブログは2015年4月6日に「オルタナティブ・ブログ」になりました。
各ブロガーの新規エントリーは「オルタナティブ・ブログ」でご覧ください。

016.【業界話】システム。ああ属人的な・・・

016.【業界話】システム。ああ属人的な・・・

佐藤 洋之

1967年生まれ、神奈川県横浜市在住。ひょんな事からIT業界に努めて四半世紀、嫁と子供2人、あとメス猫一匹を抱えて、日々奮闘しているエンジニア(??)です。趣味はバイクと読書。IT業界の事、仕事の事、趣味や日々の雑感などについて、これから書いていきたいと思います。

当ブログ「IT雑貨屋、日々のつづり」は、2015年4月6日から新しいURL「​http://blogs.itmedia.co.jp/satou55_makoto/」 に移動しました。引き続きご愛読ください。


 ここ最近寒い日が続いていますね。

 私は通勤で最寄り駅までバイクで行くのですが、先日はあまりの寒さでスターターのスイッチが動かなくなってしまい、出がけにかなり難渋してしまいました。

 子供たちは「早く次ぎの雪、ふらないなかぁー。」と暢気な事を言っていましたが、父ちゃんにとっては、たまったモノではありません。本当に通勤時間の寒さが身に沁みる日々です。

「冬来たりなば、春遠からじ」ではありませんが、結構、春を待ちわびている佐藤@IT雑貨屋です。

 さて先日のドコモの大規模通信障害ですが、皆さんの中にも直撃を受けた人は結構いたのではないでしょうか?

 私の場合はソフトバンクでしたので、そんな事はつゆ知らずにいたのですが、家に帰って「パケット中継装置の更改による障害」が発生し、「システムを切り戻し」により対処したという話を聞いた時、なんだか他人事に思えませんでした。

 私が今取り組んでいる仕事はネットワーク関係ですが、もし自分も作業でミスをした場合、やはり規模こそ違うとはいえ様々な人に迷惑をかけてしまうという事になります。だから作業を進める上では、いつも神経を使います。

 ネットワークはつながってこそ意味があるもので、切れてしまっていては意味が無い。

 しかし最近、ドコモは結構ネットワーク障害を起こしてませんか?
 ここ最近のネットワーク障害の発生頻度を考えた時、はたして本当に「単純なシステム障害だけ」が原因なのかと、ついぞ考えてしまいました。

 実はその発生の根本原因には、実はもう少し深い原因があるのではないでしょうか?

 私はシステム屋稼業でここ二十年以上仕事をしていますが、この世界で良くみたのは、システム更改の時に新ハードウェアや新実行環境に合わせてソフトウェアも改修し対応させるという場面です。

 その時に結構泣かされたのは、稼働しているソフトウェアの仕様書が無かったり、またあったとしても実際のプログラムと乖離していたりする事でした。

 一般的に納品してメンテナンスを続けながら、また幾度か担当者の引継を経ながらシステムというのは動いていきます。ただその時に適切な引継がなされていなかった時には大騒ぎになります。よくソフトウェアなどは「ソースコードがあるじゃないか」とばかりに、ソースコードから処理を紐解きながら改修するという事もあったりします。

 しかしこれが結構難物。

 人の書いたソースコードほど解りにくいものはありません。本来であればそのためにソースには多くのコメントなども入れていくべきなのですが、コメントの無いソースコードというのを、ちょくちょく見かけます。

 場合によっては「コメントが書いてある」としても、まったく意味をなさないコメント内容である場合もありました。ましてや修正をかける時に元のソースコードをコメントとして残して、そこに新たなプログラムが書き込まれていたりと・・・まったくもって、まるで「妖怪変化」の様なものまで見た事があります。

 そんな事でシステム更改をした場合、外目は新ハードで最新機種。ですが、中身はぼろぼろで想定していたスペックを得られないばかりか、不可思議な動きをするシロモノに化けてしまっていたという事もありました。

 いやはやなんとも・・・

 私はこういったシステムの事を「属人的なシステム」と呼んでいました。何故ならシステム全体の事は、作成したエンジニアの「頭の中」にしか無いからです。

 本来システムというのは要求定義書や外部仕様書など、基本的には文書に基き作成されているものであり、担当者が変わったとしても、その書類を引き継ぐ事でスムーズに継承されるべきモノですが、よくあるのは仕様書などの文書に不備があり、結果としてシステムの大事な事については、一部のエンジニアの頭の中にしか無いという事。

 それでどうなるかといえば、担当者が変わってしまった時には、システムの内容を掌握する人がいなくなり、結果として先に述べた様な問題などが発生してしまいます。

 いや、、だからと言って、docomoの更改システムがそういうモノだとかは言いません。

 ただシステム更改という時に問題が発生するの時、往々にしてそういう場面を見てきたもので、ふとその様な事が頭をよぎってしまいました。

 ではどうすれば良いか。

 これは当たり前の事ですが、しっかり資料を整備して、次の人に引き渡す事も考慮しておくという以外に方法は無いのですが、しかし実際のシステム開発の現場では、そういった原則が守られていないという場面も結構あります。

 いかに「属人的なモノ」から「標準化されたモノ」とするのか。

 これからの時代、コスト削減の流れは今以上に強くなるかもしれません。そのためにシステム更改についても、短期間にスムーズに進める事が求められてくるでしょう。また場合によってはある会社が永続的に一つのシステムのメンテナンスを続けていくという事も、今以上に少なくなっていくかもしれません。

 そのためにも、ある特定のエンジニアの頭の中にシステム仕様があるといった、「属人的なシステム」というのは、より排除される事になっていくのではないでしょうか。

 ドコモのネットワーク障害に冠するニュースを見て、そんな事をつらつらと考えていました。

 ここまで読んで頂き、ありがとうございました。
 これからも引き続き、IT雑貨屋をよろしくお願いします。