NOTAS DEL CURSO Ingeniería de Software I DRA. MARIA DEL PILAR GÓMEZ GIL INAOEP V:22-Nov-2010.

Post on 22-Jan-2016

225 views 0 download

Transcript of NOTAS DEL CURSO Ingeniería de Software I DRA. MARIA DEL PILAR GÓMEZ GIL INAOEP V:22-Nov-2010.

NOTAS DEL CURSO

Ingeniería de Software IDRA. MARIA DEL PILAR GÓMEZ GILINAOEP

V:22-Nov-2010

CAPAS DE INGENIERÍA DE SOFTWARE

[Pressman 05]2

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

HERRAMIENTAS

Lenguajes IDE’s (Sistemas Integrados de

Desarrollo) Manejadores de Bases de Datos Sistemas Operativos Manejadores de Configuración de

Software CASE’s (Ingeniería de Software Asistida

por Computadora)3

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

MÉTODOS: CICLOS DE VIDA DE DESARROLLO DE SOFTWARE

4

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

Descripción general

Validación

Desarrollo

EspecificaciónVersión Inicial

Versión final

Versionesintermedias

Descripción general

Validación

Desarrollo

EspecificaciónVersión Inicial

Versión final

Versionesintermedias

Proceso UnificadoModelos incrementales

Modelos Espirales

ComunicaciónIniciación del proyectoAdquisición de requerimientos

PlaneaciónEstimaciónCalendarizaciónControl

ModeladoAnálisisDiseño

ConstrucciónCodificaciónPruebas

ArranqueEntregaSoporteRetroalimentación

ComunicaciónIniciación del proyectoAdquisición de requerimientos

PlaneaciónEstimaciónCalendarizaciónControl

ModeladoAnálisisDiseño

ConstrucciónCodificaciónPruebas

ArranqueEntregaSoporteRetroalimentación

Modelos de Cascada

LA PREMISA DE LA ADMINISTRACIÓN DE PROCESOS

“La calidad de un sistema está altamente influenciada

por la calidad de los procesos usados para adquirir sus insumos,

desarrollarlo y mantenerlo” [SEI 2007] 5

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

PROCESO DE DESARROLLO DE SOFTWARE El proceso para desarrollar Software de

calidad normalmente contiene los siguientes actividades: Comunicación. Planeación. Modelado. Construcción. Arranque (Despliegue).

6

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

LOS PROCESOS Y LA MEJORA

7

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

Vale la pena seguir Vale la pena seguir algún modelo de algún modelo de

mejora para asegurar mejora para asegurar que los procesos que los procesos

consiguen su objetivoconsiguen su objetivo

[Scott Adams]

MODELOS DE PROCESOS

Los modelos de procesos son guías que presentan las mejores prácticas para desarrollo del producto en cuestión.

Su propósito es ayudar a las organizaciones en la selección de estrategias de mejora, determinando la madurez del proceso actual, e identificando puntos importantes a atacar para mejorar tanto el proceso como la calidad de software

8

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

EL MODELO IDEAL

9

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

[McFeeley 96]

CAPACIDAD DE UN PROCESO

Es una medida estadística utilizada para

evaluar cuantitativamente la posibilidad de

que un proceso genere los productos o

servicios para los cuales fue diseñado.

Los modelos de mejora definen niveles de

capacidad en los procesos de las

organizaciones

10

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

11

UN EJEMPLO DE MEJORA EN CAPACIDAD DE PROCESOS USANDO EL MODELO CMM

Nivel 1: Inicial

Nivel 2: Repetible

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

12

CAPACIDAD DEL PROCESO (CONT.)

Nivel 3: Definido

Nivel 4: Administrado

