Pump Up the "Approval Force"(?), A Mysterious Business Processes

Monday, March 9, 2015
'By any means, trying to speed up the approval speed!'

To do so,,,
  1. Digitize the proposal document
  2. Flatten the Organizational structure
  3. Shorten the Approval channel

Whoops, that is too obvious, so I'm embarrassed just listing them...

The following Business Process is a sample case of Project approval flow in a Marketing Division.

It is operated under the concept of "should be prompt decision" as long as it meets conditions which are,
  • the proposer is motivated enough,
  • he/she is appreciated by the Boss,
  • (no information deficiencies to be reworked)

The decisions will be made 'in approximately 30 minutes', when you try to operate it actually.

They say, because of so much of the speediness, they were regret badly after running this Decision making system (Workflow) for commissioning, such as
  • What the heck was 'Paper proposal document' till yesterday?
  • Why the heck I was waiting for 'signature on paper proposal?

[Marketing Project Planning flow]

In this Business Process, the 'Time spent on the approval' will be calculated automatically by
  • the time step of '2 Approval' is finished, and
  • the time step of '3. Mamnager's Decision' is finished.
Managers are desperate because the records will be remain in the company. (The calculation formula is set to exclude the private hours of between 21:00 and 9:00 for 'Time spent on the approval'.)

Moreover, (although it is obvious looking at Workflow Diagram), the Step of [3. Manager's Decision] will automatically go to [3x. Manager's Decision] and [3y. Deputy Manager's Decision] after 30 minutes. For the Managers, they must be desperate because there is a possibility of proxy decision would be made on standing 30 minutes. (* 'Deputy Manager' as a Role could be 'the General manager' or 'Leaders of other sections'. They are capable of proxy decision whenever they find it is in need to be hurry.

I think the characteristic of this Business Process are the following two points which are,
  • - Demanding 'Prompt decision' to the managers
  • - There is no 'reverting' in the manager's choice.

what you will experience through utilizing this 'Prompt decision environment' is 'numerousness of rejection'.

The reason why the number of the rejections increases is simple... In short, 'the proposal document is not capable enough to allow prompt decision'. (In the standpoint of a manager, he/she can do nothing but reject it because he/she doesn't understand the proposal well.) However, patiently continue using it, the proposers will recognize. They will become writing 'proposals which allow their manager to make decisions in 30 minutes', studying from their own experience of being rejected or histories of rejections of their co-workers. Yes, business must evolve in that way.

This is a story about 'Optimizing the "Business Processes" will lead to the improvement of quality of "Business output" (proposal)'. It is more profound than you imagine. To begin with, it is not worse than try to hands-on experience in a small team unit.

[Marketing Project Planning flow:'1. Proposal' screen]

[Data Items List]

[ECMA Script sample]
var OpeningOfBusiness = 9; // Start 9:00
var CloseOfBusiness = 21; // End 21:00
var offerDatetime = data.get("9");
var endDatetime = data.get("10");

//Start time for calc d1
var d1 = offerDatetime;
if(offerDatetime.getHours() < OpeningOfBusiness)
d1 = offerDatetime.getFirstTimeInDate().addHours(OpeningOfBusiness);
else if(CloseOfBusiness <= offerDatetime.getHours() )
d1 = offerDatetime.addDays(1).getFirstTimeInDate().addHours(OpeningOfBusiness);

//Start time for calc d2
var d2 = endDatetime;
if(CloseOfBusiness <= endDatetime.getHours() )
d2 = endDatetime.getFirstTimeInDate().addHours(CloseOfBusiness);
else if( endDatetime.getHours() < OpeningOfBusiness )
d2 = endDatetime.addDays(-1).getFirstTimeInDate().addHours(CloseOfBusiness);

///Approval time without night hour
var intervalDate = ( Math.floor(d2.getTime() / 1000 /3600 /24 ) - Math.floor(d1.getTime() / 1000 /3600 /24) ) ;
var intervalMinute = ( d2.getTime() - d1.getTime() ) / 1000 / 60;
var netIntervalMinute = intervalMinute - intervalDate * (24 - CloseOfBusiness + OpeningOfBusiness) * 60;
var netIntervalMinute2 = Math.floor( netIntervalMinute * 100 + 0.5 ) / 100;

if(netIntervalMinute2 < 0){netIntervalMinute2 = 0;}
retVal.put("11", java.math.BigDecimal( netIntervalMinute2 ) );

[Free Download]
<Similar Models>
<<Relaterd Articles>>

[Japanese Entry (ε’Œζ–‡θ¨˜δΊ‹)]