Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Temas relacionados > Debates
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

 
 
Herramientas Buscar en Tema Desplegado
  #4  
Antiguo 15-06-2012
Avatar de mamcx
mamcx mamcx is offline
Moderador
 
Registrado: sep 2004
Ubicación: Medellín - Colombia
Posts: 3.941
Poder: 27
mamcx Tiene un aura espectacularmamcx Tiene un aura espectacularmamcx Tiene un aura espectacular
Cita:
Empezado por mcs Ver Mensaje
El título es bastante descriptivo, pero voy a detallar más mi dilema.

1:

La aplicación ha estado creciendo durante este tiempo, y ha llegado el momento de crear una versión nueva. La versión actual está escrita en Java+Swing+MySQL.

a) Que sea una aplicación de escritorio y la programe en Delphi. Se vende la aplicación al usuario final y, si este lo desea, cada año se cobra mantenimiento o puede comprar actualizaciones.
b) Que sea una aplicación web hospedada creada en Rails o similar. Mensualmente (o anualmente) se cobra una cantidad fija en concepto de derecho de uso.
-----
2:

Desde el punto de vista técnico, prefiero la versión Delphi. Desde un punto de vista monetario, prefiero la versión web.
----
3:

Por otra parte, la grandeza de las aplicaciones hospedadas es que el usuario se olvida totalmente del tema mantenimiento: no debe hacer copias de seguridad, no debe instalar actualizaciones... Además, puede usar la aplicación desde cualquier ordenador y no debe instalar nada. Eso si, si no tiene conexión a Internet, no puede acceder a sus datos.
Te deshueso los puntos claves en mi opinion:

1:

No veo el porque ha llegado de crear una version nueva, como en el sentido de " Reescribir todo, en otro lenguaje y plataforma, simplemente porque supongo que nube lo obliga".

Una reescritura es el error estrategico #1:

http://local.joelonsoftware.com/wiki...hacer,_Parte_I

Porque esta en conflicto con parte del

2:

Cita:
Desde un punto de vista monetario..
Porque desligas el tecnico del monetario? Se puede argumentar que el monetario es MAS importante. Porque si te quedas sin gasolina, no solo tu proyecto se va a pique sino todos los que hayan confiado en tu proyecto como sus usuarios.

Ya que el tema de confianza es clave, que tu proyecto sea solido economicamente es critico, no?

Ademas, Delphi no significa "no web". Web <> HTML, Web es una plataforma que PERFECTAMENTE permite clientes nativos (quizas la validación mas poderosa es el AppStore, donde las aplicaciones de iOS usan servicios web para operar).

http://blog.elmalabarista.com/post/1...ion-remobjects

PERO, igual no veo el porque la reescritura. Eso retrasara el proyecto. Diria quizas una reingenieria para adaptarlo al entorno de nube.

3:

Mas que el ahorro de que un usuario no haga un backup (que igual es algo que debes permitir: Que el usuario descargue copia de sus datos, ojala en un formato abierto como CVS, JSON o XML) la ventaja ppal es para ti.

Casimiro apunta a las dificultades de hacer las cosas bien y seguras. El problema de estas apps es la infraestructura: Como hacer un servicio escalable, seguro, rapido, confiable?

Si lo haces TODO TU, te resultara un lio. Ahora lo que esta de moda, y una moda buena, son los PAAS (Plataformas como servicio). Por ejemplo:

http://www.heroku.com/

https://www.windowsazure.com

Donde de forma notable otra entidad te administra la BD (y otros servicios) y ellos (osea MS o Azure) cumplen con las regulaciones y estándares a un nivel superior. Son plataformas probadas y con clientes grandes, y te ahorra un tiempo y pasta enorme.

Por ejemplo, ahora que estoy con heroku+azure. En heroku usando:

https://postgres.heroku.com/

El servicio de tener un motor de BD administrado por heroku es un PLUS tremendo y te quita mucho dolor de cabeza (igual con azure y su sql server).

Ahora igual debes encriptar y hacer segura tu app y todo eso. Lo MISMO que si la hicieras local, solo que es MUCHO mas seguro en la nube que local.

Porque?

Maxima de seguridad #1: El acceso FISICO a la maquina es la anulacion TOTAL de CUALQUIER seguridad. Es superfacil cojer el disco duro y acceder a la BD.

1000 a 1 a que la infraestructura de heroku/azure/amazon es MAS segura a todo nivel que cualquiera de las infraestructuras de red/bd de tus clientes.

Solo debes agregar seguridad de *datos*:

1- Comunicarte solo por HTTPS: Facilísimo y superbarato (los certificados valen centavos)
2- Encriptar los datos sensibles. Lo unico dificil es elegir bien el esquema de seguridad. Al dia de hoy: NO USES MD5 (que no es encriptacion sino hashing)
3- Preferiblemente, auditar con un experto tu seguridad. Te sale mas facil y barato hacerlo contra tu propia servidor (ej nube) que contra los servidores cliente.

El tener nube NO SIGNIFICA PERDIDA DE OPERAR LOCALMENTE.

Ahora tengo 3 proyectos que van a correr sobre nube. Todos pueden operar desconectados (bajo un subconjunto de datos a una BD local) y se sincroniza con el servidor.
-----

Lo ultimo es si tus clientes aceptaran o no. Eso es dificil de saber. Hay clientes que no lo quieren asi.

En general, es mas probable que un cliente pequeño te acepte el trato que un grande. Las opciones:

1- Vas cloud 100% y que se pudra al que no le guste. Sorprendentemente, es algo que funciona en general muy bien (pero depende del publico objetivo

2- Vas cloud, pero das opcion de tener un cloud privado.

Por ejemplo, si hospedas con heroku, tener un paquete donde esta la mayoria y creas instancias privadas para X clientes. Osea, un cliente = 1 heroku.

3- Lo anterior + instalacion local

Lo ultimo es que la mayoria lo haces en cloud pero permites que se instale de forma local en la empresa. Aqui se complica la cosa porque tienes que preocuparte de infraestructura y sincronizar las versiones entre el cloud y los locales, que es en parte la gracia con un PAAS.

Una forma de manejarlo, es usar algo como

http://www.cloudfoundry.com/

Donde permite crear clouds locales. Asi puedes tener el mismo ambiente en todos lados, e implenentar un despacho de codigo automatizado para que cuando actualizes en cloud, se actualizen en los clientes.
__________________
El malabarista.
Responder Con Cita
 


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Fin de las aplicaciones win 32? Paulao Varios 4 14-05-2008 17:51:51
Aplicaciones web Wolfyx Internet 3 19-02-2008 16:46:15
Aplicaciones .net marceloalegre .NET 3 06-01-2006 16:54:06
aplicaciones en red jean Conexión con bases de datos 1 16-09-2005 21:21:37
Parametros al ejecutar Aplicaciones + Aplicaciones en Mi PC NeWNeO Varios 4 19-08-2004 14:01:30


La franja horaria es GMT +2. Ahora son las 04:23:18.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi