Successfully reported this slideshow.
Business & Strategy · Maxime Topolov @mtopolov · 24 September
2013
DRUPAL FIXED BUDGET PROJECTS:
THE ART OF ESTIMATES
100 Drupal Experts
50 projects per year
@adyax
Forecasting
& Estimates
4 tasks job
"Some things are so
unexpected that no one is
prepared for them."
-- Leo Rosten
Estimated by senior,
done by junior
Perimeter misunderstanding or changesPerimeter misunderstanding or changes
Human factor
What do we need to
estimate ?
What do we need to
estimate ?
S1 : Simple site : no authenticated trafic, less than 10 content types,
less than 20 templates, no external data flow, no ...
Front-end complexity F1, F2, F3
F1 : Standard desktop output. Site is mostly blocs based, structure is
simple. No front-en...
Drupal & modules install and setup
S1 : 2 to 3 days
S2 : 4 to 7 days
S3 : 8 to 15 days
Couple of days to setup :
Redmine,
Users,
Mailing lists,
etc...
Page titles
URLS
ANALYTIC
S
AD
PANELS
MICRODATA
CONTEXT
S
SEO, URL, page titles, ads, analytics
S1 : 3 days
S2 : 5 days
S3 : 10 days
TEMPLATESTEMPLATES
why templates are so important
TasksTasks HoursHours F1F1 HoursHours F2F2 HoursHours F3F3
Sketching 1 2 4
Wireframes &
val...
Data migration
Data migration per content type
From Drupal : 1 day
From Structured DB : 2-3
days
From HTML : hell
EACH DEPLOY COSTs YOU $$$
Drupal Clouds* : 0,5 days
Capistrano like : 1 day
Old School : 3 days
* Acquia Managed Cloud, Co...
Tests & QATests & QA
how much you test ?
S1 : 15% dev days
S2 : 20% dev days
S3 : 25 to 30% dev
days
Management
how much time to manage
S1 : 10% dev+qa days
S2 : 15% dev+qa days
S3 : 25% dev+qa days
Specifications
How much specifications
S1 DaysS1 Days S2 DaysS2 Days S3 DaysS3 Days
Content types 2 4 7+
External systems 0 3 10+
Workflo...
Wait...
FEATURESFEATURES
User
Centric
RFPs
User centric RFP
Detailled presentation of features...
...but spreaded across several user stories.
You’ll need to be care...
Page
Centric
RFPs
page centric RFPs
Easy to count templates
You’ll need to be carefull with business rules (why this
magic bloc actually app...
Features List
RFPs
page centric RFPs
Easy to get features
You almost have to imagine the templates, contexts and
probably back-office feature...
COSTS
HIDDEN COSTS
Back-office clean up and theming
Workflow, notifications and user permissions
WYSIYWG setup, CSS clean up
Opt...
How to avoid being the
most expensive bidder.
avoid being the most expensive
Be precise in your quotes. Describe exactly what you’ll do. Usual
number of rows in a quote...
BUILD PHASEBUILD PHASE
What's measured
improves
Redmine & timelogs
1 line in your quote = 1 super task in redmine
Any issue must be a subtask of a quote-based super task
...
project ‘backlog’
Your quote data Actual project data
sprint ‘backlog’
timelog take home messages
Everybody must log time
Keep the link between your initial quote and actual issues & tasks
Shar...
Credits & Debits
how to manage change requests keeping
client happy
Credits & Debits
how to manage change requests keeping...
credits & debits doc
change requests take home messages
Being precise in the initial quote, makes life easier when you need to bill
changes
If ...
The STOP day.The STOP day.
Never ending acceptanceNever ending acceptance
avoid never ending acceptance
You do agile bla bla but yet you always have this final acceptance
period.
Acceptance must b...
Support & Maintenance
100 Drupal Experts
50 projects per year
@adyax
THANK YOU!
WHAT DID YOU THINK?
Locate this session at the
DrupalCon Prague website:
http://prague2013.drupal.org/schedule
...
Drupal fixed budget projets : the art of estimates
Drupal fixed budget projets : the art of estimates
Drupal fixed budget projets : the art of estimates
Drupal fixed budget projets : the art of estimates
Drupal fixed budget projets : the art of estimates
Drupal fixed budget projets : the art of estimates
Drupal fixed budget projets : the art of estimates
Drupal fixed budget projets : the art of estimates
Drupal fixed budget projets : the art of estimates
Drupal fixed budget projets : the art of estimates
Drupal fixed budget projets : the art of estimates
Upcoming SlideShare
Loading in …5
×

Drupal fixed budget projets : the art of estimates

5,054 views

Published on

Session given during the Drupal Con Prague 2013.

https://prague2013.drupal.org/session/drupal-fixed-budget-projects-art-estimates

In many countries accross Europe, websites projects are bought using fixed budget engagements from vendors.

RFPs we receive have often a very poor level of details, while client still wait for a fixed budget and timeframe.

During this session we'll present how we do at Adyax, bidding on fixed budget projects only to ensure that projects are always delivered and we get some money for it.

Session will cover several key points, like :

How to analyse and RFP and convert it to a Drupal Project Plan
How to count templates and related charges
Reading between the RFPs lines, detect those features that are not clearly described
How to avoid being the most expensive bidder by providing options
Some sharing about our estimation rules, tips & tricks
How to prepare a detailled planning
Important risks that can blow up your margins
In what Drupal is so different from others CMS / Frameworks
How to keep an eye, during the project on your margin
How to deal with change requests and evolutions
How to make your customer happy even when you ask them more money and/or time
10 usual mistakes that any Drupal Shop do.
Session will be supported with a set of concrete examples...

Published in: Technology
  • Be the first to comment

Drupal fixed budget projets : the art of estimates

  1. 1. Business & Strategy · Maxime Topolov @mtopolov · 24 September 2013 DRUPAL FIXED BUDGET PROJECTS: THE ART OF ESTIMATES
  2. 2. 100 Drupal Experts 50 projects per year @adyax
  3. 3. Forecasting & Estimates
  4. 4. 4 tasks job
  5. 5. "Some things are so unexpected that no one is prepared for them." -- Leo Rosten
  6. 6. Estimated by senior, done by junior
  7. 7. Perimeter misunderstanding or changesPerimeter misunderstanding or changes
  8. 8. Human factor
  9. 9. What do we need to estimate ? What do we need to estimate ?
  10. 10. S1 : Simple site : no authenticated trafic, less than 10 content types, less than 20 templates, no external data flow, no or simple workflow S2 : Medium site : simple user related features like comments, voting, sharing, from 10 to 20 content types, from 20 to 50 templates, some simple XML data sources, workflow and custom business features, simple data migration S3 : Complex site : transactional web site with high trafic (e- commerce, social network, intranets), more than 20 content types, more than 50 templates, many custom business logic and several complex data sources, advanced data migration Site complexity s1, S2, S3
  11. 11. Front-end complexity F1, F2, F3 F1 : Standard desktop output. Site is mostly blocs based, structure is simple. No front-end animations, not much Javascript. No accessibility. No mobile support. IE10+, FireFox, Chrome & Safari support. F2 : More advanced front end with a mobile version for some templates. Some basic front-end JS animations. Basic level of accessibility support. IE8+ is now supported too. iOS & Android last two versions support. F3 : Full-responsive design with 3 break-points. Level 2 of accessibility support. IE6+ (degraded mode) support. Responsive tested in iOS, Android, Windows Phone, UC Browser, Opera mini.
  12. 12. Drupal & modules install and setup S1 : 2 to 3 days S2 : 4 to 7 days S3 : 8 to 15 days
  13. 13. Couple of days to setup : Redmine, Users, Mailing lists, etc...
  14. 14. Page titles URLS ANALYTIC S AD PANELS MICRODATA CONTEXT S
  15. 15. SEO, URL, page titles, ads, analytics S1 : 3 days S2 : 5 days S3 : 10 days
  16. 16. TEMPLATESTEMPLATES
  17. 17. why templates are so important TasksTasks HoursHours F1F1 HoursHours F2F2 HoursHours F3F3 Sketching 1 2 4 Wireframes & validation 2 4 8 Design 4 10 16 HTML 3 6 16 Drupal templating* 8 12 16 SCARY TOTALS 18 24 60 * complete bullshit, since Drupal templating strongly depends on features
  18. 18. Data migration
  19. 19. Data migration per content type From Drupal : 1 day From Structured DB : 2-3 days From HTML : hell
  20. 20. EACH DEPLOY COSTs YOU $$$ Drupal Clouds* : 0,5 days Capistrano like : 1 day Old School : 3 days * Acquia Managed Cloud, Commerce Platform, Pantheon
  21. 21. Tests & QATests & QA
  22. 22. how much you test ? S1 : 15% dev days S2 : 20% dev days S3 : 25 to 30% dev days
  23. 23. Management
  24. 24. how much time to manage S1 : 10% dev+qa days S2 : 15% dev+qa days S3 : 25% dev+qa days
  25. 25. Specifications
  26. 26. How much specifications S1 DaysS1 Days S2 DaysS2 Days S3 DaysS3 Days Content types 2 4 7+ External systems 0 3 10+ Workflow 0 1 5+ User related features 0 2 5+ Back-office 1 3 5+ Front-end 3 5 15+ SEO & Analytics 0,5 1 5+ Data migration 0 4 15+ Search 1 3 5+
  27. 27. Wait...
  28. 28. FEATURESFEATURES
  29. 29. User Centric RFPs
  30. 30. User centric RFP Detailled presentation of features... ...but spreaded across several user stories. You’ll need to be careful with templates and site structure... ...and with SEO, Analytics, Contexts, etc...
  31. 31. Page Centric RFPs
  32. 32. page centric RFPs Easy to count templates You’ll need to be carefull with business rules (why this magic bloc actually appears on that particular page) and the back-office (you need a dashboard for that ? really ?)
  33. 33. Features List RFPs
  34. 34. page centric RFPs Easy to get features You almost have to imagine the templates, contexts and probably back-office features would not be described.
  35. 35. COSTS
  36. 36. HIDDEN COSTS Back-office clean up and theming Workflow, notifications and user permissions WYSIYWG setup, CSS clean up Optimisations and architecture fine tuning
  37. 37. How to avoid being the most expensive bidder.
  38. 38. avoid being the most expensive Be precise in your quotes. Describe exactly what you’ll do. Usual number of rows in a quote : 20 (S1), 50 (S2) or 100 (S3) Add as much options as you can. In case of unclear feature, take low level estimate and explain exactly what you’ll provide. ...or underestimate your build and bet on the run (dangerous strategy usually employed by big IT companies)
  39. 39. BUILD PHASEBUILD PHASE
  40. 40. What's measured improves
  41. 41. Redmine & timelogs 1 line in your quote = 1 super task in redmine Any issue must be a subtask of a quote-based super task Force everyone to log time daily (specially project managers)
  42. 42. project ‘backlog’ Your quote data Actual project data
  43. 43. sprint ‘backlog’
  44. 44. timelog take home messages Everybody must log time Keep the link between your initial quote and actual issues & tasks Share estimates with developers & QA so they can warn you if you go out of scope. Stick to the plan, even during panic periods. (Yeah, i’ll log my hours next week, we have a release now...)
  45. 45. Credits & Debits how to manage change requests keeping client happy Credits & Debits how to manage change requests keeping client happy
  46. 46. credits & debits doc
  47. 47. change requests take home messages Being precise in the initial quote, makes life easier when you need to bill changes If possible, don’t send many small bills but keep track of evolutions in a credit / debit shared doc When doing evolutions quotes keep in mind that the price should include the dev of the evolution itself and the integration into the site (which actually may be more complex thant the feature itself)
  48. 48. The STOP day.The STOP day.
  49. 49. Never ending acceptanceNever ending acceptance
  50. 50. avoid never ending acceptance You do agile bla bla but yet you always have this final acceptance period. Acceptance must be time boxed. You MUST define, with the client a precise period of acceptance. Days / weeks before the release define with your client ‘blocker’ issues. Explain to the client what happens during the guarantee period. Avoid doing new not blocking features during the acceptance.
  51. 51. Support & Maintenance
  52. 52. 100 Drupal Experts 50 projects per year @adyax
  53. 53. THANK YOU! WHAT DID YOU THINK? Locate this session at the DrupalCon Prague website: http://prague2013.drupal.org/schedule Click the “Take the survey” link

×