I'm using Sitecore 8.2 Update 4, and am looking at migrating a traditional MVC monolithic Sitecore project to the Helix architecture as I'm enhancing the existing website. I'm trying to wrap my mind around how to architect my .NET projects in a way that is consistent with Helix principles. Here's an example of something that I'm trying to do:
We have a Sitecore agent whose purpose is to read data from our CRM and then populate some of that data into contact cards. Here's a picture of what my proposed architecture looks like:
The problem is that I have 1 feature (Agents) that depends on other features (Connectors, Custom Facets). I know that Helix gives us the freedom to do groups, however, it doesn't specify what that looks like in a practical situation. This also seems to violate the Stable Dependency Principle.
I'm looking at changing my architecture to be more like this:
Here are my questions:
- Is this the right direction to go in order to get my dependencies to follow the correct flow?
- Other than the Helix site, are there any other good resources to help me process things like this?