"Everybody has a plan until they get punched in the mouth."
Former heavyweight champion Mike Tyson was referring to boxing, but I believe his advice is applicable to any complex endeavor. No matter how well you plan, surprises are always inevitable.
Process, however, can be your saving grace.
Here’s a brief look at the process that the Acquia Professional Services team is using to deliver a newly redesigned Acquia.com. No headgear required. I’ll cover our methodology, why we prefer agile to waterfall, and how process helped us overcome an unexpected obstacle.
Waterfall vs. Agile
If you’re interested in website development, you’re probably familiar with the two general approaches to software development: the traditional waterfall approach, and the more modern agile approach:
- In the waterfall approach, you do all your planning up-front and then the work cascades from team to team (design, development, quality assurance, user-acceptance testing) in a single direction.
- Agile takes an iterative approach, which allows teams to build and refine with constant feedback from product owners throughout a series of time-boxed “sprints.”
In other words, agile is designed to roll with the punches. As both challenges and opportunities arise, an agile approach allows teams to react quickly. With waterfall, teams are not provided the flexibility need to think on their feet.
Jeff Reed gave a great overview of professional services and our process in a previous blog post about the Acquia.com redesign. In the post, Jeff describes how teams move from discovery to implementation to testing and, finally, launch. However, I wanted to provide more detail on how a project moves from our professional services solutions team to delivery team.
The professional services delivery team uses an agile approach, with roles and ceremonies that would be familiar to anyone who knows agile development. This includes daily standups, weekly backlog grooming and sprint planning meetings, demos and retros. We work in time-boxed, two-week sprints. If scope changes during a project, we track it with a change request.
We’ve also fine-tuned our process for our platforms (Drupal, Node.js,), products (Acquia Cloud, Lift, etc.), and the constellation of technologies that surrounds them. Everything from the choice of dev-ops tools to CSS formatting to Varnish configuration is optimized for technical compatibility. And tried-and-true methods have been established for enterprise-level concerns like launch readiness, security and CDN-integration.
The professional services solutions team works with clients in the early stages of discovery, helping to define a project’s scope, scale and approach. Then they hand off to the professional services delivery team -- my group -- to transform these plans into working digital products.
Building a New Acquia.com
The day-to-day building of the new Acquia.com includes three groups:
- Our “client,” the Acquia marketing department
- Our design partner, Huge, which created the website’s stunning new UX
- The professional services delivery team
Our day-to-day professional services delivery team includes:
- Product owner (from the marketing department)
- Technical architect
- Program manager
- Project manager/QA
- Two senior developers
- Two back-end developers
- Front-end developer
- And program and technical leads for oversight
Normally, our client is a customer, rather than a colleague. However, we used our standard process because it’s the best way we know to build enterprise websites, and because it provided the marketing team the chance to experience the same journey as an Acquia customer. We’ve been documenting this journey, through a series of blog posts.
Our main objective for the redesign was straightforward: build an MVP with Drupal 8 that better showcases Acquia products and services. Other functionality included personalizing content with Lift, and presenting users with an easy-to-use tool to help determine which Acquia products are right for them. All of this needed to be delivered to the world in a beautiful, modern design, and maintained via efficient, streamlined content-administration tools.
We weren’t without our challenges. The biggest was an aggressive schedule which featured parallel design and development work. Huge was finalizing designs as the professional services team started building the foundations of the website. This required close coordination with Huge to ensure that the design and code assets were delivered “just in time” for the Acquia development team to work on them.
With an aggressive timeline in mind, we outlined a sprint plan:
- Five two-week feature sprints
- One two-week bug fix sprint
- One one-week UAT sprint
- One one-week launch sprint
We had our marching orders, team and schedule.
What could possibly go wrong?
The best laid plans...
Fortunately, no one has punched in the mouth (or anywhere for that matter) during the redesign of Acquia.com. Regardless, we have had to deal with some unexpected jabs.
One jab took the form of a bright idea.
We knew the new site would have a tool to help users explore Acquia products. We had a preliminary design when we wrapped discovery. However, inspiration struck during the design process and the tool’s functionality evolved significantly.
Huge went back to the drawing board and came back with a design that everyone loved, but rebuilding the tool didn’t fit into the schedule. Our plans had been punched in the mouth.
Rolling with the punches
When dealing with shifting project scope, you generally have two options:
- You can trim scope (do less)
- You can add time and/or resources (do more)
Since the new Acquia.com was already designed to be an MVP, the marketing team didn’t want to cut the scope. Professional services recommended we add another feature sprint, which would push back our launch date by two weeks. We also beefed up our development team with a couple of resources to ensure we’d keep our velocity up.
The marketing team agreed, so we implemented a change request (see, we really did stick to the process), extended our deadline and added the new-and-improved tool to the project scope. However, you’ll have to wait until the new site launches to check it out.
We’re currently in our fifth feature sprint, so the story isn’t over yet. There may be some more surprises in store for us, but we’re confident we can roll with anything that comes our way.