2009年07月06日

[コンセプト]経営とプログラミング

前回のコンセプトの続きです。

経営とは事業を続けることであると考えた時、一番重要なのは環境に合わせて変化することではないかと思います。これはパッケージのソフトウェアでも同様で、常に変化し続けていなければ、少なくとも商品としては価値が無くなります。変化が無くなれば、後続にキャッチアップされてしまい、単純な価格競争に陥ってしまうためです。

さて、ではソフトウェアを変化させ続けるにはどうすればよいのでしょうか。
明確なビジョンを持つことでしょうか?
新しい技術を導入することでしょうか?
もちろん、それらもあるでしょう。しかし一番重要なのは、身も蓋もない話ですが、そのソフトウェアのプログラムが書きかえられる様に出来ていることです。大概の場合、ビジョンや新しい技術を用意すること自体は難しくありません。問題は、それが実現できないと言うことなのです。
この事は経営においても、同じ事が言えると思います。

実現できないのは、プログラムが書きかえられなくなってしまうからです。
ではなぜ、プログラムは書きかえる事ができなくなってしまうのでしょうか。多くの場合、プログラムは何度も書き変えられる毎に、その影響範囲が読みにくくなります。影響範囲に不安があるため、変更するよりも外部にプログラムを追加して、対応することが増えます。その結果、同じような処理がいたるところに発生し、ますます可読性がなくなります。
すなわち、プログラムと言うものは、追加・変更する毎に徐々に変更できないものに変わってしまうものであると言う事です。

これも経営において同じことが言えると思います。
例えば、組織が硬直化し新規にやりたいことがあっても既存の組織では対応できず、新しい部署を起こしたが従来の業務と被る部分が多く、全体としてますます混乱してしまうと言った状況です。

では、どうすべきなのでしょうか?
その答えも、身も蓋もないものですが、プログラムを書き換えられるようにすればよいのです。続きは次回のコンセプトで書こうと思います。


posted by Senoh at 02:33| Comment(0) | TrackBack(0) | コンセプト

2009年07月02日

[Tips]商談名でグルーピングできるようにする

先日、社員の担当商談一覧を商談名でソートすると、同じ商談名の範囲において、他の項目でソートされないことがあることについて説明しました。その中でも書きましたが、これ自体はZiraffeのバグではありません。これは、各商談は「商談名」は同じでも別の取引である場合は、別の商談として扱っていることによる現象です

ただ、それでも商談名でグルーピングしたい事はあると思います。その場合は、表示するデータを明示的に商談名として指定する事により、対応することができます。具体的には以下のように操作して下さい。

  1. administratorか_ADMINグループのユーザアカウントでログインして下さい。

  2. 社員のINDEXページを開いて、その「継続中の担当商談」の「ページ編集」をクリックしてください。ページの編集モードに切り替わります。

  3. その中で、"[[$商談]]"と書かれている部分があるはずです。これを"[[$商談|$商談名]]"に変更して下さい。

  4. 一時保存ボタンを押して、動作確認をしてください。

  5. 最後に保存ボタンを押してください。


これで完了です。なお、Ziraffe本体のバグではなくともZiraffeCRM設定のバグではあると認識していますので、ZiraffeCRM設定は、この形に修正する予定です。
posted by Senoh at 00:38| Comment(0) | TrackBack(0) | Tips

2009年06月29日

[コンセプト]責任の分割と全体最適化

前回のコンセプトで、業務の効率化を図るためには責任を明確にすべきであるにもかからず、それが逆に全体の効率を落とす事があると言うことについて書きました。恐らくほとんどのSIerは薄々気が付いていても、この事を認めないか業務の分析が悪いからだと主張するでしょう。それがシステムにおける常識だからです。

しかし、私はある視点からすれば、責任の明確化が全体の効率を落とす原因になえるのは当然の事だと考えます。それは、責任を設定すると言う事は、解決しようとする目的を変えてしまうからです。つまり、全社的な利益確保よりも、各責任を果たすことが目的になってしまうと言う事です。

責任を果たす事を目的として考えれば、余剰人員が出ても、それは組織の内部に隠ぺいされます。いざという時に足りなければ責任問題になるからです。同様に、内部のフローも外部からは極力分からなくされます。変にいじられては、責任を果たせなくなる場合があるからです。こうして、徐々に防御的になり、組織そのものの生存本能のようなものが出来上がります。「組織は作るより壊す方が難しいものだ」と言われれば、思い当たる事も多いのではないでしょうか。

