it's a technique to identify alternative target architectures and perform trade offs between the alternatives.
Example: let's say you've identified that there's a new daily report that needs to be created. This is going to help your business.
So you're going to generate a daily report in one of your reps, is going to call the customer and get them to change their mind.
There's many different ways that you can have this report generated.
- Create Manually: It can be as simple as having a person log into the system every day and download the data using a SQL script and create this report entirely manually.
- Automatic reports: you could have it entirely automated where the report is just automatically generated and shows up in the mailboxes of the relevant stuff.
You have to make the decision whether it's worth it to the various trade offs It could be it costs more, it's riskier, etc
When you're making the decision which architecture to use, it's really just a matter of trade offs.
- Flexibility
- Time and Cost
- Length of time to achieve benefits
- Adhere to architecture guidelines
- Solution Delivery Method (develop on our own or buy 3rd party service)
- Impact on business capabilities
- if you have to shut your business down for a week in order to do the migration, well, that's a big trade-off
- as opposed to being able to continue doing business while the transition period is going on and just some miscellaneous risks.
- Risks
- Some solutions are guaranteed to work, guaranteed not to have any pushback from the end users
- and some solutions are not necessarily guaranteed to work.