Pregunta

Un desarrollador externo que mi jefe trajo, diseñó un " Mejor " Sistema que nuestro sitio web ASP.NET + MSSQL Server 2005 que estamos usando ahora.

Aquí están las especificaciones relevantes:

  • Excel + ODBC como el almacén de datos
  • Construido usando ASP de la vieja escuela, no ASP.NET

¿Hay algún problema evidente con su solución que no sea la antigua tecnología? Hilo de seguridad, etc?

Permítame ponerlo de esta manera, " ¿Qué puede decirle a mi jefe (que solo es parcialmente técnico) que saque este código del agua? "

Gracias,

Desarrollador vindicativo :)

¿Fue útil?

Solución

Excel nunca debe usarse como almacén de datos,

  1. No es una base de datos

  2. No manejará varios usuarios a la vez

  3. No hay soporte para transacciones, por lo que si se produce un error en medio de una llamada odbc, el archivo excel podría terminar en la papelera. (Incluso el acceso sería mejor que usar Excel y eso no dice mucho)

  4. Excel es una hoja de cálculo, diseñada para analizar datos, no para almacenar datos.

Otros consejos

Directamente desde Microsoft: http://support.microsoft.com/kb/195951

  

IMPORTANTE: aunque las aplicaciones ASP / ADO admiten el acceso multiusuario, una hoja de cálculo de Excel no. Por lo tanto, este método de consulta y actualización de información no admite el acceso concurrente de múltiples usuarios.

Ummm ... carece de escalabilidad: solo puedes tener unos pocos usuarios. ¿Son importantes los datos?

Allain, además de las grandes razones técnicas que han surgido aquí, creo que debes preguntarte: "¿por qué el jefe hizo esto? "

La percepción es una realidad, y si su jefe es solo parcialmente técnico, entonces el razonamiento puramente técnico podría no pasar.

Aparte de las debilidades arquitectónicas evidentes, ¿hay alguna funcionalidad en este monstruo que lo hace más atractivo para su jefe? En general, las personas no hacen cosas estúpidas a propósito, puede serle útil considerar de dónde viene su jefe antes de hacer una CLM .

¿Problemas de sincronización relacionados con un almacén de datos xls y un servidor SQL 2005 separados? En nuestro servidor IIS, las páginas asp clásicas están prohibidas por defecto. Tal vez eso es una señal lol.

¿Qué hay de un rendimiento terrible, ya que Excel no está diseñado para ser utilizado como una base de datos? Dígale a su jefe que Excel no es ni siquiera una base de datos de un solo usuario (eso es lo que es MS Access), y mucho menos una base de datos multiusuario diseñada para un alto rendimiento concurrente.

Y, por supuesto, al utilizar ASP puro, está perdiendo el acceso a todas las bibliotecas .NET framework (que, por supuesto, es en lo que se centran todos los desarrolladores de bibliotecas del ecosistema de MS). Pero pediste una razón, y la primera es mejor.

Iría con el mantra de que esas son las herramientas equivocadas para el trabajo (suponiendo que estén en tu caso). Sería como usar un destornillador como un martillo. Para una uña, podría funcionar con mucho sudor y lágrimas. Para un proyecto real, a través de, esto probablemente esté condenado.

Me jactaría de contar con las herramientas con las que está familiarizado: cuánto mejor son las herramientas en términos de rendimiento, seguridad, mantenimiento (especialmente el costo de mantenimiento).

Podrías decir algo como que le está pagando a alguien para que escriba una nueva aplicación con tecnología de hace una década que puede que no sea compatible durante mucho más tiempo (si aún lo es ...).

Ummm ... ¿límite de fila?

Esto es lo que puede decirle: recuérdele las pesadillas que ocurren cuando dos o más personas necesitan editar la misma hoja de cálculo al mismo tiempo. Ahora dígale que se imagine que se multiplicó por cien personas que no pueden llamarse entre sí para decirles "cerrar la hoja de cálculo para que pueda actualizarla". Eso es cómo será.

¿Una hoja de cálculo de Excel va a manejar las transacciones simultáneas correctamente? No fue diseñado para este tipo de cosas, y no lo haría responsable si hiciera algo malo (como dejar solo una conexión ODBC a la vez, o no bloquear correctamente las actualizaciones concurrentes).

Ese archivo de Excel se corromperá a toda prisa con muchas personas que lo golpean al mismo tiempo. La escalabilidad de Excel como un almacén de datos de back-end es casi inexistente. Es bastante difícil mantener la integridad de los datos con su función nativa de libro de trabajo compartido ...

BTW- ¿Este tercero es un pariente de tu jefe? Yikes ...

La tecnología antigua es en sí misma un problema evidente. ¿Estarás cerca para siempre? Será muy difícil para el jefe encontrar nuevos desarrolladores para mantener algo como esto. El mundo de la tecnología ha avanzado.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top