Está en la página 1de 48

Est ndares de Estndares de Calidad Calidad para para el el Desarrollo Desarrollo y y Mantenimiento Mantenimiento de de Software Software

Dr. Dr. Marcelo Marcelo Jenkins Jenkins C. C.


Escuela n e tica Escuela de de Computaci Computacin e Inform Informtica Universidad Universidad de de Costa Costa Rica Rica San San Pedro, Pedro, Costa Costa Rica Rica Tel : (506) -4020 Tel: (506) 207 207-4020 Fax: -8846 Fax: (506) (506) 234 234-8846 mjenkins@cariari.ucr.ac.cr mjenkins@cariari.ucr.ac.cr
1

d a id l a C
2000 MJC

Aseguramiento Aseguramiento de de la la Calidad Calidad del del Software Software (SQA) (SQA)

2000 MJC

Caracter sticas del Caractersticas del Software Software


cil de estimar q La complejidad es dif difcil cil de medir q La calidad es dif difcil
q El proceso de desarrollo es muy

dependiente de factores humanos


Dif cil de controlar Difcil expuesto a altos riesgos l l Est Est
l l

us t c a Ex 0 3.

q El mantenimiento es costoso

2000 MJC

Importancia Importancia del del Software Software


[Jenkins 95]

La ventaja competitiva de cualquier La empresa en tecnolog a de tecnologa informaci n radica en el software y informacin el peopleware que posea, y no en el hardware que adquiera . adquiera.

Peopleware Software Hardware

2000 MJC

Costo . Hardware Costo del del Software Software vrs vrs. Hardware

F u n c i o n a l i d a d 1960

Hard ware

are w t f So

C o s t o

1970

1980

1990

2000

2000 MJC

Costo Costo de de Corregir Corregir Defectos Defectos


[Boehm 81]
100 90 80 70 60 50 40 30 20 10 0 1 2 3

Anlisis
6

Desarrollo

Mantenimiento
2000 MJC

Proceso Proceso de de Desarrollo Desarrollo de de Software Software Conjunto de pasos que se utilizan para desarrollar o mantener software.
Tareas l Procedimientos l Documentos l Reportes l Estndares l Mtodos l Herramientas
l
7

Anlisis Prueba Programacin Diseo

2000 MJC

Aseguramiento Aseguramiento de de la la Calidad Calidad del del Software Software (SQA) (SQA)
Conjunto sistem tico de sistemtico Procediprocedimientos, mientos herramientas y m todos mtodos SQA Herranecesarios para asegurar Mtodos mientas la calidad del software.

2000 MJC

Plan Plan de de Calidad Calidad del del Software Software


Conjunto planificado y sistem tico de Conjunto sistemtico acciones necesarias para proveer la confianza de que un producto cumple con los requerimientos t cnicos establecidos tcnicos establecidos
Estndar IEEE 610.12-1990 IEEE Software Engineering Standards IEEE Inc., 1994

2000 MJC

Calidad Calidad del del Software Software


q Concordancia con los

requerimientos funcionales y de rendimiento.


q Cumplimiento con los

us t c a Ex 0 3.

est ndares de estndares desarrollo.


q Cumplimiento con otras

Requerimientos

Estndares

Otros

caracter sticas caractersticas impl citas. implcitas.


10 2000 MJC

Factores Factores de de Calidad Calidad

Facilidad de mantenimiento Flexibilidad Facilidad de prueba

Mo d if ica ci n

Operacin
Correctitud Confiabilidad Eficiencia Integridad Facilidad de uso

in tac ap Ad

Portabilidad Reusabilidad Interoperabilidad

11

2000 MJC

Herramientas Herramientas Modernas Modernas


Herramientas CASE Desarrollo Orientado a Objetos Reingeniera de procesos Administracin del riesgo JAD, RAD, PD Lenguajes de 4ta generacn Contratacin externa
12 2000 MJC

Mtodos formales Inspecciones Mtricas Reusabilidad Ingeniera de la informacin

Est ndares Estndares

Est ndar de a de Estndar de Ingenier Ingeniera de Software Software


Regla o base de comparaci n que comparacin se utiliza para medir alg n aspecto algn del software.
Calidad l l Productividad n l l Duraci Duracin l l Esfuerzo l l Costo
l l

r a d n Est XYZ

13

2000 MJC

Por qu Utilizar ndares? Por qu Utilizar Est Estndares?


q Son indispensables cuando muchas personas,

productos y herramientas deben coexistir.


Promueven el buen uso de m todos y herramientas. mtodos n entre los desarrolladores. l l Permiten la comunicaci comunicacin
l l

