Sie sind auf Seite 1von 47

Planificacin Estratgica de Proyectos de Software CACIC 2007 - Clase 5

Mg. Rodolfo Bertone Mg. Pablo Thomas Facultad de Informtica - UNLP

Agenda

Mejora de Proceso

Gestin de Calidad Normas de calidad Gestin de Configuracin

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

Gestin de Calidad
Objetivos
Introducir el proceso de administracin de calidad y sus actividades claves Explicar el rol de los estndares en la administracinde calidad I do not worry whether something is cheap or expensive. I only worry if it is good. If it is good enough, the public will pay you back for it Walt Disney
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 3

Gestin de Calidad
Definiciones
Propiedad o conjunto de propiedades inherentes a algo, que permiten juzgar su valor. Esta tela es de buena calidad. Buena calidad, superioridad o excelencia. La calidad del vino de Jerez ha conquistado los mercados. Condicin o que se pone en un contrato. De vida conjunto de condiciones que contribuyen a hacer agradable y valiosa la vida.
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 4

Gestin de Calidad
Totalidad de las caractersticas y aspectos de un producto o servicio en los que se basa su aptitud para satisfacer una necesidad dada Grado en el que un conjunto de caractersticas inherentes cumple con los requisitos (ISO 9000:2000) Conceptos de calidad
No es absoluto Est sujeto a restricciones Trata de compromisos aceptables Es multidimensional Los criterios de calidad no son independientes
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 5

Gestin de Calidad

Funcionalidad
Co st e

Oportunidad

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

Gestin de Calidad
CALIDAD PROGRAMADA

CALIDAD REALIZADA

CALIDAD NECESARIA

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

Gestin de Calidad
CALIDAD PROGRAMADA

CALIDAD ESPERADA

CALIDAD REALIZADA

CALIDAD NECESARIA

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

Gestin de Calidad
Calidad concepto presente en el mundo globalizado
Como se aplica en IS?

Definiendo calidad:
el producto desarrollado cumple su especificacin (Crosby, 1979)
Como se aplica a la IS? problemas
La especificacin se orienta hacia las caractersticas del producto que el consumidor quiere, pero la organizacin tiene requerimientos que no se incluyen en la especificacin (ej. Mantenimiento) No se sabe como especificar ciertas caractersticas de calidad de una forma no ambigua En IR es muy difcil redactar especificaciones concretas del software. Por esto aunque el producto est acorde con la especificacin, los usuarios no lo consideran un producto de alta calidad

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

Gestin de Calidad
Qu es la calidad? Nuevamente visin ms cercana al software
Calidad, simplemente significa que un producto cumple con su especificacin. Esto es problemtico en sistemas de software: Hay tensin entre los requerimientos de calidad del cliente (eficiencia, fiabilidad, etc.) y del desarrollador (mantenibilidad, reusabilidad, etc.) Algunos requerimientos de calidad son difciles de especificar en una forma no ambigua. Las especificaciones de software son usualmente incompletas y generalmente inconsistentes.

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

10

Gestin de Calidad
Alcance de la administracin de calidad
La administracin de calidad es particularmente importante en sistemas complejos y grandes. La calidad en la documentacin es un registro del progreso en el desarrollo y como fuente para administrar mejor el cambio. Para pequeos sistemas, la administracin de calidad necesita menos documentacin y el foco principal es establecer una cultura de calidad.
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 11

Gestin de Calidad
Actividades de la administracin de la calidad
Aseguramiento de la calidad
Establecer procedimientos y estndares organizacionales para la calidad

Planeamiento de la calidad
Seleccionar estndares y procedimientos aplicables para cada proyecto particular y acondicionar los mismos de acuerdo a lo requerido

Control de calidad
Asegurar que los estndares y procedimientos se sigan por parte del equipo de desarrollo

El aseguramiento de calidad debe estar separado de la administracin del proyecto para asegurar su independencia.
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 12

Gestin de Calidad
Calidad del proceso y calidad del producto
La calidad del producto desarrollado es influenciada por la calidad del proceso de produccin. Sin embargo existe un entendimiento muy limitado entre la relacin entre el proceso del software y la calidad del producto
Documentar es muy burocrtico, pero an as tengo calidad
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 13

Gestin de Calidad
Garanta de calidad y estndares:
Definir los estndares de proceso como
Administracin de configuracin administrar las revisiones,etc.

Monitorear el proceso de desarrollo para asegurar que se siguen los estndares No utilizar prcticas inapropiadas simplemente porque los estndares se han establecido

Los estndares son la clave para una administracin efectiva de la calidad. Existen mltiples estndares
Relacionados con el producto: caractersticas que todos los componentes deben seguir (estilo de pgm, por ej.) Relacionados con el proceso: definen como el proceso de software deber ser establecido
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 14

