「稟議力」をキタエル(?)、不思議な業務プロセス

2015年3月9日
「とにかく決裁スピードを速くしよう!」

その為には、、、
  1. 企画書類は電子データが良い。
  2. 組織構造はフラットな方が良い。
  3. 決裁ルートは短い方が良い。
わっ、アタリマエすぎて、列挙するだけハズカシイ。。。

以下の業務プロセスは、マーケティング本部における企画決裁フローの事例だ。
  • 起案者本人にヤル気があって
  • その上司が認めている
  • (差し戻すべき情報不備が無い)
という条件であれば「即断即決すべきだ」と言う思想の下に運用される。実際に運用してみると「30分程度」で決裁される。

この稟議決裁システム(ワークフローシステム)を試運転させると、あまりのスピードに、
  • 昨日までの『紙の稟議書』はナンだったんだ??
  • 『紙の稟議書を回して決裁待ち(ハンコ待ち)をしていた』のはナンだったんだ???
と猛省する事になるらしい。(キケン?)

[マーケティング企画フロー]


この業務プロセスでは、
  • 『2.承認』の工程が完了した時刻
  • 『3.部長決裁』の工程が完了した時刻
から「決裁に要した時間」が自動的に算出される。会社の記録として残ってしまうので、各部長は必死だ。(※一応、21時から翌朝9時までの就寝時間は「決裁に要した時間」にカウントされない計算式になっている)

さらに、(業務フロー図を良く見れば分かるが)、『3.部長決裁』の工程は、わずか30分後に『3x.部長決裁』と『3y.部長代理決裁』の2工程に自動的に進んでしまう仕組みになっている。部長視点に立てば「30分放置すると、代理決裁されてしまう可能性がある」ので、各部長は必至だ。(※ロールとしての「部長代理」は、「本部長」であったり「別チームのチームリーダ」であったりする。彼らはスピードを要すると感じた場合、部長決裁を代行する事が出来る)

この業務プロセスのポイントは、
  • 部長達に「即決」を求める点、
  • また、部長達の選択に「差し戻し」が無い点
の2点と言える。

さて、、、
この「即断即決環境」を運用して、まず最初に体験する事になるのは「否決の多さ」だ。

その否決が多くなる原因はカンタン。。。要するに「即断即決できる稟議書になっていない」のが原因だ。。。(部長の立場でいえば「良く分からないから否決せざるをえない」)。しかし我慢して運用し続けると、そこは企画者側も愚かではない。自身が否決された経験、同僚が否決されている履歴、などを参考にして、『部長が30分で決裁できる企画』を書くようになる。そう、、、そう進化しなければ仕事にならない。(なるほど。。。)

コレ、「業務プロセス」を見直せば、「業務アウトプット」(企画書)の品質向上につながる、と言う話。。。 意外と奥が深い。。。まずは小規模なチーム単位で実体験してみるのも悪くない。

[マーケティング企画フロー:「1.企画申請」画面]

<データ項目一覧画面>

<ECMAスクリプトのサンプル>
var OpeningOfBusiness = 9; // 対応開始時刻 9:00
var CloseOfBusiness = 21; // 対応終了時刻 21:00
var offerDatetime = data.get("9"); 
var endDatetime = data.get("10"); 

//計算用の開始時刻 d1
var d1 = offerDatetime;
if(offerDatetime.getHours() < OpeningOfBusiness) // 0時から9時に申請の場合、 
{
d1 = offerDatetime.getFirstTimeInDate().addHours(OpeningOfBusiness); // 開始時刻を9時とみなす
}
else if(CloseOfBusiness <= offerDatetime.getHours() ) // 18時以降に申請の場合、
{
d1 = offerDatetime.addDays(1).getFirstTimeInDate().addHours(OpeningOfBusiness); // 日付を翌日に進め、9時にセットする 
}

//計算用の終了時刻 d2
var d2 = endDatetime;
if(CloseOfBusiness <= endDatetime.getHours() ) // 18時以降に終了の場合
{
d2 = endDatetime.getFirstTimeInDate().addHours(CloseOfBusiness); // 18時とみなしてセットする 
}
else if( endDatetime.getHours() < OpeningOfBusiness ) // 0時から9時に終了の場合 
{
d2 = endDatetime.addDays(-1).getFirstTimeInDate().addHours(CloseOfBusiness); // 日付を前日に戻し、18時にセットする 
}

///正味経過時間
var intervalDate = ( Math.floor(d2.getTime() / 1000 /3600 /24 ) - Math.floor(d1.getTime() / 1000 /3600 /24) ) ; // 経過日数=夜の数(d)
var intervalMinute = ( d2.getTime() - d1.getTime() ) / 1000 / 60; // 経過時間(m)
var netIntervalMinute =  intervalMinute - intervalDate * (24 - CloseOfBusiness + OpeningOfBusiness) * 60;
var netIntervalMinute2 = Math.floor( netIntervalMinute * 100 + 0.5 ) / 100;  //※小数点以下第2位で四捨五入 

if(netIntervalMinute2 < 0){netIntervalMinute2 = 0;} // 深夜に申請、深夜に終了の場合などをゼロに
retVal.put("11", java.math.BigDecimal( netIntervalMinute2 ) ); 


[雛形ダウンロード (無料)]
<類似プロセス>
≪関連記事≫

[英文記事(English Entry)]

0 件のコメント :

コメントを投稿