¿Se puede demandar a una empresa por desarrollar software malo?

La mayoría de la gente piensa que el software es “simplemente escribir mucho”; están equivocados

Tu preguntaste:

¿Se puede demandar a una empresa por desarrollar software malo?

Contrato a una empresa para desarrollar un software para mí, me preguntan si quiero un estudio de factibilidad a un costo de $ 10k. Renuncio. Entonces, no estoy contento con lo que desarrollaron, así que los demandé por $ 3 millones para cubrir sus costos. Deberían haber realizado el estudio de forma gratuita, ya que les debía un deber de cuidado, ¿verdad?

Sí, puedes demandar.

No, si este no es su primer rodeo (primer trabajo por contrato para un cliente difícil): no ganará la demanda.

Tomemos esto en partes.


Parte 1: El “estudio de viabilidad” [sic]

Contrato a una empresa para desarrollar un software para mí, me preguntan si quiero un estudio de factibilidad a un costo de $ 10k.

Es muy dudoso que este fuera realmente un estudio de viabilidad; es mucho más probable que quisieran realizar un análisis de casos de uso del software que dijo que deseaba escribir, de modo que recibió lo que necesitaba, que podría no coincidir con lo que dijo que quería.

Si este es un software para usar en un proceso comercial, esto requeriría analizar los procesos comerciales en el lugar ahora, con la vista puesta en cómo y qué roles eran capaces de automatizarse y cómo debería hacerse.

Un ejemplo podría ser una aplicación de mercado vertical para un consultorio dental.

El único caso en el que se aplicaría el “estudio de viabilidad” es para un proyecto ambicioso, para el cual no había precedentes que demostraran que tal proyecto podría existir.

Renuncio.

En ese momento, probablemente le pidieron que firmara un documento a tal efecto, indemnizándolos por cualquier daño en caso de que el producto se construyera según sus especificaciones exactas, pero no cumpliera el papel que debía cumplir.

En otras palabras: para protegerlos de que no sepa cómo diseñar software útil e insista en tomar decisiones de diseño de todos modos.

Si esto sucediera, es astronómicamente improbable que ganes tu palo. En términos simples: vas a perder.


Parte 2: “Entonces, no estoy contento con lo que desarrollaron”

Esto no le importa a la corte.

Lo que importa es:

  • ¿Los indemnizó contra la responsabilidad por fallas de diseño debido a que usted rechazó pagar .33% del costo total del contrato para proporcionarle un diseño más correcto?

    Parece que lo hiciste.

  • ¿Proporcionaron los entregables, según lo especificado en el contrato?
  • ¿Lo hicieron en la (s) fecha (s) especificada (s) en el contrato?
  • ¿Firmaste en los entregables?
  • ¿Firmaste con los criterios de aceptación final para el software?

Si los indemnizaba, la responsabilidad de la especificación era suya, en lugar de haber sido negociada entre usted.

Por cada entregable en el contrato, usted respondió ” ” a las preguntas sobre proporcionar / fecha / cierre de sesión: pierde tracción en su demanda.

Si firmó la aceptación final: se acabó el juego: hicieron el trabajo para el que fueron contratados y usted acordó que cumplían con los términos del contrato.

Si eres o no feliz más tarde es irrelevante en ese momento. Si de eso se trata, es probable que pierdas tu traje.


Parte 3: Querías un regalo de promoción

Deberían haber realizado el estudio de forma gratuita, ya que les debía un deber de cuidado, ¿verdad?

Incorrecto.

Le dijeron cuál sería su análisis (probablemente era un análisis, no un “estudio” [sic]) para que lo hicieran. Rechazaste Han cumplido con su deber según la ley.

Al rechazar, a menos que fueran muy estúpidos, se le pedía que firmara una exención de responsabilidad por ese deber de cuidado, antes de que el proyecto hubiera podido continuar por su parte.

Para usar una analogía que podría comprender: esto es como contratar un edificio construido y luego insistir en que el constructor sea un subcontratista y que usted, el comprador, actuará como contratista general.

Nuevamente: suponiendo que este no sea su primer rodeo. No puedo imaginar, con $ 3 millones en juego, que esta es la primera vez que hacen un contrato para alguien.

Sospecho que con esos valores en dólares involucrados, tienen bastante experiencia, su contrato es férreo y es probable que pierda su demanda.