Gestin de Calidad
Importancia de los estndares:
Encapsulan las mejores prcticas, evitando la repeticin de pasos equivocados Establecen un marco para el proceso de aseguramiento de la calidad, involucran el chequeo de conformidad a esos estndares Sirven para guiar a los miembros nuevos del staff para que los mismos puedan entender la organizacin a partir de comprender como la misma se adecua a la calidad
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 15

Gestin de Calidad
Problemas con los estndares
Son considerados como burocrticos y poco relevantes por el staff de desarrollo No existen CASE apropiados para su administracin, El trabajo manual resulta muy tedioso involucrando generar y mantener grandes volmenes de informacin Son muy costosos!!! (de hacer, mantener y CERTIFICAR)
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 16

Gestin de Calidad
Estndares de documentacin
Los documentos son la manifestacin tangible del software Tres tipos de estndares:
Estndares del proceso de documentacin (definen el proceso a seguir para la produccin del documento) Estndares del documento (gobiernan la estructura y presentacin del documento) Estndares para el intercambio de documentos (aseguran que todas las copias electrnicas del documento sean compatibles)
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 17

Gestin de Calidad
Planificacin de la calidad:
Proceso en el cual se desarrolla un plan de calidad para un proyecto. El plan de calidad define la calidad del software deseado y describe cmo valorar sta. Selecciona los estndares organizacionales apropiados para un producto y un proceso de desarrollo. Estructura del plan de calidad
Introduccin al producto Planes de producto Descripciones del proceso Metas de calidad Riesgos y gestin de riesgos
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 18

Gestin de Calidad
Atributos de la calidad del software Seguridad Proteccin Fiabilidad Flexibilidad Robustez Comprensin Adaptabilidad Modularidad Complejidad Portabilidad Reutilizacin Eficacia Aprendizaje

Experimentacin Usabilidad

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

19

Gestin de Calidad
Control de calidad:
Implica vigilar el proceso de desarrollo del software para asegurar que se siguen los procedimientos y los estndares de garanta de calidad Existen dos enfoque complementarios
Revisiones de calidad Valoracin automtica del software (procesadas por algn programa)
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 20

10

Gestin de Calidad
Revisiones de calidad:
Principal mtodo para validad la calidad del proceso o del producto Un grupo de personas examinan el proceso o el sistema en parte o en su totalidad tratando de encontrar problemas potenciales Varios tipos de revisiones
Inspecciones para remover defectos (producto) Revisiones del progreso (producto y proceso) Revisiones de calidad (productos y estndares)
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 21

Gestin de Calidad
Como llevar a cabo las revisiones
Un grupo de personas calificadas examinan el sistema y su documentacin asociada. Se revisa cdigo, diseo, especificaciones, casos de prueba, estndares, etc. Siempre se examina el trabajo NO EL TRABAJADOR

Objetivo
Descubrir defectos o inconsistencia del sistema

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

22

11

Gestin de Calidad
Resultados, pueden clasificarse en:
No se requiere accin Reparaciones (se deben corregir algunos problema) Reconsideracin general sobre el diseo: los problema encontrados durante al revisin impactan otras parte del diseo. Se debern tener en cuenta por la implicancia de las mismas

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

23

Agenda

Mejora de Proceso

Gestin de Calidad Normas de calidad Gestin de Configuracin

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

24

12

Normas de Calidad

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

25

Normas de Calidad
Algunos ejemplos
CMM (Capability Maturity Model)
Desarrollado por SEI (Software Engineering Institute), org. creado por el DoD de USA Fuerte impacto en mejora del proceso Estipula un Camino para la mejora CMMI Areas Clave que se deben atacar

ISO 9000 (y toda su lnea) ISO 12207 Modelos de Ciclos de Vida del Software
Actividades que debe incluir

SPICE (Software Process Improvement and Capability dEtermination) ISO 15504 Tick-It (modelo ingls) MoProSoft (Norma mexicana) Competisoft (Norma Iberoamericana 12191 ISO)
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software

26

13

CMM SW v1.1(Capability Maturity Model) Mejora continua


del proceso Control del proceso Definicin del Proceso Disciplina del Proceso Nivel 1: Inicial
CACIC 2007 - Clase 5

Nivel 5: Optimizante Gestin del Cambio

Nivel 4: Gestionado Nivel 3: Definido

Gestin Cuantitativa

Nivel 2: Repetible

Gestin de Ingeniera

Madurez

Gestin del Proyecto


Planificacin estratgica de Proyectos de Software 27

CMM

Nivel 1 - Inicial

Desempeo basado en la competencia del personal

frecuentemente la organizacin vive apagando incendios aparecen hroes dificultad para encarar mejoras a largo plazo la organizacin acta esencialmente por reaccin
Promueve alta calidad y desempeo excepcional, posible siempre que se logre contar con los mejores Impredecible (para bien y para mal) Caracterizado por problemas que son esencialmente de gestin, no tcnicos

Entradas
CACIC 2007 - Clase 5

