Let's say you've been working on this contributed project for a few months now. It has gone from Beta 1 to Beta 2 to Beta... Now, how long till its final release? How do you know when it's ready for the Drupal community to see and use? And this is precisely why the Drupal quality initiative was launched in the first place.

So that can we finally have some sort of a checklist at hand to use whenever we need to assess our code's level of quality:
 

  • the standards that we should evaluate our contributed projects by 
  • the specific elements that go into the quality of our projects, such as contributed Drupal modules
  • a certain hierarchy of quality that we could rate our own projects by
     

And so on...

For, let's admit it now:

Except for our own personal methodologies for self-assessment, there's no standardized benchmark that could help us evaluate our contributed Drupal projects. There's no way of knowing for sure when our projects are 100% ready to go from beta to... full release.

Now, here are the legitimate questions that this initiative brings forward, along with some of the suggested paths to take:
 

1. What Drupal-Specific Quality Metrics Should We Use to Evaluate Our Code?

How do you know when your contributed project is efficient enough to... be used by other members of the Drupal community?

You need some sort of criteria for measuring its level of quality, right? 
 

2. The Drupal Quality Initiative: A Checklist for Project Quality Assessment

And this is how the Big Checklist for Drupal modules has been put together. One outlining all those areas of a contributed Drupal project that you should carefully evaluate when assessing its quality.

Areas such as:
 

  • team management
  • documentation
  • testing
  • code
  • design
  • requirements
  • DevOps
     

All those factors and Drupal-specific elements that go into the quality of a contributed project.


3. Introducing the Idea of a Multi-Leveled Quality Hierarchy

What if we had multiple levels of quality to rate our Drupal projects?

Imagine some sort of hierarchy of quality that would challenge us to keep improving the way we write code for Drupal. To keep growing as teams working with Drupal.

Your project might be rated “level 1”, from a quality standpoint, on its first release. But it would still stand stand the chance to get a higher score for if you strove to meet all the other criteria on the checklist.


4. You'll Be Particularly Interested in The Drupal Quality Initiative If You're A...
 

  1. Site builder, scanning through the pile of contributed Drupal modules in search of the ones that perfectly suit your project's specific needs
  2. Drupal contributor in need of some sort of checklist that would include all those standards of quality and best practices to help you assess your own code's value
     

5. What About Non-Drupal Software Projects? How Is Their Quality Assessed?

In other words: how do other communities assess their projects' levels of quality?

What metrics do they use?

And here, the Drupal quality initiative's... initiator gives the “The Capability Maturity Level”, set up by the Software Engineering Institute, as an example.

The process model highlights 5 levels of “maturity” that a project can reach throughout its different development phases.They range from:
 

  • the“initial chaos”
  • to planning and collecting project requirements
  • … all the way to continuous process improvement
     

Now, just imagine a similar multi-level evolutionary benchmark that we could use to assess our own Drupal projects' levels of... maturity.
 

6. A Few Quality Indicators and Suggested Tools

And the whole Drupal Quality Initiative comes down to identifying the key endpoints for assessing a project's quality, right?

Here are just some of the suggested questions to use during this evaluation process:
 

  • Is it easy to use?
  • Does it perform the intended functions?
  • Is it efficient enough?
  • How many detected bugs are there per 1000 lines of code
  • How secure is it?
     

Now, for giving the most accurate answers to these quality assessing questions, you'll need the right toolbox, right?

All those powerful tools to help you:
 

  • check whether your code is spell checked
  • monitor the status of specific operations
  • check whether all strings use translation
  • see whether your code has been properly formatted
     

The END! And this is just a brief overview of the Drupal Quality Initiative.

What do you think now, does the suggested checklist stand the chance to turn into a standardized Drupal benchmark for assessing quality?

How do you currently determine your contributed projects' value?

Recommended Stories

How You Can Improve the On-Site Search User Experience: 8 Simple Best Practices- Part 2
Have you got the chance to apply the simple tweaks and techniques shared with you in the first part of this post?… (Read more)
Adriana Cacoveanu / Jun 17 '2019
How You Can Improve the On-Site Search User Experience: 8 Simple Best Practices- Part 1
Are you using your website's search functionality to its full potential? Do your users always get the most… (Read more)
Adriana Cacoveanu / Jun 7 '2019
Using Drupal for Project Management and Team Collaboration: 2 Drupal Distributions to Consider
“Can I use Drupal for project management?” Definitely.  Given all its content-oriented baked-in capabilities —… (Read more)
Adriana Cacoveanu / Jun 6 '2019