Para futura referencia:

  • Si quieren un estudio, haga que sea contingente: pagará el estudio y, si continúa con el contrato, la tarifa del estudio se deducirá del costo total negociado del contrato.

    De esta manera, se les paga por su trabajo haciendo el estudio, y usted tiene una idea de lo que obtendrá en el back-end. No puede esperar que trabajen gratis: ¿qué pasaría si hubiera decidido que no le gustaban los resultados del estudio y no les hubiera dado el contrato?

  • Sepa con quién está tratando; Si alguien recomienda algo como el estudio, entonces hay una razón, y dado que usted no puede crear el software usted mismo, probablemente tenga una razón que debería ser importante para usted.

    También es bastante indicativo de que están tratando de ser sinceros y honestos con usted; Si alguien no quiere un análisis inicial de un contrato de $ 3M, debe sospechar increíblemente que está tratando de obtener uno rápido.

    En otras palabras: pague el estudio, incluso si estructura el acuerdo de tal manera que el costo salga de su back-end.

  • Alguien deshonesto ni siquiera habría sugerido un estudio, simplemente te habrían quitado tu dinero.

En general, aunque debe tener en cuenta que hay dos tipos de contratistas / consultores, y si preguntan o no sobre un estudio le permitirán diferenciar entre los dos:

  1. Los que están allí para extraer la mayor cantidad de dinero posible de la vaca de efectivo.

    Estas son las personas que le entregan exactamente el producto que solicita, sin tratar de descubrir qué es lo que realmente necesita. Las personas rara vez saben lo que necesitan, y tampoco la persona que brinda el servicio, sin un estudio.

    Espere que estén dispuestos a hacer cambios después del contrato … por una tarifa por cambio, por supuesto.

    Y luego te ahorran mucho más de lo que el producto hubiera tardado en desarrollarse, si hubieras sabido pedir lo que necesitabas en primer lugar, en lugar de ellos de forma iterativa y costosa, acercándote al producto final mediante aproximaciones sucesivas.

  2. Los que están allí para resolver su problema con la esperanza de futuros negocios.

    Estas personas siempre, siempre, siempre querrán estudiar el problema por adelantado. Querrán saber lo que necesita, no lo que quiere . Y luego elaborarán un plan para darle lo que necesita.

    Y sí: vas a pagar este análisis por adelantado. Pero incluso si no contrata a esa compañía: el análisis valdrá lo que pagó por él.

En caso de que te importe: estoy en la segunda categoría.

Y dado que según mi lectura de la poca información que ha proporcionado, coloca a las personas que desea demandar también en la segunda categoría: si sigue adelante con la demanda, y se convierte en conocimiento común en su área, irá tener que salir del área para encontrar a alguien en la segunda categoría que esté dispuesto a trabajar para usted en el futuro.


Seriamente:

Esta compañía estaba siendo sincera con usted sobre la idea de que realmente necesita diseñar antes de comenzar a trabajar, y rechazó más del 0.3% del valor del contrato.

Con las tasas LIBOR actuales, ese es el interés de una semana en esos $ 3 millones.

Espero que hayas aprendido una valiosa, pero costosa, lección.

Legalmente, este es un tema bastante sencillo de analizar. (Veré esto bajo la ley de Maine, que puede diferir de la ley en otros estados). Un desarrollador de software solo tiene un deber con su cliente si una de las dos cosas es cierta: 1) firmó un acuerdo en el que acordó cumplir con un estándar de atención particular o 2) hay una ley que impone un estándar de atención particular independientemente de si el desarrollador lo acordó contractualmente.

La mayoría de los desarrolladores de software profesionales utilizan un acuerdo estándar que incluye, en algún lugar de sus muchas cláusulas, una sección que establece un estándar que aceptará seguir. Un estándar común es el estándar P&W, donde el desarrollador acepta cumplir con sus obligaciones en un grado “profesional y profesional”. Alternativamente, puede prometer que su software funcionará “en conformidad sustancial” con las especificaciones del proyecto. El desarrollador también puede aceptar un Acuerdo de Nivel de Servicio (SLA) que establece estándares de rendimiento para el software y luego establece formas en que el cliente será compensado si el servicio cae por debajo de los niveles de SLA. Los SLA generalmente se usan para cosas como el tiempo de actividad y otras métricas de rendimiento continuo. También hay otros estándares menos comunes.

En cualquier caso: si la compañía acepta cumplir con un estándar y luego no cumple con ese estándar, entonces sí, tiene un reclamo contractual contra esa compañía.

Ahora, las compañías de software a veces también tienen una exención de garantía que dice, a menudo en TODAS LAS MAYÚSCULAS, que la compañía no ofrece garantías en absoluto, o vende el software “tal como está”. En la mayoría de los estados, la compañía puede hacer eso. En unos pocos, incluida Maine, una empresa que vende bienes o servicios no puede hacerlo porque existe una “garantía implícita de comerciabilidad”. Es decir, no importa cuántas renuncias utilice el desarrollador, aún debe cumplir un cierto nivel de calidad en su producto. No está del todo claro cómo se aplica esta garantía a las compañías de software: en Maine, no he encontrado ningún caso en el que un tribunal haya dicho exactamente qué significa eso para el software. Pero, básicamente, el software tiene que funcionar aproximadamente de la forma en que uno esperaría razonablemente que el software funcione.

