"Build or buy" refers to the decision making process of whether to "build" a piece of technology or "buy" it. For example, a computer hobbyist may prefer to build a new home PC while a casual consumer would prefer to buy a PC.
Possibly a prelude to the AntiPattern NotInventedHere in SoftwareDevelopment. However, the benefits of building software may exceed the cost of building software. The trick is in knowing if the cost versus benefits comparison favors the "build it" side versus the "buy it" side. Some factors for comparison:
Build it
Pros:
- Expanding the groups' expertise base.
- Create a uniquely powerful solution specific to the product's market.
- Produce a product which is overall superior to the competition because of advanced technology.
- No additional licensing costs for deployment.
Cons:
- Schedule stretch.
- Investment in new technology support:
- Software tools
- Workstations
- Other hardware
- Training for staff
- Risk out the ying-yang.
Buy it
Pros:
- Pre-configured solution, requires little effort/time to make it work.
- Professionally supported.
- Already known bug free, good, and meets the needs.
- Known cost of development and deployment.
Cons:
- Uses possibly staid, tired technology.
- Produces a product just like everybody else's, making yours a Me-Too commodity.
- Licensing fees for deployment.
Could this be a
CategoryIndex or
CategoryRoadMap? Probably not. It's not really worth creating a category specifically for this. Build or buy is a decision every engineer faces when trying to meet a product requirement with the currently-available technology.
All of the pages related to this topic could probably be shrunk down to a single Thesis/Antithesis/Synthesis page if some kind WikiGnome gets his back up.
See: KitsAsCompromiseToBuyOrBuild, BuildDontBuy, BuyDontBuild, CautiousBuyOverBuild, AvoidOrEmbraceLibraries, SomebodyElsesFramework, NotInventedHere, InventedHere, VendorChoices