Draining the happy soup - Part 2
We stormed ahead in Part 1 and downloaded all the meta data in SFDX format. Now it's time to stop for a moment and ask: what's the plan?
When embarking on the SFDX package journey, the start is Phase 0. You have an org that contains all your meta data and zero or more (managed) packages from AppExchange. That's the swamp you want to drain.
Before you move to phase 1, you need to be clear how you want to structure your packages. High level could look like this:
- You have an unpackaged base, that over time will shrink. The interesting challenge is to deal with dependencies there
- Some of the components will be used across all system - most likely extensions to standard objects or triggers and utility classes. Core LWC components are good candidates for base packages too. There can be more than one base package
- Your business components. Slice them by business function, country specifics or business unit. Most likely will resemble some of your organization structure
- A package from AppExchange or a legacy package will not depend on anything. In my current project we moved all VisualForce stuff (pages and controllers) there, since these won't be needed after the lightning migration is concluded and then can be uninstalled easily.
Now you envision how the draining will commence:
Now we have an idea how the project can progress, we are getting closer to "divide and conquer" of our artifacts.
But that's another story for the next time!