La mafia del mantenimiento anual de software

domingo, 14 febrero 2010 14:40 by armando

Esta semana tuve una terrible experiencia con un proveedor de una herramienta utilizada para la facil configuracion de impresoras en el ambiente de Terminal Server. El producto es muy bueno y hace muy bien su trabajo, de hecho jamas he tenido la necesidad de llamar a soporte por tener algun problema derivado de su uso. Este producto lo hemos utilizado por 4 anios, y durante esos 4 anios estuve pagando el mantenimiento del mismo, como mencionaba sin usar nunca el soporte tecnico (por lo bueno del producto), y actualizando a nuevas versiones (menores), que realmente no daban un valor agregado real a la empresa. En junio de 2009 cuando tocaba renovar el mantenimiento del producto, decidi no hacerlo, debido a que no veia un valor agregado al cambio minimo de version y debido a que el software tiene una funcion muy particular no habria cambios radicales.

Todo paso bien, hasta la semana pasada que decidimos hacer un rebuild a nuestro servidor de Terminal Server, debido a que queriamos comenzar nuestra temporada con todo en su lugar. Pues cual fue la sorpresa que al querer instalar el software (que ya habia comprado y mantenido por 4 anos) simplemente no me dejo hacerlo, pues necesitaba activarlo. Mi primera reaccion no fue buena, sobre todo porque con esta accion el proveedor me estaba forzando a que TENGO que estarle pagando su cuota para poder utilizar el software, aun cuando sea una version antigua.

Al no tener otra opcion decidi llamar a la empresa con mi cotizacion en la mano para "renovar" mi mantenimiento, entendiendo que pagaria por este tiempo sin haber recibido el servicio y pues ponerme al corriente. Cuando hable con el primer encargado me indico que mi documento ya no era valido y que debia platicar con otra persona. Esta persona, al parecer el encargado de renovacion de cuentas, me comento algo que me dejo helado y perplejo. Con mucho gusto renovarian mi cuenta, al pagarles el 75% del valor orginal del producto. No podia creer lo que este pelafustan me estaba diciendo, intente hacerlo en razon sin buena suerte, asi que decidi intentar tratar con su supervisor, el cual aunque de mejor humor, continuaba con la misma postura. Finalmente consegui una rebaja del 35% de lo que originalmente me deseaban cobrar, lo cual definitivamente NO era un opcion para mi, era el 300% de lo que pagaba por mantenimiento.....

Al final... este proveedor se quedo sin cliente, prefirio el 100% de nada que el 30% de algo. Y aunque facilmente podiamos haber pagado lo que pedian, mas por orgullo que por otra cosa decidimos cortar relacion con ellos. Sinceramente creo que la industria del software esta abusando de la postura en la que esta, aun cuando no soy muy "Fan" de los movimientos de open source, creo que son algo necesario para poder atacar un poco este tipo de practicas.

Yo soy de las personas que piensa que todo debe de costar, pero con logica y en medida, el tener una posicion dominante no te da el derecho de abusar de tus clientes. O ustedes que piensan?

PD Fue un proveedor en Estados Unidos.

Digg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkList

Sea el primero en calificar este post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Mantenimiento de software

lunes, 5 octubre 2009 15:47 by armando

Es increible como la industria del software ha crecido en los ultimos años. De ser una industria a la cual, practicamente "asaltaban", cuando todo mundo simplemente "copiaba" el software y hacía que los margenes fueran muy bajos, hasta el día de hoy donde, las compañías mas grandes del mundo, son de software.

Este desmesurado crecimiento se ha debido en gran parte al real retorno de inversión que existe al usar software, y a la manera en como los empleados son mucho más productivos. Las empresas están en gran medida muy convencidas que para poder crecer necesitan apoyarse en una plataforma de tecnología.

Sin embargo la manera en que las empresas de software están "valuando" su software comercial, está ocasionando que deje de ser tan atractivo el realizar implementaciones. Personalmente no estoy en contra del software comercial, de hecho creo que es lo mas sano, sin embargo el exceso en los cobros, y la manera de medir como cada empresa usa mi software, ocasiona esquemas de licenciamiento MUY complejos y por ende "caros".

El software "comprado" es simplemente una falacia, el 99.9% de los proveedores te "forzan" a pagar tu "mantenimiento/anualidad", bajo pena de que tengas que comprar de nuevo el software al 100% de su valor comercial, y es AHI donde estoy en completo desacuerdo con la industria de software.

