Все зависит от требований к структуре. В зависимости от них определяется ключевой параметр относительно которого проектируется структура. Ваша структура ориентирована на включение, недостатком таковой является путаница в случаях когда компоненты/модули пересекаются в дереве, к примеру когда 2 ветки используют один и тот же компонент. То есть у этой структуры есть ограничения расширяемости. Я больше предпочитаю структуру ориентированную на зоны ответственности. То есть это горизонтальная структура. Ее основной недостаток - полотно файлов и папок в обозревателе, так что без вкраплений иерархических структур папок так же не обойтись(стоит 100 раз обдумать). С другой стороны она позволяет легко ориентироваться в функциональных модулях системы и группировать внутри папки с модулем ее функционал(не выходит за рамки задачи модуля, тесно связан между собой).