La
inmediatez, evolución y crecimiento continuos, son características de las
aplicaciones Web, esto nos lleva a un proceso incremental y evolutivo, que
permite que el usuario se involucre activamente, facilitando el desarrollo de
productos que se ajustan a sus requerimientos. Pressman enumera siete
actividades que forman parte del proceso de la IWeb y que son aplicables a
cualquier WebApp independientemente de su tamaño y complejidad.
Métodos de la Ingeniería Web
Los
métodos de la Ingeniería Web definen las etapas y actividades necesarias para
efectuar la construcción completa de una aplicación Web. El principio
subyacente en todos ellos es que una aplicación Web debe desarrollarse
partiendo de una descripción precisa en forma de un Esquema Conceptual que se
transforma a una representación software, mediante un conjunto de
correspondencias entre las abstracciones conceptuales que constituyen su
esquema conceptual y los componentes software. En menor o mayor medida y a
veces con diferentes nombres o sub-fases, la mayoría de los métodos coinciden
en las siguientes etapas:
- Diseño Conceptual: Trata de la especificación del dominio del problema, a través de la definición de datos y sus relaciones.
- Diseño Navegacional: Establece los caminos de acceso a la información y sus permisos de visibilidad.
- Diseño de la presentación o diseño de Interfaz: Define cómo se muestra la información en la interfaz de usuario.
- Implementación: Es la construcción del software a partir de los artefactos generados en las etapas previas.
Pressman sugiere un
proceso de ingeniería web compuesto por las siguientes fases:
- Planteamiento y formulación. Identificamos los objetivos de nuestra aplicación, y delimitamos el alcance de la primera iteración.
- Planificación. Una vez planteado el problema, podremos estimar costos, riesgos y esfuerzo durante el desarrollo. Recordemos que en la planeación iterativa solamente se detalla la iteración actual, y las iteraciones subsecuentes sólo se plantean de forma general.
- Análisis. Durante esta etapa establecemos los requerimientos técnicos, gráficos, y de contenido, que incorporaremos en la iteración.
- Ingeniería. La actividad de ingeniería incorpora dos grupos de tareas que se realizan en paralelo: el diseño del contenido y la producción, se enfocan en el diseño, producción y adquisición del contenido de texto, gráfico y video que se vayan a integrar en la aplicación. Estas tareas son realizadas por personal no técnico. Por otro lado, están el diseño arquitectónico, de navegación e interfaz, el cual lidia con los aspectos técnicos.
- Generación de páginas y pruebas. Se prueba que el contenido dinámico se genere correctamente, utilizando las plantillas, interfaces y contenidos diseñados en la fase de ingeniería. Posteriormente se realizan las pruebas pertinentes, que dependerán del tipo de aplicación y requerimientos no funcionales (por ejemplo, pruebas de desempeño, etcétera).
- Evaluación del cliente. Al final de cada iteración se debe realizar una evaluación con el cliente, para validar el avance y determinar los cambios o mejoras –en caso de ser necesarios–, que se aplicarán en las siguientes iteraciones.
Particularidades del desarrollo web
Se reconoce que las
aplicaciones web tienen sus particularidades, y por ello deben recibir especial
atención en algunos puntos, pero esto no significa que deban ignorar por
completo la ingeniería. Entre las particularidades más significativas podemos
listar:
- Residente en red. Una aplicación web reside en una red, y debe dar servicio a una comunidad diversa de clientes.
- Inmediatez. Se refiere al corto tiempo que normalmente tienen los proyectos web para terminar, o por lo menos, lanzar una versión inicial.
- Evolución continúa. A diferencia del software de aplicaciones convencional, que evoluciona a través de versiones planeadas y cronológicamente espaciadas, las aplicaciones web están en constante evolución, y se actualizan gradualmente.
- Seguridad. Dado que no controlamos con certeza quién puede acceder a nuestra aplicación; la seguridad y confidencialidad de la información requieren un énfasis especial.
- Estética. Es bien sabido que la primera impresión jamás se olvida, por lo que nuestro sitio debe ser atractivo, ergonómico y usable.
- Medible. Mediante la cuantificación de resultados, podemos conocer la cantidad de usuarios que tenemos, así como sus patrones de comportamiento.
Ventajas
- Es de Fácil uso
- Permite la comunicación rápida y directa con una o varias personas que se encuentre en cualquier parte del mundo, ayudando de esta manera en las Tics.
- Desarrollo de diferentes proyectos y propuestas para dar a conocer dichos proyectos a través de la red
- Ayuda en el proceso de globalización de las empresas, ya que permite contactar diferentes entidades y personas en el mundo sin altos costos
- Crear publicidad para que los clientes puedan acceder a productos y servicios y tengan información actualizada de ellos.
- Creación de ventaja competitiva, ya que la empresa o entidad se encontraría a la vanguardia de la tecnología.
Desventajas
- No posee muchas funcionalidades para la empresa. Solo suple necesidades de comunicación.
- No ofrece diversidad de opciones
Características
- Inmediatez y evolución.
- Crecimiento continuo.
- Se publica contenido generalmente estático o un muy bajo nivel de interactividad con el usuario.