Primer punto:

¿Quien le dijo a las empresas que las actualizaciones que consideran importantes lo son para mi?, en muchas ocasiones son modificaciones que ni siquieran aplican a todas las empresas.

¿Si estoy pagando el 100% del valor de mi software, porque me obligas a pagar una anualidad "renta"?. Quizas a mi no me interese actualizarme en 2 o 3 años.... Las empresas que deseen la nueva funcionalidad cada año, pues que la paguen.

Basicamente todas las empresas en plan de mantenimiento estan "financiando" el desarrollo de las nuevas versiones del software para que pueda seguirla veniendo. OJO, se supone que con el pago del software debería de ser suficiente para eso.

Quiero dejar en claro que yo entiendo la posicion de la industria del software, pero también recuerdo lo que le pasó a IBM y porque Microsoft está donde está. El software debe ser accesible y las empresas desarrolladoras se están olvidando de eso.

 

Digg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkList

Sea el primero en calificar este post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Experiencia del usuario en aplicaciones web

jueves, 22 enero 2009 06:00 by armando

Los 5 puntos más importantes para el desempeño de una aplicación Web son:

  1. DISPONIBILIDAD: porcentaje del tiempo en que tu aplicación esta disponible a los usuarios. En esta parte se involucra tanto el desarrollador en la parte de los errores de programación, como la persona de operaciones, que esta encargado que todo el hardware funcione en armonía.
  2. RESPONSIBILIDAD: el tiempo que toma que las gráficas, los objetos, y la aplicación en general se carguen. En el caso de las aplicaciones Web, los desarrolladores cada vez más optimizan el código para que la respuesta sea más rápida. Sin embargo en este tipo de proyectos el diseñador muchas veces no es consciente de este punto y pone la estética primero que la optimización de la aplicación. Definitivamente es algo que siempre debe estar en la mente del diseñador.
  3. CONSISTENCIA: la experiencia deberá ser siempre la misma, independientemente del lugar geográfico, el tipo de usuario o de equipo que esté utilizando. Este punto depende muchísimo del tipo de audiencia a la que se esta enfocando el sitio, y en el caso de los navegadores, el mínimo común denominador a este momento son: IE 6, IE 7, y Firefox 1,2 y 3.
  4. FUNCIONALIDAD: básicamente que la aplicación haga correctamente lo que se supone deba hacer, y que lo haga de una manera lógica y coherente.
  5. VALIDEZ: Es uno de los puntos mas importantes y significa que la información que se muestre sea siempre correcta. De nada sirve tener los puntos anteriores si nuestra información no es válida.

INVOLUCRANDO A TODO MUNDO EN EL PROCESO

Experiencia del Usuario: es la relación directa que un usuario tiene con la aplicación, por ejemplo si es fácil de entender o la información tiene sentido en el contexto con el que se maneja.

Cada quien tiene un rol especifico dentro de la experiencia del usuario final en cualquier aplicación.

El ejecutivo debe considerar si la requisición del proyecto contempla su visión completa de la experiencia que espera que se tenga.

Los gerentes deberán considerar los impactos que puedan existir en los procesos actuales con clientes y/o proveedores para poder conservar una experiencia exitosa.

Los diseñadores tendrán en cuenta que además que la aplicación se vea bien, también cumpla con funcionalidad para el usuario.

Los desarrolladores utilizaran código más eficiente, para que los procesos se ejecuten en el menor tiempo posible.

Las personas de control de calidad deberán de tomar en cuenta diferentes escenarios, emulando las características de la demografía del su audiencia. Por ejemplo enlaces lentos, o con equipos de computo antiguos.

Las personas de Operaciones deberán estar en contacto con los clientes, para poder proveer de retroalimentación del desempeño al equipo Web.

COMPARTIENDO METRICAS

Todo el equipo deberá compartir métricas de desempeño de las aplicaciones. La mayoría son revisadas y analizadas por sistemas, pero una de las más importantes es la de satisfacción del cliente la cual debe poder ser mesurable.


ESTABLECIENDO BASE DE DESEMPEÑO

“Hay que saber lo que se tiene, para poder mejorarlo”. Bajo esta premisa, es importante tener métricas bien definidas (punto anterior), que permitan saber sobre donde estamos parados, y como las modificaciones que tengamos de hardware/software mejoran o empeoran. Estas pueden servir incluso a manera personal, saber que tanto podemos mejorar nuestros proyectos ya establecidos.