q Facilitan el mantenimiento del software.

n del personal. q Facilitan la capacitaci capacitacin


q Proveen una base para evaluar los diferentes

productos de software.
q Permiten definir el proceso de software de una

organizaci n. organizacin.
14 2000 MJC

Objetivo ndares Objetivo de de los los Est Estndares


Usuario

SQA

Ingeniero de Software
Est ndare Estndare s

Nivel de calidad
15 2000 MJC

Utilizaci n de ndares Utilizacin de Est Estndares

CMM
Proceso Proceso de de mejoramiento mejoramiento de de la la calidad calidad Est ndares Estndares de de Software Software

ISO 9001 SPICE

16

2000 MJC

Referencias: Referencias: SQA SQA


q q

Schulmeyer G.G., McManus J.I. Handbook of Software Quality Assurance . Prentice Hall, 1999. Assurance. Roger S. Pressman . Ingenier a de Software: Un Enfoque Pressman. Ingeniera Aplicado. 4ta edici n, McGraw Hill, 1998. edicin, S. Lawrence Pfleeger , N. Fenton , S. Page . Evaluating Pfleeger, Fenton, Page. Software Engineering Standards . IEEE Computer, Sept . Standards. Sept. 1994, pags . 71 -79. pags. 71-79. N.F. Schneidewind , N. Fenton . Do Standards Improve Schneidewind, Fenton. Quality ? IEEE Software, Jan . 1996, pags . 22 -24. Quality? Jan. pags. 22-24. J. Sanders and E. Curran. Software Quality :A Quality: Framework for Success in Software Development and Support . Addison -Wesley, 1994. Support. Addison-Wesley,
2000 MJC

q q

q q

q q q q

17

Est ndares de a Estndares de Ingenier Ingeniera de de Software Software de de la la IEEE IEEE

I E E E

18

2000 MJC

Est ndares de Estndares de la la IEEE IEEE


Conjunto de 22 est ndares estndares
15 est ndares del proceso estndares ndares del producto l l 5 est estndares rminos l l 1 glosario de t trminos a (clasificaci n) l l 1 taxonom taxonoma (clasificacin)
l l

19

IEEE Standards Collections : Software Engineering . Collections: Engineering. IEEE Inc., 1999 edition . edition. IEEE Standards Board 345 East 47th Street New York , NY 10017 York, USA www.computer.org 2000 MJC

Est ndares del Estndares del Producto Producto


Anlisis
IEEE Std. 830-1884 Especif. de Requerimientos del Software

Desarrollo
IEEE Std. 1016-1987 Descripcin del Diseo del Software IEEE Std. 990-1987 Prcticas para el uso de ADA

Mantenimiento
IEEE Std. 1063-1987 Documentacin de Usuario

20

2000 MJC

Est ndares del Estndares del Proceso: Proceso: Calidad Calidad


IEEE Std. 730-1989 Planes de Calidad de Software IEEE Std. 1298-1992 Sistemas de SQA: Requerimientos IEEE Std. 1074-1991 Desarrollo de Ciclos de Vida IEEE Std. 1058.1-1987 Planes para Administracin de Proyectos IEEE Std. 1012-1997 Verificacin y Validacin IEEE Std. 1028-1988 Revisiones y Auditoras

21

2000 MJC

Est ndares del tricas Estndares del Proceso: Proceso: M Mtricas


IEEE Std. 998.1-1988 Medidas para Software Confiable IEEE Std. 998.2-1988 Gua para Medidas de Software Confiable IEEE Std. 1045-1992 Mtricas de Productividad IEEE Std. 1061-1992 Metodologa de Mtricas de Calidad

22

2000 MJC

Est ndares del Estndares del Proceso: Proceso: Pruebas Pruebas y y Mantenimiento Mantenimiento
IEEE Std. 1219-1992 Mantenimiento del Software IEEE Std. 828-1990 Planes de Configuracin del Software IEEE Std. 1042-1987 Gua para Configuracin del Software IEEE Std. 1008-1987 Pruebas de Unidad del Software IEEE Std. 829-1983 Documentacin de Pruebas

23

2000 MJC

Est ndares del Estndares del Proceso: Proceso: Otros Otros


IEEE Std. 1002-1987 Taxonoma de Estndares IEEE Std . 610.12 -1990 Std. 610.12-1990 Glosario Est ndar Estndar de T rminos Trminos IEEE Std. 1209-1992 Evaluacin de Herramientas CASE

24

2000 MJC

Revisiones as Revisiones y y Auditor Auditoras

25

2000 MJC

