Guía para el desarrollo de aplicaciones WEB, basada en MoProSoft. - Dificultades en los desarrollos de sistemas WEB -

Secciones:

1.- Introducción
2.- Estructura
3.- Características de los sistemas WEB
4.- Dificultades en los desarrollos de sistemas WEB
D1 Usuarios ausentes
D2 Requisitos altamente cambiantes
D3 Dificultades de comunicación
D4 Tecnología diversa y cambiante

5.- Involucrados en el desarrollo de un sistema WEB
6.- Proceso sugerido para el desarrollo de sistemas WEB
7.- Técnicas útiles en el desarrollo WEB
8.- Productos
Referencias bibliográficas
Referencias a aplicaciones
Sitios de interés



4.- Dificultades en los desarrollos de sistemas WEB

En términos muy amplios los desarrollos de sistemas WEB no se diferencian del desarrollo de otros sistemas de software, incluso son comparables con el desarrollo de proyectos en general. Todos son en esencia “un esfuerzo temporal que se lleva a cabo para crear un producto, servicio o resultado único.”[PMBOOK, 5]. Siendo únicos e irrepetibles cada proyecto o sistema presenta circunstancias y retos también únicos. Sin embargo por las características propias de los sistemas WEB la ocurrencia de ciertas problemáticas o peculiaridades es elevada y se les identifica generalizando como propias de los sistemas WEB.



D1 Usuarios ausentes

Los criterios para diseñar los sistemas suelen considerar las preferencias, necesidades y capacidades de los usuarios. El uso a distancia, que permite Internet, implica que no sea fácil o viable un contacto personal con ellos. Por esta razón es comun que los usuarios estén ausentes durante el desarrollo de los sistemas WEB. Esta ausencia presencial ocasiona muchas veces que se omitan algunos aspectos importantes. Por la misma razón muchos otros aspectos se diseñen con base en supuestos, interpretaciones y preferencias, de otros involucrados con mayor injerencia directa en el proyecto. Generalmente dichos involucrados reflejan sus gustos personales y no las necesidades de quienes serán los verdaderos usuarios.



D2 Requisitos altamente cambiantes

Aunado al factor de cambio constante de Internet, los propios requisitos de los sistemas suelen cambiar antes de que estos estén terminados. Los factores exactos que causan esto no son muy estudiados. El iniciar con objetivos muy generales, las nuevas ideas que surgen a partir del aprendizaje que resulta de la interacción de los diversos involucrados y el número mismo de involucrados, son solo algunos ejemplos de posibles causas. En cualquier caso el cambio de requisitos es muy frecuente y esto tiene impactos significativos en el desarrollo de sistemas WEB.



D3 Dificultades de comunicación

Las comunidades y grupos generan sus propios sub-lenguajes. Dan usos particulares a expresiones generales, tienen expresiones propias y utilizan términos que desconocen otros grupos de personas. En los desarrollos WEB, aun en el caso de sistemas pequeños, intervienen personas de diversas disciplinas, grupos y comunidades. Esto ocasiona dificultades de comunicación que suelen ser muy costosas.



D4 Tecnología diversa y cambiante

La arquitectura de Internet y el uso de estándares permiten la heterogeneidad pero no eliminan todos los problemas que ésta causa. Estos incluyen desde diferencias en características físicas como el tamaño de la pantalla, hasta pequeñas sutilezas en la forma y detalle con que cada navegador interpreta un estándar. Aun sobre las bases de los estándares más generales como HTML los navegadores tienen algunas diferencias que pueden causar serias dificultades en algunos sistemas. Además hay un gran número de tecnologías complementarias que permiten desarrollar funciones complejas a bajo costo pero que no están ampliamente difundidas en los sistemas clientes. La oferta de dispositivos, protocolos, formatos, navegadores y servidores cambia constantemente. En ocasiones el sistema que estamos desarrollando o manteniendo se puede ver afectado por un cambio en un componente que no tiene efecto en el 99.9% de los sistemas. La dificultad para programar ciertas funciones o acceder a otros sistemas de apoyo como bases de datos, varía entre los diversos lenguajes con que se puede programar el sistema en el servidor. Nuevas tecnologías pueden ser muy sencillas de implementar pero no ser utilizadas por la mayoría de los clientes objetivo. La diversidad de navegadores y servidores puede volver compleja y critica la selección de los lenguajes y tecnologías a utilizar.