現代では官僚制というとなんだか政治的でネガティブな面ばかりが取り沙汰されている面があるが、実際には業務の効率化という観点では、近代的な合理性を追求する優れたモデルである。
官僚制にはネガティブな面はあるものの、組織としてスケーラビリティを維持するために合理性を追求することで自然と官僚制に向かっていく。一度官僚制を取り入れたならば、もはやそれなしでは組織は成り立たなくなる。
マックス・ウェーバーによる官僚制の定義
官僚制を定義した社会学マックス・ウェーバーによる分類では、官僚制組織はざっくり言うと以下の性質を持つ。
- 標準化された職務
- 活動の独立(分業)
- ピラミッド型の体系だった命令系統
- 形式的かつ没人格的な客観的行為の要求
- 文章を中心としたコミュニケーション形態
大前提として、すべての人間は「もの」としての規則に従い「もの」として扱われる。人間の非合理的な恣意性を排除し、平等と独立性を保証する。人に依存しない(属人性を下げる)ことで作業の品質を担保し、業務遂行効率のバラつきを軽減するのが官僚制の合理主義モデルである。
官僚制が存在する場所では労働者の交換可能性が高く、個々人の能力に依存しない。また、業務内容が標準化されており、属人化されないぶん生産性が保たれている。
身近で官僚制が最も顕著に見られる場所として工場やファミレス、行政機関などが上げられる。
官僚制としてのマイクロサービス
さて、マーティン・ファウラーの提唱するマイクロサービス・アーキテクチャはウェーバーの官僚制に照らし合わせてみると、性質にいくつかの類似点が見られる。実際にいくつかの例を挙げてみる。
- マイクロサービス間の通信はgRPCやJSONRPCなど、文章ではないものの形式化されたコミュニケーション形態へ統一されている。
- マイクロサービスは単なるシステムとして扱われ、そこに人格的な主観性はない。マイクロサービスを操作する主体はマイクロサービスを「もの」として見ている。
- マイクロサービスごとに与えられた職務が標準化されている(ECサイトであれば配送マイクロサービス、注文マイクロサービス、など)
- マイクロサービスごとの業務は全て独立して行われる(設計、開発、デプロイ、テスト、など)
照らし合わせてみると、官僚制の考え方をソフトウェア・アーキテクチャに適用したものがマイクロサービスと言ってもさほど違和感はない。モノリシックで巨大化したソフトウェアをスケールさせるためのアーキテクチャがマイクロサービスであるという観点から見ても、スケーラブルな組織体制としての官僚制と目的は一致する。
マーティン・ファウラーはマイクロサービスを「変化に強いアーキテクチャ」であるとしているが、一口に「変化」と言っても実際には「組織的な変化」と「技術的な変化」があると考えられる。技術的な変化の観点では納得がいく(独立性、交換可能性、など)が、組織の点ではどうか。組織の形が変わるとき、システムはどこまでその影響を緩衝できるだろうか。
サム・ニューマンのマイクロサービス・アーキテクチャではマイクロサービスを適用すべきではないケースとして「ドメインへの理解が低い場合」を挙げているが、これは「ドメインに変化を与えたい場合」にも当てはまると言える。ドメインが頻繁に変化する組織... たとえばベンチャーやスタートアップであるが、そのような組織においてマイクロサービスはどう影響するだろうか。
いずれにしても、組織という観点ではマイクロサービスはIT企業における官僚制の適用例だと言える。
官僚制の逆機能
しかし、もちろん(というか当然?)官僚制にはよく知られた逆機能(欠点)がある。
官僚制の逆機能はR.K.マートンによって指摘されているが、その中で最もよく知られるものはセクショナリズムである。組織間で独立性が高まった結果、連携は文書コミュニケーションのみで行われ、組織全体の生産性を高めることよりも自分たちの職務を遂行することだけが目的化してしまう。
この辺の欠点は行政機関などの仕事ぶりを見ればよく分かると思われる。また、より卑近な例ではいわゆる大企業病と揶揄されるものがこのセクショナリズムそのものであると言える。勘違いしてはいけないのは、大企業だからセクショナリズムに陥るのではなく、セクショナリズムを伴ってでも属人性を排した合理的な業務を追求しなければ組織はスケールできない。
また、官僚制で問題が発生するのは標準化・ルール化できない特殊な業務が発生するときだ。いわゆる「お役所仕事」という言い方をされるような融通の聞かないあの感じである。融通の聞かない組織では技術革新もイノベーションも起きない。業務自体がフレームワーク化されてるため、業務改善なども非常にコストがかかる。このような理由から、組織の変化が組織外の変化に追従できなくなることも多い。
さいごに
究極的に言えば、官僚制のネガな部分だけを排除した形で組織をスケールさせつつ、マイクロサービスの技術的なよさを享受したい。これにつきる。
しかしながら、世の中のプレゼンスのある企業を見てみると利益追求のために必ず大きな組織になるし、その過程には業務の合理化が存在する。会社を存続させるためには利益を上げ続けないといけないし、そこに官僚制的な側面が現れてくる。
話をもう少し深掘ると、利益追求という観点の「合理化」には近代資本主義の存在がここに絡んでくる... が、書いていると記事が終わらなくなってしまうのでこの辺で。