Академический Документы
Профессиональный Документы
Культура Документы
Edicin
2007
Septiembre
2007
Centro de Investigacin en
Matemticas (CIMAT)
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Terminologa
(ISO 9000:2000)
Calidad: Grado en el que un conjunto de
caractersticas inherentes cumple con los
requisitos
Inherente es que existe como una
caracterstica permanente
Pobre, buena, excelente calidad
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Terminologa
(ISO 9000:2000)
Gestin: actividades coordinadas para dirigir y
controlar una organizacin
Gestin de la Calidad: actividades coordinadas para
dirigir y controlar una organizacin en lo relativo a la
calidad
Incluye: poltica de la calidad, objetivos de la calidad,
planificacin de la calidad, control de la calidad,
aseguramiento de la calidad y mejora de la calidad
Qu es calidad?
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Calidad de software
Como entidad intelectual (intangible), es
ms difcil de caracterizar que los objetos
tangibles
Qu es calidad?
Introduccin
Modelos &
Estndares
Pensamiento
Sistmico
Proceso de IS
Proceso
Arquitectura
de Software
Administracin
Calidad SW
Calidad de
Software
Arquitecturas
de SW
Modelos de
Madurez
Mtricas
Componentes
Reutilizables
Aseguramiento
Calidad de SW
Referencias
Introduccin
Modelos &
Estndares
Tecnologa de
desarrollo
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Calidad
del
Proceso
Calidad
del
Producto
Referencias
Calidad
del
Personal
Mapa Conceptual PS e IS
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Calidad de SW
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
CMMi
SPICE
ISO 9001
Moprosoft.
Mejoramiento de procesos de
software a travs de tcnicas y
mtodos estadsticos
Calidad de SW
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Procesos de
Desarrollo
Desarrolladores
Procesos de
Administracin
Administradores
Clientes
Proceso de Organizacin
Introduccin
Integrar Estndar en el
desarrollo de Proyectos
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Proceso de
Organizacin
Modelo de
Referencia
organizacin
proceso
Proceso
Derivado
del
Modelo
de
Referencia
Proceso de
Administracin
Proceso de
Desarrollo
Proyecto 1
Proceso
Derivado
del
Modelo
de
Referencia
Proceso de
Administracin
Proceso de
Desarrollo
Proyecto n
Enfoques de IS
Introduccin
Enfoque
Descripcin
Programacin
D. Funcional
P. Estructurada
OOP
CBP
Arquitectura
de Software
Modelos de
Desarrollo
Cascada
Espiral
Prototipos
Aseguramiento
Calidad de SW
Automatizar
IS
CASE
UML
Mtodos
Formales
CSP
SDL
Z
Clean Room
Procesos de
IS
CMM
Trillium
BOOTSTRAP
ISO/IEC 15504
Modelos &
Estndares
Proceso
Referencias
Introduccin
Modelos &
Estndares
Proceso
Resumen de Modelos y
Estndares
Nivel
CMM
Bootstrap
SPICE
ISO 9001
Categoras [9]
Categoras
(PCs)
[5]
Categora
Niveles [5]
Proceso
Areas
Prcticas
(KPAs) [18]
Procesos [32]
Procesos
(PRs) [35]
Tpicos
Principales de
Areas (MTAs)
[20]
Prctica
Prcticas
(KPs) [150]
Atributos de
Calidad
(QSAs) [201]
Prcticas
Base (BPs)
[201]
Aspectos de
Admon. (MIs)
[177]
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Mtodos y Procesos
de IS Actuales
TickIT
ISO 9001 (1)
CMM (2)
BOOTSTRAP
ISO/IEC 12207
ISO/IEC TR 15504 (SPICE) (3)
BSI
Trillium
Moprosoft
Escala de Capacidad
de Procesos
Introduccin
Nivel
CMM
Bootstrap
SPICE
ISO 9001
Proceso
Incomplete
Fail
Arquitectura
de Software
Initial
Initial
Performed
Aseguramiento
Calidad de SW
Repeated
Repeated
Defined
Defined
Established
Managed
Managed
Predictable
Optimizing
Optimizing
Optimizing
Pass
Modelos &
Estndares
Referencias
Managed
El Proceso de IS
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Proceso de IS
Fundamentos
Modelo
Establecimiento
Evaluacin
Mejoramiento
Estandarizacin
de procesos de software
Definicin de Proceso de IS
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Conjunto de prcticas
secuenciales que son
funcionalmente coherentes y
reutilizables en la organizacin,
implementacin y administracin
de la ingeniera de software.
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Historia
Proceso de IS
Ingeniera de Software & Ciencia de la
Administracin
60s:
Ingeniera de Procesos y principios de
administracin en Ciencia de la
Administracin (Simon 60, Schein 61,
Ellis & Fred 62, Juran 62, Anthony 65,
Richardson 66, Hall 67)
70s & 80s:
Establecimiento de Ciencia de la
Administracin de acuerdo a la tabla de
de Fundamentos Administrativos.
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Historia
Proceso de IS
Conformidad de la calidad a los
requisitos y a las especificaciones
(Crosby 79, Juran 80, Deming 82)
Crculo de Deming (Plan-Do-Check-Act
PDCA) propuesto en Ciencia de la
Administracin: Modelacin y Anlisis de
Procesos de Software.
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Historia
Proceso de IS
70s: Crisis de Software (Naur & Randell 69,
Baker 72, Brooks 75, Hoare 75)
80s: Proceso de Software se reconoce como
un herramienta de la Ingeniera de Software
(Basili 80, Aron 83, Agresti 86, Evans 87,
Boehm 81,86,87, Gilb 88, Humphrey 87, 88,
89)
Desarrollo del Modelo CMM (Humphrey 87,
Paulk 93)
80s: Otros Modelos:
IEEE Software Engineering Standard (IEEE 83)
British Standard BS 5750 (BSI 87)
Introduccin
Desarrollo
Tradicional
Modelos &
Estndares
Requerimientos
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Diseo
Codificacin e Integracin
Prueba y Aceptacin
Mantenimiento
Caracterizacin actual
Introduccin
Modelos &
Estndares
Proceso
Un sistema a la vez
Proyectos de Software
Desarrollo de software para un cliente externo o
interno
Aseguramiento
Calidad de SW
Referencias
Problemas
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Tiempo y presupuesto
Proyectos de software son
sobreestimados/subestimados, fuera de
tiempo
Costos de Mantenimiento
80% del costo del sistema es debido a
mantenimiento
Competitividad
Personal de una empresa desarrolladora
de software dedicada a mantener software,
en lugar de crear nuevos sistemas
Caracterizacin Deseada
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Costos de Desarrollo
Reducir drsticamente los
costos de Desarrollo de
Software
Calidad
Aseguramiento
Calidad de SW
Referencias
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Caracterizacin
Deseada
Tiempo de mercado
Costo de desarrollo de un
producto no es importante
Tiempo de mercado es una
ventaja competitiva
Definicin de
requerimientos hasta la
distribucin del producto
es de mayor relevancia
Soluciones Tentativas
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Reutilizacin
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Lecciones Aprendidas
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Un enfoque de reutilizacin de
abajo hacia arriba no funciona en
la prctica.
Reutilizacin Oportuna
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Reutilizacin Planeada
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Arquitectura y Lneas
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
De Software
IS Basada en
Componentes
Arquitectura
de Software
Diseo de Arquitectura
Lneas de Productos
Aseguramiento
Calidad de SW
Referencias
Calidad
Costo de Desarrollo
Time-to Market
Costo Mantenimiento
Introduccin
Modelos &
Estndares
Proceso
Mercadotecnia
Ingeniera
Requerimientos
Arquitectura
de Software
Seleccin
Aseguramiento
Calidad de SW
Referencias
Proceso
de AS
Implementacin
Producto
Completo?
AS en Desarrollo de Software
Introduccin
Modelos &
Estndares
Requerimientos
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Diseo
Proceso
AS
Codificacin e Integracin
Prueba y Aceptacin
Mantenimiento
Proceso de AS
Introduccin
Modelos &
Estndares
Diseo
Funcional
Especificaciones
de Requerimientos
Proceso
Arquitectura
de Software
Arquitectura
de Aplicacin
Aseguramiento
Calidad de SW
Referencias
Transformar
Arquitectura
Soluciones de
Optimizacin
QA
Estimar Atributos
de Calidad
Diseo Arquitectnico
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Proceso de Arquitectura
(Reverse Engineering)
Nuevo
Diseo
Reutilizacin
Arquitectura
Dominio
Generalizacin
Aseguramiento
Calidad de SW
Referencias
Arquitectura
Sistema
Extraccin
Sistema
Actual
Librera de
Componentes
Reutilizables
Introduccin
Proceso de Arquitectura
(Forward Engineering)
Modelos &
Estndares
Diseo
Funcional
Especificaciones
de Requerimientos
Proceso
Arquitectura
de Software
Arquitectura
de Aplicacin
Aseguramiento
Calidad de SW
Referencias
Transformar
Arquitectura
Soluciones de
Optimizacin
QA
Estimar Atributos
de Calidad
Metodologa DFSS
Introduccin
Define
Measure
Analyze
Design
Validate
Modelos &
Estndares
Proceso
Arquitectura
de Software
Project
Startup
Gather Customer
Requirements
Perform
Functional
Analysis
Elaborate
Detailed Design
Prototyping
Results
Project
Scope
Translate
Reqs. into CTQs
(QFD)
Generate
Functional
Reqs.
Specify Process
Variables
Production &
testing
Develop
High-Level
Concepts
Prototyping &
Testing
Performance
results
Aseguramiento
Calidad de SW
Planning &
Management
Referencias
Elaborate Design
Reqs
Translate
Reqs. into CTQs
(QFD)
Evaluate High-level
design capacity
Evaluate Detailed
design capacity
Proceso de AS/DFSS
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Aseguramiento de la calidad
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Planeacin
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Planeacin
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Planeacin
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Planear la implementacin
La introduccin de un sistema de calidad en una
empresa tiene el mismo grado de complejidad que un
proyecto de desarrollo de software a gran escala.
Se debe elaborar un plan completo y detallando fechas,
actividades, logros, entregables y recursos necesarios
en la implementacin del sistema.
Actividades a realizar:
Implementar del programa cultural
Adoptar de un modelo de ciclo de vida
Disear un sistema de control de documentos
Elaborar y documentar procedimientos y estndares para
cada actividad y entregable de cada fase del ciclo de vida
Elaborar y documentar procedimientos y estndares de
las actividades de soporte
Definir e implementar un programa de mtricas.
Revisar Manual
Entrenamiento y apreciacin del sistema de calidad.
Programa de auditoria de calidad
Administracin de revisiones
Evaluacin de acuerdo al estndar o modelo seleccionado
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
La Jornada 08/03/2006
Homogeneizacin y consumismo;
Virtualizacin y tera-arquitecturas;
Modelos de entrega de software y estilos de desarrollo,
Comunidades y colaboracin.
Homogeneizacin y consumismo
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Virtualizacin y tera-arquitecturas
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Comunidades y colaboracin
Introduccin
Modelos &
Estndares
Proceso
Arquitectura
de Software
Aseguramiento
Calidad de SW
Referencias
Preguntas?
Dr. Cuauhtmoc Lemus Olalde
clemola@cimat.mx
Septiembre, 2007
www.cimat.mx/~clemola
Referencias
ISO Standards http://www.praxiom.com/
Tantara Hotlist http://www.tantara.ab.ca/info.htm
Best practices in CMM
http://www.gartnerconnects.com/reprints/wipro/CS-19-6994/1.htm
Software - the arrowhead of India's IT weaponry
http://atimes.com/reports/BL07Ai01.html
Pressman S. Roger, Ingeniera de Software: Un enfoque prctico.
5ta. Edicin, MacGraw Hill, 2002.
Lewis E. William, Software TEsting and Continuous Quality
Improvement CRC Press, 2000
Sommerville, Ian, Ingeniera de Software, Addison-Wesley, Sexta
Edicin, 2002.
Sanders, Joc, and Curran Eugene, Software Quality: A framework
for success in software development and support, ACM Press,
1994.
Drabick Roger, A Process Model of Software Quality
Assurance/Software Quality Engineering, Software Quality
Professional, Volumen 2, Issue 4, Septiembre 2000.
Layman Beth, Rohde Sharon, Experiences implementing a
software project measurement methodology, Software Quality
Professional, Volumen 2, Issue 1, Diciembre 1999.
Crosby, P., Quality is Free, McGraw-Hill, 1979.
Referencias
Garvin 1984
Albretch, A. J., Measuring Application Development Productivity,
Proceeedings IBM Application Development Symposium, Monterey,
CA, October 1979, pp. 83-92
Jones, C., Estimating Software Costs, McGraw-Hill,1998.
Grady, R. B., Practical results from measuring software quality,
Communications of the ACM, Vol. 36, Number 11, pp. 62-68, 1993.
Barnard, J., Price, A., Managing code inspection information,
IEEE Software, Volume 11, Number 2, pp. 59-69, 1994.
Offen, R. J., Jeffrey, R., Establishing software measurement
programs, IEEE Software Volume 14, Number 2, pp. 45-54, 1997.
Hall, T., Fenton, N., Implementing effective software metrics
program, IEEE Software, Volume 14, Number 2, pp. 55-64, 1997
Pulford, K., Kuntzmann-Combelles, A., et al., A Quantitative
Approach to Software Management, Addison-Wesley, 1996.
Gilb, T., Principles of Software Engineering Management, AddisonWesley, 1988.
McCall, J. A., Cavano, J. P., A Framework for the measurement of
Software Quality, Proceedings of ACM Software Quality Assurance
Workshop, November 1978, pp. 133-139.
Basili 1996
Shewart 1920
Referencias
Kautz, K., Making sense of Maeasurement for Small Organizations, IEEE
Software, Macrh 1999, pp. 14-20
Grable, R., et al., Metrics for Small Projects: Experiences at SED, IEEE
Software, March 1999, pp. 21-29
Park, R. E., et al., Goal Driven Software Measurement- A Guidebook, CMUSEI-96-BH-002, Software Engineering INstitute, CMU, Agugust, 1996.
Mills, H. D., et al., Cleanroom Software Engineering, IEEE Software Volume
4, Number 5, September, pp. 19-24, 1987.
Adams, E. N., Optimizing preventative service of software products, IBM
Journal Research and Development, Volume 28, Number 1, pp. 2-14, 1984.
Lyu, M., Software Reliability Engineering, McGraw-Hill, 1996.
Myers, G., The Art of Software Testing, Wiley, 1979.
Davis, A., 201 Principles of Software Development, McGraw-Hill, 1995
Bach 1994
Freedman, D. P., Weinberg, G. M., Handbook of Walkthroughs, Inspections
and Technical Reviews, Dorset House, 1990
Schulmeyer, G. C., McManus, J. I., Handbook of Software Quality Assurance,
Prentice-Hall, 1998
Kaplan, C., Clark, R., Tang, V., Secrets of Software Quality: 40 Innovations
from IBM, McGraw-Hill, 1995
Kan, S. H., Metrics and Models in Software Quality Engineering, AddisonWesley, 1995