IEEE . 1028 -1988 para IEEE Std Std. 1028-1988 para Revisiones as del Revisiones y y Auditor Auditoras del Software Software
q Define procedimientos para definir y llevar a

cabo procesos de revisi n y auditor a del revisin auditora software. as q Describe cinco tipos de revisiones y auditor auditoras que se pueden utilizar.
q Incluye tanto al producto como al proceso de

software. as q No prescribe el uso de revisiones ni auditor auditoras particulares.


26 2000 MJC

Definiciones Definiciones
a q Auditor Auditora
Evaluaci n independiente (objetiva) de un producto Evaluacin o proceso de software. ndares, gu as, l l Mide el cumplimiento de est estndares, guas, especificaciones, y procedimientos. l l Utiliza criterios objetivos de medida debidamente documentados. Formato y contenido del producto. Descripci n del proceso para producirlo. Descripcin C mo chequear el cumplimiento. Cmo
l l

27

2000 MJC

Definiciones Definiciones (cont.) (cont.)


n q Revisi Revisin
Eval a un producto o proceso de software. Evala l l Determina status actual contra el plan original. l l Reporta resultados y recomendaciones. l l Sigue un proceso formal. l l Cuatro tipos de revisiones: Revisi n de administraci n Revisin administracin Revisi n t cnica Revisin tcnica Inspecci n Inspeccin Caminata
l l

28

2000 MJC

Tipos Tipos de de Revisiones Revisiones


Revisin Tipo Elemento Usuario

Revisiones de Semi-formal administracin Revisiones tcnicas Inspecciones Caminatas Semi-formal Formal Informal

Proyecto Producto Producto o proceso Producto

Administracin Equipo de desarrollo Equipo de desarrollo Equipo de desarrollo


2000 MJC

29

Ejemplo: as Ejemplo: Auditor Auditoras


q Objetivos
l l

Verificar el cumplimiento de los productos y procesos con los est ndares, gu as, estndares, guas, especificaciones y procedimientos establecidos

n general q Descripci Descripcin


l l

Chequea el status del proyecto contra contratos, requerimientos, planes est ndares, gu as, estndares, guas, especificaciones y procedimientos, para identificar problemas y recomendar soluciones.

30

2000 MJC

Ejemplo: as (cont.) Ejemplo: Auditor Auditoras (cont.)


q Responsabilidades

L der Lder Planificar, convocar y documentar reuniones. Asegurar la disponibilidad de la informaci n. informacin. l l Revisores Prepararse para las reuniones de revisi n. revisin. l l Autores Hacer disponible el material.
l l

31

2000 MJC

Ejemplo: as (cont.) Ejemplo: Auditor Auditoras (cont.)


q Entradas

Objetivos espec ficos de la auditor a. especficos auditora. ndares, gu as, l l Contratos, requerimientos, planes est estndares, guas, especificaciones y procedimientos. n actualizada del software o proceso a ser l l Informaci Informacin auditado.
l l

q Criterios de entrada

El plan del proyecto incluye una auditor a auditora l l Alguna persona o entidad interna o externa con autoridad la solicit . solicit.
l l

32

2000 MJC

Ejemplo: as (cont.) Ejemplo: Auditor Auditoras (cont.)


q Procedimiento

Planificar la auditor a auditora Items a examinar Reportes a producir Criterios de evaluaci n evaluacin Listas de chequeo para auditar Cronograma n inicial con la unidad a auditar (opcional) l l Reuni Reunin n del equipo de auditor a l l Preparaci Preparacin auditora Material de evidencia Informaci n de la organizaci n a auditar Informacin organizacin
l l 33 2000 MJC

Ejemplo: as (cont.) Ejemplo: Auditor Auditoras (cont.)


q Procedimiento
l l

(cont.)

Examen de los tems tems contra los criterios de evaluaci n evaluacin Entrevistas Visitas Estudio de evidencias

q Reportes

Reporte de auditor a a la entidad auditada auditora n del reporte l l Revisi Revisin l l Conferencia para exponer el reporte final
l l 2000 MJC

34

Ejemplo: as (cont.) Ejemplo: Auditor Auditoras (cont.)


q Criterios de salida

Se cumplieron todos los objetivos espec ficos. especficos. a y el reporte de l l El reporte de auditor auditora recomendaciones han sido entregados.
l l

q Salidas
l l

Reporte de auditor a auditora Hallazgos Recomendaciones (si aplica) Recomendaciones para m s auditor as. ms auditoras.

a q Pista de auditor auditora


l l 35

Reporte de auditor a auditora


2000 MJC

Referencias: ndares de Referencias: Est Estndares de la la IEEE IEEE


q q