CONOCIENDO A LOS USUARIOS

Es de suma importancia el conocer y sobre todo entender los diferentes tipos de usuarios que podemos tener. Y hacia donde debemos enfocar nuestra fuerza de desarrollo. Por ejemplo, en el caso de un sitio de comercio electrónico, no es lo mismo un prospecto que anda viendo opciones y navegando para conocer nuestro producto o servicio, a un cliente que ya nos ha comprado y con el cual hay una relación previa. De la misma manera todos los involucrados deben tener un conocimiento completo de los diferentes tipos de usuarios.


ENFOCANDOSE EN PUNTOS NO CLAVES

Muchas de las “ventajas” del Web 2.0, nos llevan a incluir elementos visuales muy agradables, sin embargo, en muchas ocasiones a precios muy elevados. Por ejemplo el uso excesivo de tecnologías como flash o de video bajo demanda, donde el usuario no tiene la posibilidad de omitir que se despliegue. La regla de oro es: no crear una disrupción en la aplicación y después mejorarla lo más que se pueda.

Las mejoras siempre deberán ser analizadas por todo el equipo, desde su planeación, sabiendo si realmente serán de valor agregado para los usuarios.

Las ventajas tecnológicas que existen actualmente para poder actualizar una aplicación en minutos no debe ser un detonante para hacerlo sin orden ni planeación.

PROBANDO DESDE FUERA DEL CASTILLO

Es muy importante llevar a cabo pruebas fuera del ambiente natural de la empresa. Deben de tomarse en cuenta puntos como los diferentes sistemas operativos, los diferentes navegadores e incluso las distancias geográficas, para que la experiencia del usuario sea siempre consistente.  Además esto nos permite saber si hay necesidad de actualizar o renovar nuestro hardware/software.

Revisando datos como los tipos de navegadores, los tipos de resoluciones e incluso haciendo pruebas directamente desde los equipos de los clientes (cuando se pueda), tendremos las mejores métricas de desempeño.
Las pruebas de balanceo de carga y simulaciones son también muy importantes. Y nos permiten poder definir niveles de servicio.


ECHANDOLE UN OJO A LOS SOCIOS COMERCIALES

Es muy importante tomar en consideración los servicios externos de los que dependen los propios. (Por ejemplo, Bancos). 

Es importante definir niveles de servicio acordes, donde tanto la empresa como los socios puedan estar de acuerdo.

CODIGO EFICIENTE

Es importante que nuestro código sea eficiente y este preparado para poder incorporarle mejoras, mientras la demanda así lo requiera. Es importante:

  • Incluir metas dentro del código, además de las especificaciones del mismo. Por ejemplo que alguna operación se realice en un tiempo estimado.
  • Crear mecanismos de alerta dentro del código para poder detectar errores.
  • Realizar pruebas unitarias dentro del código.
  • Mostrar páginas agradables al momento de que ocurra un error. Tanto para no dar información adicional, como para que la experiencia del usuario final, sea mejor.
  • Almacenar toda la información posible acerca del error. (servidor, usuario, hora)
  • Proveer explicaciones lo mas completas posibles dentro de los errores para que personas en otros departamentos (infraestructura), puedan resolverlos mas rápido.

HERRAMIENTAS PARA LA CULTURA DEL DESEMPEÑO

La experiencia del usuario debe ser una prioridad desde los niveles más altos de la compañía, es la única manera que se este alineado en este tipo de iniciativas.

Dentro de los proyectos se deben de contar con metas compartidas entre todos los integrantes del equipo. Tanto del departamento de sistemas, como del solicitando incluyendo principalmente al “sponsor”.

Siempre debe de existir una comunicación abierta y honesta. De esta manera los malos entendidos serán minimizados y el éxito del proyecto en tiempo y costo esta garantizado.

La mejora continua la vemos plasmada en iniciativas como la de ISO 9000, y es muy importante tenerla presente también en el desarrollo de proyectos de sistemas. Siempre hay lugar para la mejora continua, desde el punto de vista de nuevas características o mejor desempeño.

Si te interesó este artículo, por favor compártelo con tus compañeros de trabajo que sientas se puedan beneficiar de él.

Algunos de los puntos fueron tomados de una empresa consultora de imagen corporativa y aplicados a nuestra realidad.

Digg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkList

Sea el primero en calificar este post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Microsoft Hosted Services una realidad en Mexico