Salidas Entran los requerimientos y otras entradas y salen los productos


Planificacin estratgica de Proyectos de Software 28

14

CMM
La organizacin

Nivel 2 - Repetible

estableci la gestin efectiva de los proyectos de software el proceso de gestin del software est documentado usa polticas organizacionales para guiar a los proyectos en establecer los procesos de gestin repite prcticas exitosas desarrolladas en proyectos previos

Entradas Reqs. Diseo Codif. Prueba

Salidas

Existen riesgos al presentarse nuevos desafos.


CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 29

CMM

Nivel 3 - Definido

El proceso para la gestin y las actividades de ingeniera est documentado e integrado en un proceso estndar para la organizacin. Todos los proyectos usan una versin documentada y aprobada del proceso estndar de la organizacin. Una task force dedicada al proceso de Ingeniera de software ha sido establecido para focalizar y liderar esfuerzos en la mejora.
Entradas Salidas

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

30

15

CMM

Nivel 4 - Gestionado

La organizacin aplica los principios de la gestin estadstica de procesos para controlar el proceso del software la direccin tiene bases objetivas para tomar decisiones, puede predecir el desempeo en un entorno cuantificado realista usa los datos como base para decisiones, objetivos y mejoras Reaccin frente a las mediciones fuera de rango de control Entradas Salidas

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

Productos y Proceso Gestionados cuantitativamente

31

CMM
La organizacin

Nivel 5 - Optimizante

identifica y elimina causas de desempeo pobre mejora continua del proceso en base a gestin del cambio del proceso y de la tecnologa
Foco en la mejora del proceso y tecnologa

Entradas

Salidas

Cambio controlado se institucionaliza


CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software

32

16

CMM

Areas Clave de Proceso

conjunto de actividades relacionadas


tales que cuando se llevan a cabo, se logran un conjunto de objetivos Estos objetivos son considerados importantes para mejorar la capacidad del proceso Para cada Area Clave (Key Process Area) est presentada (Key Area) en el modelo de acuerdo a Caractersticas Comunes (Common Features), referidas a su institucionalizacin: Features),
compromiso en realizar capacidad de realizar actividades realizadas medicin y anlisis verificacin de implementacin
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 33

CMM

Estructura del modelo


Niveles de Madurez indican contiene Areas Clave del Proceso logra Objetivos organizada por Caractersticas Comunes refiere a
Implementacin o Institucionalizacin Infraestructura o actividades

Capacidad del proceso

Prcticas Clave describe

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

34

17

CMM Areas Clave del Proceso


Nivel CMMArea Clave del Proceso
Inicial Ninguna Repetible
Gestin de Requerimientos (RM) Planificacin de Proyecto de Software (SPP) Seguimiento y Supervisin de proyectos de Sw (SPTO) Gestin de Subcontratos de Sw (SSM) Aseguramiento de la calidad del Sw (SQA) Gestin de la Configuracin del Sw (SCM)

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

35

CMM
Definido

KPAs (II)

Foco en el proceso de la organizacin (OPF) Definicin de los procesos de la organizacin (OPD) Programa de entrenamiento (TP) Gestin de Sw integrada (ISM) Ingeniera de Productos de Sw (SPE) Coordinacin entre grupos (IC) Revisiones entre pares (PR) Gestionado Gestin cuantitativa del proceso (QPM) Gestin de la calidad del software (SQM) Optimizante Prevencin de defectos (DP) Gestin del cambio tecnolgico (TCM) Gestin del cambio del proceso (PCM)

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

36

18

SW-CMM Mtodo de Apreciacin Como se empieza?


Tiene como objetivo determinar y evaluar la capacidad y madurez de una organizacin y ubicarlo en un nivel del SW-CMM Consiste en 6 pasos

Seleccionar Cuestionario Equipo de Madurez

Analizar Respuestas

Visitar Hallazgos Organizacin Identificados

Perfil Basado en KPAs

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

Key Process Area

37

CMMI
Capability Maturity Model Integrated Caractersticas
Eliminar inconsistencias Reducir duplicaciones. Incrementar la claridad y comprensin Proporcionar terminologa comn Proporcionar estilos consistentes Establecer reglas de construccin uniformes Mantener componentes comunes Asegurar la consistencia con ISO 15504
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 38

19

CMMI
P o r E ta p a s
M L5 M L4 M L3 M L2 ML 1 O rg a n iz a c i n

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

39

CMMI

Mejora Continua del Proceso


(2 reas de Proceso)

Optimizante (5)

- Innovacin y Distribucin Organizacional (OID) - Anlisis Causal y Resolucin (CAR)

Gestin Cuantitativa
(2 reas de Proceso)

Gestionado Cuantitativamente (4)

- Rendimiento del Proceso Organizacional (OPP) - Gestin Cuantitativa de Proyectos (QPM ) - Gestin Cuantitativa del Suministrador (QSM)

