Jeśli oprogramowanie ma być używane taktycznie lub strategicznie lub ma kluczowe znaczenie dla Twojej firmy, kluczową kwestią mogą być programiści, którzy również rozumieją działalność. Muszą także zrozumieć wsparcie i cykl życia oraz koszty, jakie będzie kosztować Twoja firma w związku z obsługą systemów po wydaniu.
Nie sądzę, że koszt jest ogólnie faktycznym czynnikiem. Jeśli ktoś twierdzi, że tak, jest ignorantem lub kłamie. W przypadku outsourcingu płacisz komuś marżę zysku oprócz kosztów. Wszelkie oszczędności wynikające z różnic geograficznych na rynku pracy zwykle szybko nadrabiają wzrost kosztów komunikacji i edukacji, a różnice stawek nie są tak duże, jak kiedyś, ponieważ świat rozwijający się nazywa się tak nie bez powodu.
Istnieje wiele rodzajów oprogramowania. W wielu przypadkach możesz zlecić coś na zewnątrz i mieć się dobrze. Problem polega na tym, że decyzja musi być podejmowana indywidualnie dla każdego przypadku i nie można jej rozwiązać w jednym rozmiarze dla każdej sytuacji.
Jestem pewien, że w procesie decyzyjnym należy szukać miliona rzeczy.
Zdarzałyby się przypadki, w których opracowanie dobrze określonego, ale kluczowego oprogramowania mogłoby być z łatwością powierzone firmie specjalizującej się w tego rodzaju pracy - na przykład na poziomie systemowym, takim jak sterownik urządzenia lub serwer WWW, może być nadal zlecony przez firma, która stworzyła urządzenie i chciała bardziej specjalizować się w obsłudze użytkowników niż elementy składowe.
Z drugiej strony, jeśli zamierzasz prowadzić ten serwer sieciowy w specjalny sposób i chociaż masz go dobrze sprecyzowany, ten komponent będzie ściśle powiązany z głównymi wielofazowymi inicjatywami programistycznymi, prawdopodobnie nie jesteś Będę chciał to zlecić na zewnątrz.