Keep Architecture Components balanced

Het aantal top-level componenten moet idealiter tussen de 6 en 12 liggen. In ons project hebben we er 5, namelijk:

Het is lastig om deze regel te demonstreren aan de hand van ons eigen project omdat het simpelweg te klein is om het evenredig onder te verdelen. Daarom kijken we naar SignalAndroid. Zoals je hieronder ziet, bestaat SignalAndroid uit meer dan 12 componenten, namelijk 20.

Als je kijkt naar de volumebalans, zie je ook een groot verschil in de componenten:

Het zou wellicht overwogen kunnen worden om de directory app/src op te splitsen en enkele kleine onderdelen bij elkaar te voegen. Door regel 7 goed te volgen, wordt het eenvoudiger om specifieke stukken code te vinden die aangepast moeten worden, omdat de verantwoordelijkheden goed gescheiden zijn. Ik kan me voorstellen dat het terug vinden van een bepalde stuk code een probleem kan zijn bij signalapp.

Een ander voordeel van het volgen van regel 7 is dat verschillende teams aan verschillende onderdelen kunnen werken. Bij mijn toekomstige werkgever zijn er bijvoorbeeld verschillende teams voor verschillende componenten. Hoewel de onderwerpen (open overheid, omgevingswet, DROP etc.) met elkaar in verband staan, kunnen de teams zelfstandig opereren en beslissingen nemen omdat de componenten losgekoppeld zijn.