UNIVERSIDAD DE COSTA RICA SISTEMA DE ESTUDIOS DE POSGRADO
POSGRADO EN COMPUTACIÓN E INFORMÁTICA II CICLO 2010
PF-3321
FORMULACIÓN Y ADMINISTRACIÓN DE PROYECTOS DE SOFTWARE
CRÉDITOS: 4
HORAS: 4
PROFESOR: Fausto Rojas Piedra
CORREO ELECTRÓNICO: [email protected]
TELÉFONO: 2562-2503
CONSULTAS: - Lunes 6pm – 8pm en UltraLag, edificio 1, 3er piso - Por correo electrónico
- Por Windows Live Messenger - Por teléfono
- Antes y después de clase
- Cita previa para día y hora diferentes
OBJETIVO
Introducir metodologías, estándares, prácticas, procedimientos y herramientas para la formulación, estimación, planificación y administración de proyectos de software.
OBJETIVOS ESPECÍFICOS
Al finalizar el curso, el estudiante será capaz de:
• Conceptualizar, estructurar y delimitar un proyecto de software a partir de la identificación de una necesidad u oportunidad.
• Estimar el tamaño de un producto de software con base en su especificación de requerimientos y diseño, utilizando metodologías reconocidas en la industria del software.
• Estimar el esfuerzo requerido para completar un proyecto de software con base en su estimación de tamaño.
• Estimar la duración de un proyecto de software con base en su estimación de esfuerzo y restricciones impuestas por la naturaleza de las tareas y asignación de recursos.
• Estimar el costo esperado de un proyecto de software con base en el esfuerzo y uso de recursos esperado.
• Determinar el precio de un proyecto de software a partir de su costo esperado.
• Seleccionar ciclos de vida o metodologías de desarrollo de software de acuerdo con la naturaleza y características de cada proyecto.
• Aplicar prácticas y metodologías específicas del PMI –Project Management Institute- y CMMI - • Capability Maturity Model Integration- en la planificación de proyectos de software.
• Formular un plan para la administración de un proyecto de software de acuerdo con prácticas y estándares aceptados en la industria, como IEEE –Institute of Electrical and Electronics
• Engineers- por ejemplo.
• Incorporar prácticas de aseguramiento de la calidad en los procesos de planificación de proyectos de software.
• Reconocer y considerar diversos aspectos de organización y administración de recursos humanos que influyen en la planificación de un proyecto de software.
• Preparar un plan de administración de riesgos para un proyecto de software.
• Elaborar un cronograma completo para un proyecto de software con base en las estimaciones de esfuerzo y recursos, restricciones y ciclo de vida seleccionado.
CONTENIDOS
• Introducción de los problemas más frecuentes de los proyectos de software y justificación de la necesidad de planificar este tipo de proyectos.
• Formulación y enunciado de un proyecto de software.
• El Modelo Integrado de Capacidad y Madurez (CMMI), sus objetivos, áreas, prácticas clave, indicadores y consideraciones de aplicación en planificación de proyectos de software.
• Ciclos de vida y metodologías de desarrollo de software, tanto tradicionales como ágiles. • Estimación del tamaño de un producto de software con diversas metodologías de estimación. • Estimación del esfuerzo para la ejecución de un proyecto de software, diferentes factores que
determinan el esfuerzo requerido para ejecutar un proyecto a partir del tamaño del producto a desarrollar.
• Estimación del costo de un proyecto de software con base en el esfuerzo que se espera invertir, los recursos a utilizar, y otros factores incidentes.
• Estimación de la duración (tiempo) de un proyecto de software, con base en el esfuerzo esperado, los recursos disponibles y las restricciones impuestas, y su diferenciación con respecto al concepto de esfuerzo.
• La metodología del PMI, áreas de conocimiento y procesos de control en la administración de proyectos de software.
• El estándar IEEE 1058 para planes de proyectos de software.
• Herramientas disponibles para la administración de proyectos de software. • Administración de los riesgos de un proyecto de software.
• Administración de los recursos críticos de un proyecto de software. • Cronogramas de proyectos de software.
• Planificación de las labores de aseguramiento y control de calidad en los proyectos de software. • El recurso humano en equipos de proyectos de software, planificación, organización,
comunicación.
• Subcontratación y adquisiciones en proyectos de software.
EVALUACIÓN
Quices 25%
Artículo de Investigación 20% Examen Parcial 25% Examen Final 30%
El profesor podrá proponer variaciones a la evaluación aquí señalada, las cuales deberán ser sometidas a discusión del grupo y aprobadas por más del 50% de los alumnos del curso, hasta 1 semana antes de la entrega u ocurrencia del elemento de evaluación en cuestión.
En caso de que un estudiante no pueda presentar o efectuar alguno de los elementos de evaluación en la fecha determinada para éste, con excepción de los quices, podrá solicitar al profesor su reposición, siempre y cuando compruebe que su inhabilidad para presentar o efectuar tal elemento se originó en razones justificadas o de fuerza mayor, según lo establece el artículo 24 del Reglamento del Régimen Académico Estudiantil. Se recomienda al estudiante discutir con el profesor anticipadamente, cualquier ausencia pronosticada que ponga en riesgo el cumplimiento de alguno de los elementos de evaluación aquí señalados.
En el caso del artículo de investigación, el estudiante podrá todavía entregarlo en una fecha posterior a la determinada para tal efecto, aunque no haya tenido razones justificadas o de fuerza mayor, para lo cual regirá una penalización de 10% del valor del artículo por cada día natural completo o fracción de atraso.
En el caso de detectarse plagio de contenidos, la calificación de este elemento será automáticamente de cero.
METODOLOGÍA
Los contenidos del curso se irán cubriendo mediante discusión colectiva en clase, con una introducción de los temas por parte del profesor y el aporte activo de los estudiantes en las discusiones, tratando de incorporar, en la medida de lo posible, experiencias reales de estudiantes y profesor que ilustren los conceptos tratados y las conclusiones alcanzadas.
El material del curso estará compuesto por extractos seleccionados de algunos libros y artículos relacionados con los contenidos del curso. El profesor pondrá a disposición de los estudiantes el material según avance el curso y antes de tratar cada tema, de tal modo que el estudiante pueda leer el material con anticipación.
Todo el material del curso, incluyendo las presentaciones usadas por el profesor en clase, la carta al estudiante, el plan de trabajo del curso, las lecturas asignadas para cada tema a desarrollar, etc., serán puestos a disposición de los estudiantes en un grupo de Yahoo! Groups, con las siguientes características:
Nombre: UCR-PF3321-II10
Dirección: http://groups.yahoo.com/group/UCR-PF3321-II10
Dirección de correo electrónico: [email protected]
Este grupo será utilizado también como medio de comunicación oficial del curso, por lo que los estudiantes deberán suscribirse al mismo no sólo para acceder al material del curso, sino para mantenerse informado de incidencias relacionadas con el mismo.
Los quices serán generalmente de comprobación de lectura y se efectuarán en el momento de la clase que el profesor considere apropiado. Los quices no necesariamente serán anunciados con antelación y no habrá reposición de quices por ningún motivo, pero contarán para la calificación final del curso únicamente las cinco mejores calificaciones obtenidas por el estudiante. Tipicamente se hacen unos 7 u 8 quices durante un curso semestral.
El artículo de investigación será un trabajo de profundidad desarrollado en parejas, para el que los estudiantes deben proponer un tema al profesor, que esté relacionado con los objetivos y contenidos del curso. Una vez aprobado el tema por el profesor, los estudiantes deberán buscar por cuenta propia las fuentes bibliográficas y referencias requeridas para desarrollar el tema, y podrán complementarlo con elementos aportados por investigación de mercado, entrevistas o experiencias reales, a conveniencia. No se tratará simplemente de combinar y resumir artículos de otros autores, sino más bien de ofrecer un aporte nuevo y personal al tema. El profesor discutirá oportunamente los criterios de evaluación a utilizar, aunque el aporte original será será el aspecto más importante al evaluar.
El artículo deberá estar integrado por un resumen preliminar, una introducción, el desarrollo del tema, las conclusiones y las referencias bibliográficas o fuentes de información utilizadas. Deberá presentarse en papel tamaño carta, letra Arial de 12 puntos, a espacio y medio de separación entre líneas, con márgenes de 1 pulgada en los cuatro lados, y los estudiantes podrá utilizar 8 páginas como referencia de longitud aproximada del artículo.
Los exámenes cubrirán los contenidos del curso tratados hasta la fecha del examen, y más que una comprobación de lectura o de memorización de contenidos, intentarán determinar si el estudiante desarrolló los conocimientos y el criterio para aplicar los temas cubiertos en proyectos de la vida real. El primero se aplicará aproximadamente a la mitad del curso, y el segundo al final, en fechas que el
profesor anunciará al inicio del curso. Serán en su mayoría exámenes parciales, pero el segundo examen podrá incluir temas cubiertos en la primera mitad del curso también.
Todo el material calificado del curso que el profesor no haya devuelto durante el transcurso del mismo por tratarse de entregables finales, serán retornados a los estudiantes vía correo electrónico si se trata de entregables en ese formato, o bien, mediante los servicios de la secretaría de maestría si se trata de material entregado de forma física o impresa.
LECTURAS Y REFERENCIAS BIBLIOGRÁFICAS
Como se indicó anteriormente, el profesor irá distribuyendo diversos artículos y extractos de textos que constituirán el material del curso, por lo que no se usará un libro de texto principal para el mismo o una antología. Sin embargo, el estudiante también podrá hacer uso del siguiente material bibliográfico complementario:
• Kerzner, Harold. Project Management: A Systems Approach to Planning, Scheduling and Controlling.
• McConnell, Stephen. Desarrollo y Gestión de Proyectos Informáticos.
• Bennatan, E.M. On Time within Budget: Software Project Management Practices and Techniques. • Garmus, David & Herron, David. Measuring the Software Process.
• Paulk, Marc; Weber, Charles; Curtis, Bill; Chrissis, Mary. The Capability Maturity Model for Software: Guidelines for Improving the Software Process.
• Paulk, Marc; Weber, Charles; García, Suzanne; Chrissis, Mary; Bush, Marilyn. Key Practices of the Capability Maturity Model.
• IEEE standards 1058.1, 830, 1016, 1008, 1012, 1028. • IBM Research. Orthogonal Defect Classification. • Sommerville, Ian. Software Engineering. • Humphrey, Watts. Personal Software Process. • Humphrey, Watts. Team Software Process.
• Project Management Institute. A Guide to the Project Management Body of Knowledge, 4th
edition.
• Software Engineering Institute. Capability Maturity Model Integration.
• Kerzner, Harold & Saladis, Frank. Project Management Workbook and PMP/CAPM Exam Study Guide.
• Sanghera, Paul. PMP In Depth.
• Heldman, Kim. PMP Exam Study Guide, 5th edition.
• Mulcahy, Rita. PMP Exam Prep, 6th edition.
• Chamoun, Yamal. Administración Profesional de Proyectos: La Guía.
• Piattini, Mario; García, Félix; Garzás, Javier; Genero, Marcela. Medición y Estimación del Software.
UNIVERSIDAD DE COSTA RICA SISTEMA DE ESTUDIOS DE POSGRADO
POSGRADO EN COMPUTACIÓN E INFORMÁTICA II CICLO 2010
PF-3322
LABORATORIO DE FORMULACIÓN Y ADMINISTRACIÓN DE PROYECTOS DE
SOFTWARE
CRÉDITOS: 2
HORAS: 2
PROFESOR: Fausto Rojas Piedra
CORREO ELECTRÓNICO: [email protected]
TELÉFONO: 2562-2503
CONSULTAS: - Lunes 6pm – 8pm en UltraLag, edificio 1, 3er piso - Por correo electrónico
- Por Windows Live Messenger - Por teléfono
- Antes y después de clase
- Cita previa para día y hora diferentes
OBJETIVO
Aplicar los conocimientos teóricos de formulación y administración de proyectos de desarrollo de software en el contexto de un proyecto práctico específico.
OBJETIVOS ESPECÍFICOS
• Conceptualizar un producto de software específico.
• Analizar los requerimientos y construir una especificación funcional del producto de software que sirva como base para la planificación del proyecto.
• Estimar el tamaño del producto de software utilizando una metodología para tal efecto.
• Estimar el esfuerzo requerido para desarrollar el producto, con base en su tamaño, considerando los diferentes factores que inciden en el esfuerzo final demandado.
• Estimar el costo probable del proyecto de software, con base en el esfuerzo estimado y demás factores incidentes.
• Estimar los recursos requeridos para la ejecución del proyecto de software.
• Planificar el proyecto de software utilizando estándares y herramientas para producir un plan de proyecto completo y su correspondiente cronograma de ejecución.
CONTENIDOS
• Conceptualización del producto de software. • Análisis y diseño funcional del producto. • Estimación del tamaño del producto.
• Estimación del esfuerzo requerido para desarrollar el producto. • Cálculo del costo esperado del proyecto.
• Estimación de los recursos requeridos para la ejecución del proyecto. • Planificación del proyecto de software.
• Cronograma del proyecto de software.
EVALUACIÓN
Especificación funcional del producto 20%
Plan del proyecto 40%
Informe final 10% Presentación final de resultados 10%
El profesor podrá proponer variaciones a la evaluación aquí señalada, las cuales deberán ser sometidas a discusión del grupo y aprobadas por más del 50% de los alumnos del curso, hasta 1 semana antes de la entrega u ocurrencia del elemento de evaluación en cuestión.
En caso de que un estudiante no pueda presentar o efectuar alguno de los elementos de evaluación en la fecha determinada para éste, podrá solicitar al profesor su reposición, siempre y cuando compruebe que su inhabilidad para presentar o efectuar tal elemento se originó en razones justificadas o de fuerza mayor, según lo establece el artículo 24 del Reglamento del Régimen Académico Estudiantil. Se recomienda al estudiante discutir con el profesor anticipadamente, cualquier ausencia pronosticada que ponga en riesgo el cumplimiento de alguno de los elementos de evaluación aquí señalados.
En el caso de los elementos de evaluación entregables, el estudiante podrá todavía entregarlos en una fecha posterior a la determinada para tal efecto, aunque no haya tenido razones justificadas o de fuerza mayor, para lo cual regirá una penalización de 10% del valor del elemento por cada día natural completo o fracción de atraso. En el caso de detectarse plagio de contenidos, la calificación de este elemento será automáticamente de cero.
METODOLOGÍA
Inicialmente el profesor organizará la clase en grupos para la ejecución del proyecto. El número de grupos dependerá del número de estudiantes de la clase, pero serán máximo 3 personas por equipo. El profesor brindará los lineamientos generales para un producto de software específico y luego el equipo procederá con el análisis general de requerimientos y con la especificación de la funcionalidad que deberá tener el producto, para usar esto como base para una posterior estimación. El primer entregable consistirá entonces de esta especificación funcional del producto.
Seguidamente, deberá documentarse el plan detallado del proyecto, incluyendo la estimación del tamaño y el esfuerzo requerido para desarrollar el producto, el costo esperado, los recursos requeridos y una serie de contenidos adicionales que el profesor revisará con los estudiantes con suficiente anticipación. Posteriormente se construirá un cronograma completo para el proyecto a partir de los cálculos y condiciones estipuladas en el plan del proyecto. Serán el plan de proyecto y el cronograma, en conjunto, los elementos del curso que se considerarían potencialmente elegibles para TFIA, según criterios de calidad y extensibilidad que el profesor detallará oportunamente.
El último entregable consistirá de un informe final que incluirá los documentos generados previamente con las correcciones identificadas ya efectuadas, y un resumen de las conclusiones generales del equipo con respecto al proceso seguido y la experiencia que han tenido en el ejercicio.
Finalmente el equipo expondrá al resto de la clase los productos desarrollados durante el ejercicio, el proceso seguido y los resultados obtenidos. El formato de la presentación será de elección del propio equipo.
El profesor irá requiriendo de los equipos cada producto entregable del proyecto en fechas específicas, los cuales serán evaluados con base en criterios específicos y aplicación de estándares, metodologías y prácticas cubiertas en el curso. El profesor proveerá guías generales del contenido sugerido para cada entregable con anticipación y los criterios de evaluación que aplicarán.
Todo el material del curso, incluyendo la carta al estudiante, el plan de trabajo del curso, las guías para los entregables a desarrollar, etc., serán puestos a disposición de los estudiantes en un grupo de Yahoo! Groups, con las siguientes características:
Nombre: UCR-PF3321-II10
Dirección: http://groups.yahoo.com/group/UCR-PF3321-II10
Dirección de correo electrónico: [email protected]
Este grupo será utilizado también como medio de comunicación oficial del curso, por lo que los estudiantes deberán suscribirse al mismo no sólo para acceder al material del curso, sino para mantenerse informado de incidencias relacionadas con el mismo.
Al concluir el curso, cada equipo deberá entregar un CD con toda la documentación del proyecto, para efectos de calificación y archivo por parte del profesor.
Todo el material calificado del curso que el profesor no haya devuelto durante el transcurso del mismo por tratarse de entregables finales, serán retornados a los estudiantes vía correo electrónico si se trata de entregables en ese formato, o bien, mediante los servicios de la secretaría de maestría si se trata de material entregado de forma física o impresa.
LECTURAS Y REFERENCIAS BIBLIOGRÁFICAS
• Kerzner, Harold. Project Management: A Systems Approach to Planning, Scheduling and Controlling.
• McConnell, Stephen. Desarrollo y Gestión de Proyectos Informáticos.
• Bennatan, E.M. On Time within Budget: Software Project Management Practices and Techniques. • Garmus, David & Herron, David. Measuring the Software Process.
• Paulk, Marc; Weber, Charles; Curtis, Bill; Chrissis, Mary. The Capability Maturity Model for Software: Guidelines for Improving the Software Process.
• Paulk, Marc; Weber, Charles; García, Suzanne; Chrissis, Mary; Bush, Marilyn. Key Practices of the Capability Maturity Model.
• IEEE standards 1058.1, 830, 1016, 1008, 1012, 1028. • IBM Research. Orthogonal Defect Classification. • Sommerville, Ian. Software Engineering. • Humphrey, Watts. Personal Software Process. • Humphrey, Watts. Team Software Process.
• Project Management Institute. A Guide to the Project Management Body of Knowledge, 4th
edition.
• Software Engineering Institute. Capability Maturity Model Integration.
• Kerzner, Harold & Saladis, Frank. Project Management Workbook and PMP/CAPM Exam Study Guide.
• Sanghera, Paul. PMP In Depth.
• Heldman, Kim. PMP Exam Study Guide, 5th edition.
• Mulcahy, Rita. PMP Exam Prep, 6th edition.
• Chamoun, Yamal. Administración Profesional de Proyectos: La Guía.
• Piattini, Mario; García, Félix; Garzás, Javier; Genero, Marcela. Medición y Estimación del Software.