Download ¿Realmente son mejores los sistemas por web
Document related concepts
no text concepts found
Transcript
¿Realmente son mejores los sistemas por web? Murali Chemuturi y Udaya Sundari Chemuturi - Noviembre 9, 2007 El software es un activo único porque carece de elementos móviles. Por eso, no se desgasta, de manera que no hay que darle mantenimiento o reemplazarlo, como sucede con un activo fijo que tiene elementos móviles. En teoría, una aplicación de software tiene vida eterna, ya que no necesita mantenimiento alguno, siempre y cuando se dé mantenimiento a su plataforma de hardware para que funcione correctamente. El software se puede modernizar casi de cualquier manera para que se adapte a los cambios en las necesidades de las empresas. Hay muchos ejemplos de este fenómeno, como el caso del software mainframe de IBM que se creó en la década de los setenta y que sigue funcionando en nuestros días. A pesar de que se creó hace casi 40 años, parece que seguirá funcionando otros 40, como indica el windowing que se usa en muchas conversiones Y2K (el problema del año 2000). Windowing se refiere a la interpretación de una fecha expresada con una cifra de dos dígitos que sea mayor que 50 (es decir, 50 a 99), como perteneciente al siglo XX, y de una fecha expresada con una cifra de dos dígitos menor que 50 (es decir, 00 a 49), como perteneciente al siglo XXI. Por ejemplo, si los datos contienen “49” en una fecha (por ejemplo, 30/12/49), el año de dicha fecha se interpretará como 2049 (ó 30/12/2049). Lo ideal sería que en el año 2049 se invente otra forma de conversión de fechas en el software que pueda aplicarse a cifras de cuatro dígitos. Sin embargo, no podemos decir que el software nunca necesita mantenimiento. Lo ideal es que el mantenimiento que se le da al software esté basado en los cambios que sufre el ambiente empresarial, y se haga de modo que maneje las necesidades empresariales, no de otra manera. Actualmente, aunque la tendencia en creación de aplicaciones para las empresas se centra en la funcionalidad web, nosotros creemos que no es realmente necesario. Desde luego, hay espacio para el software centrado en la web, pero el software mainframe y cliente-servidor también tiene una razón de ser. La industria del software parece estar enamorada del software por web, y se está olvidando de todas las demás clases de software, que pueden ser robustas, seguras y mucho más económicas. Criterios de selección de una plataforma para aplicaciones de software A continuación exponemos los criterios para seleccionar una plataforma –es decir, una combinación de hardware, software del sistema y una plataforma de desarrollo- para operar una aplicación de software que cubra las necesidades y procese las transacciones de una empresa. 1. La estabilidad del software El software de aplicación funcionará sin problemas, siempre y cuando la plataforma original mantenga siempre las mismas condiciones. Esto se ha comprobado en el caso de mainframes en los que el software de aplicación ha funcionado durante cerca de 40 años, siempre con su mantenimiento regular y las modernizaciones necesarias para satisfacer las necesidades empresariales cambiantes. Sin embargo, el software cambia con el tiempo y ha pasado de mainframes a computadoras más pequeñas y finalmente a computadoras personales (PC). En un principio, las PC se crearon como computadoras para el hogar, y nunca se esperó que tuvieran tanta importancia para los negocios como la tienen actualmente. La Internet agregó otra dimensión al ámbito del software al permitir conectar computadoras en todo el mundo a un costo bajo. Sin embargo, en algunos aspectos, este costo se ha elevado mucho debido a los virus que forman parte de la Red Mundial y que buscan ocasionar algún tipo de daño a las PC. Ahora, cuando las PC están conectadas a la Internet, están en peligro constante de sucumbir ante clases nuevas de malware, spyware y gusanos. Lo triste es que los sistemas operativos no están preparados para manejar estas amenazas externas, de manera que es necesario instalar software adicional para proteger nuestras computadoras de estos predadores virales. A diferencia de los mainframes, el desempeño de las PC es completamente impredecible en cuanto a las acciones desconocidas del malware y el software que debe proteger a la PC del mismo. Cuando aparece un nuevo virus o spyware, inmediatamente después aparece una modernización al software antivirus o un programa anti-spyware; o tal vez se publica un parche de seguridad. Todas estas soluciones se aplican a la PC y justo después uno se da cuenta de que el software de aplicación, que hasta ahora había funcionado sin problemas, está lleno de errores. En pocas palabras, la confiabilidad del software se ve afectada, no porque el software esté mal desarrollado, sino por incidentes externos sobre los que el desarrollador y el usuario no tienen control. Peor aún, es posible que el error se detecte cuando un cliente iracundo se queje amargamente sobre el error que le hizo perder su información. Cuando se trata de comprar software por web, es imposible hacerlo con un pago único; hay que celebrar un contrato de mantenimiento de software, derivado de la necesidad, aún cuando sus requisitos empresariales no cambien. Hay que estar protegido de algún suceso externo sobre el cual no se tiene control alguno. Actualmente, los precios de los productos de software por web tienden a gravitar hacia las licencias anuales –la venta ya no es una sola transacción bien definida. Con el software cliente-servidor, puede mantener el software del sistema en su condición original, siempre y cuando esté aislado de la Internet. Con los mainframes, ya está protegido del malware gracias a su diseño del hardware y a su software colosal para el sistema operativo. Desde este punto de vista, es mejor optar por un software mainframe o cliente-servidor, no por un software por web. 2. La estabilidad de la interfaz del usuario El software por web es, esencialmente, software por navegador. Existen muchos navegadores: IE, Netscape, Mozilla y Opera, entre otros, y cada uno tiene sus propios seguidores leales. El navegador de un software por web dicta la interfaz del usuario (IU), y los distintos navegadores manejan la IU de manera diferente. Algunas veces, la IU puede funcionar en algunos navegadores nada más. Sin embargo todos los navegadores tienen una característica en común, y es que están expuestos a ataque de malware. Por lo tanto, siempre hay que modernizarlos e instalarles los parches que se publiquen. Estas medidas afectan el software por web: cada vez que se agrega un parche o se moderniza el navegador, hay que hacerle cambios al software. Por otro lado, el software cliente-servidor no depende de aplicaciones externas como los navegadores, de manera que si un virus lo ataca, simplemente hay que deshacerse del virus o reinstalar el software cliente. Desde luego que los mainframes son inmunes al malware, ya que hasta ahora no se han creado virus que sean capaces de atacarlos. 3. El mantenimiento del software Un software que funciona no necesita mantenimiento, ya que no se desgasta. El único caso en que es necesario mejorar o corregir el software, es si hay cambios en los requisitos empresariales. El software por web requiere mantenimiento no obstante la estabilidad de su plataforma. Hay que mantener y modernizar el software cuando a) se le instala un parche a su navegador, b) se moderniza su navegador, c) se moderniza el nivel medio que proporciona un tercero, d) se le instala un parche a su sistema operativo o e) aparece algún virus nuevo y poderoso. Hay que tener mucho cuidado con esto cuando la aplicación tiene varios niveles, ya que es imposible saber exactamente qué nivel está ocasionando el problema, de manera que se moderniza el software de aplicación. Además de los costos de mantenimiento del software de aplicación, hay que dar mantenimiento al software por web para dar una mayor protección a los componentes de software que necesita. Así, el software por web le cuesta más no sólo inicialmente, sino que hay que agregar el costo del mantenimiento que debe hacer durante su funcionamiento. Actualmente, las organizaciones antivirus están modernizando sus definiciones de virus semanalmente, lo que demuestra que diario aparecen virus nuevos en la Internet. El software por mainframe y por cliente-servidor seguirá funcionando siempre y cuando la plataforma siga siendo la misma. Los sucesos externos no cambian sus necesidades de mantenimiento, y la modernización de un navegador no las afecta. No es necesario instalar middleware de un tercero, ni necesita un tercer nivel de software para que sus aplicaciones funciones o en caso de que aparezca un virus nuevo. 4. La instalación inicial El costo real de la instalación inicial de un software por web sólo se muestra cuando se descubre que el software no se puede implementar como llega de fábrica. El software vendido en forma estándar (COTS, por comercial off-the-shelf) casi nunca puede usarse tal cual, la mayoría de las veces hay que modificarlo al implantar sistemas por web. La personalización en el sitio es la norma, no la excepción, cuando se trata de sistemas por web, y esto suele hacer que el costo se dispare. El software por web es extremadamente vulnerable, por lo tanto, es imperativo que le agregue componentes para tratar los sucesos externos –que casi siempre representan una amenaza. Algunos ejemplos de estos componentes son software antivirus, cortafuegos, sistemas de detección de intrusos, herramientas de cifrado de datos y sistemas de seguridad, entre otros. Además, este software de protección conlleva contratos de mantenimiento anual y, a veces, las modernizaciones que permiten luchar contra las amenazas externas tienen un costo adicional. También hay que tomar en cuenta el costo de reemplazo del software por web, porque uno nunca sabe cuándo se renovarán las normas actuales del software; esto sólo sucede con el software por web. Basta decir que es más barato tener varias instancias de software cliente-servidor con bases de datos sincronizadas y no una instancia de software por web. Es más, los componentes protectores que mencionamos antes no son necesarios con las plataformas mainframe o clienteservidor. 5. La seguridad En un ambiente cliente-servidor o mainframe, las amenazas a la seguridad provienen de fuentes internas, no externas. En otras palabras, se conocen las causas de las amenazas y se pueden controlar. En un sistema por web, no se sabe de dónde está el posible pirata informático; hasta donde sabemos, puede estar en un país lejano en el que no tenemos modo de pedir que se haga justicia. A medida que fortalecemos nuestras herramientas de seguridad, los piratas informáticos mejoran su oficio. Así, desarrolladores de software y piratas informáticos están en competencia constante. En medio de todo están las empresas, que tienen que pagar el precio en todos los sentidos. 6. Operaciones ininterrumpidas Un sistema por web puede verse interrumpido por varias razones: a) una interrupción en el servicio de Internet, b) un ataque de virus, c) un fallo en el hardware o el software de la red, d) un parche para el software que acaba de salir y que afecta alguna parte del mismo, e) mal funcionamiento de uno de los niveles del software o f) un pirata informático que se ha infiltrado en el sistema. Dicho de otro modo, hay sucesos externos que están fuera de nuestro control y que pueden acabar con el sistema. Los sistemas por mainframe y cliente-servidor no corren este riesgo. Comentarios finales Tenemos que ser justos y reconocer que la Internet tiene varias ventajas. Su velocidad ha aumentado de forma importante; tanto, que se ha eliminado el tiempo de espera. El costo del acceso a la Internet se ha reducido dramáticamente. La solidez de los niveles medios ha mejorado mucho. Además, la mayoría de los países cuentan ya con reglamentos y normas que rigen el acceso a la Internet, y hay una cooperación internacional en materia de piratería informática. No cabe duda de que la Internet facilita las operaciones de una empresa y que se ha convertido en una forma muy conveniente para hacer negocios. El software por web es necesario para interactuar con el público. Algunas de las aplicaciones que no pueden funcionar (o que no pueden vivir) sin un sistema por web son las reservaciones de los hoteles, los viajes, la información, la venta de bienes de consumo, las áreas que utilizan formularios, las interfaces públicas, etc. En pocas palabras, los sistemas por web llegaron para quedarse. Sin embargo, tenemos que evaluar cuidadosamente la situación de la empresa y pensar muy bien si la conectividad a Internet es realmente necesaria para el software empresarial. Ningún negocio debe asumir que necesita un sistema por web sin antes tomar en cuenta todos los factores. Cuando el sistema por web no es estrictamente necesario, un sistema mainframe o cliente-servidor es una opción mucho mejor y más segura. Acerca de los autores Murali Chemuturi es profesor de ingeniería industrial y tiene estudios de postrado en administración de empresas e informática. Cuenta con más de treinta años de experiencia con organizaciones profesionales, como Electronics Corporation of India Ltd., Tata Consultancy Services (TCS), Metamos (ahora Ciber Inc.) y Satyam Computer Services Ltd. Actualmente es director de Chemuturi Consultants (www.chemuturi.com), una firma de consultoría que se especializa en productos informáticos para la industria de desarrollo de software con EstimatorPal y FPAPal (www.effortestimator.com) para estimación de software y con Papal para gestión de proyectos de software y métricas. Ha llevado a cabo varios programas de capacitación en las empresas para gestión de proyectos de software y estimación de software. Se puede contactar con él en [email protected]. Udaya Chemuturi tiene estudios de postrado en Literatura inglesa y cuenta con más de 25 años de experiencia en docencia. Actualmente es consultora de Chemuturi Consultants. Se puede contactar con ella en [email protected].