Welcome
Susan Rust / DrupalCon Amsterdam / [email protected]
EverestDevelopment 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.
3
Susan Rust / DrupalCon Amsterdam / [email protected]
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?
5
Susan Rust / DrupalCon Amsterdam / [email protected]
10/10People and organizations bailing on Drupal because a weak implementation did not meet their business needs.
6
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
5 Golden Rules
Susan Rust / DrupalCon Amsterdam / [email protected]
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.
10
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
Susan Rust / DrupalCon Amsterdam / [email protected]
2. Drupal + Process = Win
Drupal = Fail""Drupal with process leads to project success and excellent experiences.
12
Susan Rust / DrupalCon Amsterdam / [email protected]
3. Client Mgmt.It’s your job to train the client and manage their expectations.""Teach them how to succeed at a web project.
13
Susan Rust / DrupalCon Amsterdam / [email protected]
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.
14
Susan Rust / DrupalCon Amsterdam / [email protected]
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.
15
The Gap
Susan Rust / DrupalCon Amsterdam / [email protected]
Communication Gap
What Developers
Know
Drupal, Beer, Coffee
What Clients Know
Their Stuff
Gap
Susan Rust / DrupalCon Amsterdam / [email protected]
Communication Gap
clients talk greek
{engineers !talk geek}
Susan Rust / DrupalCon Amsterdam / [email protected]
Closing the Gap
What Clients Know
What Developers
KnowOverlap
Drupal, Beer, Coffee
Their Stuff
360˚ Development
Susan Rust / DrupalCon Amsterdam / [email protected]
Drum = Tension
Susan Rust / DrupalCon Amsterdam / [email protected]
360˚ Development
AM/PM This role sits at the center of projects
and determines project success.
SalesDevs
Client
QA
$$$
PM
Susan Rust / DrupalCon Amsterdam / [email protected]
Development = Velocity
Susan Rust / DrupalCon Amsterdam / [email protected]
Instead of Stalled
Susan Rust / DrupalCon Amsterdam / [email protected]
Project Phases
Business Analysis DevelopmentProject
Planning
Development UAT Delivery Phase 2
Training Phase 0 Storyboards Dashboards "
Objectives Commitment Risk Mgmt Metrics
Susan Rust / DrupalCon Amsterdam / [email protected]
Project Phases
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
Business Analysis DevelopmentProject Planning
Susan Rust / DrupalCon Amsterdam / [email protected]
Estimating Projects
discovery engineering development design/theme uat / bugs
" "5% "10% 30% 30% 15%"10%
audit
25% budget 60% budget
You burn the time on discovery, engineering and uat/bugs whether you charge for it or not.
Susan Rust / DrupalCon Amsterdam / [email protected]
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.
Sales
Susan Rust / DrupalCon Amsterdam / [email protected]
Sales
Say “no” to bad projects."Say “no” to bad clients.
30
32
Site Audit"Discovery"Architecture"Development"UX / Design"Maintenance/Support
Sales: Components
33
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.
Sales: Consultative
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
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
Susan Rust / DrupalCon Amsterdam / [email protected]
Managing Expectations
Training on Process & Drupal"DOOB / MVP"Triage / Red Flags"Team and Time Commitment"Risk Assessment
36
Susan Rust / DrupalCon Amsterdam / [email protected]
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
Checkpoint
Sales:"Audits & Discovery
Susan Rust / DrupalCon Amsterdam / [email protected]
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 Rust / DrupalCon Amsterdam / [email protected]
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 Rust / DrupalCon Amsterdam / [email protected]
DiscoveryOrganizes and prioritizes ideas & requests"Identifies all stakeholders & users stories"Content types, taxonomies & views"User dashboards & reports"Content migration & integrations"Workflow & features
41
Susan Rust / DrupalCon Amsterdam / [email protected]
Business RulesA 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.
42
Susan Rust / DrupalCon Amsterdam / [email protected]
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?"
43
Susan Rust / DrupalCon Amsterdam / [email protected]
UAT
Discovery documents become the basis for user acceptance testing.""This also prevents scope creep."
44
Engineering:"Architecture
46
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
Pre-mortem
Susan Rust / DrupalCon Amsterdam / [email protected]
MVP
Only build MVPs. No matter how tempting.
47
Susan Rust / DrupalCon Amsterdam / [email protected]
DocsThey are posted on the wall as a living, breathing document. Docs include:""
User stories"Storyboards"Wireframes"Designs
48
Susan Rust / DrupalCon Amsterdam / [email protected]
Storyboards
Storyboards illustrate the lifecycle of each content type, user & feature.""They are based on the user stories gathered during discovery.
49
50
51
52
Susan Rust / DrupalCon Amsterdam / [email protected]
Wireframes
Wireframes are essential to call out features and functionality.""Wireframes are updated at the end of each sprint as needed.
53
54
Susan Rust / DrupalCon Amsterdam / [email protected]
Design
Design happens after engineering and ALL functionality has been called out.""Theming happens as the last step before UAT.
55
Susan Rust / DrupalCon Amsterdam / [email protected]
DeploymentWhere are they hosted"What are the obstacles"Mimic current prod
56
Susan Rust / DrupalCon Amsterdam / [email protected]
PerformanceWhat do they have"What will they need"What are the risks
57
Susan Rust / DrupalCon Amsterdam / [email protected]
ScalingWill the new site drive more traffic, interactions and lead to a crash?"What do they have"What will they need"What are the risks
58
PMs:"Managing Expectations
Susan Rust / DrupalCon Amsterdam / [email protected]
ProcessHaving 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.
60
Client TrainingFinal 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
Susan Rust / DrupalCon Amsterdam / [email protected]
Technical DebtExplain to the client what it is"
Explain who’s responsible"
Share each time they incur technical debt and let THEM make the choice
62
Susan Rust / DrupalCon Amsterdam / [email protected]
Sprint ComponentsCreate Tickets"Allocate Resources"Build"Test"Deliver"Update Docs
63
Susan Rust / DrupalCon Amsterdam / [email protected]
Measuring Sprints
Tickets: sold / estimated / actual"Burn Rates: sold / estimated / actual"Change Orders: $$
64
Susan Rust / DrupalCon Amsterdam / [email protected]
IMPORTANTAt 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
65
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
Susan Rust / DrupalCon Amsterdam / [email protected]
Risk Matrix
Risk DooBLight
CustomHeavy
Custom
Low Risk 1/1 1/2 1/3
Mod. Risk 2/1 2/2 2/3
High Risk 3/1 3/2 3/3
Susan Rust / DrupalCon Amsterdam / [email protected]
Technical Debt Matrix
Tech Debt
Minimal Debt
Moderate Debt
High Debt
Must Have
Wanted
Like to Have
Susan Rust / DrupalCon Amsterdam / [email protected]
New Feature Request
New Request
No Impact Scoped Built
< 10 hrs
> 20 hrs
Unknown
Devs:"Tickets are King
Susan Rust / DrupalCon Amsterdam / [email protected]
Development!Notice how long it took us to get here….
71
Susan Rust / DrupalCon Amsterdam / [email protected]
Last Chance to BailShould you really move forward? Is the team comfortable with the project? Are they confident they can win?
72
Checkpoint
73
Build"Design"Theme"QA"UAT"Bug Fixes"Feature Polish"Launch"Phase 2
Development
Susan Rust / DrupalCon Amsterdam / [email protected]
TicketsNo ticket? Bad ticket? No development.""Tickets contain sales estimate, engineering estimate, developer’s actual.""Tickets = 4 hours max.
74
Susan Rust / DrupalCon Amsterdam / [email protected]
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.
76
Susan Rust / DrupalCon Amsterdam / [email protected]
TicketsCompanies 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.
77
Susan Rust / DrupalCon Amsterdam / [email protected]
Phase 2"Repeat all the steps. Do not make the mistake of skipping Discovery and Architecture."
78
Susan Rust / DrupalCon Amsterdam / [email protected]
Project Phases
Business Analysis DevelopmentProject
Planning
Development UAT Delivery Phase 2
Training Discovery Storyboards Dashboards "
Objectives Biz Rules Risk Mgmt Metrics
Susan Rust / DrupalCon Amsterdam / [email protected]
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
Business Analysis DevelopmentProject Planning
Drupal Consulting
Better Drupal Modules!