Administracion de proyectos software i estudiantes

60
ADMINISTRACIÓN DE PROYECTOS SOFTWARE Ing. Rosemary Samaniego O.,Mg.Sc

description

guia de administracion de proyectos de sofware

Transcript of Administracion de proyectos software i estudiantes

Page 1: Administracion de proyectos software i estudiantes

ADMINISTRACIÓN DE PROYECTOS SOFTWARE

Ing. Rosemary Samaniego O.,Mg.Sc

Page 2: Administracion de proyectos software i estudiantes

¿Qué SIGNIFICARÁ ADMINISTRAR?

¿QUÉ ES SOFTWARE?

Page 3: Administracion de proyectos software i estudiantes

Los que están enamorados de la práctica sin ciencia son como un piloto que va en un barco sin timón y sin brújula, y nunca tiene la certeza de a donde se dirige”. Leonardo Da Vinci

ADMINISTRACION DE PROYECTOS SOFTWARE

MetodologíasModelos

Herramientas y técnicasde administraciónMicrosoft Project

Estimación y planificaciónde proyectos software

COCOMO II

Plan de contingenciaGestión de calidad

Page 4: Administracion de proyectos software i estudiantes

Consulta.

Definición de Ingeniero del Software /Sistemas

Misión Funciones que desempeñan.Establecer relación o diferencias

 

Page 5: Administracion de proyectos software i estudiantes

Crisis del SoftwareSegún el Centro Experimental de Ingeniería de

Software (CEIS), el estudio de mercado The chaos Report realizado por Standish Group Internactional en 2004,

Concluyó que sólo:29% de los proyectos de software son exitosos. (Terminan dentro de plazos y costos y cumplen

los requerimientos acordados).

53% sobrepasa costos y plazos y cumple parcialmente los requerimientos.

18% Ni siquiera llega al término.

Page 6: Administracion de proyectos software i estudiantes

QUÉ ES APS?

Es el proceso por el cuál se planifica, dirige y controla el desarrollo de un sistema aceptable con un coste mínimo y dentro de un período de tiempo específico.

Page 7: Administracion de proyectos software i estudiantes

PROBLEMAS TÍPICOS EN EL DESARROLLO SOFTWARE

Escasa o tardía validación con el cliente.

Inadecuada gestión de los requisitos. No existe medición del proceso ni registro de datos históricos. Estimaciones imprevistas de plazos y costos. Excesiva e irracional presión en los plazos. Escaso o deficiente control en el progreso del proceso de desarrollo. No se hace gestión de riesgos formalmente. No se realiza un proceso formal de pruebas. No se realizan revisiones técnicas formales e inspecciones de código. Uso de tecnología novedosa

El CHAOS Standish Group, indica que los mayores problemas están relacionados con la especificación, la gestión y la documentación de los proyectos.

Page 8: Administracion de proyectos software i estudiantes

MINICASO PRÁCTICO FUN & GAME, INC.

PREGUNTAS PARA DISCUTIR1. ¿En qué se equivocó Steven? ¿Qué habría hecho ud. De forma

diferente?2. ¿Tiene Jan alguna culpa en los problemas encontrados en este

proyecto?3. ¿Cree ud., qué sería un error usar los cambios en los

requisitos como excusa para justificar los defectos de gestión o administración del proyecto?

4. Cómo se podría responsabilizar más a los usuarios y los directivos de los cambios en los requisitos experimentados en este proyecto (y en muchos otros)?

5. Cree Ud., que es importante conocer las metodologías de desarrollo de software. Conoce alguna. Explique?

Page 9: Administracion de proyectos software i estudiantes

Preguntas individuales:

1. Cree ud, que la solución cuando un proyecto va con retraso será asignando más personal al equipo de proyecto?

2. Cómo debe ser la planificación. Estricta o debe ser flexible y abierta?

3. Cuál o cuales cree ud. Que deben ser las funciones básicas de un administrador de proyectos?

Page 10: Administracion de proyectos software i estudiantes

Cuáles son las consecuencias de una deficiente APS?

Necesidades no satisfechas o no identificadas

Cambio incontrolado del ámbito del proyecto

Exceso de costoRetrasos en la entrega……