Entonces: a menos que exista una garantía legal o alguna otra base legal para su reclamo, o a menos que el desarrollador acuerde cumplir con un estándar que incumplió, entonces es probable que no tenga un reclamo.

Además, como han dicho otros: no, un estudio de viabilidad no es algo que un desarrollador tiene la obligación de realizar sin cargo. Evaluar la viabilidad es un servicio muy diferente de crear software. Muchas empresas de software ofrecen ambos servicios, a menudo en una especie de menú junto con el alojamiento y otros servicios: puede contratarlos de uno o ambos, pero son dos servicios diferentes y no hay razón para pensar que tendría derecho a uno si compraste el otro.

Veamos. Tuviste una idea y $ 3 millones para respaldarla. O tal vez convenciste a otras personas de respaldarlo con su dinero. Confiaste en tu intuición de que la idea es genial. Cuando el desarrollador de software intentó insinuar con tacto que quizás debería hacer un estudio de factibilidad, estaba tan seguro de sí mismo que lo rechazó. Hicieron el trabajo, confiando en ti para saber lo que estás haciendo. ¿Ahora quieres castigarlos por tus errores?

¿Aplica el mismo estándar a otros aspectos de su vida?

Contratas un equipo de construcción para construir un parque temático y luego descubres que no hay absolutamente ningún cliente. ¿Demandas?

Ahora, si se trataba de una empresa de investigación de mercado que había afirmado que esta aplicación arrasará con el mundo, y usted tiene algunos medios para demostrar que la afirmación fue de hecho fraudulenta (no solo un error de buena fe), tal vez usted Tendría un caso.

Además, no nos ha dado indicios de que el software fuera malo. Simplemente inútil. Cuál era tu responsabilidad evitar. El software podría haberse realizado de acuerdo con las mejores prácticas de la industria por lo que sabemos.

Además (y debería haber comenzado desde eso), si son inteligentes, han firmado un contrato con usted para protegerse de demandas frívolas. Revisa el contrato.

Descargo de responsabilidad: no soy abogado.

¿En qué número estoy pensando?

¿Qué? ese no es el número en el que estoy pensando, ¡voy a demandarlo por adivinar mi número incorrecto!

Puede sonar tonto, pero eso es lo que estás sugiriendo en tu pregunta. Parte de mi trabajo es hacer análisis de negocios, al final escribo un gran documento que dice en inglés simple lo que quiere lograr y lo que está tratando de resolver al hacer una nueva aplicación.

Es una ENORME parte del trabajo, puede costar tanto como el software en sí y es un producto por sí solo. Cobro a las personas por eso como parte de mis servicios. Una vez que se les da (y se paga), pueden decidir acompañarme para desarrollar su software, o pueden llevarlo a otra empresa para obtener la aplicación.

Para decirlo sin rodeos, los clientes no tienen idea de lo que quieren la mayor parte del tiempo. Usted como instigador sabe lo que quiere, pero muchas veces puede ser completamente incompatible con otra parte del proceso que está tratando de “resolver”.

El estudio de viabilidad o el análisis comercial, como lo llamo, está allí para decirle exactamente qué es lo que está tratando de lograr, incluido todo lo que no ha pensado que impactaría en el proyecto.

Para decirlo de otra manera, digamos que quieres construir una casa, les dices que quieres 4 paredes, una puerta para entrar y ventanas para ver. En su cabeza tiene la imagen de una casa completamente independiente con jardín. Lo que obtienes es un cobertizo de ladrillo en una habitación individual, con una puerta y 1 o 2 ventanas. Con una fuerte lluvia, la arena se asienta en los subsuelos y las ventanas se rompen y la puerta ya no se cierra.

¿Ahora es culpa de los constructores que hicieron exactamente lo que querías? ¿O irías a un arquitecto y le pedirías que diseñara algunos planos para que puedas ver lo que la gente va a construir antes de aceptar comprar todos los ladrillos y la madera?

Eso sí, no soy un abogado, pero sí, por supuesto que podrías intentarlo. Esto sucede todo el tiempo. El resultado dependerá en gran medida de los documentos de su contrato (porque, por supuesto, tendría un contrato con ellos, ¿verdad?)