IEEE Standards Collections : Software Engineering . Collections: Engineering. IEEE Inc., 1999 edition . edition. M. Jenkins . Adopting Development Standards to Jenkins. Achieve Process Improvement . Proceedings Sixth Improvement. International Conference on Software Quality, Montreal, Canada , 1996, pags . 111 -120. Canada, pags. 111-120. E.M. Bennatan . On -Time, Within Budget Software Bennatan. On-Time, Management Practices and Techniques . McGraw -Hill, Techniques. McGraw-Hill, 1992. E. Yourdon . Structured Walkthroughs . 4th edition , Yourdon. Walkthroughs. edition, Yourdon Press , 1989. Press, http:// www.computer.org http://www.computer.org
2000 MJC

q q

q q

q q

q q
36

Caso ctico: Caso Pr Prctico: Exactus Exactus de de Costa Costa Rica Rica

37

2000 MJC

La La Empresa Empresa
q 180 empleados

120 en Desarrollo cnico l l 30 en Soporte T Tcnico


l l

q Herramientas de desarrollo

Centura (4GL orientado a objetos) l l Visual Basic l l Visual C++


l l

q 1 producto
l l

EXACTUS

ses de latinoam rica q 200 Clientes en 15 pa pases latinoamrica


38 2000 MJC

Objetivo Objetivo de de Exactus Exactus de de Costa Costa Rica Rica


Alcanzar certificaci n Nivel 2 del CMM certificacin

CMM Nivel 2

39

2000 MJC

Implementaci n del Implementacin del Proyecto Proyecto de de SQA SQA


n inici un procesos de q La organizaci organizacin inici adaptaci n y adopci n de los est ndares de adaptacin adopcin estndares ingenier a de software de la IEEE. ingeniera as para definir q Se utilizaron como gu guas est ndares propios. estndares
An lisis de requerimientos Anlisis os l l Especificaciones de dise diseos n l l Programaci Programacin l l Pruebas l l Mantenimiento n de la Configuraci n l l Administraci Administracin Configuracin n de modificaciones l l Especificaci Especificacin
l l 40 2000 MJC

Por qu los ndares de Por qu los Est Estndares de la la IEEE? IEEE?


n bien documentados. q Est Estn blicos. q Son p pblicos. n actualizados. q Est Estn dicamente revisados. q Son peri peridicamente ficos. q Son muy espec especficos.
q Son independientes uno del otro.

E E E

41

2000 MJC

Ejemplo: ndar para Ejemplo: Est Estndar para Pruebas Pruebas del del Software Software
tems Prueba Revisados Ingeniero Convenciones de 1. Software Programacin Reporte Fallas Pruebas de Descripcin Verificacin tems Prueba Diseo del Revisados Software tems Reporte Prueba Verificados Sumario Pruebas Requerimientos 2. del Software Pruebas de Descripcin Validacin Diseo del Software Reporte Defectos Integracin tems Prueba Validados 3. Software Pruebas de Probado BD Pruebas Integracin
42 2000 MJC

El n de ndares El Proceso Proceso de de Adaptaci Adaptacin de Est Estndares


Identificar reas Problema Determinar Causas Identificar Soluciones Adaptar Soluciones Documentar Estndar Aprobar Estndar Capacitar Personal Probar Estndar
43 2000 MJC

Revisar y Mejorar Estndar

Beneficios Beneficios Obtenidos Obtenidos


n en la cantidad de re -trabajo. q Disminuci Disminucin re-trabajo.
q Mejor calidad de los productos.

n del proceso de q Mejor definici definicin desarrollo. n de nuevo q Facilitan la capacitaci capacitacin personal. n entre analistas. q Facilitan la comunicaci comunicacin
q Ha permitido un crecimiento ordenado del

Departamento de Desarrollo.
44 2000 MJC

Est ndares por Estndares por Definir Definir


q Control de subcontratistas. q Plan de inspecciones.

tricas de calidad y productividad. q Plan de m mtricas

45

2000 MJC

Consideraciones Consideraciones Finales Finales

46

2000 MJC

Est ndares de Estndares de la la IEEE IEEE


q Constituyen una buena base para definir

est ndares propios a la medida de la estndares organizaci n. organizacin.


q Al igual que el CMM, se concentran

I E E E

principalmente en la definici n de procesos. definicin ndares requieren un q Algunos de los est estndares proceso previo de adaptaci n antes de poder adaptacin ser adoptados en organizaciones peque as y pequeas medianas.
q No existe una manera objetiva de medir el nivel
47

de cumplimiento con los est ndares estndares

2000 MJC

Gracias Gracias !!

48

2000 MJC