Page 11: Administracion de proyectos software i estudiantes

Funciones Básicas Planificación de las tareas del proyecto y selección del

equipo de proyecto.– ¿Cuánto tiempo se requerirá?– ¿Cuántas personas serán necesarias?– ¿Cuánto costará la tarea?– ¿Qué tarea deben terminarse antes de empezar otras?– ¿Pueden tener holgura alguna de ellas?

Organización y definición de calendario para el proyecto Dirección y control del proyecto

Si el ámbito del proyecto tiende a crecer, el administrador debe tomar una decisión.

• ¿habría que reducir el ámbito del proyecto para respetar el presupuesto y los plazos, o revisar dicho presupuesto y dichos plazos? Debería ser capaz de presentar alternativas y sus implicaciones a los plazos y presupuestos para saber responder a las expectativas.

Page 12: Administracion de proyectos software i estudiantes

La base inicial de las seis áreas de conocimientonecesarias para la Gerencia de Proyectos:

Alcance Tiempo Costo Calidad Recursos Humanos Comunicaciones

Page 13: Administracion de proyectos software i estudiantes

Procesos de desarrollo de Software

Requisitos nuevoso modificados

Sistema nuevoo modificado

Proceso de Desarrollo de Software

Requisitos nuevoso modificados

Sistema nuevoo modificado

Proceso de Desarrollo de Software

Actividades

Especificación de software

Diseño e Implementación

Validación

Evolución

Page 14: Administracion de proyectos software i estudiantes

Procesos de desarrollo de Software

Ciclos de Vida del SOFTWARE

Metodologías de desarrollo de Software

Metodologías o Ciclo de Vida . ¿Qué necesito?

Investigar los 3 ciclos de vida más utilizados de acuerdo a :a)  TIEMPOb. Documentaciónc. RIESGOSd. Què proyectos lo han utilizado

Page 15: Administracion de proyectos software i estudiantes

Conjunto de procedimientos, técnicas, herramientas y soporte documental para la realización de nuevo software.

¿Qué son las metodologías de desarrollo de software?

Page 16: Administracion de proyectos software i estudiantes

Para qué sirven las metodologías?

¿Cómo se divide el proyecto?¿Qué tareas en cada etapa?¿Qué salidas y cuándo se producen?¿Restricciones?¿Herramientas?¿Cómo gestionar, cómo controlar?

Page 17: Administracion de proyectos software i estudiantes

Metodologías estructuradas

MERISE (Francia)Gane & SarsonYourdon & DeMarco

Page 18: Administracion de proyectos software i estudiantes

Metodología OO

Boom del POORUP

Page 19: Administracion de proyectos software i estudiantes

Metodología Ágiles

Extreme ProgrammingProceso Unificado RationalOpen Source Software Development

Page 20: Administracion de proyectos software i estudiantes

Investigar una metodología de cada tipo. Definición, para que sirve, ventajas, desventajas, cuando se la puede usar

Cuadro comparativo de las metodologías: Enfoque, Ventajas/Desventajas, proceso de desarrollo, aplicabilidad. RUP,XP,MERISE, MSF, etc.

PMBOK cuándo usar?, en que nos ayudaISO 9000 – 9001 -12207

TRABAJO INVESTIGATIVO

Page 21: Administracion de proyectos software i estudiantes

Nombre: Oscar A. Ramírez A. Profesor: Rosemary Samaniego Quimestre: Séptimo PARALELO: “B”

Page 22: Administracion de proyectos software i estudiantes

METODOLOGÍAS DE DESARROLLO DE SOFTWARE

¿Qué es una Metodología?

En un proyecto de desarrollo de software la metodología define Quién debe hacer Qué, Cuándo y Cómo debe hacerlo

Requisitos nuevoso modificados

Sistema nuevoo modificado

Proceso de Desarrollo de Software

Page 23: Administracion de proyectos software i estudiantes

Característica Deseables Una Metodología

•Existencia de reglas predefinidas•Cobertura total del ciclo de desarrollo•Verificaciones intermedias•Planificación y control•Comunicación efectiva•Utilización sobre un abanico amplio de proyectos•Fácil formación•Herramientas CASE•Actividades que mejoren el proceso de desarrollo•Soporte al mantenimiento•Soporte de la reutilización de software

