The Agile Approach
Agile means a lot of things to a lot of people. In some cases, people and organizations are agile in name only. We have built our company on a foundation of agile software development. So, what does that really mean? From our perspective, agile means the following:
- Be open to change. You might think that if a Drupal 7 website already exists and all you need to do is convert it to Drupal 8, then that would be an easy task. Just swap out this for that, feature by feature, page by page. But, it isn’t that simple. First of all, it could be that a lot of features built into the existing website are obsolete and should not be in the next version. Moreover, it could be that some things, especially with the user experience (UX), need improvement. So it would be wasteful to clone bad behavior. Jonathan Rasmusson states in his brilliant book, “The Agile Samurai,” that whatever requirements you gathered in the beginning are guaranteed to change. So, it is important to be open to change if you want to deliver a usable product.
- Iterative approach. Also in “The Agile Samurai,” Rasmusson explains that if you accept the fact that it is impossible to gather all requirements at the beginning of the project then you are not afraid to begin your journey without knowing everything up front. So, it is important to just get started. But, we are not going to disappear into a lab to spend months consuming requirements, followed by months designing a UI, followed by months developing the backend, followed by months of testing and then reappear a year or two later to debut the new version. Instead, we are going to rapidly stand up a prototype and then iteratively design, develop, test, present, obtain feedback from users, and repeat. The iterative approach ensures that the final product is on target because it was based on user centered design (UCD).
- Prioritize. Rasmusson has a third simple truth of software development and that is, “there will always be more to do than time and money will allow.” So, we should not get stressed when our to-do list exceeds our time and resources to deliver. Knowing that we could run out of time and money at any time, we want to focus on the most important features, elements, and priorities at any given time so when time or money does run out, we will have assured ourselves that we got the most important things done with the time and money we had.
- Lean. We want to focus on the minimum viable product (MVP) and avoid gold-plating the project. We don’t want to throw on more people than necessary because our efficiency and velocity drops every time we add a layer of communication to our hierarchy. We prefer a flat, lean, non-hierarchical scrum team facilitated by servant leaders.
What You Need to Know About Drupal 7 End of Life (EoL)
It is official. According to Dries Buytaert, (Founder of Drupal, President of the Drupal Association, CTO of Acquia, and Project Lead on Drupal) has stated clearly in his blog that Drupal 7 AND Drupal 8 will BOTH lose their support and end their life by a mutual suicide pact in November 2021. Yet, Drupal 9 will not be released until sometime in 2020. Once released, Drupal 9 will not be mature enough to power mission-critical, enterprise-level, web sites and applications until late 2020 to early 2021, primarily because a lot of the contrib modules will not be fully ported from D7 to D9.
Organizations need to have a sense of urgency to plan and budget for this migration, interview prospective Drupal shops, and get the process started.
Drupal is not your ONLY alternative
It may not make sense (or cents) to migrate from Drupal 7 to Drupal 8 (D8) or Drupal 9 (D9). Could be, depending on your requirements, other options or alternatives including other content management systems (CMS) such as WordPress (WP) or perhaps a custom web framework such as React, Django, Symfony, or Laravel.
Read the rest of this article about Drupal alternatives.
Benefits of Drupal 8
Despite the dire, end-of-life warning in the previous section (and corresponding blog post), there is some good news about migrating to D8 and D9.
Unlike D7, which was more of an update to Drupal 6, which was an update to Drupal 5, which was an update to Drupal 4 … Drupal 8 (D8) is a complete rewrite of the core software. It was rewritten in better ways using a modern technology stack and future-proofed to ensure forward compatibility for subsequent versions.
8 Distinct Benefits of D8
- It’s faster – D8 is designed to load significantly faster than D7
- It’s fluent – D8 has multi-lingual language support
- It’s responsive – D8 has been built using a mobile-first methodology
- It’s easier – D8’s layout builder features drag-and-drop functionality
- It’s decoupled – D8’s API-first (JSON) approach eases app development
- It’s (more) secure – enhanced security, especially on the front end
- It’s streamlined – improved DevOps and content authoring workflow
- It’s multimedia – easier to upload, embed, and reuse media types
Probably the single most important benefit of Drupal 8 is that migrating to future versions of Drupal will be the last time organizations need to think about undertaking a major Drupal upgrade. Migrating from Drupal 8 to Drupal 9 will not be a herculean effort like it was to migrate from Drupal 6 to Drupal 7 or from D7 to D8.
One of my favorite movies, which has also contributed to Agileana’s company culture, is the movie: 300. In that movie, there is a great line that also describes the D7 to D8 migration process, “This will not be over quickly. You will not enjoy this.” Bottom line is that Drupal migration is not easy. You can’t just push an upgrade button.
The entire website (front-end and back-end) needs to be rebuilt completely. This is a long, lengthy, risky, and error-prone process. Errors, omissions, and mistakes can happen at every corner. So, organizations need to pay special attention to quality assurance and testing. Even migrating the users and content, which might seem to be the simplest part of the process, can consume quite a bit more time and resources than expected.
As of this writing, there are more D7 websites in need of migration than qualified Drupal development teams available to migrate these websites. The world would have to migrate 25,000 Drupal websites every month until Drupal 7 and 8 scheduled end of life (EOL) to get through all of them. Unfortunately, there simply aren’t enough Drupal shops or Acquia Certified Drupal developers available to jump on an intensive, 3-6 month project.
At a minimum, for a Drupal website of moderate complexity that serves as a mission-critical, enterprise-level system of an organization, the level of effort would require a team of 5 people including:
- Team leader (PMP, CSM, CSPO)
- Front-end Drupal developer (Acquia Certified)
- Back-end Drupal developer (Acquia Certified)
- Full-stack Drupal developer (Acquia Certified Grand Master)
- Business analyst and quality assurance professional
Fortunately, Agileana has this team of professionals. We hold the following certifications and credentials:
Few organizations have a sense of urgency to migrate now when they can migrate later. Problem:
Supply and Demand. There is significantly more DEMAND for migrating out of Drupal 7 than the available SUPPLY of qualified Drupal teams capable of navigating the Drupal migration process. There simply are not enough people or teams with the skills and experience required to get organizations out of Drupal 7 before Drupal 7 expires. There is a scarcity, a shortage, of qualified, experienced, capable, professionals.
Most organizations, when they realize how much it costs to migrate from Drupal 7 to Drupal 8 figure they don’t have it in their budget this year to start a migration. So, more than half of all organizations running D7 will wait until mid- to late-2020 before they even start this migration process. This will result in a rush, or perhaps stampede, to find Drupal shops and developers available for these projects.
The final take-way is:
- Drupal’s end of life is coming. It’s imminent.
- Drupal migration is probably a bigger effort than you thought.
- Forward-leaning organizations need to plan and act NOW.
Please, give us a call at 202.660.2940, or email us at [email protected]. Let’s talk about your organization, your website, your goals and objectives, your budget, your timeline, and how we can help you.