If functionality is a differentiator for the Partnership then we should build over buy and/or customise. Also check if there is an existing system that can be used rather than building a new one
Customisation of COTs packages can be costly in comparison to building equivalent functionality. It also has a longer standing impact of the future pace of change maintaining and developing on top of frequently complex customisations that requires specialist knowledge.
- Extract what we can from existing COTs packages
- New functional differentiators should be developed outside of COTs packages.
- Use COTS for what they are good for and compose systems around them.
- Legacy systems may need to have a wrapper layer so it can be strangled and replaced in the future
Points for discussion
- Do you consider this when choosing the technology?
- Google cloud or elasticsearch is an example of buy
- Do you reinvent the wheel building systems already out there?