Software 1 Lic. Sistemas de Informacin Administrativa 05/06/2014 Administracin de Proyectos de Desarrollo de Software 2 Francisco Almanza Lpez. Dionisio Garca Rincn. Oscar Jurez Ortiz. Dante Jess Herrera Martnez Introduccin La administracin de los proyectos de software comienza con un conjunto de actividades llamado Planificacin del proyecto. La estimacin es una etapa de la planificacin de proyectos, que se hace antes del comenzar el proyecto.
05/06/2014 Administracin de Proyectos de Desarrollo de Software 3 Qu es?
Es el intento por determinar cunto dinero, esfuerzo, recursos y tiempo que tomar construir un sistema o producto especfico basado en software.
05/06/2014 Administracin de Proyectos de Desarrollo de Software 4 Recursos
05/06/2014 Administracin de Proyectos de Desarrollo de Software 5 PROYECTO Personal Ubicacin Entorno Software Reutilizable Compone ntes COTS Herramientas de Software Nmero Habilidades Hardware Recursos de red Component es de experiencia Componentes de experiencia parcial Componen tes nuevos Quin lo hace?
Los gerentes del proyecto de software, con la informacin solicitada a los participantes del proyecto y datos de mtricas de software recopiladas de proyectos anteriores. 05/06/2014 Administracin de Proyectos de Desarrollo de Software 6 Por qu es importante?
Construira una casa sin saber mas o menos cunto gastar? Qu nos interesa conocer?
las tareas que necesita realizar y el cronograma para el trabajo- que se va a realizar 05/06/2014 Administracin de Proyectos de Desarrollo de Software 7 Cules son los pasos? Realizar estimacin Seleccin de mtodo o tcnica Descomposicin del proyecto Descripcin del mbito 05/06/2014 Administracin de Proyectos de Desarrollo de Software 8 Tareas Funciones por implementar Costo Esfuerzo Tiempo
Observaciones acerca de la estimacin Los buenos enfoques de estimacin y los datos histricos ofrecen la mejor esperanza de que realmente se triunfar sobre demandas imposibles. La complejidad del producto y tamao del proyecto afectan la confiabilidad de las estimaciones. es distintivo de una mente instruida descansar satisfecha con el grado de precisin que la naturaleza del sujeto admite, y no buscar exactitud cuando slo es imposible una aproximacin. Aristteles
05/06/2014 Administracin de Proyectos de Desarrollo de Software 9 Cmo me aseguro que lo hice bien?
05/06/2014 Administracin de Proyectos de Desarrollo de Software 10 Experiencia Enfoque sistemtico Usando datos histricos slidos Crear puntos de datos con al menos dos mtodos diferentes Estableciendo un calendario realista Estableciendo un calendario realista Actualizacin constante Seguir Camino Herramientas de Estimacin De Descomposicin. Modelos Empricos Especializadas (Desarrollo gil y Para Webapp) 05/06/2014 Administracin de Proyectos de Desarrollo de Software 11
El Modelo Constructivo de Costos (COnstructive COst MOdel) es una jerarqua de modelos de estimacin para el software. Caractersticas: Est basado en modelos de estimaciones matemticas. Est orientado al producto final, no a fases intermedias. Se basa en la cantidad de lneas de cdigo del proyecto.
Modelos Empricos Esta jerarqua est constituida por los siguientes modelos:
El modelo COCOMO bsico es un modelo univariable esttico que calcula el esfuerzo (y el costo) del desarrollo de software en funcin del tamao del programa expresando en lneas de cdigo (LDC) estimadas.
Las ecuaciones del modelo COCOMO bsico son de la forma: E = a * KLOC b
D = c * E d
Donde E es el esfuerzo aplicado en hombre-mes, D es el tiempo de desarrollo en meses y KLOC es el nmero de miles de lneas de cdigo estimado para el proyecto. Los coeficientes a y c y los exponentes b y d se obtienen de la siguiente tabla:
Tipo de proyecto a b c d Orgnico 2.4 1.05 2.5 0.38 Semiacoplado 3.0 1.12 2.5 0.35 Empotrado 3.6 1.20 2.5 0.32 El valor de la duracin del proyecto permite al planificador recomendar un nmero de personas N para el proyecto. N = E / D
El modelo COCOMO intermedio calcula el esfuerzo del desarrollo de software en funcin del tamao del programa y de un conjunto de conductores de costo, que incluyen la evaluacin subjetiva del producto, del hardware, del personal y de los atributos del proyecto.
En el COCOMO intermedio, la ecuacin para calcular el tiempo de desarrollo es la misma que la del COCOMO bsico. La ecuacin para calcular el esfuerzo es: E = a * KLOC b * EAF
Donde E es el esfuerzo en hombre-mes, KLOC es el nmero estimado de miles de lneas de cdigo. El coeficiente a y el exponente b estn dados por la tabla:
Tipo de proyecto a b Orgnico 3.2 1.05 Semiacoplado 3.0 1.12 Empotrado 2.8 1.20 Y EAF es un factor de ajuste del esfuerzo que se calcula valorando en una escala de muy bajo, bajo, nominal, alto y muy alto cada uno de los siguientes 15 atributos, agrupados en 4 categoras:
Atributos del producto. Son restricciones y requerimientos del proyecto que va a ser desarrollado. Confiabilidad requerida. Tamao de la base de datos. Complejidad del producto.
Atributos de computadora. Son limitaciones puestas por el hardware y el sistema operativo donde el proyecto va a correr. Restricciones de tiempo de ejecucin. Restricciones de memoria principal. Volatilidad de la mquina virtual. Tiempo de respuesta de la computadora.
Atributos de personal. Nivel de habilidades que tiene el personal. Son habilidades profesionales generales, habilidad de programacin, experiencia con el medio ambiente de desarrollo y familiaridad con el dominio del proyecto. Capacidad del analista. Experiencia en aplicaciones. Capacidad del programador. Experiencia con la mquina virtual. Experiencia con el lenguaje de programacin.
Atributos del proyecto. Restricciones y condiciones bajo las cuales el proyecto se desarrolla. Prcticas modernas de programacin. Uso de herramientas de software. Calendario de desarrollo requerido.
A cada atributo se le asigna un nmero real de acuerdo a la tabla siguiente:
Escala Nmero muy bajo 0.75 bajo 0.88 nominal 1 alto 1.15 muy alto 1.40 El modelo COCOMO avanzado incorpora todas las caractersticas de la versin intermedia y lleva a cabo una evaluacin de impacto de los conductores de costo en cada fase (anlisis, diseo, etc.) del proceso de ingeniera de software.
Los modelos COCOMO estn definidos para tres tipos de proyecto de software.
Modelo Orgnico. Proyectos de software relativamente pequeos y sencillos en los que trabajan pequeos equipos, con buena experiencia en la aplicacin, sobre el conjunto de requisitos poco rgidos (por ejemplo, un programa de anlisis termal desarrollado para un grupo calrico).
Proyectos pequeos y sencillos. Equipos pequeos con experiencia en la aplicacin. Requisitos poco rgidos.
Modelo Semiacoplado. Proyectos de software intermedios (en tamao y complejidad) en los que los equipos, con variados niveles de experiencia, deben satisfacer requisitos poco o medio rgidos (por ejemplo, un sistema de procesamiento de transacciones con requisitos fijos para un hardware de terminal o un software de gestin de base de datos).
Proyectos de tamao y complejidad intermedia. Equipos con variado niveles de experiencia. Requisitos poco o medio rgidos.
Modelo Empotrado. Proyectos de software que deben ser desarrollados en un conjunto de hardware, software y restricciones operativas muy restringidas (por ejemplo, software de control de navegacin para un avin).
Proyectos que deben ser desarrollados con un conjunto de requisitos (hardware y software) muy restringidos. Tcnicas de estimacin especializadas Cuando un equipo de software encuentra una duracin extremadamente corta (semas en lugar de meses) en la que es posible tener muchos cambios , la planificacin del proyecto y la estimacin en particular deben abreviarse. 05/06/2014 Administracin de Proyectos de Desarrollo de Software 20 Estimacin para desarrollo gil. Es posible desarrollar un enfoque de estimacin que sea informal, razonablemente disciplinado y significativo dentro del contexto de la planificacin del proyecto para cada incremento de software.
La estimacin para proyectos agiles es un enfoque de descomposicin que abarca los siguientes pasos: 05/06/2014 21 Administracin de Proyectos de Desarrollo de Software 1. Cada actividad de usuario se considera por separado con propsito de estimacin. 2. La actividad se descompone en el conjunto de tareas de ingeniera de software que ser necesario considerar. 3. El esfuerzo requerido por cada tarea se estima por separado. 4. La estimacin por cada tarea se suma a fin de crear una estimacin para el escenario.
05/06/2014 22 Administracin de Proyectos de Desarrollo de Software Con frecuencia es mucho mas efectivo en costo adquirir, en lugar de desarrollar software de computadoras.
Los pasos involucrados en la adquisicin del software se definen por lo crucial del software que se va a comprar y por el costo final. La decisin de hacer/comprar 05/06/2014 23 Administracin de Proyectos de Desarrollo de Software En el anlisis final, la decisin hacer/comprar se toma en base a las siguientes condiciones:
1. La fecha de entrega del producto de software ser mas prxima que la del software que se desarrolle internamente. 2. El costo de adquisicin mas el costo de personalizacin ser menor que el costo que implica desarrollar el software internamente. 05/06/2014 24 Administracin de Proyectos de Desarrollo de Software
3. El costo del apoyo exterior ser menor que el costo del apoyo interno.
Estas condiciones se aplican para cada una de las opciones de adquisicin.
05/06/2014 25 Administracin de Proyectos de Desarrollo de Software
Outsourcing
El outsourcing (la subcontratacin) es extremadamente simple. Las actividades de ingeniera de software se contratan a una tercera parte, que hace que el trabajo a un costo mas bajo y, con mayor calidad.
La decisin por el outsourcing puede ser estratgica . 05/06/2014 26 Administracin de Proyectos de Desarrollo de Software La tendencia hacia el outsourcing indudablemente continuara. La nica forma de detenerla es reconocer que el trabajo de software es extremadamente competitivo en todos los niveles. La nica manera de sobrevivir es volverse tan competitivo como los mismos proveedores de outsourcing.
05/06/2014 27 Administracin de Proyectos de Desarrollo de Software Herramientas de software para Estimaciones De Desarrollo de Software . Costar (www.softstarsystems.com) CostXpert(www.CostXpert.com) Estimate Professional(www.spc.com) Price S (www.pricesystems.com) SEER/SEM (www.galorath.com) SLIM-Estimate(www.qsm.com)
05/06/2014 Administracin de Proyectos de Desarrollo de Software 28
Idea para un matching inmobiliario innovador: simplificando la gestión inmobiliaria: Matching inmobiliario: gestión inmobiliaria eficiente, fácil y profesional a través de un portal innovador