Page 24: Administracion de proyectos software i estudiantes

FASES

Metodologías Estructuradas Metodologías Orientadas a ObjetosMetodologías Ágiles

•Análisis •Diseño lógico •Diseño físico •Implementación y control

CLASIFICACION

Page 25: Administracion de proyectos software i estudiantes

Metodología estructurada

Crea los modelos de forma descendente.

Son las orientadas a procesos, a datos y las mixtas.

Intentan aplicar formas ingenieriles para solucionar problemas técnicos al obtener un sistema de información, proponen la creación de modelos, flujos y estructuras

Page 26: Administracion de proyectos software i estudiantes

MERISE

Es un método integrado de análisis, concepción y gestión de proyectos, desarrollado en Francia.Esta metodología aporta un ciclo de vida más largo a los existentes, se materializa en un conjunto definido de etapas. Introducen dos ciclos complementarios: ciclo de abstracción y ciclo de decisión.

Page 27: Administracion de proyectos software i estudiantes

Fases

MERISE

ETAPAS

esquema director estudio global y descomposicion por partes se obtiene el plan de desarrollo

estudio previo definicion del hardware y software, y elección del escenario para cada parte

estudio detallado estudio detallado de cada parte

estudio tecnicoplanificacion y optimizacion de lo q se va a realizar

realizacion programacion, pruebas e implementacion

mantenimineto correccion de posibles errores y entrega de proyecto

Page 28: Administracion de proyectos software i estudiantes

Metodologías OO

•Son interactivas e incrementales.•Fácil de dividir el sistema en varios subsistemas independientes.•Se fomenta la reutilización de componentes.

Page 29: Administracion de proyectos software i estudiantes

PROCESO UNIFICADO RACIONAL (RUP)

Es un proceso de desarrollo de software y junto con el Lenguaje Unificado de Modelado UML, constituye la metodología estándar más utilizada para el análisis, implementación y documentación de sistemas orientados a objetos. Esta metodología permite que todos los integrantes de un equipo de trabajo, conozcan y compartan el proceso de desarrollo.

Page 30: Administracion de proyectos software i estudiantes

CARACTERISTICAS

Dirigido por Casos de UsoCentrado en la ArquitecturaIterativo e IncrementalDesarrollo basado en componentesUML como lenguaje de ModeladoProceso Integrado

Page 31: Administracion de proyectos software i estudiantes

VentajasProgreso visible en las primeras etapasTemprana retroalimentación que se ajuste a las

necesidades realesReconoce que las necesidades del usuario y sus

requerimientos no se pueden definir completamente al principio.

Permite evaluar tempranamente los riesgos en lugar de descubrir problemas en la integración final del sistema.

Distribuye la carga de trabajo a lo largo del tiempo del proyecto ya que todas las disciplinas colaboran en cada iteración.

Facilita la reutilización del código teniendo en cuenta que se realizan revisiones en las primeras iteraciones lo cual permite apreciar oportunidades de mejoras en el diseño.

Page 32: Administracion de proyectos software i estudiantes

Fases

RUP

FASES

inicio principales casos de usos, se identifica los riesgos y se define el alcance del proyecto

elaboracion

eliminacion de riesgos, complementacion de casos de usos

construccion elaboracion del proyecto y pruebas

transicion presentacion y entrega del proyecto

Page 33: Administracion de proyectos software i estudiantes

Microsoft Solution Framework (MSF)

Esta es una metodología flexible e interrelacionada con una serie de conceptos, modelos y prácticas de uso, que controlan la planificación, el desarrollo y la gestión de proyectos tecnológicos. MSF se centra en los modelos de proceso y de equipo dejando en un segundo plano las elecciones tecnológicas.

Page 34: Administracion de proyectos software i estudiantes

Características

Adaptable: es parecido a un compás, usado en cualquier parte como un mapa, del cual su uso es limitado a un específico lugar.

Escalable: puede organizar equipos tan pequeños entre 3 o 4 personas, así como también, proyectos que requieren 50 personas a más.

Flexible: es utilizada en el ambiente de desarrollo de cualquier cliente.