Por ejemplo, en un proyecto grande y complejo (y $ 3M es un proyecto complejo, no importa cómo quiera pensarlo), normalmente tendrá documentos contractuales y múltiples SOW para cubrir las fases del proyecto. En esos SOW, la compañía que contrató debe documentar completamente el trabajo que realizarán. Si firmó el contrato y los SOW, y le entregaron lo que los SOW dijeron y usted firmó, no tiene motivos para reclamar que violaron el contrato porque aprobó lo que construyeron. Simple derecho?

Realmente no. Suponga que ha contratado al contratista para hacer un proyecto de desarrollo incremental (ágil) con un estado final general en mente pero con pocos detalles. En este caso, su contratista está entregando pequeños fragmentos de funcionalidad al final de cada sprint. Contrató a un equipo de trabajadores que trabaja bajo una metodología en la que el estado final no está bien definido, pero los pasos incrementales le permiten adaptarse a medida que cambian los requisitos. Obtienes dos años y $ 3M en este proyecto y decides por cualquier razón que es un fracaso. Le ha estado diciendo al contratista qué construir durante dos años a través del propietario de su producto / cartera de pedidos priorizada, y ellos han creado lo que solicitó y acomodaron los cambios que desea realizar en el camino (porque, Agile). ¿Es su culpa que las cosas que les pediste que construyeran no funcionaron como esperabas? ¡Hicieron el trabajo que les dijiste!

¿Por qué su expectativa sería que algo que usted ordenó, firmó y se entregó según sus especificaciones, ahora es responsabilidad de otra persona solo porque no cumple con sus expectativas? ¡En esta situación, la parte negligente es USTED , por pasar 2 años y $ 3M en algo que no logra sus objetivos! ¿Y sabes qué lo empeora? ¡Es posible que haya gastado esos $ 10K por adelantado para el “estudio de viabilidad” y descubrió que lo que quería construir no era factible, o descubrió dificultades para evitar en el camino!

Si no entregan lo que acordaron contractualmente, esa es otra historia, pero su pregunta está redactada como “No estoy contento con lo que desarrollaron”, lo cual es subjetivo. ¿Funcionó? ¿Coincidió con las especificaciones que acordó? ¿Hizo su contratista todos los esfuerzos razonables para cumplir los términos del contrato? Eso es lo que verá la ley, no cómo se siente al respecto.

Honestamente … gasta los $ 10K. Es barato en comparación con $ 3M y es un seguro adicional con el que estará satisfecho con el resultado (¡o se dará cuenta de que puede gastar los $ 2,990,000 restantes en algo mejor!).

No es un abogado

Por lo general, puede demandar a quien quiera, ya sea que gane o no, es otra historia.

Cuando contrata a una empresa para desarrollar software para usted, redacta un contrato que enumera todos los entregables y la funcionalidad esperada.

Si los entregables no cumplen con los requisitos del contrato, entonces probablemente no tenga que pagarlos.

Entonces, se trata de los detalles del contrato. Cuanto más específico sea el contrato sobre los requisitos de calidad de los entregables, mayores serán sus posibilidades de ganar.

Probablemente se reducirá a qué acuerdos se hicieron, y quién rompió esos acuerdos.

Una persona tiene la responsabilidad de minimizar sus propios daños. Si una compañía elige NO realizar un estudio de factibilidad con la esperanza de preservar algún tipo de “negación”, entonces la compañía puede decir “nadie me dijo que esto no funcionaría” y demandar para recuperar millones de dólares de costos cuando no me gusta lo que se construye, esa empresa probablemente cometió un error costoso. Puede parecer a la corte que la compañía nunca tuvo la intención de pagar por el trabajo.

Si una empresa desea que se realice un análisis antes de comenzar un trabajo, es perfectamente razonable que los desarrolladores cobren por ese trabajo. Y si una empresa decide no hacer ese análisis, los desarrolladores pueden estructurar el acuerdo para que se les pague por su trabajo; de esa manera, si las cosas no salen como se esperaba, todavía se les paga.

Muchos proyectos de software salen mal porque la compañía y los desarrolladores no llegan a un acuerdo sobre cuáles son los objetivos y prioridades del proyecto. Se producen malentendidos, y lo que se desarrolla no es lo que se esperaba, necesitaba o quería.

Todo lo que una empresa de software hace en su nombre cuesta dinero. Tienen salarios que pagar, facturas de electricidad, etc. ¿Por qué trabajarían gratis para usted? ¿Su abogado trabaja gratis para usted con la promesa de un posible dinero en el futuro? ¿No? Me pregunto por qué no ¿Tal vez porque eres el tipo de cliente que ignora las recomendaciones y luego se niega a pagar tus facturas después de que el trabajo está hecho porque no estás contento con el resultado? Un resultado con el que podría haber estado satisfecho si hubiera seguido las recomendaciones de los profesionales que empleó para hacer tales recomendaciones.

