2. DESARROLLO DE SOFTWARE ORIENTADO A
LA WEB.
Implementar un software orientado a la web que gestione la
aplicación de la técnica de calidad SEIS SIGMA al proceso de
desarrollo de software, sobre la plataforma “Java Enterprise
Edition 5.0” empleando un framework integrador “JBoss Seam
2.2.0”.
Cada vez es más necesario adaptar el software y los sistemas
online a la lógica de negocio de cada cliente. Por este motivo,
no sólo es necesario que su empresa disponga de una web
corporativa, un comercio virtual o una extranet para gestionar
los pedidos de sus clientes o distribuidores, sino que es muy
aconsejable una integración total con sus sistemas propietarios
de facturación, nóminas, proveedores, previsiones, etc. para
obtener un sistema integral y eficiente en todas las áreas de su
corporación.
3. FASES DE UN PROYECTO DE DESARROLLO
DE SOFTWARE ORIENTADO A LA WEB.
Fases del desarrollo de software
1. Análisis de sus necesidades.
2. Propuesta de sistema informático incluida la
aplicación.
3. Diseño de la aplicación.
4. Demo de la aplicación.
5. Versión funcional que ya podrá usar.
6. Versión definitiva.
7. Formación acerca de la aplicación.
8. Post-venta y mantenimiento. Corrección de
posibles bugs y nuevas funcionalidades.
4. FASES DE UN PROYECTO DE DESARROLLO DE
SOFTWARE ORIENTADO A LA WEB.
• Etapas/Hitos esenciales requeridos en un proyecto de desarrollo de
software:
• Oportunidad de Negocio
• Levantamiento inicial de Requerimientos (Domino del problema)
- Entendimiento inicial del problema a resolver
- Reuniones con clientes
- Especificación inicial de requerimientos
• Confección de la propuesta
- Estimación de esfuerzo y planificación del proyecto. Uso de
técnicas y estadísticas de proyectos similares, entrevistas a
personas con experiencia en proyectos similares.
- Definición del alcance del proyecto
- Costos
• Análisis OO (Dominio del problema)
- Casos de Uso : Análisis dinámico
- Modelos Conceptuales: Análisis estático
- Diseño preliminar de Interfaces Gráficas (WEB, etc)
• Arquitectura de la solución
- Especificación de la tecnología a utilizar (J2SE, J2EE)
- Especificación de Patrones de Diseño
5. FASES DE UN PROYECTO DE DESARROLLO DE
SOFTWARE ORIENTADO A LA WEB.
• Diseño (Dominio de la solución)
- Diseño de interfaces gráficas (WEB, GUI, comandos, voz)
- Realización de diagramas de secuencia
- Realización de diagramas de clases
• Construcción / Codificación / Implementación
- Entendimiento real del diseño (solución) a programar
- Programación eficaz (y eficiente) del código fuente.
- Comentar en forma entendible y razonable el código fuente.
- Construcción de programas de pruebas “Tests”
- Prueba unitaria del desarrollador mediante un programa de “Test”
• Pruebas Unitarias: Realizar las pruebas unitarias
• Pruebas de Integración: Realizar las pruebas de integración
• Capacitar a Usuarios
- Confección de manuales de Usuario
- Reuniones con usuario final
• Puesta en Producción
- Confección de plan de puesta en producción
• Marcha Blanca
• Garantía: Resolución de Incidencias
6. MEDIDA DE LA CALIDAD DE UN SOFTWARE
PARA LA WEB.
Para evaluar la calidad de un software de ámbito web es
necesario considerar sus:
Cualidades Externas (se refieren a factores esperables que son
útiles o aprovechables por los usuarios finales de un sistema)
Cualidades Internas (aquellas que permitirán una labor
sencilla, productiva, ordenada, y eficiente, a los desarrolladores
del sistema, o a quienes deseen re-programarlo, mantenerlo,
etc)
Hay 16 atributos básicos de valoración esperables en la calidad
de las aplicaciones web a medida . Es importante conocerlos y
exigirlos como estándares que deben cumplir los programadores
o desarrolladores de aplicaciones a medida. A continuación un
detalle de los mismos:
7. LAS PRUEBAS DE UN SOFTWARE DE TIPO WEB
• Pruebas de software en aplicaciones web
En el caso de las aplicaciones web, además de las pruebas
tradicionales, es necesario comprobar el funcionamiento del
servidor web, SGBD, red y el conjunto del sistema. Tanto de
manera funcional como realizando un test de carga para
comprobar la capacidad del mismo.
• Herramientas de validación de código html/css
No conviene olvidar que en las aplicaciones web la comunicación
entre el servidor y el cliente se realiza mediante HTML/CSS. Una
cuestión fundamental para garantizar que el cliente va a poder
representar la interfaz de la aplicación de la manera correcta es
que los datos que el servidor envía sean válidos. Por ello, en
cualquier aplicación web se deberá validar todo el HTML/CSS
transmitido al cliente.
Para ayudar en dicha tarea se pueden utilizar diferentes
validadores como el del W3C http://validator.w3.org/
8. LAS PRUEBAS DE UN SOFTWARE DE TIPO WEB
• Herramientas para poner a prueba el servicio
En una aplicación web es vital conocer la capacidad del sistema en
cuanto a número de clientes y concurrencia de los mismos. Por
ello resulta necesario simular un enjambre de clientes que ponga
a prueba la aplicación para poder valorar su rendimiento, o que
realice en ella ciertas operaciones que se quieren poner a prueba.
ApacheBench (comando ab) es un pequeño programa que
acompaña a la distribución de Apache y permite realizar
peticiones de forma repetida y concurrente para valorar el
rendimiento del mismo.
• Herramientas en el navegador
Por último, un desarrollador web también suele utilizar
extensiones para el navegador (como Firebug para Firefox) que
permiten inspeccionar con detalle la respuesta recibida por el
agente de usuario. Mostrando todo tipo de información relativa a
la red, rendimiento y elementos de la respuesta.