Descargar

Los administradores de software: planeación y calendarización (página 2)


Partes: 1, 2

Durante el proyecto, es normal tener varias revisiones formales de su administración. Se hace la revisión completa del progreso y de los desarrollos técnicos del proyecto, y se toma en cuenta el estado del proyecto junto con los propósitos de la organización encargada del software. El tiempo de desarrollo para un proyecto grande de software puede ser de varios años. Durante ese tiempo los objetivos organizacionales tienden obviamente a cambiar. Estos cambios pueden significar que el software ya no se requiere más o que los requerimientos originales del proyecto son inapropiados. La administración puede decidir detener el desarrollo del software o cambiar el proyecto para adecuarlo a los cambios de los objetivos de la organización.

La metodología del Proceso Unificado de Desarrollo (RUP) traza pautas muy concretas para el desarrollo de proyecto de software, define en un enfoque de alta colaboración, evolutivo y flexible para asimilar los cambios en los requerimientos del software en un ambiente de negocios dinámico. De igual forma define claramente los hitos donde son necesarias la revisiones formales del proyecto, las cuales incluyen la aprobación por parte del cliente. A continuación se puede apreciar en el diagrama el ciclo de vida de un proyecto de software basado en RUP:

edu.red

Su enfoque evolutivo comprende un desarrollo iterativo e incremental. La naturaleza iterativa está presente en las actividades ubicadas en la parte izquierda del diagrama (requerimientos, análisis, diseño, etc.); mientras que el desarrollo incremental lo constituye la creación de prototipos en el tiempo, desarrollados a través del ciclo de vida, una vez para cada prototipo. Durante la Fase de Elaboración se desarrolla un prototipo con la arquitectura que involucra los casos de uso de mayor riesgo técnico. A su vez, también se produce software al final de cada iteración en la Fase de Construcción, de igual forma que en la Fase de Elaboración, el mismo puede ser utilizado con propósitos de pruebas o software demostrativo para el cliente. Cada vez que termina una iteración marca un hito donde es necesaria la revisión con el cliente, donde se analiza el cumplimiento de los requerimientos, el progreso del proyecto, el análisis de los costos reales y los planeados. En el caso de la última iteración correspondiente a cada fase del proyecto, se debe crear el acta de aprobación por el cliente, en la cual el mismo plantea su acuerdo con los desarrollos alcanzados por el proyecto, aceptando así el sentido financiero y técnico del software que se desarrolla.

Generalmente los administradores de proyectos tienen que seleccionar a las personas para trabajar en su proyecto. De forma ideal, estará disponible personal con habilidades y experiencia apropiada para trabajar en el proyecto. Sin embargo en muchos casos, los administradores tienen que establecer un equipo ideal mínimo para el proyecto. Las razones para esto son:

  • El presupuesto del proyecto no cubre la contratación del personal con salarios altos. Se tiene que contratar personal con menor experiencia y menos salario pero mejor aprovechados.

  • El personal con experiencia apropiada no está disponible dentro o fuera de la organización. Es imposible reclutar nuevo personal para el proyecto. Dentro de la organización, las mejores personas ya se han asignado a otros proyectos.

  • La organización desea desarrollar las habilidades de sus empleados. El personal inexperto puede ser asignado al proyecto para aprender y adquirir experiencia.

El administrador de software tiene que trabajar con estas restricciones al seleccionar el personal del proyecto. Sin embargo, estos problemas son probables a menos que exista un miembro del proyecto que cuente con algo de experiencia en el tipo de sistema a desarrollar. Sin esta experiencia, probablemente se cometerán muchos errores pequeños.

Por lo general, el administrador del proyecto es responsable de dar informes del mismo tanto al cliente como a las organizaciones contratantes. Dichos administradores deben redactar documentos concisos y coherentes que resuman la información crítica de los informes detallados del proyecto. En consecuencia, comunicarse efectivamente de forma oral y escrita es una habilidad esencial que un administrador de proyectos debe tener.

La administración efectiva de un proyecto de software depende replanear completamente el progreso del proyecto. El administrador debe anticiparse a los problemas que podrían surgir, así como plantear soluciones tentativas a esos problemas. Un plan preparado al inicio del proyecto debe utilizarse como un conductor para el proyecto. Este plan evolucionará conforme el proyecto progrese y la información disponible sea mejor. A continuación se propone una estructura que puede poseer este plan de proyecto:

  • Objetivos: una breve descripción del propósito del plan del proyecto.

  • Alcance: una breve descripción sobre qué se aplicará este plan.

  • Plan de Fase: en base al desarrollo por fases planteado por RUP, muestra el tiempo de cada fase y que se pretende alcanzar al final de cada una.

  • Análisis Económico.

  • Operaciones y Soporte: el personal que va estar a cargo de las operaciones y el personal que se encargará del soporte. Así como los recursos necesarios para llevar a cabo el proyecto y una vez finalizado el mismo que sea funcional.

  • Mejora Continua: estrategia para recoger nuevos requerimientos para futuras versiones, una vez finalizado el proyecto.

  • Análisis de Riesgos.

La calendarización de un proyecto implica separar todo el trabajo en actividades complementarias y considerar el tiempo requerido para completar dichas actividades. Por lo general, algunas de éstas se llevan a cabo en paralelo, por lo que el calendario de trabajo debe organizarlas para que la mano de obra se utilice de forma óptima. Como regla, para los problemas previstos siempre debe agregarse un 30 por ciento a la estimación original y otro 20 por ciento para cubrir algunas cosas no previstas. Las herramientas de administración de software, como Microsoft Project, se utilizan para automatizar el proceso de calendarización y asignación de recursos. Si los proyectos de software desean desarrollarse en tiempo y presupuesto, es esencial una buena administración.

Bibliografía

– Ian Sommerville, "Ingeniería de Software", 6ta Edición. Pearson Educación, 2002.

– I. Archer Pupo, "Fases del Proceso Unificado de Desarrollo". http://www.avatar.com.pe

 

 

 

Autor:

Lic. Carlos Galindo González

Dr. Ramiro Pérez Vázquez

Universidad Central de Las Villa, Cuba

edu.red

Partes: 1, 2
 Página anterior Volver al principio del trabajoPágina siguiente