Estandarizacin del Proceso


(11 reas de Proceso)

Definido (3)

- Desarrollo de Requisitos (RD) - Entorno Organizacional - Solucin Tcnica (TS) para la Integracin (OEI) - Integracin del Producto (PI) - Equipo Integrado (OIT) - Verificacin (VER) - Validacin (VAL) - Gestin Integrada del - Enfoque Proceso Organizacional (OPF) - Definicin del Proceso Organizacional (OPD) Suministrador (ISM) - Formacin de la Organizacin (OT) - Gestin Integrada de Proyectos (IPM) - Gestin de Riesgos (RSKM) - Anlisis de Decisin y Resolucin (DAR)

Gestin Bsica de Proyectos


(7 reas de Proceso)

Gestionado (2)

- Gestin de Requisitos (REQM) - Planificacin del Proyecto (PP) - Seleccin y Monitorizacin - Monitorizacin y Control del Proyecto (PMC) del Suministrador (SSM) - Gestin del Acuerdo con el Suministrador (SAM) - Medicin y Anlisis (M & A) - Aseguramiento de la Calidad del Proceso y Producto (PPQA) - Gestin de la Configuracin (CM)

Inicial (1)
CACIC 2007 - Clase 5

- Procesos Caticos (Ad Hoc)

Planificacin estratgica de Proyectos de Software

40

20

CMMI
Gestin del Proceso
- Enfoque Proceso Organizacional - Definicin Proceso Organizacional - Formacin Organizacional - Rendimiento - Innovacin y Distribucin Organizacional

CMMI

Gestin de Proyectos
- Planificacin del Proyecto - Monitorizacin y Control de Proyectos - Gestin del Acuerdo con el Suministrador - Gestin Integrada de Proyectos - Gestin de Riesgos - Gestin Cuantitativa de Proyectos

Ingeniera
- Gestin de Requisitos - Desarrollo de Requisitos - Solucin Tcnica - Integracin del Producto - Verificacin - Validacin

Soporte
- Gestin de Configuracin - Aseguramiento de la Calidad del Proceso y Producto - Medicin y Anlisis - Anlisis de Decisiones y Resolucin - Anlisis Causal y Resolucin

IPPD
- Entorno Organizacional para la Integracin - Equipo Integrado

Adquisicin
- Seleccin y Monitorizacin del Suministrador - Gestin Integrada del Suministrador - Gestin Cuantitativa del Suministrador

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

41

ISO/IEC 15504
Proporciona un marco de trabajo para la evaluacin del proceso y establece los requisitos mnimos para realizar una evaluacin que asegure la repetibilidad y consistencia de las valoraciones obtenidas El objetivo de la evaluacin del proceso es conocer la capacidad de los procesos de una organizacin. Como resultado de una exitosa implementacin de la evaluacin de los procesos se determina la informacin que caracteriza los procesos evaluados y el punto hasta el cual los procesos realizan su propsito
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 42

21

ISO/IEC 15504
Partes de la norma ISO/IEC 15504 1. Conceptos y Vocabulario Contenido Proporciona una introduccin general a los conceptos de la evaluacin de los procesos y un glosario de trminos relacionados

Establece los requisitos mnimos necesarios para realizar una evaluacin que garanticen la consistencia y repetibilidad de las valoraciones. 2. Realizacin de Los requisitos ayudan a asegurar que la la Evaluacin valoracin de salida es consistente y proporciona la evidencia necesaria para corroborar los resultados y verificar su conformidad con los requisitos. 3. Gua para la Realizacin de la Evaluacin
CACIC 2007 - Clase 5

Proporciona una gua para interpretar los requisitos a la hora de realizar una evaluacin.
43

Planificacin estratgica de Proyectos de Software

ISO/IEC 15504
4. Gua sobre el Uso para la Mejora del proceso y la Determinacin de la Capacidad del Proceso Identifica la Evaluacin del proceso como una actividad que puede ser realizada como parte de una iniciativa de mejora de procesos o como parte de un enfoque de determinacin de la capacidad. El propsito de la mejora de los procesos es mejorar de forma continua la eficiencia y efectividad de la organizacin. El objetivo de la determinacin de la capacidad es identificar las fortalezas, debilidades y riesgos de los procesos seleccionados respecto a un requisito particular especificado a travs de los procesos utilizados y de su alineamiento con las necesidades de negocio. Contiene un ejemplo de un modelo para realizar la evaluacin de los procesos basado en el modelo de referencia de procesos definido en el estndar ISO/IEC 12207 (Amd 1, Anexo F y Amd 2). Una evaluacin es llevada a cabo utilizando un modelo de evaluacin de procesos relacionado con uno o ms modelos de referencia de procesos.
Planificacin estratgica de Proyectos de Software 44

5. Un Ejemplo de Modelo de Evaluacin de Procesos (en preparacin)


CACIC 2007 - Clase 5

22

