DrupalCon Amsterdam slides for Train Wrecks, Ugly Baby Client Meetings and Other Client Calamities.
Would you believe with a $100,000 project, as little as 50% can be spent on actual development? Where the heck is the rest of the money spent? You might be shocked how much can be wisely allocated in discovery, business analysis, risk assessment and architecture before one line of code is written.
Shocking still is that your projects will be more successful, your clients happier and your team humming like a well-oiled machine. Get recommendations, accolades and repeat business that is the holy trinity of business. Spending the effort and money in the right areas will give you the business results so many companies struggle with.
This follow-up session from last year's Train Wrecks, Ugly-Baby Meetings and other Client Calamities takes a deeper dive into the technical process of projects. This in-depth look at the discovery process can be used by small and large projects alike.
Clients are looking for strategic partners, not just a Drupal shop. In this interactive and discussion-based session, we'll cover these specific and detailed ways to walk projects through from the what, why, how, when and who. Learning how to ask the detailed questions, understand the clients needs, manage the internal politics and the entire scope of what makes a project successful will help everyone get better results.
3. Everest
Development is like a trek to Everest.
You plan like crazy with the right team, resources
and timeline so unforeseen avalanches, blizzards
and crevasses don’t kill you.
susan@drupalanywhere.com 3
Susan Rust / DrupalCon Amsterdam / 2014
5. Why?
You are missing other cool sessions…"
What do feel you are lacking?"
Where are you out of control?"
Where are you at risk?"
Where can you contain costs?
susan@drupalanywhere.com 5
Susan Rust / DrupalCon Amsterdam / 2014
6. 10/10
People and organizations bailing on Drupal because
a weak implementation did not meet their business
needs.
susan@drupalanywhere.com 6
Susan Rust / DrupalCon Amsterdam / 2014
8. Shops in Crisis
Shops lurch forward every day, working
hard, funded by cash-flow, stressed out,
unsure how to grow or make useful
changes that empower teams & make
clients happy.
The right people doing the right things
within the right process = ease &
profitability.
8
10. 1. Say No
If you can’t deliver a win, don’t play."
Only take good projects with good customers that
meet your business goals."
"
Don’t have any goals? Oops.
susan@drupalanywhere.com 10
Susan Rust / DrupalCon Amsterdam / 2014
11. Business Goals
What kind of Drupal do you do?"
What is your sweet spot today?"
Where do you want to be in 3 years?"
Where are you a subject matter expert?"
Is the project good for business & team?
11
12. 2. Drupal + Process
= Win
Drupal = Fail"
"
Drupal with process leads to project success and
excellent experiences.
susan@drupalanywhere.com 12
Susan Rust / DrupalCon Amsterdam / 2014
13. 3. Client Mgmt.
It’s your job to train the client and manage their
expectations."
"
Teach them how to succeed at a web project.
susan@drupalanywhere.com 13
Susan Rust / DrupalCon Amsterdam / 2014
14. 4. No Docs?"
No Development!
Do not start working without engineering docs."
Do not start working without fully fleshed out tickets."
Just don’t do it.
susan@drupalanywhere.com 14
Susan Rust / DrupalCon Amsterdam / 2014
15. 5. Cash-flow is not
the Same as Profit
The ability to measure project margins is critical to
solid growth and scalability."
Most companies run on cash-flow, not profitable
projects.
susan@drupalanywhere.com 15
Susan Rust / DrupalCon Amsterdam / 2014
17. Communication Gap
What
Developers
Know
Drupal, Beer,
Coffee
What
Clients
Know
Their
Stuff
Gap
susan@drupalanywhere.com Susan Rust / DrupalCon Amsterdam / 2014
18. Communication Gap
clients
talk greek
{engineers !
talk geek}
susan@drupalanywhere.com Susan Rust / DrupalCon Amsterdam / 2014
19. Closing the Gap
What
Clients
Know
What
Developers
Overlap Know
Drupal, Beer,
Coffee
Their
Stuff
susan@drupalanywhere.com Susan Rust / DrupalCon Amsterdam / 2014
22. 360° Development
AM/PM
This role sits at the
center of projects
and determines
project success.
Sales
Devs
Client
PM
QA
$$$
susan@drupalanywhere.com Susan Rust / DrupalCon Amsterdam / 2014
24. Instead of Stalled
susan@drupalanywhere.com Susan Rust / DrupalCon Amsterdam / 2014
25. Project Phases
Business
Analysis Development Project
Planning
Development
UAT
Delivery
Phase 2
Training
Phase 0
Storyboards
Dashboards
"
Objectives
Commitment
Risk Mgmt
Metrics
susan@drupalanywhere.com Susan Rust / DrupalCon Amsterdam / 2014
26. Project Phases
Business Analysis Project Planning Development
1. Site Audit
a. Content
b. Web audit
c. Performance audit
d. Training
2. Discovery
a. Web objectives
b. Stakeholders
c. Current workflow
d. Content types
e. Views
f. Taxonomies
g. User Stories
h. Storyboards
i. Pre-wireframes
"
"
3. Engineering
a. Data model
b. Content
c. Migration
d. Integration
e. Wireframing
f. Deployment
g. Performance
h. Scaling
"
4. Start Development
a. Post-mortem
b. Updated Docs
c. Tickets
d. Resources
e. Timeline
f. Sprints
g. Demos
5. During Development
1. Build
2. Migrate
3. Integrate
4. Design
5. Theming
"
"
"
"
6. Post Development
1. QA
2. UAT
3. Bug fixes
4. Launch
5. Documentation
6. Client training
7. Phase 2
susan@drupalanywhere.com Susan Rust / DrupalCon Amsterdam / 2014
27. Estimating Projects
25% budget 60% budget
5%" 10"% 10"% 30% 30"% 15%
audit
discovery engineering development design/theme uat / bugs
You burn the time on discovery,
engineering and uat/bugs whether
you charge for it or not.
susan@drupalanywhere.com Susan Rust / DrupalCon Amsterdam / 2014
28. Communication
Basecamp for client communication. Devs
included but not responding.
Jira or other for ticket information, estimates
and status. ALL info goes here, not spread
out across multiple tools.
Freshbooks or other automated estimating
recurring billing tool.
susan@drupalanywhere.com Susan Rust / DrupalCon Amsterdam / 2014
33. Sales: Consultative
It’s not about the quantity of projects."
It’s about a win for the company and the
customer."
Consultative Sales: Business analysis to
understand how the client uses their data
to build the right object model. Codifying
their business process.
33
34. Sales: Analysis
Is this a good project?"
Is this a good client?"
Does it meet our business goals?"
What are the risks?"
What are the rewards?"
Will be succeed?"
"
Reward Sales Teams based on a weighted
basis rather than flat commission.
34
35. Sales: Analysis
What is the purpose of the site?"
What is the metric for success?"
Who has to use the site?"
What will they do?"
How will they do it?"
What are the reports needed?"
What has to be integrated?"
What will be migrated?
35
36. Managing
Expectations
Training on Process & Drupal"
DOOB / MVP"
Triage / Red Flags"
Team and Time Commitment"
Risk Assessment
susan@drupalanywhere.com 36
Susan Rust / DrupalCon Amsterdam / 2014
37. Checkpoint
Red flags"
Not winnable project"
Underfunded"
Bad project"
Wrong project"
Not winnable client"
Not coachable"
Micromanaging"
Not managing"
Naive"
Low tech"
Post summary to Basecamp
susan@drupalanywhere.com Susan Rust / DrupalCon Amsterdam / 2014
39. Audits & Discovery
Site audits and discovery allow you to know
what you’re getting your team into. You have
been paid for high-level work without
dragging your company through the mud.
You are now the expert on their needs.
susan@drupalanywhere.com Susan Rust / DrupalCon Amsterdam / 2014
40. Site Audit
User stories"
Wireframes"
User dashboards"
Reports"
Content"
Users"
Drupal"
Taxonomy"
Content Types"
Features"
Custom Features"
Views"
Modules"
Custom Modules"
Integrations"
Workflow"
Migration"
Post to Basecamp
susan@drupalanywhere.com Susan Rust / DrupalCon Amsterdam / 2014
41. Discovery
Organizes and prioritizes ideas & requests"
Identifies all stakeholders & users stories"
Content types, taxonomies & views"
User dashboards & reports"
Content migration & integrations"
Workflow & features
susan@drupalanywhere.com 41
Susan Rust / DrupalCon Amsterdam / 2014
42. Business Rules
A web project is often the catalyst for a rewrite of
their own business rules."
"
Clients often need help making the leap from
manual to web processes.
susan@drupalanywhere.com 42
Susan Rust / DrupalCon Amsterdam / 2014
43. Content
How much is there?"
Who manages it?"
Who will write new content? by when?"
How will the new site manage it?"
What is the content deployment strategy?"
susan@drupalanywhere.com 43
Susan Rust / DrupalCon Amsterdam / 2014
44. UAT
Discovery documents become the basis for user
acceptance testing."
"
This also prevents scope creep."
susan@drupalanywhere.com 44
Susan Rust / DrupalCon Amsterdam / 2014
46. Pre-mortem
Pretend the project is done, what will
everyone be saying in 12 weeks"
Let your team punch holes in the work
done so far"
Ask them what they see as risks,
impediments, problems"
Raise all issues with the client now
46
47. MVP
Only build MVPs. No matter how tempting.
susan@drupalanywhere.com 47
Susan Rust / DrupalCon Amsterdam / 2014
48. Docs
They are posted on the wall as a living, breathing
document. Docs include:"
"
User stories"
Storyboards"
Wireframes"
Designs
susan@drupalanywhere.com 48
Susan Rust / DrupalCon Amsterdam / 2014
49. Storyboards
Storyboards illustrate the lifecycle of each content
type, user & feature."
"
They are based on the user stories gathered during
discovery.
susan@drupalanywhere.com 49
Susan Rust / DrupalCon Amsterdam / 2014
53. Wireframes
Wireframes are essential to call out features and
functionality."
"
Wireframes are updated at the end of each sprint as
needed.
susan@drupalanywhere.com 53
Susan Rust / DrupalCon Amsterdam / 2014
55. Design
Design happens after engineering and ALL
functionality has been called out."
"
Theming happens as the last step before UAT.
susan@drupalanywhere.com 55
Susan Rust / DrupalCon Amsterdam / 2014
56. Deployment
Where are they hosted"
What are the obstacles"
Mimic current prod
susan@drupalanywhere.com 56
Susan Rust / DrupalCon Amsterdam / 2014
57. Performance
What do they have"
What will they need"
What are the risks
susan@drupalanywhere.com 57
Susan Rust / DrupalCon Amsterdam / 2014
58. Scaling
Will the new site drive more traffic, interactions and
lead to a crash?"
What do they have"
What will they need"
What are the risks
susan@drupalanywhere.com 58
Susan Rust / DrupalCon Amsterdam / 2014
60. Process
Having a strong process allows a PM to have
confidence & authority to manage client expectations,
teams and tasks. "
Without it they spend time putting out fires and often
find themselves lying to clients. This creates burnout,
stress and reduces trust and teamwork.
susan@drupalanywhere.com 60
Susan Rust / DrupalCon Amsterdam / 2014
61. Client Training
Final SoW"
Client Homework"
What are risk parameters"
Content deadline"
Project team"
Communication tools"
Weekly meetings"
Weekly QA"
Time commitment
Drupal Training"
Process Training"
How sprints works"
What is next phase"
Scope Creep"
What is a change order"
What is technical debt"
Client QA & UAT
Finances"
Final payment criteria"
Burnrate = $500/hour"
Budget"
Timeline"
Launch"
Team"
Environment"
Credentials"
Process"
Approvals"
61
62. Technical Debt
Explain to the client what it is"
Explain who’s responsible"
Share each time they incur technical debt and
let THEM make the choice
susan@drupalanywhere.com 62
Susan Rust / DrupalCon Amsterdam / 2014
64. Measuring Sprints
Tickets: sold / estimated / actual"
Burn Rates: sold / estimated / actual"
Change Orders: $$
susan@drupalanywhere.com 64
Susan Rust / DrupalCon Amsterdam / 2014
65. IMPORTANT
At the end of each sprint a mountain of information
comes back to the team. This information MUST be
parsed into FOUR buckets:"
Bug fix"
In-scope request"
Out-of-scope request = now = c.o."
Out-of-scope request = next phase = Basecamp
susan@drupalanywhere.com 65
Susan Rust / DrupalCon Amsterdam / 2014
66. Docs
All docs should be easily found in the ticketing
system. Devs work there, put their information
there."
Updated at the end of every sprint and client
meeting with sign-off from engineering."
Docs are your insurance against scope creep,
client expectations and “you said” issues."
Docs are used in QA and UAT.
66
68. Technical Debt Matrix
Tech
Debt
Minimal
Debt
Moderate
Debt
High
Debt
Must Have
Wanted
Like to
Have
susan@drupalanywhere.com Susan Rust / DrupalCon Amsterdam / 2014
69. New Feature Request
New
Request No Impact Scoped Built
< 10 hrs
> 20 hrs
Unknown
susan@drupalanywhere.com Susan Rust / DrupalCon Amsterdam / 2014
71. Development!
Notice how long it took us to get here….
susan@drupalanywhere.com 71
Susan Rust / DrupalCon Amsterdam / 2014
72. Checkpoint
Last Chance to Bail
Should you really move forward? Is the team
comfortable with the project? Are they confident they
can win?
susan@drupalanywhere.com 72
Susan Rust / DrupalCon Amsterdam / 2014
74. Tickets
No ticket? Bad ticket? No development."
"
Tickets contain sales estimate, engineering
estimate, developer’s actual."
"
Tickets = 4 hours max.
susan@drupalanywhere.com 74
Susan Rust / DrupalCon Amsterdam / 2014
75. Not a Ticket:
Build a view "
8h
susan@drupalanywhere.com 75
Susan Rust / DrupalCon Amsterdam / 2014
76. Is a Ticket:
Build a view of the content type “Article”."
View to have these fields: a, b, c"
Image display uses preset 100px square"
Image label is hidden"
Teaser = 350 characters with more link"
View = page, block, user dashboard block"
URL = /articles….this goes on for a long time.
susan@drupalanywhere.com 76
Susan Rust / DrupalCon Amsterdam / 2014
77. Tickets
Companies that don’t run efficient tickets have no
idea whether or not they are making money on
projects, have no way of identifying and measuring
strengths of weaknesses of the team, engineering or
projects. "
"
Most CEOs run their company off false data.
susan@drupalanywhere.com 77
Susan Rust / DrupalCon Amsterdam / 2014
78. Phase 2"
Repeat all the steps. Do not make the mistake of
skipping Discovery and Architecture."
susan@drupalanywhere.com 78
Susan Rust / DrupalCon Amsterdam / 2014
79. Project Phases
Business
Analysis Development Project
Planning
Development
UAT
Delivery
Phase 2
Training
Discovery
Storyboards
Dashboards
"
Objectives
Biz Rules
Risk Mgmt
Metrics
susan@drupalanywhere.com Susan Rust / DrupalCon Amsterdam / 2014
80. Business Analysis Project Planning Development
1. Site Audit
a. Content
b. Web audit
c. Performance audit
d. Training
2. Discovery
a. Web objectives
b. Stakeholders
c. Current workflow
d. Content types
e. Views
f. Taxonomies
g. User Stories
h. Storyboards
i. Pre-wireframes
"
"
3. Engineering
a. Data model
b. Content
c. Migration
d. Integration
e. Wireframing
f. Deployment
g. Performance
h. Scaling
"
4. Start Development
a. Post-mortem
b. Updated Docs
c. Tickets
d. Resources
e. Timeline
f. Sprints
g. Demos
5. During Development
1. Build
2. Migrate
3. Integrate
4. Design
5. Theming
"
"
6. Post Development
1. QA
2. UAT
3. Bug fixes
4. Launch
5. Documentation
6. Client training
7. Phase 2
susan@drupalanywhere.com Susan Rust / DrupalCon Amsterdam / 2014