「モジュール」という言葉は、機能設計やプログラミングをやった人ならわかるでしょうが、もしかしたら知らない人も少なくないかも。
★――――――――――――――――――――――――――
●モジュール
モジュールとは、機能単位、交換可能な構成部分という意味の英単語。システムの一部を構成するひとまとまりの機能を持った部品で、システムや他の部品への接合部(インターフェース)の仕様が規格化・標準化されていて、容易に追加や交換ができるようなもののことを意味する。
例えば、一般的なパソコン製品は主要な部品がモジュール化されており、購入時に必要に応じて部品を組み替えたり、後から最新の部品に交換して性能を向上させられるようになっている。
ソフトウェアやプログラミング言語などについても用いられる概念で、汎用的なソフトウェアにはあらかじめモジュールを組み込めるようなインターフェースが用意されており、別の開発者や利用者が追加機能を開発して組み込んだり、全体を入れ替えることなく一部を修正・改良したり機能を強化できるようになっているものが多い。
引用元:http://e-words.jp/w/%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%AB.html
――――――――――――――――――――――――――★
似たような言葉に「ユニット」という言葉もあります。
まあ、正確な意味はおいておいて、仕事をモジュール化すると便利なことが多くあります。
■共通の機能
ある別の仕事があったとして、同じような作業がある時がありますよね。
たとえば、「プレゼン資料を作る」という作業と、「課題進捗の資料を作る」という作業。
何が共通化というと、
ファイルを編集して保存する
という作業です。
多分、ファイルは編集するごとに、前の編集履歴のこすために「ファイル名の後(前)に編集日付を入れて上書きしないようにする」とかやっている人が多いと思います。この作業(機能)は共通ですね。
多くの仕事(作業)は、こういう同じような仕事でちょっとだけ対象が違うものや、ちょっとだけやり方が違うというものが多くあります。
■パラメータ
「パラメータ」という言葉も設計をやったことがない人だと馴染みがないかもしれませんが、
あるモジュール(共通部分)に外部から渡す、機能や仕様の切替のための情報
みたいなものです。
※正確には、http://e-words.jp/w/%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF.html をご覧ください。
モジュールには、そのつどの状況に合わせて動作を変える「パラメータ」がつきものです。
■モジュール化する
ここまで書いたら本日のテーマはわかっちゃいますね。
作業をモジュール化しよう!
ということです(記事のタイトルそのまんま…)。
たとえば、前出の例で、「ファイル名の前後に日付を入れて保存する」という作業は共通なので、これを目をつぶっていてもできるようにしてしまえば、その部分の作業は素早くできるようになります。一部が早くなれば全体もその分早くなるのが道理。
ただ、対象となるファイルや、その保存すべきフォルダが違うので、どうしてもこういうところを毎回考えながらやっている人が多くないのですが、作業自体は同じで、「パラメータ」が違うだけです。そういうふうに見ると
フォルダ: C:\(ユーザー名)\Document\report
フォルダ: C:\(ユーザー名)\Document\NewIdea
をパラメータにしておけば、あるフォルダにファイル名の後に日付を付けて保存するというモジュールの出来上がり。
この作業に習熟してしまえば、
・同じやり方なので作業ミスが減る
・何度も同じことをするので素早くできるようになる
・ファイルの命名規則が統一できるので検索しやすい
という効果が得られます。
それを「今日はどんなファイルで保存しようかなあ」「このふぁいるは、版版号をつけよう。前回の版版号は…?」とか考えていたら、その分遅くなるのは当然ですし、失敗も起きるようになります。
日付はたとえば「Google日本語入力」を使っていれば、「きょう」と入力するだけで今日の日付の文字列が入力できちゃいます。
■自動化する
それがある程度定型化でき、頻度がそこそこあるようなら(前出の例はPC操作を仕事の一部にしている人は相当頻度が高いですよね)、自動化を考えるようにします。
前出の例なら、簡単なバッチファイルやフリーのツールで可能。それを1日一回やれば、もう失敗もないし、考えなくても良くなります。