El “deber de cuidado” se aplica a los casos de agravio. En general, una doctrina llamada “esencia de la acción” impide reformular los reclamos contractuales como reclamos de agravio cuando solo se alegan daños económicos.

Puede o no tener un reclamo por incumplimiento de contrato , si el software del desarrollador no cumplió con las especificaciones proporcionadas por el contrato.

En base a estos detalles:

Contrato a una empresa para desarrollar un software para mí, me preguntan si quiero un estudio de factibilidad a un costo de $ 10k. Renuncio. Entonces, no estoy contento con lo que desarrollaron, así que los demandé por $ 3 millones para cubrir sus costos. Deberían haber realizado el estudio de forma gratuita, ya que les debía un deber de cuidado, ¿verdad?

—No veo ningún tipo de reclamo en absoluto. Sin embargo, debe llevar la pregunta a un abogado calificado para practicar dónde se encuentra si desea obtener una opinión profesional real. Todo lo que hacemos aquí es responder preguntas generales sobre cómo funciona la ley.

Real tienes que pagar por el software. No hay forma de saber si un cliente va a estar contento con los resultados, de ahí la necesidad de demostraciones y prototipos. El hecho de que quisieran un estudio de viabilidad significa que lo que está solicitando puede no tener capacidad técnica. Rechazas y ahora no eres feliz. El cliente debe demandarlo y seguir adelante.

Pensé que habrías implementado un método para medir el progreso y supervisar el proceso. Debería haber podido detener el trabajo y establecerse y luego pasar todo a alguien que considerara más capaz.

Tampoco hubiera querido que la empresa que buscaba el trabajo hiciera el estudio de viabilidad. Eso lo habría manejado yo primero y luego una compañía experta en eso si cuestionara la viabilidad de mi idea.

El valor de un producto de software depende de los usuarios. Es posible que tenga un verdadero ganador o un ganador que necesita un ligero ajuste para hacerse popular. Puse mis esfuerzos allí primero.

Aquí está haciendo un esfuerzo para buscar juicio contra alguien cuando probablemente aún no ha hablado con un profesional legal.

Finalmente … ¿cuánto? Realmente necesita hablar con un abogado para obtener orientación. Probablemente deberías haber tenido uno desde el primer día.

No soy abogado, pero me parece que, al rechazar su oferta de un estudio de factibilidad, usted ha eliminado su “deber de cuidado”. Al sugerírselo, le han advertido que está arriesgando su dinero sin hacerlo.

No me queda claro que tenían un deber de cuidado en primer lugar, pero se necesitaría un abogado calificado en la jurisdicción correspondiente para decidirlo. Pero al rechazar el estudio de factibilidad, ha eliminado cualquier deber que haya podido existir. Un estudio de $ 10k para proteger $ 10m me parece un muy buen valor.

Pero no soy abogado, así que consulte a uno.

More Interesting

¿Cuáles son las habilidades de programación más demandadas para 2011 y más allá, y por qué?

¿Existe una correlación entre el código feo y el código que se escribió rápidamente?

¿Es un ingeniero abierto y obstinado algo malo?

¿No es profesional para un desarrollador de software tener una manga tribal?

¿Qué lenguaje de programación debería uno estudiar en la novena clase para convertirse en ingeniero de software?

¿Qué es lo peor que te puede pasar como ingeniero de software y cómo evitarlo?

Cómo expresar mis programas en términos matemáticos simbólicos

¿Qué es lo mejor que has hecho en un hackathon?

¿Por qué muchos programadores piensan que FP es casi solo para investigadores? ¿Por qué no se dan cuenta de su poder para mejorar el desarrollo de software convencional?

Como ingeniero de software con BS en CS, ¿cuáles son las ventajas de seguir una maestría en CS? ¿Qué oportunidades y trayectoria profesional abrirá el título que de otro modo sería difícil de obtener?

¿Qué ingenieros necesito para hacer un procesador móvil (teléfono)?

¿Cuál es la diferencia entre Flash y AJAX para un desarrollador web?

¿En qué tecnología se basa eBay?

Soy un desarrollador de software que trabaja en una empresa decente. Un año después de obtener mi maestría en Ciencias de la Computación, he perdido completamente el interés en el campo. ¿Cómo puedo cambiar radicalmente mi carrera profesional para hacerme más feliz?

¿Por qué Microsoft usó y aceptó Node.js y no Ruby on Rails?