もともと、この「責任」は全体最適化を行うための便宜的なものでしかなく、それ自体に意味があるものではありません。また、世の中の流れ、マーケットにおける自社の位置付け、会社の規模や社員のレベル等などにより最適化の方法は異なるでしょう。小さい会社には小さい会社なりの戦い方があり、それに応じて社内を作る必要があるからです。つまり責任は適宜変更されなければならないのですが、それが困難ならば全体の効率を落としてしまうのは当然と言えます。

これに対する一つの対策として、組織としてのノウハウを全てシステムに落とし込むというものがあります。大規模なコールセンターのシステムなどはその典型でしょう。この場合、組織としての暗黙の知識がないため、組織を壊すのも簡単になります。ただこの方法は、ある程度大規模で事業全体におけるシステムコストが低くないと成功しません。また、そうした環境で社員が前向きに仕事に取り組めるのかという疑問もあります。コールセンター的なシステムで、OA機器などの営業をしている会社もありますが、総じて在籍期間は短いようで、一般的なモデルになりそうも無いというのが私の認識です。

作業を分担すれば、責任がついてまわるのは必然なのですが、こうした問題は不可避なのでしょうか。実のところ、こうした問題はプログラミングととてもよく似ています。ならば、同じような考えて対応できるのではないかと言うのが、私の考えです。この続きは、次回のコンセプトで書きたいと思います。


posted by Senoh at 00:45| Comment(0) | TrackBack(0) | コンセプト

2009年06月25日

[BUG]商談名でグルーピングした時の異常動作

すいません、今回はバグの報告です。

例えばZiraffeCRMの社員のINDEXページに表示されている「継続中の担当商談」の一覧において、項目の並びを「商談名」でグルーピングしたときに表示上の問題が発生します。

元々の状態がこれです。(クリックすると拡大表示します)

Fig1

グルーピング表示を解除し、並び順を変更したものです。

Fig2

これを見ると 「2009Q3」商談の「初回訪問」がバラバラになっており、商談進捗でソートされていません分かります。これ自身はZiraffeのバグではありません。なぜならば「商談名」は同じように表示はされていますが、商談としてはそれぞれ別々であるため、同じように見える商談名の中にも並び順が存在するためです。

ただしこれを商談名でグルーピングすると、商談名が同じ場合に結合してしまう問題があります。具体的には以下のようになってしまいます。

Fig3

修正が完了したら、またお知らせします。
なお、Ziraffeは表示値が同じならば同じ値としてソートさせることもできます。その指定については次回のTipsで説明します。


posted by Senoh at 00:56| Comment(0) | TrackBack(0) | BUG

2009年06月22日

[コンセプト]システムの導入とその後

前回のコンセプトで、システム化がコミュニケーションを減らすことについて書きました。これ自体は決して悪い事ではなく、雑談なんだか情報交換だかよく分からない会話が減ると言うだけの話です。即ち、システムによる省コミュニケーション化です。

なぜ、システムによってコミュニケーションを減らせるのかと言えば、本質的には責任の分担を明確にしているからです。もちろん、責任の明確化自体は良い事なのですが、システムにおける「責任」とは「行動に対する責任」であることに注意しなければなりません。結果よりも手順が重要であると言うことです。分かりやすく言えば、いわゆる役所的な仕事の仕方が求められると言うことになります。実際、システムを導入したら、社内が役所っぽくなったという事例は多いでしょう。

役所的であろうとも、効率よくこなせるのであれば、何も問題はありません。むしろ、システムを導入してからしばらくは、非常に効率的に仕事が進む場合が多いと思います。問題は何かトラブルが発生して、運用を見直すことになった場合です。ケースによって対応が異なるような複雑な運用では、現場は混乱します。大概はシンプルな代わりに、冗長な対応がとられるでしょう。これは例えば必要なハンコの数が増えると言う形で現れます。こうしてシステムは徐々に汚れていきます。「システムが古くなってしまった」と言うのは、技術的な変化よりも、こうしたものの積み重ねによるものが多いものです。

ここまでの話をまとめると、システム化はせいぜいその時点における最適解でしかなく、いずれ業務の硬直化や、フローの肥大化を招きやすいということになります。コミュニケーションの希薄化もこれに拍車をかけるでしょう。必要なハンコが増えるごとに、明確だった責任は曖昧になり、システムはその意味をどんどん失います。いずれシステムを再構築する必要性に迫られますが、本質的な問題が解決されない以上、作り直しても同じような問題がまた発生するだけです。

責任を明確にして、効率化を図ること自体が間違っているとは考えにくいにも関わらず、なぜこうなってしまうのか。この周辺を次回のコンセプトで書きたいと思います。
posted by Senoh at 01:23| Comment(0) | TrackBack(0) | コンセプト