64
Business & Strategy · Maxime Topolov @mtopolov · 24 September 2013 DRUPAL FIXED BUDGET PROJECTS: THE ART OF ESTIMATES

Drupal fixed budget projets : the art of estimates

  • Upload
    adyax

  • View
    3.026

  • Download
    0

Embed Size (px)

DESCRIPTION

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...

Citation preview

Page 1: Drupal fixed budget projets : the art of estimates

Business & Strategy · Maxime Topolov @mtopolov · 24 September 2013

DRUPAL FIXED BUDGET PROJECTS:

THE ART OF ESTIMATES

Page 2: Drupal fixed budget projets : the art of estimates

100 Drupal Experts50 projects per year

@adyax

Page 3: Drupal fixed budget projets : the art of estimates

Forecasting & Estimates

Page 4: Drupal fixed budget projets : the art of estimates
Page 5: Drupal fixed budget projets : the art of estimates
Page 6: Drupal fixed budget projets : the art of estimates
Page 7: Drupal fixed budget projets : the art of estimates

4 tasks job

Page 8: Drupal fixed budget projets : the art of estimates
Page 9: Drupal fixed budget projets : the art of estimates
Page 10: Drupal fixed budget projets : the art of estimates
Page 11: Drupal fixed budget projets : the art of estimates
Page 12: Drupal fixed budget projets : the art of estimates

"Some things are so unexpected that no one

is prepared for them."-- Leo Rosten

Page 13: Drupal fixed budget projets : the art of estimates

Estimated by senior, done by

junior

Page 14: Drupal fixed budget projets : the art of estimates

Perimeter misunderstanding or changes

Page 15: Drupal fixed budget projets : the art of estimates

Human factor

Page 16: Drupal fixed budget projets : the art of estimates

What do we need to estimate ?

Page 17: Drupal fixed budget projets : the art of estimates

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

Page 18: Drupal fixed budget projets : the art of estimates

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.

Page 19: Drupal fixed budget projets : the art of estimates
Page 20: Drupal fixed budget projets : the art of estimates

Drupal & modules install and setup

S1 : 2 to 3 daysS2 : 4 to 7 daysS3 : 8 to 15 days

Page 21: Drupal fixed budget projets : the art of estimates

Couple of days to setup : Redmine,

Users,Mailing lists,

etc...

Page 22: Drupal fixed budget projets : the art of estimates

Page titles URLS

ANALYTICS

AD

PANELSMICRODATA

CONTEXTS

Page 23: Drupal fixed budget projets : the art of estimates

SEO, URL, page titles, ads, analytics

S1 : 3 daysS2 : 5 daysS3 : 10 days

Page 24: Drupal fixed budget projets : the art of estimates

TEMPLATES

Page 25: Drupal fixed budget projets : the art of estimates

why templates are so importantTasksTasks Hours Hours F1F1 Hours Hours F2F2 Hours Hours F3F3

Sketching 1 2 4Wireframes &

validation2 4 8

Design 4 10 16HTML 3 6 16

Drupal templating* 8 12 16SCARY

TOTALS18 24 60

* complete bullshit, since Drupal templating strongly depends on features

Page 26: Drupal fixed budget projets : the art of estimates

Data migration

Page 27: Drupal fixed budget projets : the art of estimates

Data migration per content type

From Drupal : 1 dayFrom Structured DB : 2-3 daysFrom HTML : hell

Page 28: Drupal fixed budget projets : the art of estimates
Page 29: Drupal fixed budget projets : the art of estimates

EACH DEPLOY COSTs YOU $$$

Drupal Clouds* : 0,5 daysCapistrano like : 1 dayOld School : 3 days

* Acquia Managed Cloud, Commerce Platform, Pantheon

Page 30: Drupal fixed budget projets : the art of estimates

Tests & QA

Page 31: Drupal fixed budget projets : the art of estimates

how much you test ?

S1 : 15% dev daysS2 : 20% dev daysS3 : 25 to 30% dev days

Page 32: Drupal fixed budget projets : the art of estimates

Management

Page 33: Drupal fixed budget projets : the art of estimates

how much time to manage

S1 : 10% dev+qa daysS2 : 15% dev+qa daysS3 : 25% dev+qa days

Page 34: Drupal fixed budget projets : the art of estimates

Specifications

Page 35: Drupal fixed budget projets : the art of estimates

How much specificationsS1 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+

Page 36: Drupal fixed budget projets : the art of estimates

Wait...

Page 37: Drupal fixed budget projets : the art of estimates

FEATURES

Page 38: Drupal fixed budget projets : the art of estimates
Page 39: Drupal fixed budget projets : the art of estimates

UserCentricRFPs

Page 40: Drupal fixed budget projets : the art of estimates

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...

Page 41: Drupal fixed budget projets : the art of estimates

PageCentricRFPs

Page 42: Drupal fixed budget projets : the art of estimates

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 ?)

Page 43: Drupal fixed budget projets : the art of estimates

Features ListRFPs

Page 44: Drupal fixed budget projets : the art of estimates

page centric RFPs

Easy to get features

You almost have to imagine the templates, contexts and probably back-office features would not be described.

Page 45: Drupal fixed budget projets : the art of estimates

COSTS

Page 46: Drupal fixed budget projets : the art of estimates

HIDDEN COSTS

Back-office clean up and theming

Workflow, notifications and user permissions

WYSIYWG setup, CSS clean up

Optimisations and architecture fine tuning

Page 47: Drupal fixed budget projets : the art of estimates

How to avoid being the most expensive bidder.

Page 48: Drupal fixed budget projets : the art of estimates

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)

Page 49: Drupal fixed budget projets : the art of estimates

BUILD PHASE

Page 50: Drupal fixed budget projets : the art of estimates

What's measured improves

Page 51: Drupal fixed budget projets : the art of estimates

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)

Page 52: Drupal fixed budget projets : the art of estimates
Page 53: Drupal fixed budget projets : the art of estimates

project ‘backlog’

Your quote data Actual project data

Page 54: Drupal fixed budget projets : the art of estimates

sprint ‘backlog’

Page 55: Drupal fixed budget projets : the art of estimates

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...)

Page 56: Drupal fixed budget projets : the art of estimates

Credits & Debitshow to manage change requests keeping

client happy

Page 57: Drupal fixed budget projets : the art of estimates

credits & debits doc

Page 58: Drupal fixed budget projets : the art of estimates

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)

Page 59: Drupal fixed budget projets : the art of estimates

The STOP day.

Page 60: Drupal fixed budget projets : the art of estimates

Never ending acceptance

Page 61: Drupal fixed budget projets : the art of estimates

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.

Page 62: Drupal fixed budget projets : the art of estimates

Support & Maintenance

Page 63: Drupal fixed budget projets : the art of estimates

100 Drupal Experts50 projects per year

@adyax

Page 64: Drupal fixed budget projets : the art of estimates

THANK YOU!

WHAT DID YOU THINK?

Locate this session at the DrupalCon Prague

website:http://prague2013.drupal.org/scheduleClick the “Take the survey”

link