Op-Ed: Architects think in options


One of my favorite exercises is to think through all options a requirement has.
Too often I jump to a solution and try to make it work without considering alternatives. 
Having all options on the table first gives me a broader view.

I try to find at leas one solution in each of the categories:

1. Out of the Box
2. Low-Code/No Code
3. Buy/AppExchange 
4. Code
5. Off-Platform
6. Manual

Example:
We want to summarize invoiced amount for the current year on the Account.
Invoices are a child object on Account. Invoices are a custom object.
Invoices are created end of the month.
The number needs to be stored persistent to be actionable.

1. OoB -> Rollup Summary
2. Low-Code/No Code -> Custom Rollup Flow
3. Buy/AppExchange -> Rollup Helper
4. Code: APEX Rollup 
5. Off-Platform: ETL does the calculation
6. Manual: Excel + XL-Connector once a month


Each of the options works, and fulfills the requirements. Depending on the company setup, architecture guidlines and so forth a different option could be the optimal one.

PS: I know, there are plenty more solutions.
PPS: I’m a huge fan of manual processes.