Tecnología Agnóstica: porque puede ser usada para desarrollar soluciones basadas sobre cualquier tecnología.

Page 35: Administracion de proyectos software i estudiantes

METODOLOGÍAS AGILES

En las metodologías ágiles se intenta ser lo más flexible posible, que el cliente pueda cambiar los requisitos cuando quiera y que el código funcione bien.

Page 36: Administracion de proyectos software i estudiantes

La programación extrema o eXtreme Programming (XP).-

Fundado por Ken Beck en 1996, Identificó que era lo simple y lo difícil al momento de programar. Es la más destacada de los procesos ágiles de desarrollo de software. Al igual que éstos, la programación extrema se diferencia de las metodologías tradicionales principalmente en que pone más énfasis en la adaptabilidad que en la previsibilidad

Page 37: Administracion de proyectos software i estudiantes

Valores de XP

•Comunicación: Crear software requiere de sistemas comunicados.•Simplicidad: Empezar con lo necesario y requerido y trabajar desde ahí.•Retroalimentación: Del sistema, del cliente, y del equipo.•Valentía: Programa para hoy y no para mañana. •Respeto: El equipo debe trabajar como uno, sin hacer desiciones repentinas.

Page 38: Administracion de proyectos software i estudiantes

Ventajas

•Programación organizada.•Menor taza de errores.•Satisfacción del programador.

•Es recomendable emplearlo solo en proyectos a corto plazo.•Altas comisiones en caso de fallar.

Page 39: Administracion de proyectos software i estudiantes

FasesXP

FASES

exploracionentrevistas con los usuarios, conocer acerca de los detalles del negocio, familiarizacion con la herramientas de trabajo

planificacion de la entrega

planificacion del tiempo q se van a demorar, priorisar los datos recopilados

iteracionesestablecer una arquitectura del sistema

produccion pruebas adicionales y revision del rendimiento

mantenimiento

trabaja conjuntamente con la produccion y desarrollo de nuevas iteraciones

muerte del proyectose han completado los requerimientos del cliente, documentacion final o en el caso de q no hay presupuesto para mantenerlo

Page 40: Administracion de proyectos software i estudiantes
Page 41: Administracion de proyectos software i estudiantes

ASPECTOSMERISE RUP XP

DESARROLLO DEL CODIGO

Desarrollo del código.Facilita la reutilización de

código.

Reescribir el código escrito para obtener mayor

simplicidad

PROCESOS DE DESARROLLO

No posee un desarrollo de proyectos de forma iterativa e

incremental.

Desarrollo interno en etapas interactivas.

Desarrollo iterativo e incremental

COMO DESARROLLA EL PROCESO

Para modelar un sistema informático va de lo más

abstracto a lo más concreto.

Divide el proyecto en mini proyectos.

Divide el proyecto en iteraciones

FORMA DE TRABAJO Programación en grupos Programación en equipos Programación en parejas

CALIDADMejora la calidad de las

especificaciones antes de la realización del sistema.

Tiene como objetivo asegurar la producción de software de

alta calidad.

Tiene como objetivo llegar al éxito del proyecto con corto equipo de trabajo, teniendo en cuenta al usuario final y

además con una programación rápida o

extrema

COMUNICACIONEl cliente interactúa con el

equipo de desarrollo mediante reuniones

Se depende mucho del cliente = de mora

Es constante el cliente, de el depende el éxito del proyecto

Page 42: Administracion de proyectos software i estudiantes

CARACTERISTICASMERISE RUP XP

DIRIGIDO POR FASESDirigido por las fases o

niveles que debe ir cumpliendo.

Dirigido por los casos de uso.

Dirigido por la creatividad y el

conocimiento del programador.

CAPACITACION Capacitación del personal.El desarrollo del software no lo hace una única persona, si

no múltiples equipos.

Centrada en potenciar las relaciones

interpersonales.

DISCIPLINAPropone una serie de fases

diferenciadas.

Provee un enfoque disciplinado para la

asignación de tareas y responsabilidades.

Programación en parejas.

Recopilación y validación de los sistemas.

El aseguramiento de la calidad forma parte del proceso de desarrollo.

Simplicidad: elaborar un código sencillo.

