Successfully reported this slideshow.
Upcoming SlideShare
×

# Maximizing development productivity

773 views

Published on

Published in: Technology
• Full Name
Comment goes here.

Are you sure you want to Yes No
• Wonderful thanks for your presentation

Are you sure you want to  Yes  No

### Maximizing development productivity

1. 1. Maximizing Development Productivity<br />
2. 2. Loss of productivity: Example<br />If 10% of staff waste 1 hour per day, An hourly cost of £20 per employee<br />Based on 220 working days, the direct annual productivity loss would be:An organization employing<br />100 staff = - £44K<br />1000 staff = - £440K<br />10,000 staff = - £4.4M<br />
3. 3. Task Estimation<br />What’s the difference between <br />1 and 1.5 Day?<br />For a project phase: it’s 1 and 1.5 Month<br />+ 50 %<br />
4. 4. What’s Productivity?<br />“Productivity is the rate at which we can develop high quality software that meets the requirements of the customers”.<br />
5. 5. How to measure Productivity?<br />We can measure productivity using system tests. Productivity is the rate at which you add further system tests (that pass) to the existing system. <br />The average number of test cases passed each day is the productivity rate. In Extreme Programming this is called Velocity. <br />
6. 6. The Maximum Productivity Rate<br />The maximum productivity rate is the best velocity that a developer can achieve.<br />For example, Mr. Super Developer when left alone in a quiet room with no meetings and disruptions can build a system which passes 10 additional system test cases each day.<br />In this case the developer <br />is in a state of flow<br />
7. 7. Be in a Flow<br />Being in flow is when you are fully immersed in a task. You are so focused on it that you are almost in a trance like state. Hours can go by without you noticing. Work gets done very fast. When you are in flow you are at running at your highest velocity. <br />It takes approximately 20 minutes to get into flow. However, if you get disturbed and knocked out of flow, it will take another 20 minutes immersion time before you are back in full flow. It is important to stay immersed in flow for long periods at a time to get anything considerable done. <br />
8. 8.
9. 9. Effect of Personal Distractions (Environmental Factor)<br />
10. 10.
11. 11. More Samples of Distraction:<br />Spend the day talking about last nights television or football match.<br /> They seem to want to disturb you when it suits them, not you.<br />It would be worth politely pointing out to them that you are working and that you will talk to them at lunchtime. Alternatively, go and grab a coffee with them and have the discussion away from other people so you don’t disturb them.<br />
12. 12. Noisy Environments (Environmental Factor)<br />
13. 13. Slow Typing Developers (Personal Factor)<br />
14. 14. Effect of Training (Training Factor)<br />If the developer spends all day in a noisy office, sitting on email, making lot of personal phone calls and chatting about last nights football game then lack of training really isn’t the problem.<br />
15. 15. Personal Time Management (Personal Factor)<br />The developers are good in the morning, then start to decrease after lunch, and then pretty much useless after 5pm.<br />
16. 16. Code Rot (Design Factor)<br />No consistent architecture<br />Lack of technical leadership<br />Cut and Paste Programming<br />
17. 17. Where does Technology Fit In?<br />Introducing new technology can help increase productivity, but there are so many other large fish to fry before even thinking about the technology issues.<br />
18. 18. Conclusion<br />Turn the email system off. <br />Turn the phone off. <br />Schedule your tasks to best suit your effectiveness throughout the day and learn to type. <br />After that, start thinking about the development process and training, and finally technology.<br />