Estoy tratando de averiguar la razón de su decisión de cuándo hacer qué. Estoy feliz de proporcionar más contexto, pero quiero hacerlo general por ahora.
project-management
estancamiento
fuente
fuente
Respuestas:
Supongo que está demasiado simplificado, pero eso es cierto como una guía general:
En un ambiente personal
Y:
En caso afirmativo, prefiero escribirlo que comprarlo.
En un entorno profesional
Si el costo total de propiedad del producto (incluidos el desarrollo, las pruebas, el mantenimiento, el soporte o cualquier gasto relacionado) es mayor que el costo del producto, y el rendimiento calculado de la inversión no compensará este costo, entonces mejor comprarlo y seguir adelante.
fuente
Cosas a considerar para una decisión de hacer o comprar
costo de desarrollo / costo de mantenimiento versus costo del producto / costo del contrato de mantenimiento: por supuesto, eso es lo obvio, pero en realidad no es lo único. Por ejemplo, si voy a usar el software no solo para mi propia empresa, sino que también quiero venderlo a otros, entonces el cálculo se ve de manera bastante diferente
Disponibilidad de un producto adecuado. Para muchos procesos de negocios, simplemente no hay un software estándar disponible. O bien, hay algo disponible, pero no es adecuado, ya que contiene 100 características de las que solo necesita 3 de una manera ligeramente diferente, mientras que faltan otras 2 características importantes.
¿Se quiere depender de un proveedor externo? Los vendedores especialmente pequeños le brindan siempre el riesgo de que el vendedor desaparezca del mercado en el futuro, o el desarrollo posterior del producto no va en la dirección que necesita. Para un producto que tiene bajo su propio control, puede dirigir la dirección del desarrollo mucho mejor.
¿Cuándo necesito un software específico y qué es más rápido: desarrollarlo por mi cuenta o comprar algo, adaptarlo hasta que se ajuste a mis procesos y ponerlo en práctica? Comprar algo de la estantería puede parecer la alternativa más rápida y a veces más barata, pero personalmente también he visto escenarios en los que desarrollar un software exactamente para las necesidades de una empresa, que se ajusta a los procesos comerciales existentes, ahorró mucho tiempo en comparación con comprar algo y enseñar varios cientos de usuarios para hacer su trabajo de una manera nueva y diferente, que el costo de desarrollo era despreciable.
fuente
Cualquier cosa que tenga que ver con la criptografía. Hay 100.000 maneras de hacerlo mal y exponer su software a serias vulnerabilidades de seguridad y solo algunas maneras de hacerlo bien. Se necesita una gran experiencia para esto.
fuente
desarrollar por mi cuenta
fuente
A nivel personal, desarrollo una extraña combinación de lo que quiero y lo que sería interesante escribir.
A nivel profesional, @haylem hace un buen punto general sobre cuándo comprar versus cuándo escribir. Diré que hay un gran elemento que se pasa por alto: la oportunidad. Para las empresas más grandes, a menudo tiene sentido, en mi opinión, escribir aplicaciones de línea de negocio centrales personalizadas (no todas las aplicaciones de línea de negocio) cuando hacerlo hace que la empresa sea más ágil. Hay un costo de oportunidad asociado con la compra de software porque entonces su empresa (no solo su TI) está bloqueada en la forma en que el proveedor mira su dominio.
Para la mayoría de las cosas, no importa. Es mejor que su sistema contable no sea creativo. Su procesador de textos será el mismo que el de cualquier otra persona. Pero las cosas que te hacen estar mejor escrito en casa para que pueda adaptarse a lo que tu negocio está tratando de lograr.
fuente
Es, como casi todas las otras respuestas han dicho, una decisión de costo-beneficio:
Todo se reduce a si el costo, compensado por los beneficios, de una solución desarrollada a medida es menor que el costo del producto comercial.
También hay costos de oportunidad a considerar. Comprenda que estos no deben incluirse en los costos reales de desarrollo frente a compra, sino que en el mundo en general, debe considerarlos. Si su personal de desarrollo interno está trabajando en este proyecto, no está trabajando en ningún otro proyecto; eso significa que si hay otro proyecto en la lista que le está costando dinero todos los días que no se realiza, es muy posible que sea una prioridad más alta que haga que deje de lado o incluso cancele el desarrollo personalizado y vaya con el paquete estándar. Sin embargo, si no hacer este proyecto significa que su personal interno está sentado en sus manos, el costo del desarrollador es bajo; le está pagando a su personal de desarrollo si están trabajando o no, por lo que le costará menos en general si los está utilizando a su máximo potencial.
fuente
Supongo que está preguntando en un contexto profesional y comercial, y que estamos hablando de una parte importante de su sistema en lugar de una sola biblioteca.
Hacer o comprar versus hacer o personalizar
Hay situaciones en las que su organización puede usar un producto comercial. Por ejemplo, pocas personas escribirían su propio procesador de textos: usan MS Word, OpenOffice o lo que sea. Lo mismo para las hojas de cálculo. Tenga en cuenta que puede "personalizar" su procesador de textos con sus propias plantillas o macros, pero la gente no lo considera personalización. Eso es solo "usar" el procesador de textos, tal como lo ven.
Es posible utilizar sistemas más complicados de la misma manera, desde tiendas web hasta sistemas ERP. Pero llegará un momento en que sus diseñadores o la gente de desarrollo de negocios querrán un cambio que no esté incluido en el estándar. Un rediseño de la página de pago, tal vez, o una nueva forma de calcular las ofertas de descuento.
Si lo sabe desde el principio, entonces su decisión es realmente Hacer o Personalizar . Just Buy ya no es una opción. E incluso si no hay tales requisitos en este momento, ¿ espera que sus colegas los mencionen más adelante?
fuente