[Humray_

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

13

CAPACIDAD DEL PROCESO (CONT.)

Nivel 5: Optimizado

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

14

Comparación Comparación de los de los niveles…niveles…

EJEMPLOS DE MODELOS DE MEJORA DE PROCESOS

Capability Maturity Model SW-CMM®

CMMI (Capability Maturity Model Integrated)

ISO/IEC TR 15504:1998 ISO 9000:2000 Sistemas de Gestión de la

Calidad – Requisitos de Desarrollo de Software

MoproSoft 15

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

@ IMPLEMENTANDO MODELOS DE PROCESOS

MODELOS DE MEJORA EN LA CULTURA LATINOAMERICANA

Los modelos deben ajustarse a la realidad de nuestra cultura

Los modelos internacionales deben ajustarse a factores característicos diferenciales de empresas latinoamericanas: tamaño, educación, disponibilidad de alta tecnología

17

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

IMPLEMENTANDO MODELOS DE PROCESOS

¿Es posible aplicar modelos de procesos en forma directa a una

empresa u organización informática altamente inmadura?

18

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

UN CASO DE ÉXITO EN LATINOAMÉRICA

Definitivamente sí es posible implementar modelos de mejora de empresas latinoamericanas, y

volverlas con esfuerzo y dedicación empresas de clase mundial

19

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

UN CASO DE ÉXITO EN LATINOAMÉRICA

Un caso de éxito es la empresa “Productora de Software S.A. (PSL)” http://www.psl.com.co/

localizada en Colombia, En 1996 PSL era una empresa con problemas

típicos en su proceso de desarrollo. Después de aplicar modelos de mejora PSL obtuvo

en 2003 el nivel 5 de CMMI, cuando sólo 8 compañías en el mundo lo tenían.

20

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

Un caso de Éxito en Latinoamérica

0.00

0.10

0.20

0.30

0.40

0.50

0.60

0.70

De

fec

tos

/KL

OC

Producto 1

1997 - 1998

Producto 2

1999 – 2000

Producto 4

2003 - 2004

Producto 3

2001 - 2002

Evolución defectos / KLOC encontrados por los clientes 1997 – 2004 en la empresa colombiana

“Productora de Software S.A. (PSL)” [Arámburo 2004]

@ PROSOFT

LA INDUSTRIA DE DESARROLLO DE SOFTWARE EN MÉXICO

Para que México pueda contar con una industria de desarrollo de software competitiva internacionalmente, es necesario entre otras cosas elevar la capacidad de procesos de las empresas desarrolladoras de software.

El gobierno Mexicano implementó en el 2002, el Programa para el Desarrollo de la Industria de Software (ProSoft) a través de la Secretaría de Economía.

23

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

OBJETIVO DE PROSOFT

El objetivo fundamental de Prosoft es elevar y extender la competitividad del país, mediante la estrategia de promover el uso y aprovechamiento de la tecnología y de la información

24

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

http://www.economia.gob.mx/?P=1128

ESTRATEGIA NO. 6 DE PROSOFT

6. Alcanzar niveles internacionales en capacidad de procesos 6.1 Definición de un modelo de procesos y de

evaluación apropiado para la industria de software mexicana

6.2 Formación de instituciones de capacitación y asesoría en mejora de procesos

6.3 Apoyo financiero para la capacitación y la evaluación de capacidad de procesos

... Para alcanzar esta estrategia, el gobierno

mexicano se dedicó a la tarea de construir un modelo de mejoras aplicable a México, lo que dio origen a Moprosoft

25

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

@ MOPROSOFT ®

MOPROSOFT

MoProSoft es un modelo de procesos para el desarrollo y mantenimiento de software dirigido a la pequeña y mediana industria (PYMES) y a las áreas internas de desarrollo de software.

Su objetivo principal es incorporar las mejores prácticas en gestión e ingeniería de software. Su incorporación en la industria permitirá elevar la capacidad de ofrecer productos y servicios con calidad.

27

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

CATEGORÍAS DE PROCESOS EN MOPROSOFT

MoProSoft está enfocado en procesos Estas proceso (llamados también prácticas) que

se han organizado por áreas de aplicación, llamadas “categorías de procesos”

Las categorías de procesos coinciden con los tres niveles básicos de la estructura de una organización: Alta Dirección, Gestión y Operación.

28

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

DIAGRAMA DE PROCESOS MOPROSOFT

29

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

[NYCE 2005]

PATRÓN DE PROCESOS

Cada proceso está descrito por un “patrón de procesos”

Un patrón de procesos en el contexto de Moprosoft, corresponde a la descripción detallada de lo que debe contener un proceso para conseguir su objetivo. Un patrón de procesos contiene las siguientes partes:Definición general de procesoPrácticasGuías de ajuste 30

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

NIVELES DE MADUREZ EN MOPROSOFT

El proceso de evaluación de Moprosoft considera 5 niveles de capacidad (el cumplimiento de un nivel implica el cumplimiento de los anteriores)

Nivel 1: Realizado. El proceso se implementa y alcanza su propósito

Nivel 2: Gestionado. El proceso realizado se administra. Sus productos de trabajo están establecidos, controlados y manenidos

Nivel 3: Establecido. El proceso realizado y gestionado se implementa por medio de un proceso definido (estandarizado)

Nivel 4: Predecible. El proceso establecido opera bajo límites de alcance

Nivel 5: Optimizado. El proceso predecible se mejora continuamente

31

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

@ LA NORMA MEXICANA

NMX-059/XX-I-NYCE 2005

MOPROSOFT COMO NORMA MEXICANA

Los gobiernos pueden asegurar la correcta implementación de estándares a través de convertirlos en Normas

En México, las normas asociadas con tecnología de Información son administradas por la asociación civil llamada “Normalización y Certificación Electrónica” (NYCE).

33

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

NYCE

Normalización y Certificación Electrónica, A. C, (NYCE) es una asociación civil sin fines de lucro creada en 1994

NYCE está acreditado y autorizada por las instancias legales y las dependencias del Gobierna Federal

Forma parte del Sistema Mexicano de Metrología, Normalización y Evaluación de la Conformidad (SISMENEC)

34

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

MISIÓN DE NYCE

La misión de NYCE es otorgar a las empresas electrónica, de telecomunicaciones y de tecnologías de información así como a las de otros sectores afines, un marco normativo que les permita comercializar sus productos y servicios y elevar su competitividad, dentro de los lineamientos internacionalmente aceptados

http://www.nyce.org.mx/mision.html35

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

LA NORMA NMX-I-059/XX-NYCE-2005

El 15 de Agosto del 2005, El Diario Oficial de la Federación publicó una declaratoria de la vigencia de una Norma Mexicana, compuesta de 4 partes, que lleva el título: “Tecnología de la Información – Software – Modelos de procesos evaluación para desarrollo y mantenimiento de Software”

Esta norma se construyó basándose en la aplicación del modelo MoProsoft

36

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

LA NORMA NMX-I-059/XX-NYCE-2005 (CONT.) Las 4 partes de la norma son:

Parte 01: Definición de Conceptos y Productos Parte 02: Requisitos de procesos (Moprosoft) Parte 03: Guía de Implementación de Procesos Parte 04: Directrices para la Evaluación de

Procesos (EvalProsoft)

37

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

VERIFICACIÓN DE LA NORMA NMX-059 Entre otras actividades, NYCE se encarga de

verificar si una organización cumple con los requisitos de alguna de las normas a su cargo.

La Verificación de una norma es la confirmación mediante la aportación de evidencia objetiva que se han cumplido los requisitos especificados en ésta.

38

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

VERIFICACIÓN DE LA NORMA NMX-059 (CONT.)

Consiste en determinar el nivel de madurez de los 9 procesos en las organizaciones que tienen como referencia el modelo Moprosoft

Se determina el nivel de madurez de capacidades para cada proceso verificado, y con base en ello, el nivel de madurez de capacidades de la organización, que es el máximo nivel de madurez alcanzado por todos los procesos de Moprosoft

39

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

DICTAMINES A LA NORMA 59 Probablemente alrededor de 200 dictámenes

a la fecha (Noviembre 2010)

Hay una lista en:

40

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0

http://www.nyce.org.mx/verificacion/ti.aspx

BIBLIOGRAFÍA

Aramburo, Jorge. “El subdesarrollo es un problema cultural y nó económico” SEPG 2004 Lantinoamérica. Guadalajara México. Nov. 2004

IEEE. Estándar IEEE 610.12 NYCE. “Tecnología de la Información – Software –

Modelos de procesos- evaluación para desarrollo y mantenimiento de Software. Parte 1: Definición de Conceptos y Productos” .Normalización y Certificación Electrónica A.C. México. 2007

R. Pressman. Software Engineering. A practitioner

Approach. Sixth Edition. Mc.Graw Hill, 2005. Software Engineering Institute. Capability Maturity

Model Integration (CMMI) Versión 1.2 Overview 2007

41

(c) P.G

óm

ez G

il. INA

OE

P 2

00

8-2

01

0