COSTOSGestión de costos y tiempo.

En proyectos pequeños no es posible cubrir los costos

de dedicación.Busca reducción de costos.

Page 43: Administracion de proyectos software i estudiantes

CARACTERISTICAS MERISE RUP XP

TIEMPO Proyectos de largo plazo

Puede ser adoptada tanto para empresas grandes como para pequeñas y

puede ser modificadas para adecuarse a diversas

situaciones

Se usan para proyectos pequeños

DocumentaciónLa documentación es

necesariaEs una metodología solida

con documentación

Pruebas unitarias continuas: realiza

pruebas sobre código escrito y

documentado.

RIESGOS No evalúa riesgos iníciales.

Permite evaluar temporalmente los riesgos en lugar de descubrir problemas

en la integración final del sistema.

Proyecto con altos grados de riesgo

CORRECIONES SOBRE LA MARCHA

Los cambios organizativos afectan negativamente

el proyecto

Busca detectar defectos en las fases iníciales. Intenta

reducir el numero de cambios tanto como sea

posible

Permite realizar cambios de ultimo

momento, en cualquier punto de la vida del proyecto es una aproximación

mejor y mas realista que intenta definir

todos los requisitos del proyecto.

Page 44: Administracion de proyectos software i estudiantes

PMBOK

El Project Management Body of Knowledge (Libro de estándares para la Gestión de Proyectos) (PMBOK) (®) es un estándar reconocido internacionalmente (IEEE, ANSI) este trabaja con el uso del conocimiento, de las habilidades, de las herramientas, y de las técnicas para resolver requisitos del proyecto.

Page 45: Administracion de proyectos software i estudiantes

Procesos BásicosIntegración. Desarrolle la carta del proyecto, la declaración del alcance y el plan. Alcance. Planeamiento, definición, creación, verificaciónTiempo. Definición, secuenciamiento, estimación de recursos necesarios Costo. Planeamiento de recursos, costos estimados, presupuesto y control. Calidad. Planeamiento de la calidad, aseguramiento de calidadRecurso humano. Planeamiento, contratación, y administración. Comunicaciones. Distribución de la información, difusión del desempeñoRiesgos. Planeamiento e identificación de riesgos, Análisis de riesgos Consecución. Plan de contrataciones y adquisiciones, selección e incentivos de los vendedores, administración y cierre de contratos.

Page 46: Administracion de proyectos software i estudiantes

Cuando usar

Programas de Administración (generales) Proyectos departamentales (funcionales)Proyectos de ingeniería (técnicos) Procesos específico de la industria Desarrollo de productos

(comercialización) Programas de gobierno (público) Programas de desarrollo (organizaciones

internacionales)

Page 47: Administracion de proyectos software i estudiantes

Estructura

Page 48: Administracion de proyectos software i estudiantes

Ventajas La guía del PMBOK es un marco y un estándar . Está orientada a procesos. Indica el conocimiento necesario para manejar el ciclo vital de

cualquier proyecto, programa y portafolio a través de sus procesos. Define para cada proceso sus insumos, herramientas, técnicas y

reportes necesarios. Define un cuerpo de conocimiento en el cual cualquier industria pueda

construir las mejores prácticas específicas para su área de aplicación.

Complejo para los proyectos pequeños.Tiene que ser adaptado a la industria del área de aplicación, el tamaño y el alcance del proyecto, el tiempo y el presupuesto y los apremios de la calidad.

Page 49: Administracion de proyectos software i estudiantes

ISO 9000

ISO 9000:2000, Sistemas de Gestión de Calidad:Es un término genérico, aplicado a una serie de estándares patrocinados por la Organización Internacional para la Estandarización (ISO) La organización ISO creo ISO 9000 con el propósito de uniformar los sistemas de calidad que deben establecerse por las compañías de fabricación y servicios al rededor del mundo.

Page 50: Administracion de proyectos software i estudiantes

Caracteristicas

¸ La orientación hacia el cliente¸ La gestión integrada¸ El énfasis en el proceso de negocios¸ La incorporación de la Mejora Continua¸ La medición de la satisfacción del cliente

Page 51: Administracion de proyectos software i estudiantes

