“Requisitos” ~ = “Especificaciones ~ =” Código “. Y los dos primeros son importantes.
No es un principio de CS, sino un problema estándar de Pointy-Haired Boss: “El hecho de que pueda imaginarlo no significa que se pueda programar de manera fácil, rápida o confiable”.
En la misma línea: “Elige dos de tres: rápido, bueno, barato”.
- ¿Por qué los ingenieros de software no se jubilan después de ganar 1 crore que en FD genera 70K mensuales?
- Si actualmente es ingeniero de software, ¿cuándo y cómo decidió estudiar informática?
- ¿Por qué la gente a menudo cambia de compañía en el sector de TI?
- ¿Cuáles son algunas cosas que desearías saber cuando comenzaste a programar?
- ¿Qué es el "éxito de la vida" según un ingeniero de software?
Contrariamente a los esquemas a menudo propuestos para sacar algo rápidamente de la puerta: “Nueve mujeres no producen un hijo en un mes”
“Empiezas a codificar, iré a buscar los requisitos” es un plan realmente malo. Relacionado: “Empiezas a codificar, diseñaremos más tarde”. (Los programadores también sufren mucho de este).
“El 40% de los costos de ingeniería de software son * pruebas *”. ¿Está en el presupuesto? ¿Dónde? Sí, sé que el cliente quiere el costo más bajo. No puedes dejar esto fuera; pagará más si no lo planea. Eso saldrá de su presupuesto (o la vida de su programador) ya que acordó no cobrarle al cliente por ello.
“Tengo que tener un programador que tenga 10 años de experiencia en todas las tecnologías que tenemos”. Derecha. Mi hija quiere un pony.
“El tipo que produce más líneas de código es el más productivo”.
“Este software es difícil de mejorar. Vamos a reescribirlo desde cero”. También una falla de muchos programadores. La gente olvida que si tardó 10 años en escribir el software, una parte muy importante de eso fue descubrir los requisitos, que todos han olvidado. Reescribe desde cero, puedes redescubrirlo todo de nuevo. A más o menos el mismo costo.
“Solo porque Facebook lo eligió, no significa que fuera inteligente”.
Oh notación. O (ln n) ~ = O (n) ~ = O (N ln N) ~ = O (N ^ 2), y es importante.
Matemáticas para servilletas de cóctel para controlar la cordura. Calcule el tamaño del problema simplificando demasiado para decidir si su respuesta es sensata. (Oh, la notación es una versión de esto).
“El código es el diseño” es completamente BS, a menos que no pueda diseñar. Mire lo que hay en las pizarras y luego pregúntese por qué hacemos tan poco esfuerzo para preservar la información del diseño, y luego nos quejamos de que es tan difícil entender cómo funciona un código.