As mentioned by others, this really needs to be dealt with at the design phase (and therefore is most definitely an engineering activity), but also needs to be regularly reviewed; I have been bitten by a supplier calling up and stating they cannot find a part anywhere in distribution.
I ended up having to choose another part and do wire modifications to the board.
The key to that is understanding just when a part may go obsolete or have long lead times (yes, this is a bit like gazing at a crystal ball, but there are steps we can take to minimise issues).
Here is my list of things to watch out for:
1 The datasheet is 3 (or more) years old and has 'Preliminary' or 'Draft' stamped over it.
Run; here is an example.
2 When at the design stage, get the standard MOQ and lead time for the part; do not ever expect faster lead times than you get at this point. You may get a faster lead time, but there are no guarantees.
3 Some processor and FPGA families have multiple devices that are pin compatible.
You may not need extra functionality, but you have an escape route if you choose something from this line (I understand this is not how life works in general, but it is something to consider). As an example, the Silicon Labs Giant Gecko and Wonder Gecko differ only by processor core (the former has an M3, the latter an M4).
There are numerous micro-controller families that offer this sort drop-in functionality including footprints. Try and use items from these families if possible.
Specifying a part that has no chance of being replaced on the same footprint is asking for disaster by either going obsolete, or just as bad, on allocation.
4 Beware of large silicon parts (such as micros) that have very large MOQs or silicon vendors that have a small base of very large customers. Both of these are indicators of potential supply issues down the line.
5 Subscribe to the PCN (product change notice) list for each supplier / component that is critical to your design; this can yield useful information about the lifecycle of a component.
For obsolescence intelligence, use one of the various tools; these have a traffic light system and can often predict when a part will go obsolete; one of them even plugs directly into the Altium design environment.
Another example is here
These tools cost money, but how much is it costing if you cannot build, ship and bill?
The design process does have to be a bit longer to do the above checks, but the most expensive component is the one you cannot buy.
I understand your situation is not helped by the above, but perhaps your next project / product can benefit.