VentajasEstandarizar las actividades del personal que

labora dentro de la organización por medio de la documentación

Incrementar la satisfacción del clienteMedir y monitorear el desempeño de los

procesosDisminuir re-procesosIncrementar la eficacia y/o eficiencia de la

organización en el logro de sus objetivosMejorar continuamente en los procesos,

productos, eficacia, etc.Reducir las incidencias de producción o

prestación de servicios

Page 52: Administracion de proyectos software i estudiantes
Page 53: Administracion de proyectos software i estudiantes

ISO 9001

Page 54: Administracion de proyectos software i estudiantes

Objetivos

Medir la Satisfacción del Cliente Mejora Continua Gestión de los Recursos Gestión del Procesos

Page 55: Administracion de proyectos software i estudiantes

En que ayuda

ISO 9001 es una norma adecuada para cualquier organización que busque mejorar el modo de funcionamiento y gestión, independientemente del tamaño o sector.

Page 56: Administracion de proyectos software i estudiantes

Estructura de ISO 9001:2000

SISTEMA DE GESTIÓN DE LA CALIDAD

RESPONSABILIDAD DE LA DIRECCIÓN

GESTIÓN DE LOS RECURSOS

REALIZACIÓN DEL PRODUCTO

MEDICIÓN, ANÁLISIS Y MEJORA

REQUISITOS Y DOCUMENTACIÓN

RECURSOS HUMANOS,

INFRAESTRUCTURA

Y AMBIENTE DE TRABAJO

PLANIFICACIÓN, REQUISITOS, DISEÑO, PRODUCCIÓN, CONTROL,

PROCESOS AUXILIARES

SATISFACCIÓN DEL CLIENTE, AUDITORÍAS, MEDICIÓN DE PROCESOS

PRODUCTOS, NO CONFORMIDADES, ACCIONES CORRECTIVAS Y

PREVENTIVAS

POLÍTICA, PLANIFICACIÓN, REVISIÓN

Page 57: Administracion de proyectos software i estudiantes

Beneficios Aumento de los clientes satisfechos Reducción en los costos Procesos  perfectamente definidos por parte de la empresa Incremento de las ventas Disminución de errores y ausentismo laboral Aumento de la productividad total de la empresa Responsabilidades de cada empleado definidas en forma clara y

concreta Perfecta descripción de los puestos y funciones de todos los

integrantes de la organización. Optimización de todas las vías de comunicación interna de la empresa Aumento de la calidad que los proveedores suministran a la empresa Crecimiento de la imagen de la empresa ante el entorno Concientización de la calidad entre los empleados Conocimiento de los requerimientos de los clientes, sus necesidades y

expectativas futuras Motivación del personal de la empresa Mejores condiciones en el ambiente de trabajo

Page 58: Administracion de proyectos software i estudiantes

CUADRO COMPARATIVO ENTRE ISO 9000 E ISO 9001ISO 9000 ISO 9001

Conjunto de normas de calidadUna de las normas de la familia ISO 9000

Normas orientadas a ordenar la gestión de la empresa

Norma para la gestión y aseguramiento de la calidad

Establecer las directrices, mediante las cuales la organización, puede seleccionar y utilizar las normas.

Especifica los requisitos que debe cumplir un sistema de calidad

Basada en la Administración de Procesos.

Basada en los procesos (más acerca de lo que se produce).

No Certifica CertificaProporcionar a los clientes o usuarios la seguridad de que el producto o los servicios tienen la calidad deseada, concertada, pactada o contratada.

Asegura la calidad de los productos que los productos o servicios brindados por la empresa

Page 59: Administracion de proyectos software i estudiantes

El estándar ISO 12207

ISO/IEC 12207 establece un proceso de ciclo de vida para el software que incluye procesos y actividades que se aplican desde la definición de requisitos, pasando por la adquisición y configuración de los servicios del sistema, hasta la finalización de su uso. Este estándar tiene como objetivo principal proporcionar una estructura común para que compradores, proveedores, desarrolladores, personal de mantenimiento, operadores, gestores y técnicos involucrados en el desarrollo de software usen un lenguaje común.

Page 60: Administracion de proyectos software i estudiantes

Estructura