sábado, 29 de noviembre de 2008

9 Pasos para un buen y efectivo manejo de un proyecto de desarrollo de software

Con una detallada propuesta y un competente jefe de proyecto para guiar la iniciación del desarrollo del software, existe otro importante elemento dentro de una organización que puede ser muy útil cuando se comienza con un proyecto como estableciendo pasos específicos. Existe una colección de normas prácticas para aprovechar un proyecto de desarrollo de software, establecido por dos profesores universitarios y consultores de negocio con destreza especializada en computación, ingeniería, y ambientes generales de negocio. El Dr. Gordon Scott Gehrs y el Dr. Dorota Huizinga establecen nueve pasos claves para considerar llevar a cabo en un proyecto de desarrollo de software.

Paso1: Descubrir las necesidades de los stakeholders

Entrevistar a los stakeholders con el propósito de descubrir si sus necesidades específicas existen, identificar su necesidad exacta, y determinar si el proyecto propuesto puede factiblemente entregar el desarrollo del software esperado.

Paso2: Analizar y determinar los requerimientos

Un apropiado análisis debería consistir de las entrevistas con los usuarios finales y otras personas quienes estén asociados con el nuevo sistema. Un repaso minucioso y entendimiento de los documentos de los usuarios, roles del negocio, y procesos son claves para la determinación apropiada y necesaria de las características y funcionalidades.

Paso3: Considerar las mejores prácticas

En el momento de definir los procesos de desarrollo del software se debe considerar las mejores prácticas. El Dr. Huizinga recomienda los procesos ágiles con énfasis en la documentación en imágenes, ambos para la documentación técnica y de requerimientos. Es importante seguir plantillas estándares, utilizar una herramienta de gestión de requerimientos y del tiempo.

Paso4: Diseño

Durante la fase de diseño, el arquitecto del software y el desarrollador puede poner junto un documento de diseño detallado resumiendo exactamente como el software satisfacerá los requerimientos específicos. El Dr. Gehrs recomienda el uso de mock-ups para acompañar el documento de diseño como una opción de elementos ilustrativos de la interfaz del usuario.

Paso5: Medición y rastreo de los progresos

Sin la infraestructura de la tecnología apropiada en el lugar, es difícil coleccionar y medir los datos claves del proyecto. Los indicadores del proyecto pueden ayudar asegurar la identificación rápida de los potenciales problemas, que permite que sean reconocidos y corregidos a tiempo. Cuando son observados fuera del periodo, el Dr. Huizinga remarca que los indicadores pueden ser usados para determinar la calidad del producto y despliegue deseado.

Paso6: Desarrollo

La fase de desarrollo, donde el documento de diseño es trasladado a una pieza real de software. Cuando el planeamiento cuidadoso ha sido ejecutado, el software marcará los requerimientos del manejo del negocio que inició la necesidad para el proyecto. El Dr. Gehrs menciona que los ciclos de desarrollo pueden producir varias versiones del software:

-> Alpha: característica preliminar/solamente funcionalidad
-> Beta: usada para el testeo interno o testeo de usabilidad
-> Candidatos de Release: usualmente una construcción estable puede necesitar algunas correcciones.
-> Construcción de producción o Gold Master: listo para el release

Los jefes de proyecto necesitan retroalimentarse con la experiencia de los usuarios, tiempos para completar las tareas, facilidad de uso, y otra información relacionada a la interfaz del usuario y los elementos céntricos del usuario.

Paso7: Automatización

Otro paso clave es asegurar la automatización de tareas repetitivas:

-> Construcción de códigos
-> Escaneo del análisis del código estático
-> Test regresivos

Dr. Huizinga cree que tomar medidas reduce el error propenso de la influencia humana cuando el software es implementado. Esto también facilita el uso de las mejores prácticas y colección de los datos relacionados al proyecto. Ella menciona que “todas las tareas repetitivas y mundanas deberían ser automatizadas cuando sea posible en cualquier parte del ciclo de vida del software”.

Paso8: Testeo

Ahora el siguiente paso es el testeo, Dr. Gehrs menciona que el testeo también puede variar bastante dependiendo de los procedimientos de testeos individuales adoptados por la organización. El testeo puede consistir de varias sub-etapas, como el aseguramiento de la calidad y la realización de las pruebas. Una vez que el software está en uso general, cualquier error encontrado es direccionado a una escala crítica: arreglos urgentes son programados para ser llevados tanto pronto sea posible. Los cambios característicos pueden ser elegidos para futuras versiones de actualizaciones.

Paso9: Prácticas graduales de implementación

El Dr. Huizinga menciona que “la implementación incremental de las prácticas por encima es crítico para poder sobresalir. La aproximación gradualmente a la introducción al cambio grupo por grupo y la práctica por práctica es esencial para alcanzar el cambio de la cultura organizacional, como cambio no es deseado, y siempre hay resistencia al cambio”. Porque la naturaleza compleja de los proyectos del software y la tecnología involucrada, el desarrollo del nuevo software justifica la propuesta sistemática. Entender el rol del líder del proyecto y la importancia de tener planeado un camino efectivo al desarrollo de los procesos puede ser una ventaja competitiva de una compañía dentro de un mercado competitivo.

No hay comentarios: