¿Cuál es la mejor estrategia para adoptar al diseñar un sistema que duplicaría sustancialmente lo que se podría hacer en MS Excel?

Tenemos un producto basado en la web que se utiliza para la gestión y planificación de proyectos. Cada 'proyecto' en la herramienta es accesible para 'todos los miembros' de ese proyecto.

Ahora, antes de la existencia de este producto, se realizaba / gestionaba mucho trabajo utilizando hojas de cálculo y no era visible para todos , por así decirlo, era necesario que todos los datos / funcionalidades centrales fueran visibles para todos y también tenían la capacidad de exportar para excel cuando sea necesario (es decir, al presentar un informe o enviarlo a los superiores o al no tener acceso al sistema basado en la web, etc.).

Así que ahora estamos diseñando la próxima versión del producto para que sea 'social', de modo que todos puedan ver lo que sucede y gestionar / planificar a medida que avanza . La pregunta es cuál es la mejor estrategia que podemos emplear para evitar la duplicación de lo que Excel ya hace un buen trabajo en el sistema basado en la web.

Así que esto es lo que se nos ocurrió:

  1. Duplique la funcionalidad, es decir, tenga una estructura similar a una matriz basada en tablas para el contenido y haga que javascript calcule los resultados que podrían comprometerse con el server cuando el usuario lo indique (o después de un time de espera.) Se podría agregar más tarde: )
  2. Solo use el front-end para la recolección de datos pero no el cálculo numérico: haga que todo se exporte en una hoja de Excel que haga los cálculos por usted. Sin embargo, conocer los cálculos / numbers es fundamental para la parte visible para todos, ya que eso es lo que impulsa el esfuerzo de gestión / planificación.
  3. Tenga algún tipo de complemento Excel basado en la web que pueda acelerar el esfuerzo de desarrollo, ayúdenos a hacer los cálculos y extraer los resultados para usarlos en la aplicación web. ¡El problema es que no sé de ninguna solución como esta! Cualquier ayuda / pointers / enlaces sería muy apreciada.

Los puntos débiles están manteniendo el time / los costos de desarrollo bajos; cada solución es progresivamente más barata, por así decirlo. Básicamente, tenemos la necesidad de un layout tipo 'motor matemático', donde se ingresan los numbers, se calculan los resultados y podemos usar eso para el proyecto (en la herramienta). Tiene que haber alguna manera de get los numbers de los usuarios, calcular los resultados / puntajes finales y actualizar el contenido en la aplicación web. Exportar a excel (que tendría la funcionalidad similar sería necesario por las razones mencionadas anteriormente, así como también hacer más análisis de sensibilidad por sí mismo , por así decirlo).

¿Cuál es la mejor manera de abordar este problema? Estamos abiertos a las soluciones Javascript / Jquery o CSS3 / HTML 5. Sin embargo, Flash o Flex.

Creo que puede usar la aplicación web de Microsoft Office Excel para esto (# 3).

Aquí hay un enlace, un ejemplo de incrustación de una aplicación web de Excel. Sin embargo, no estoy seguro del entorno que está desarrollando ni de los costos de get esta aplicación web, pero puede ser una opción para usted.

http://office.microsoft.com/en-us/excel/embed-an-excel-spreadsheet-on-a-web-page-FX102602477.aspx

La opción n. ° 1 podría ser muy simple o muy compleja según lo que realmente necesite calcular. Si solo necesita un puñado de cálculos diferentes, podría ser más fácil implementarlo solo. Html ya tiene soporte para la estructura tipo matriz.

No conozco ningún complemento similar a Excel, pero si existen, imagino que serían más difíciles de implementar que simplemente configurar la matriz en la interfaz de usuario y escribir las pocas funciones que necesita.