ISO/IEC 15504
Modelo de Referencia del Proceso
- Dominio y Alcance - Propsito del Proceso - Resultados del Proceso

Marco de Trabajo de la Medicin


- Niveles de Capacidad - Atributos del Proceso - Escala de Valoracin

Modelo de Evaluacin del Proceso


- Alcance - Indicadores - Correspondencia - Interpretacin

Entrada Inicial
- Propsito - Alcance - Restricciones - Identidades - Enfoque - Criterios de Competencia del Evaluador - Informacin Adicional

Salida

Proceso de Evaluacin
- Planificacin - Recogida de Datos - Validacin de Datos - Valoracin de los Atributos del Proceso - Generacin de Informes

- Fecha - Entrada de la Evaluacin - Identificacin de la Evidencia - Proceso de Evaluacin utilizado - Perfiles de Proceso - Informacin Adicional

Roles y Responsabilidades
- Patrocinador - Evaluador Competente - Evaluador(es)

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

45

ISO/IEC 15504
Nivel 5 Nivel 4 Nivel 3 Nivel 2 Nivel 1 Nivel 0

Proceso Optimizante

Proceso Predecible

Proceso Establecido

Proceso Gestionado

Proceso Realizado Incompleto


46

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

23

ISO/IEC 15504
PROCESO DE EVALUACIN
Planificacin, desarrollar un plan de la evaluacin Recogida de datos, en la que se deben obtener los datos requeridos para evaluar los procesos dentro del alcance de la evaluacin e informacin adicional Validacin de los datos Valoracin de los Atributos del Proceso, de forma que se les asigna una puntuacin en base a los datos validados Generacin de Informes, en los que se presentan los resultados de la Evaluacin
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 47

ISO 9000
Conjunto de estndares internacionales para el manejo de la calidad Aplicable sobre un gran rango de problemas ISO 9001 aplicable a organizaciones con diseo, desarrollo y mantenimiento de productos ISO 9001 es un modelo genrico del proceso de calidad que debe ser implantado para cada organizacin que utilice el estndar
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 48

24

ISO 9001
reas comprendidas para la garanta de calidad
Responsabilidad de la gestin Control de productos disconformes Manejo, almacenamiento, embalaje y suministro Productos suministrados al comprador Control de proceso Equipo de inspeccin y prueba Revisin del contrato Control del documento Auditora de calidad interna Servicios
CACIC 2007 - Clase 5

Sistema de calidad Control de diseo Compras Identificacin y seguimiento del producto Inspeccin y prueba Status de la inspeccin y las pruebas Accin correctiva Registros de calidad Capacitacin Tcnicas estadsticas

Planificacin estratgica de Proyectos de Software

49

ISO 9000
Certificacin
Los estndares y procesos de calidad deben ser documentados en un manual de calidad organizacional Una entidad externa debe certificar que el manual de calidad de la organizacin est construido conforme con los estndares ISO 9000 Algunos clientes requieren de personal experimentado en ISO 9000 para poder adaptar a su organizacin

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

50

25

PSP
Personal Software Process
Proporciona una serie de principios al ingeniero para llevar a cabo un proceso personal disciplinado Asiste a los ingenieros en la realizacin de planes precisos Determina los pasos que los ingenieros deben seguir para mejorar la calidad del producto Establece bancos de pruebas para medir la mejora del proceso personal, y Determina el impacto que los cambios del proceso tienen sobre el rendimiento del ingeniero
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 51

PSP

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

52

26

TSP
Team Software Process

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

53

TPS
>

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

54

27

MoProSoft
Modelos de Procesos para la Industria del Software (MoProSoft) (Oktaba, 2005) Modelo basado en las mejores prcticas internacionales con las siguientes caractersticas:
Fcil de entender Fcil de aplicar No costoso en su adopcin Ser la base para alcanzar evaluaciones exitosas con otros modelos o normas, tales como ISO 9000:2000 o CMM V1.1
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 55

MoProSoft
n cci ire ta D Al R ) I (D Ge n sti ) ES (G
Categora

Gestin de Negocio
Categora

Gestin de Procesos Gestin de Proyectos Gestin de Recursos

Categora n aci pe r O ) Administracin de Proyectos Especficos PE (O Desarrollo y Mantenimiento de Software

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

56

28

MoProSoft
Norma Mexicana
Qu

Modelo de Procesos
Normativa (qu procesos) Informativa (cmo implantarlos) Anexo ISO/IEC FDIS 15504-2 Performing an assesment Requisitos

MOPROSOFT
Cmo ISO 12207 Software life cycle processes Relacin

Modelo de Capacidades Norma de Procesos (qu evaluar) Mtodo de evaluacin (cmo evaluar)
CACIC 2007 - Clase 5

Requisitos Guas

ISO/IEC FDIS 15504-3 Guidance on performing an assesment


57

Planificacin estratgica de Proyectos de Software

Agenda

Mejora de Proceso

Gestin de Calidad Normas de calidad Mejora de Procesos Gestin de Configuracin

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

58

29

Gestin de Configuracin
Objetivos
Comprender la importancia de la gestin de la configuracin del sistema (GCS) Describir las actividades principales de la GCS: planificacin, gestin de cambios, gestin de versiones y entregas, y construccin de sistemas

Administracin de la configuracin
Nuevas versiones del software se crean a medida que el mismo evoluciona:
Para diferente hardware o SO Agregando mayor o diferente funcionalidad Guiada a partir de un requerimiento de usuario particular
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 59

Gestin de Configuracin
La administracin de la configuracin tiene que ver con el manejo de la evolucin de los sistemas:
Los cambios en los sistemas deben manejarse como una actividad grupal (equipo). Se tiene que controlar los costos y el esfuerzo necesario para hacer los cambios sobre el sistema

Para la GCS es necesario desarrollar y aplicar una poltica que administre la evolucin del sistema. Este proceso es parte del proceso de calidad. Se desarrollan lneas base (baselines) para poder seguir el proceso de configuracin
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 60

30

Gestin de Configuracin
Planificacin de la GCS
Se deben administrar todos los elementos del software
Especificaciones Diseos Programas Documentos y casos de prueba

Se deben generar documentos separados que indiquen la evolucin registrada Un plan define:
Tipos de documentos que se administran y su DENOMINACIN Responsables de establecer y administrar las lneas base Polticas de administracin de control de cambios y versionado

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

61

Gestin de Configuracin
Describe las herramientas que utilizar el proceso de GCS y cualquier limitacin con su utilizacin Define el proceso para el uso de la herramienta Defina la BD utilizada para almacenar informacin de configuracin Puede incluir informacin de cmo la GCS administra el proceso de auditora, software externos, etc.

Identificacin de tems de configuracin


A lo largo de un proyecto existen mltiples tems sobre los cuales se debe administrar la configuracin. Los mismos deben ser identificados y resguardados en una BD
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 62

31

Gestin de Configuracin
Base de datos de configuracin
Preguntas que se deberan contestar acerca de la configuracin
Quien tiene cada versin particular del sistema? Que plataforma requiere cada versin particular? Que versiones son afectadas a partir del cambio del componente X? Cuantas versiones del sistema se han creado y cuales son sus fechas de creacin? Cuantas peticiones de cambio estn pendientes para una versin particular? cuantos fallos declarados existen en una versin particular?
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 63

Gestin de Configuracin
Administracin del cambio
Los sistemas de software estn sujetos a un cambio continuo de requerimientos:
Desde los usuarios Desde los desarrolladores Desde el mercado

La administracin del cambio tiene que ver con el mantenimiento de toda esta informacin por un tema de organizacin y de costos.
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 64

32

Gestin de Configuracin (Proceso de gestin de cambios)


Solicitar cambios completando un formulario de solicitud de cambios Analizar la solicitud de cambios Si (cambio es valido) entonces evaluar como implementar el cambio evaluar los costos del cambio registrar la peticin del cambio en una BD remitir la peticin a la oficina de control de cambios si (cambio es aceptado) entonces repetir hacer cambios al software registrar cambios y vincularlos a la peticin de cambios asociada remitir el software cambiado para aprobar la calidad hasta (calidad del software sea adecuada) sino rechazar peticin de cambios sino rechazar peticin de cambios
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 65

Gestin de Configuracin (formato del formulario de cambios)

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

66

33

Gestin de Configuracin
Administracin de versionado y releases (entregas)
Definir un esquema de identificacin para cada versin del sistema Planificar cuando una nueva versin del sistema debe o necesita ser producida Asegurar que el procedimiento de administracin de versiones y sus respectivas herramientas se apliquen correctamente. Planificar y distribuir nuevas versiones. Algunas definiciones
Versin: instancia de un sistema que es funcionalmente diferente en alguna forma a otra instancia del mismo sistema Variante: instancia de un sistema que es funcionalmente idntica pero diferente no funcionalmente a otra instancia del sistema Release: instancia de un sistema que es distribuida a un usuario
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 67

Gestin de Configuracin
Identificacin de Versiones:
Debe definirse una forma libre de ambigedades para identificar las componentes. Hay tres tcnicas bsicas
Numerado de versin
V1, V1.1, V1.2, V2.1, V2.2 etc. La numeracin genera ms un rbol que una secuencia.

Identificacin basada en atributos Identificacin orientada a cambios.


Planificacin estratgica de Proyectos de Software 68

CACIC 2007 - Clase 5

34

Gestin de Configuracin (versionado numrico)

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

69

Gestin de Configuracin
Gestin de Entregas (release)
Una entrega no es solo cdigo ejecutable, contiene adems:
Archivos de configuracin Archivos de datos Programa de instalacin Documentacin electrnica y en papel que describe el sistema. Embalaje y publicidad asociado (si corresponde)

Problemas asociados
El cliente puede no querer una nueva versin, dado que est conforme con la que tiene y no desea adquirir ms funcionalidad La gestin de entrega no puede suponer que todas las entregas anteriores fueron aceptadas. Todos los archivos requeridos para una entrega deben ser creados desde cero cuando un nuevo release se instala.
Planificacin estratgica de Proyectos de Software 70

CACIC 2007 - Clase 5

35

Gestin de Configuracin
Como hacer el release:
El proceso es costoso. Hay factores como: calidad tcnica del sistema, competencia, cambios de plataformas, requerimientos de marketing,

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

71

Ejercicios
Un problema comn en la construccin del sistema ocurre cuando los nombres de los archivos fsicos se incorporan al cdigo del sistema y la estructura del archivo implicada en esos nombres difiere de la estructura de la mquina en que se ejecutar. Redacte un conjunto de guas para el programador que ayuden a evitar este y otros problemas en la construccin de sistemas. Cuales podran ser algunos factores que deban tenerse en cuenta durante el proceso de construccin y entrega de un sistema de software grande?
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 72

36

Referencias
www.sei.cmu.edu/cmm www.sei.cmu.edu/cmmi alarcos.inf-cr.uclm.es/Competisoft/ ISO/IEC 12207:2002 AMENDMENT 1: Information Technology Software Life Cycle Processes Amendment1. ISO/IEC 15504:2003 Information Technology Proccess Assessment Part 2: Performing an assessment.
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 73

Fin del Curso


Preguntas

Comentarios

APLAUSOS ????
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 74

37

CMM

Gestin de Requerimientos (RM)


Repetible

Propsito: Establecer un entendimiento comn entre el cliente y el equipo de proyecto sobre los requerimientos del cliente que deben tenerse en cuenta Objetivos: Documentar requerimientos como base del proyecto Gestionar y controlar los cambios que se hacen a los requerimientos durante todo el ciclo de vida del proyecto
http://www.pst.informatik.uni-muenchen.de/personen/kochn/ideas03-escalona-koch.pdf Ingeniera de Requisitos en aplicaciones Web. SPA. Nora Koch 2003

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

75

CMM

Planificacin del proyecto (SPP)


Repetible

Propsito: Establecer planes razonables para realizar las actividades de ingeniera de software y para gestionar el proyecto Objetivos: Hacer estimaciones del trabajo a realizar Establecer los compromisos para realizar el trabajo Definir los planes para ejecutar el trabajo

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

76

38

CMM

Seguimiento de proyectos (SPTO)


Repetible

Propsito: Supervisar el progreso real del proyecto para tomar acciones a tiempo cuando el rendimiento del proyecto se desva significativamente de lo planificado Objetivos: Seguir y revisar el progreso del proyecto en comparacin con las estimaciones y los planes Tomar acciones correctivas cuando surjan discrepancias entre las estimaciones y los valores reales para reconducir el proyecto Re-establecer compromisos

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

77

CMM

Gestin de subcontratistas (SSM)


Repetible

Propsito: Seleccionar (sub)contratistas calificados y gestionarlos eficazmente Objetivos: Seleccionar (sub)contratista adecuado Establecer compromisos Seguir y revisar su rendimiento y resultados

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

78

39

CMM (SQA)

Aseguramiento de la Calidad
Repetible

Propsito: Proporcionar visibilidad sobre los procesos utilizados por el proyecto de software y sobre los productos que genera Objetivos: Planificar las actividades de aseguramiento de la calidad Revisar y auditar objetivamente los productos y las actividades para verificar que estn conformes con los procedimientos y estndares aplicables Proporcionar los resultados de estas revisiones o auditoras informando a la direccin cuando sea necesaria su mediacin
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 79

CMM Aseguramiento de la Calidad (II)


Repetible

El grupo encargado del aseguramiento de la calidad del software:


Deber trabajar con el equipo del proyecto desde el principio Deber ser objetivo y, a ser posible, independiente Deber ayudar al proyecto ms que controlar sus actividades
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software

80

40

CMM
(SCM)

Gestin de configuracin del sw


Repetible

Propsito: Establecer y mantener la integridad de todos los productos del proyecto a lo largo de todo el ciclo de vida Objetivos: Planificar las actividades de gestin de la configuracin Identificar los elementos de configuracin del software Controlar los cambios hechos a los elementos de configuracin para mantener su integridad y trazabilidad Construir las versiones del producto final
http://www.ibiblio.org/gferg/ldp/SCM-OpenSource/index.html Software Configuration Management for Open Source Projects
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 81

CMM
(OPF)

Foco en el Proceso de la Org.


Definido

Propsito: Definir una responsabilidad a nivel de la organizacin para las actividades relacionadas con el proceso de software y su mejora Objetivos: SPI (Software Process Improvement) se coordina en toda la organizacin SPI se planifica Los fortalezas y debilidades de los procesos utilizados se identifican con respecto a un estndar

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

82

41

CMM

Definicin del Proceso de la Org. (OPD)


Definido

Propsito: Desarrollar y mantener un conjunto de procesos de software con el objetivo de establecer una base de referencia a partir de la cual se mejoren paulatinamente los procesos y los resultados de dichos procesos Objetivos: Desarrollo y mantenimiento de un proceso estndar para la organizacin Se recolecta, revisa y divulga informacin relacionada con el uso del proceso estndar de la organizacin por parte de los proyectos
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 83

CMM
(TP)

Programa de entrenamiento
Definido

Propsito: Desarrollar las capacidades y conocimiento de los individuos para que puedan desempear sus roles de manera eficiente y efectiva Objetivos: La formacin y entrenamiento se planifican Y se imparte, cubriendo las necesidades de los diferentes roles (aspectos de gestin y tcnicos)

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

84

42

CMM

Gestin Integrada del Software (ISM)

Definido

Propsito: Integrar las actividades de ingeniera y de gestin de software en un proceso coherente y definido, adaptado a las necesidades especficas de cada proyecto Objetivos: El proceso definido para el proyecto es una versin ajustada del proceso estndar de la organizacin El proyecto se planifica y gestiona de acuerdo al proceso definido para el proyecto
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 85

CMM
(SPE)

Ingeniera del producto de sw


Definido

Propsito: Ejecutar un proceso de ingeniera bien definido y coherente integrando todas las actividades de ingeniera de software para producir productos de software correctos y consistentes de manera eficiente y efectiva Objetivos: Las actividades de Ing.de SW estn definidas, integradas y se ejecutan de forma consistente para producir el software Los entregables se mantienen consistentes entre ellos 86 Planificacin estratgica de Proyectos de Software CACIC 2007 - Clase 5

43

CMM
(IC)

Coordinacin entre grupos

Definido Propsito: Establecer los medios para que el grupo de Ingeniera de Software participe activamente con los otros grupos de ingeniera para que las necesidades del cliente se satisfagan de manera efectiva y eficiente Objetivos: Los requerimientos del cliente son aprobados por todos los grupos afectados Los compromisos entre los grupos de ingeniera cuentan con la aprobacin de los grupos afectados Los grupos de ingeniera identifican y resuelven problemas entre los grupos
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 87

CMM
(PR)

Revisiones por pares


Definido

Propsito: Remover los defectos de los productos de software eficientemente en una etapa temprana y conseguir una mejor comprensin del producto que se est desarrollando y de su calidad en trminos de los defectos que presenta Objetivos: Revisiones por pares son planificadas Los defectos son detectados y removidos

CACIC 2007 - Clase 5

Planificacin estratgica de Proyectos de Software

88

44

CMM

Gestin cuantitativa del proceso (QPM)

Gestionado

Propsito: Controlar la ejecucin de los proyectos de software de manera cuantitativa Objetivos: Las actividades de QPM se planifican El desempeo del proceso del proceso definido para el proyecto es controlado cuantitativamente La capacidad del proceso de software estndar de la organizacin es conocido en trminos cuantitativos
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 89

CMM
(SQM)

Gestin de la calidad del sw


Gestionado

Propsito: Desarrollar un conocimiento cuantitativo de la calidad de los productos de software y conseguir alcanzar determinados objetivos de calidad Objetivos: Se planifica SQM de los proyectos Se definen objetivos medibles para la calidad de los productos de software y sus prioridades El progreso real hacia el logro de los objetivos de calidad para los productos de software se cuantifican y gestionan
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 90

45

CMM

Prevencin de defectos (DP)


Optimizante

Propsito: Identificar las causas de los defectos y eliminarlas para que los defectos no se repitan Objetivos: Las actividades de prevencin de defectos se planifican Las causas comunes de defectos Se identifican Se priorizan y son eliminadas
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 91

CMM

Gestin del cambio tecnolgico (TCM)

Optimizante

Propsito: Identificar nuevas tecnologas (herramientas, mtodos, procesos, etc.) y transferirlos a la organizacin de una manera ordenada Objetivos: La incorporacin de cambios tecnolgicos es planificada Las nuevas tecnologas se evalan para identificar su impacto sobre la calidad y productividad Nuevas tecnologas apropiadas son transferidas a la prctica normal en la organizacin
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 92

46

Gestin del cambio del proceso (PCM) Propsito: Optimizante Mejorar continuamente el proceso de software usado en la organizacin con la intencin de mejorar la calidad del software, aumentar la productividad y reducir los tiempos de desarrollo Objetivos: La mejora continua del proceso es planificada La participacin en las actividades de mejora del proceso de software abarca a toda la organizacin
CACIC 2007 - Clase 5 Planificacin estratgica de Proyectos de Software 93

CMM

47

Das könnte Ihnen auch gefallen