Many software development project can't keep the productivity. There are two major points to review in your development project. if you aware of these, you can start the first step for productive software project. Keywords are "customer collaboration" and "process sync".
2. Productivity! What a charming word!
Considering about productivity in software development, how do you imagine to realize high productivity?
Or Someone may consider
higher productivity can be
brought by automated testing
tool.
Someone may consider
higher productivity can be
brought by super
programmer.
Or Someone may consider
higher productivity can realize
by bringing enough number of
engineers.
Those ideas are correct, if we focus only on a certain process. But does this idea really brings high productivity?
17 March 2016 (C)2016 Yuichi MORIWAKI 2
3. Productivity! What a charming word!
Here’s an example of total through put.
Even if you can get higher productivity in breaking eggs, if there is a only pan available, and you only
can get an omelet after 5 minutes cooking. What is the productivity of this “omelet cooking process”?
You can break 60 Eggs in one minute. You can cook an omelet in every 5 minutes.
1 omelet
/5 min
Does this egg breaking productivity be effective to entire through put?
60
eggs/min
High productivity Low productivity
Even we have high productivity process within an entire throughput process, the total
throughput becomes equivalent to the lowest productivity.
INPUT OUTPUT
Productivity
60 Eggs / 1 min.
Even the 60 eggs can be prepared
in one minutes, cooking an omelet
requires 5 minutes, the output of
a plate of omelet is 5 minutes.
1 plate
/ 5 min.
This productivity expects the
output of 60 plates of omelets per
minutes based on a simple
calculation.
1 plate
/ 5 min.
17 March 2016 (C)2016 Yuichi MORIWAKI 3
4. Productivity! What a charming word!
Wherever the low productivity process locates in the entire process, the total
throughput will become the productivity of the lowest productivity process.
INPUT
OUT
PUT
High
Productivity
process
High
Productivity
process
A huge
downtime
A huge
downtime
Low
Productivity
process
Huge amount
of parts in progress.
Utilization ratio becomes low, due to the
small input.
INPUT OUTPUT
High
Productivity
process
High
Productivity
process
Low
Productivity
process
High
Productivity
process
High
Productivity
process
How about this case?
100 pcs / min. 100 pcs / min. 100 pcs / min. 100 pcs / min.
20 pcs / min.
How much will be the total throughput (productivity) ?
?? pcs / min.
20 pcs / min.
17 March 2016 (C)2016 Yuichi MORIWAKI 4
5. Productivity! What a charming word!
This idea is productivity against time.
17 March 2016 (C)2016 Yuichi MORIWAKI 5
6. Productivity! What a charming word!
Here is another story.
To obtain the higher productivity we always consider like this...
INPUT
OUTPU
T
As there is a delay in development
schedule. A project prepared 100
programmers to catch up the delay.
Coding CheckingTesting
Initial Plan
Actual
As delay occurred at
the start of project,
100 programmers
worked to meet the
initial mile stone.
Fortunately
The project
could
recovered the
delay.
But cost overrun has
occurred
17 March 2016 (C)2016 Yuichi MORIWAKI 6
7. Productivity! What a charming word!
This idea is productivity against money.
17 March 2016 (C)2016 Yuichi MORIWAKI 7
8. Productivity! What a charming word!
There is another example which loses the productivity.
lotsof tests
Coding
Debugging
Higher quality
To obtain the quality, many developer spend on testing, recoding and debugging.
In this case even 100 programmer worked the project won’t meet the schedule.
17 March 2016 (C)2016 Yuichi MORIWAKI 8
9. Productivity! What a charming word!
This idea is the worst case.
No assurance on schedule, deliverable and quality even lots of time and money are spent
17 March 2016 (C)2016 Yuichi MORIWAKI 9
10. Productivity! What a charming word!
How we don’t lose both time and money in productivity?
To not to lose time in productivity, the “sync” in processes is necessary.
If each processes are operated at the same tempo. The input and output become equivalent.
This means the number of notes becomes the output of product. Thus they call the interval of
each notes “TACT TIME”.
INPUT
OUTPU
T
This becomes the idea of “KANBAN”, the TOYOTA Production system.
17 March 2016 (C)2016 Yuichi MORIWAKI 10
11. Productivity! What a charming word!
How we don’t lose both time and money in productivity?
To not to lose money in productivity, the accurate schedule planning is necessary.
Initial Plan
The schedule planning should include every task, events,
consideration. Not only developer’s task but customer’s
task should be included.
And prepare the customer’s schedule and task list.
Once the customer understand what they themselves need
to in a certain time, the customer and developer can share
the difficulty of “keeping schedule”.
Plan agreed by
customer
Negotiation of
schedule
rearrangement
becomes easier.
Sync in every
process can help
the project.
17 March 2016 (C)2016 Yuichi MORIWAKI 11
12. Productivity! What a charming word!
How we don’t lose both time and money in productivity?
To organize “sync” process within your company.
To share task & schedule with customer and make plan together.
Internal External
17 March 2016 (C)2016 Yuichi MORIWAKI 12