domingo, 21 diciembre 2008 17:58 by armando

Hace poco descubri que ya se esta ofreciendo en Mexico, El Microsoft Hosted Services para Exchange, Office Communication Server, Sharepoint y CRM 4.0, el servicio lo esta ofreciendo IWS Mexico los cuales son Gold partners de Microsoft y con los que he tenido la oportunidad de trabajar con implementaciones (on-premise).

No estoy seguro si son el unico partner que esta ofreciendo este tipo de servicios, pero por lo menos son de los unicos que estoy enterado. Definitivamente es una ventaja para empresas que desean estar a la vanguardia en tecnologia, sin embargo no cuentan con los recursos para la implementacion de la infraestructura para soportar este tipo de servicios, o no cuentan con un equipo de TI lo suficientemente grande.

Uno de los usos que tambien he pensado en usarlo, ha sido en poder probar primero la adopcion de la tecnologia dentro de una empresa, sin necesidad de hacer la inversion de la compra del software y el hardware necesario. Por ejemplo, el llevar a cabo una prueba piloto de 6 meses o 1 un año y ver si esta es viable dentro de la empresa.

Seria muy interesante que IWS complementara con mas informacion (video y audio), de las ventajas del modelo hospedado, para un mercado como Mexico.

Quizas para unas empresas haga mas sentido que para otras, pero lo importante es que ya existen estas alternativas en Mexico para aprovecharlas.

 

Digg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkList

Actualmente calificado con 1.0 por 1 personas

  • Currently 1/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

La nueva Experiencia Xbox

sábado, 15 noviembre 2008 19:00 by armando

Nueva Experiencia Xbox La mayoria de la gente que tiene un Xbox esta muy bien enterada que el proximo 19 de Noviembre Microsoft va a liberar la Nueva Experiencia Xbox, la cual basicamente es una completa actualizacion a la interfaz que actualmente tienen estas consolas.  Y mas que ponerme a platicarles las mejoras que trae o las diferencias que hay con la interfaz actual, me interesa comentar como ha cambiado el mundo de las consolas de hace 15 anos para aca, arrastradas obviamente por el boom de las computadoras y el internet.

Todos habiamos estado acostumbrados a comprar y a desechar nuestras consolas tal y como las habiamos comprado desde el primer dia, sabiamos que con cada juego que pusieramos tendriamos una experiencia diferente, y que la consola unicamente funcionaba para eso, para tocar los juegos. Sin embargo desde la primer generacion de Xbox se empezaron a cristalizar nuevas ideas que han terminado con el Xbox 360 y con Playstation 3, siendo el primero el pionero e innovador en esta arena.

Y curiosamente tenemos tan arraigado este pensamiento antiguo, que hace algunos dias platicando con un companero del trabajo (el cual es joven 40 anos aprox, y que tiene hijos a los cuales debido en parte a mi insistencia les compro primero su xbox y luego su 360) le platicaba de la nueva experiencia xbox, y lo primero que me dijo, no pues mis hijos se van a tener que esperar porque ya no les voy a comprar otro xbox, por lo menos no por lo pronto..... y fue hasta que le explique bien que se trataba de una actualizacion gratuita que le llamo la atencion.

Y es que quien mejor para saber de actualizaciones y comercializacion de software que Microsoft, los cuales han hecho una gran labor con su producto y con su ecosistema. Curiosamente ayer platicaba con mi esposa y le decia "tengo un xbox e ironicamente lo que menos hago con el es jugar juegos", y esa es la verdad, le damos mas el uso de dispositivo multimedia (haciendo streaming de nuestro media center, escuchando musica, tocando dvds, etc...). Hoy por hoy las consolas de videojuego son mucho que consolas, son un dispositivo realmente de entretenimiento.

Y esta proxima semana que se libere la nueva Experienca Xbox, vamos a tener una nueva manera de interactuar con la funcionalidad que actualmente existe y la que se piensa implementar. Es decir, practicamente vamos a tener una consola nueva con la misma inversion... Y esto puede volver a repetirse tantas veces como sea necesario.

Lo que me ha tocado leer en los foros de la gente de Xbox es que estan contentos y esperando a que llegue esta actualizacion que les permitira sacarle todavia mas juego la inversion de su consola.

Digg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkList

Sea el primero en calificar este post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Tags:   , , , , ,
Categories:   Xbox 360
Actions:   E-mail | Permalink | Comentarios (0) | Comment RSSRSS comment feed