私の専門はシステムやプログラミングだったりしますが、何かの改善をするときも、同じことに気をつけてます。
幾つもの変更を同時に加えてはいけない
■原因と結果の法則
本のタイトルではありませんが、何かのアクションを起こせば、それに対して結果が出ます。
つまり、
何かの変更を加えること
という原因があって
より良くなった/悪くなった
という結果があるわけですね。
ところが、2つ以上、同じ結果をもたらす変更を加えてしまうと、どちらの原因が良かったのか判別がつきません。
したがって、それによる影響関係という学習ができないことになります。
プログラミングでいえば、ひとつのプログラムで複数個のバグがあったとして、それを全部まとめて対策してしまってからテストをすると、どの変更がどのように影響していたかがわからずに、期待通りの結果にならなかったとしても、デバッグに手間取るわけです。
これが1つしか変えてなければ、結果が変われば、その変わった原因は、今回変更した1箇所しかないわけです。
思うように行かなかったのは、変更の仕方が悪かったからで、もとに戻すのかさらに追加修正をするかは大した話ではありません。
それが何箇所もまとめて変更を加えてしまうと、どこがどのように影響してこんな結果になったのかの把握に時間がかかります。
■ひとつづつ変える
個人個人の仕事のやり方にしても、組織のプロセスにしても、何かの結果を出して、その結果から変更の良否を判断したい時には、
いっぺんに変えずにひとつづつ変える
とそれぞれが単独でどのように結果に影響をしたのかが計りやすいわけ。
これは『エンジニアのための時間管理術』をヒントに書きました。
★P33〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓
●デバッグ時の変更はひとつずつ
一度に1 つすつ変更すれば、どの変更がシステムに実際に影響をおよぼしたのかがわかる。これにより、デバッグプロセスの進行に伴う混乱を回避する。
Thomas A. Limoncelli(著) 『エンジニアのための時間管理術』
――――――――――――――――――――――――――――★
本書は、システム管理者のために書かれていますが、仕事術としては、考えるべきことは一般職の人であれ、マネージャであれ、同じです。
実生活にも応用範囲の広いアドバイスが書かれていますので、とても参考にしています。
もちろん、システム管理者から見ると、より具体的なのでわかりやすいとは思いますが。
■大規模な修正よりもちょっとした修正
抜本的に変更しなければならない時もあります。根本的に腐っているような場合。
抜本的な変更には、準備から実行、結果が出るまでに非常に時間がかかります。
これを一気にやろうとすると、よほど準備と気合ができてないと失敗します。
なので、第一に考えるべきは、「ちょっとした修正で、とりあえず動かせないか」を検討したほうが現実的です。
ちょっとした修正を繰り返しているうちに、最終的には根本のところを変えていくようにしたほうが得策です。
たとえば、大規模な修正が必要なプロセスというのは、おそらくたくさんの小さなプロセスから成り立っています。
そこで、「結果が変わらない、あるいはちょっとだけ良くなる」を目標として、その小さなプロセスのさらにサブプロセスをすげ替えていくと、全体には影響を出さないまま、ひっそりと新しいプロセスが立ち上がります。
もちろん、短期間に望むプロセスが構築できるわけではないので、忍耐力が必要ですが。
多説ありますが、人間の細胞は1か月〜2年で入れ替わるそうです。
でも腕をすげ替えて、人口腕をくっつけると拒否反応が起きますよね。
そんな感じ。
「細胞を少しづつ入れ替えて、2年後にはぜんぜん違う組織になっていた」というのが変革の理想形かも。
■参考図書 『エンジニアのための時間管理術』
![]() ![]() | 本書はシステム管理者、ネットワーク管理者を中心にしたエンジニアのための実践的な時間管理術を紹介する書籍。 著者が考案した「サイクルシステム」と呼ばれる方法を使って、作業リスト、スケジュール、さらに仕事とプライベート双方の長期的な目標を管理する方法を解説する。 長期的に行うプロジェクトとすぐに行う必要がある割り込み作業の優先順位を整理し、ストレスの少ない、充実した一日を送ることを可能にすることでしょう。 上司とのコミュニケーション、文書化の進め方、作業の自動化などシステム管理者が必要としているノウハウを紹介していることも特徴です。 OSのパッチ適用に技術調査、SOX法対応と、日々仕事に追われるITエンジニア。 その限られた時間を有効活用するためのテクニックを解説する。手帳や PDA でスケジュールを管理する方法やタスクリストの書き方など、ビジネス全般に共通するトピックが多いものの、ITエンジニアの視点から、システムの開発・運用管理業務に即したノウハウも盛り込んでいる。面倒な管理作業をスクリプトで自動化する方法などを、サンプル・コード付きで紹介している。 本書はオライリー・ジャパンの紹介ページで、第5章、第13章が無償公開されています。 読んでみてください。 |
◆アマゾンで見る◆ | ◆楽天で見る◆ | ◆DMMで見る◆ |
![]() エンジニアのための時間管理術 著者 :Thomas A. Limoncelli | ![]() エンジニアのための時間管理術 検索 :最安値検索 | ![]() エンジニアのための時間管理術 検索 :商品検索する |
●関連 Web
エンジニアのための時間管理術:オライリー・ジャパン
エンジニアのための時間管理術―GoogleBooks
エンジニアのための時間管理術、自動化に関するまとめ
スケジュールを「炎上」させないための時間管理術 - ITmedia
●本書を引用した記事
集中力を保つ方法:不要な通知をオフする
ゼロ秒思考5
グーグルニュース
議事録は清書してはいけない
面倒くさがり屋の55の法則
「組織は戦略に従う」が「技術は戦略をくつがえす」
タスクの完了数
リストの活用方法
ペンとメモ用紙を持っている人だけがいい情報にたどり着ける
大切な物を置かないとなくさない
●このテーマの関連図書
プロダクティブ・プログラマ-プログラマのための生産性向上術(THEORY…
プログラマが知るべき97のこと
RealWorldHTTP―歴史とコードに学ぶインターネットとウェブ技術
EffectiveDebugging―ソフトウェアとシステムをデバッグする66項目
リファクタリング・ウェットウェア―達人プログラマーの思考法と学習法
新装版達人プログラマー職人から名匠への道