Strategy Session (DrupalCamp CO)

26
Solution Architecture: designing a strategy for project success DrupalCamp Colorado: August 2nd, 2014

description

When a project is born, the battle for power and control begins … over specifications, stakeholders, vendor selection, goals, technology, budget, etc. Power and control, by themselves, are a poor strategy. Control is linear thinking. Reality, the space where projects happen, is a big ball of wibbly-wobbly timey-wimey stuff where all the best laid schemes of mice and men often go awry. When they do, reality refuses to bow down to power. Control is man-made power. Strategy is real power. The power to chose, limit and prioritize while allowing for collaborative creativity and shared vision. Yes, strategy (often) defines what needs doing, thinking about, focusing on, and avoiding. But the goal of the work is to shine a light down the straightforward path, or paths, through the complexity while honoring, even savoring, the complexity itself. Strategy is hard, very hard, to do well. The rules are easy. When applied to software development, strategy is an engineering process sometimes called solution architecture. There are four elements of good strategy: 1. Telling the truth insightfully 2. Defining measurable prioritized goals 3. Overcoming hidden obstacles implicitly 4. Creating a construct, the architecture itself, in the form of a document Getting a process back on track when it's gone awry is also essential to a good strategy. This session talks about strategy in general and for a Drupal project specifically.

Transcript of Strategy Session (DrupalCamp CO)

Page 1: Strategy Session (DrupalCamp CO)

Solution Architecture: designing a strategy for project success

DrupalCamp Colorado: August 2nd, 2014

Page 2: Strategy Session (DrupalCamp CO)

Diana Montalion Dupuis

Diana Montalion Dupuis Michael Schmid

CEO Amazee Labs (Austin)

amazeelabs.com @dianadupuis

Follow me on Twitter and I’ll follow you back!

Page 3: Strategy Session (DrupalCamp CO)

Michael Schmid

http://ih2.redbubble.net/image.12055654.2805/flat,550x550,075,f.jpg

Page 4: Strategy Session (DrupalCamp CO)

Michael Schmid

http://www.louisalloro.com/blog/wp-content/uploads/2014/05/Einstein-Intuition.jpg

Page 5: Strategy Session (DrupalCamp CO)

Strategy is …

• Intuition

• Wisdom and experience

• Logic and common sense

• Art and poetry

• When applied to application development, an engineering process (constantly reinvented) sometimes called solution architecture

Page 6: Strategy Session (DrupalCamp CO)

According to Wikipedia

“Solution architecture (within or without enterprise architecture) is a combination of role, process and documentation that is intended to address specific problems and requirements, usually through the design of specific information systems or applications. !The term solution architecture can be used to mean either or both: * Documentation describing the structure and behavior of a solution to a problem, or * A process for describing a solution and the work to deliver it.”

Page 7: Strategy Session (DrupalCamp CO)

According to Wikipedia

“Solution architects typically produce solution outlines and migration paths that show the evolution of a system from baseline state to target state.”

http://thewellwrittenwoman.com/wp-content/uploads/2012/12/sigh.png

Page 8: Strategy Session (DrupalCamp CO)

According to me

Solution architecture attempts to define an ecosystem that will organically produce the stated, measurable goals.

the goals, not the solution

Page 9: Strategy Session (DrupalCamp CO)

http://sd.keepcalm-o-matic.co.uk/i/keep-calm-it-s-wibbly-wobbly-timey-wimey.png

Page 10: Strategy Session (DrupalCamp CO)

Key elements

• Truth and reality (aka bullshit detector)

• Measurable goals, prioritized

• Overcome hidden obstacles implicitly

• A construct (the architecture itself) in the form of a document

Page 11: Strategy Session (DrupalCamp CO)

http://www.skepticalob.com/wp-content/uploads/2013/11/truthiness.jpg

Page 12: Strategy Session (DrupalCamp CO)

Things to look for …• Ripping the fabric of space time

• Hidden complexity

• Too much or too little control

• No goals or features don’t match goals

• Leadership confusion (can focus on what but not how)

• Truthiness: reality refuses to bow down to power

Page 13: Strategy Session (DrupalCamp CO)

http://www.greenbookblog.org/wp-content/uploads/2010/11/DangerWillRobinson.jpg

Page 14: Strategy Session (DrupalCamp CO)

What to give back

• Truth

• Insights

• Facts

• Options

Page 15: Strategy Session (DrupalCamp CO)

What not to give back

• Snark

• False hope

Page 16: Strategy Session (DrupalCamp CO)

http://www.luxautoleasing.com/wp-content/uploads/2013/04/Aston_Martin_DBS_Volante.jpg

Page 17: Strategy Session (DrupalCamp CO)
Page 18: Strategy Session (DrupalCamp CO)

Measurable goals• Reduce calls to customer service by 25%

in 3 months

• Increase subscription to the newsletter by 150% in 6 months

• Increase page view time from 3 seconds to 10 seconds on newly published content

• Increase traffic by 30% in 6 months (how does the application do that?)

Page 19: Strategy Session (DrupalCamp CO)

Hidden obstacles

• They are *always* there

• A good strategy overcomes them

• ALES

Page 20: Strategy Session (DrupalCamp CO)

ALES

• Ask

• Listen

• Empathize

• Strategize

Page 21: Strategy Session (DrupalCamp CO)

Hidden examples• The “real” goal is something different

from the stated goal and/or two (or more) stakeholders disagree

• The last six vendors “didn’t work out”

• The “final say” comes from a boss who delegates but doesn’t or a person with no tech experience is “in charge” of the project but isn’t

• There’s a lot of focus on low priority details

Page 22: Strategy Session (DrupalCamp CO)

Construct

• Overview: business reasons to do the project and clear, measurable goals

• The vision with just enough detail to be flexible (the art part)

• Drupal domains

• Estimation

• Include assumptions

Page 23: Strategy Session (DrupalCamp CO)

Drupal domains• Core and DevOps

• Design

• Basic, responsive theme

• Data architecture and migration

• Art and architecture: the features and/or however your concept is described

• Testing

• Project management

Page 24: Strategy Session (DrupalCamp CO)

Examples

• Dual organizations and data

• This site is totaled

• Traditional “by the sections”

• Building the site

• Feature phases, like buying a car

Page 25: Strategy Session (DrupalCamp CO)

When off track

• Let go of the original plan

• Prioritize against goals

• Create buckets and phases

• Retrospect, include everyone

• Define the now known unknowns and include them