SlideShare una empresa de Scribd logo
1 de 69
Descargar para leer sin conexión
Ingeniería de Software I y II
(Parte 2)
Autor(es):
Ciencias de la Ingeniería
Carrera de Sistemas
Mg. Luis Fernando Aguas Bucheli
+593 984015184
@Aguaszoft
Laguas@uisrael.edu.ec
Aguaszoft@Outlook.es
Tener éxito no es cuestión de suerte, es el
resultado del esfuerzo más arduo
(Anónimo)
Ciencias de la Ingeniería
Carrera de Sistemas
Contenidos
• Modelo XP (Extreme Programming)
• Calidad de Software
• Pruebas de Carga
• Pruebas de Stress
• Versionamiento
Modelo XP (Extreme
Programming)
Ciencias de la Ingeniería
Carrera de Sistemas
Cambiando la forma
de hacer las cosas.
eXtremeProgramming
Emplea un enfoque
orientado a objetos.
Pararealizarsusdesarrollos
ProcesoXp
Planeación:
• Fundamentadaenlasllamadas“historias de
usuario”. Describenlascaracterísticasyla
funcionalidadrequerida.
• Losclientesasignanprioridadesaestas historias.
• Elstaff asignauncostodependiendode
experienciaspreviasyestimaciones.
• Lamedidaestadadaen “semanas”
• Tantoelclientecomoelstaff decidenenconjunto
paraloslanzamientos.
Historia de usuario
http://globalnerdy.com/wordpress/wp-content/uploads/2007/11/dilbert-xp02.gif
Diseño:
• Siguelafilosofía de“mantenerlosimple”.
• Proporcionaunaguíadediseñoparalashistorias, tal y
comoestánescritas.Nocubrefuncionalidades extra.
• EmplealasCRC(colaborador-responsabilidad-clase).
• Dificultaddediseño=prototipo rápidopara
evaluarlo.
• Prototipo dediseño=Soluciónpico.
• PromocionalaRefabricación.
http://rbazinet.files.wordpress.com/2007/11/dilbert2666700071126.gif
Diseño:
Codificación:
• Sedebecodificarlo masprontoposible.
• Peroesnecesariodesarrollarpruebasunitariasde las
historiasdeusuario.
• Soloseagregalo queestadiseñado.
• Laprogramaciónenparejasesunelemento
característicodeXp.
• Sedebeefectuarintegracióndeloscódigosenel
momentoquesonterminados.
Programación parejas
http://sontag.ca/gif/dilbertPairProgramming.gif
Pruebas:
• Serequierenpruebasdeunidad.
• Laautomatizacióndeestaspruebasesunelemento de
granimportancia.
• Conjuntouniversaldepruebas
• Pruebasdeaceptación:
• Características
• Funcionalidad
• Laspruebasderivandelashistoriasdeusuario.
Pruebe con el usuario
http://dilbert.com/dyn/str_strip/000000000/00000000/0000000/000000/00000/7000/200/7251/7251.strip.gif
Prácticas XP
Programación en parejas:
Toda la producción de código debe realizarse con
trabajo en parejas de programadores. Según Cockburn
y Williams
Propiedad colectiva del código:
Cualquier programador puede cambiar cualquier parte
del código en cualquier momento.
Integración continua:
Cada pieza de código es integrada en el sistema una
vez que esté lista. Así, el sistema puede llegar a ser
integrado y construido varias veces en un mismo día.
Prácticas XP
El juego de la planificación:
Es un espacio frecuente de comunicación entre el cliente y los
programadores.
Pruebas:
Las pruebas unitarias son establecidas antes de escribir el
código y son ejecutadas constantemente ante cada
modificación del sistema.
Refactorización (Refactoring):
Es una actividad constante de reestructuración del código con el
objetivo de remover duplicación de código, mejorar su
legibilidad, simplificarlo y hacerlo más flexible para facilitar los
posteriores cambios.
Prácticas XP
Horas por semana:
Se debe trabajar un máximo de 40 horas por semana. No se
trabajan horas extras en dos semanas seguidas. Si esto ocurre,
probablemente está ocurriendo un problema que debe corregirse.
Estándares de programación:
XP enfatiza la comunicación de los programadores a través del
código, con lo cual es indispensable que se sigan ciertos estándares
de programación (del equipo, de la organización u otros
estándares reconocidos para los lenguajes de programación
utilizados).
Metáfora:
En XP no se enfatiza la definición temprana de una arquitectura
estable para el sistema.
PROGRAMACIÓN EXTREMA (EXTREME
PROGRAMMING, XP)
VENTAJAS
• la programación extrema es
fácil de adaptarse tanto al
desarrollo de sistemas
pequeños como grandes
• optimiza el tiempo en
desarrollo
• permite realizar el
desarrollo en parejas para
complementar el
conocimiento
• el código es sencillo y
entendible
DESVENTAJAS
• no se tiene un costo o
tiempo definido
• el sistema va creciendo con
cada entrega que se le
realiza al cliente
• se necesitaría de la
presencia constante del
cliente lo cual resulta difícil
de lograr.
Adicional
• Consulte:
• Desarrolloadaptativodesoftware(DAS).
• Método dedesarrollodesistemasdinámicos
(MDSD).
• Melé
• Cristal
• Desarrolloconducidopor características(DCC)
• Modeladoágil(MA)
Calidad de Software
Ciencias de la Ingeniería
Carrera de Sistemas
Concepto de Calidad
Conjunto de propiedades y de
características de un producto o
servicio, que le confieren aptitud para
satisfacer una necesidades explícitas o
implícitas (ISO 8402)
Actividades de estandarización internacional
• Existen varias organizaciones de
estandarización internacional, algunas son
regionales mientras que otras son globales. Las
últimas están relacionadas con la ONU o son
independientes, como por ejemplo la
International Telecomunication Union (ITU). El
ISO y el IEC son de particular importancia para
SPICE.
Ambas tienen por objetivo facilitar
intercambio de bienes y servicios a nivel
internacional que abarcan diversas áreas
de IT.
Principales normas ISO
ISO 216 Medidas de papel: p.e. ISO A4
ISO 639 Nombres de lenguas
ISO 690:1987 regula las citas bibliográficas (corresponde a la
norma UNE 50104:1994)
ISO 690-2:1997 regula las citas bibliográficas de documentos
electrónicos
ISO 732 Formato de carrete de 120
ISO 838 Estandar para perforadoras de papel
ISO 1007 Formato de carrete de 135
ISO/IEC 1539-1 Lenguaje de programación Fortran
ISO 3029 Formato carrete de 126
• ISO 3166 códigos de países
• ISO 4217 códigos de divisas
• ISO 7811 Técnica de grabación en tarjetas de identificación
• ISO 8601 Representación del tiempo y la fecha. Adoptado en Internet
mediante el Date and Time Formats de W3C que utiliza UTC.
• ISO 8859 codificaciones de caracteres que incluye ASCII como un
subconjunto (Uno de ellos es el ISO 8859-1 que permite codificar las
lenguas originales de Europa occidental, como el español)
• ISO/IEC 8652:1995 Lenguaje de programación Ada
• ISO 9000 Sistemas de Gestión de la Calidad - Fundamentos y
vocabulario
• ISO 9001 Sistemas de Gestión de la Calidad - Requisitos
• ISO 9004 Sistemas de Gestión de la Calidad - Directrices para la mejora
del desempeño
• ISO 9660 Sistema de archivos de CD-ROM
• ISO 9899 Lenguaje de programación C
• ISO 10279 Lenguaje de programación BASIC
• ISO 10646 Universal Character Set
• ISO/IEC 11172 MPEG-1
• ISO/IEC_12207 Tecnología de la información /
Ciclo de vida del software
• ISO 13450 Formato de carrete de 110
• ISO/IEC 13818 MPEG-2
 ISO 14000 Estándares de Gestión Medioambiental en
entornos de producción
 ISO/IEC 14496 MPEG-4
 ISO/IEC 15444 JPEG 2000
 ISO 15693 Estándar para "tarjetas de vecindad"
 ISO/IEC 17799 Seguridad de la información
 ISO 26300 OpenDocument
 ISO/IEC 17025 Requisitos generales relativos a la
competencia de los laboratorios de ensayo y calibración
 ISO/IEC 27001 Sistema de Gestión de Seguridad de la
Información
(SPICE) ISO/IEC -TR 15504
Software Process Improvement Capability dEtermination
(Modelo para la mejora y evaluación de los procesos de desarrollo y mantenimiento de sistemas y productos de
software).
• Evaluación y mejora de procesos software.
• Inicio del proyecto 1993
• Se halla en fase de Informe Técnico
• Es aplicable a cualquier organización o empresa que quiera mejorar la
capacidad de cualquiera de sus procesos de software.
• Se puede utilizar como herramienta de evaluación del estado de los
procesos de software de la empresa.
• Es independiente de la organización, modelo del ciclo de vida,
metodología y tecnología.
SPICE
• Marco para métodos de evaluación, no un método o modelo
en sí
• Abarca:
– Evaluación de procesos
– Mejora de procesos
– Determinación de capacidad
• Alineado con el ISO/IEC 12207
• Intenta proporcionar un marco en el que armonizar los
enfoques existentes
• Se encuentra en la fase de Informe Técnico (TR) Tipo 2
Modelo de Referencia
• El modelo de referencia de SPICE describe los procesos que
una organización puede realizar para comprar, suministrar,
desarrollar, operar, mantener y soportar el software, así
como los atributos que caracterizan la capacidad de estos
procesos
• Proporciona una base para medir la capacidad de los
procesos, en función de grado de consecución de sus
atributos.
• El tiene dos dimensiones: Procesos y Capacidad
Dimensión Procesos
Contiene los procesos que se han de evaluar. Se corresponden
con los procesos del ciclo de vida del software, definidos al
estándar ISO 12207:1995
Se agrupan en categorías, en función del tipo de actividad al
cual se aplican:
• CUS: Cliente-Proveedor.
• ENG: Ingeniería.
• SUP: Soporte.
• MAN: Gestión.
• ORG: Organización.
CMM
Capability Maturity Model
Software Engineering Institute
Carnegy Mellon University
Mark C. Paulk
“CMM es una aplicación de sentido común
de los conceptos de gestión de procesos y
mejora de la calidad al desarrollo y
mantenimiento del software”
CMM
• Estudia los procesos de desarrollo de software de
una organización y produce una evaluación de la
madurez de la organización según una escala de
cinco niveles
• La madurez de un proceso es un indicador de la
capacidad para construir un software de calidad.
• Es un modelo para la mejora de las
organizaciones
• Obliga a una revisión constante.
Inicial
Repetible
Optimizado
Dirigit
Definit
CMM
CMM
Niveles de
madurez
Prácticas
clave
Características
comunes
Áreas claves
de proceso
Contienen
Organizadas con
Contienen
Indican
Alcanzan
Se aplican
Describen
Capacidad
del proceso
Objetivos
Implementación o
Institucionalización
Infraestructura
o actividades
CMM
•Es importante tener claro
• Dónde nos encontramos
• A dónde queremos llegar
• Cómo llegaremos
• Cómo sabremos si hemos llegado
•No se puede hacer todo de golpe
•Procesos piloto previos a un despliegue a gran
escala.
Certificación
La certificación, una exigencia?
• La Unión Europea edita el libro blanco sobre crecimiento,
competitividad y puestos de trabajo, y reconoce la calidad como un
elemento esencial de éxito de la empresa y constituye un factor
estratégico en la política europea de competitividad.
• Las empresas precisan marcas y certificados que ayuden a vender sus
productos en el mercado único en la era de la globalización.
• Se potencia la creación de infraestructuras de calidad: entidades de
acreditación, organismos de normalización, entidades de inspección,
etc.
Certificación
La certificación, una exigència?
• Se impulsa la implantación de programas de calidad en las distintas
administraciones públicas.
• Las grandes empresas exigen certificados de calidad a sus proveedores.
• Desde la administración se potencia mediante subvenciones, la implantación
de programas de calidad.
Certificación
Proceso habitual de certificación
• Motivación.
• Selección de la norma aplicable
• Subcontratación a empresa externa.
• Auditoría de certificación.
• Informe de acciones correctoras.
• Certificado.
• Imposición de seguimiento
• Incumplimiento!!!
Certificación
Documentación
• Solicitud formal.
• Sistema de calidad
• Manual de calidad
• Manual de procedimientos.
• Manual de especificaciones
• Otros documentos
• Expediente y certificación.
Certificación
Otros aspectes
• Plazos y costes
• Consultoría
• Formación
• Organismo certificador
• Mantenimiento de la certificación
• Seguimiento anual.
• Revisión de la certificación.
Pruebas de Carga y Stress
Ciencias de la Ingeniería
Carrera de Sistemas
CONCEPTO
• Se trata de evaluar el sistema o parte de
este durante o al final del desarrollo para
determinar si satisface los requisitos
iniciales.
• Este proceso consta de varios
componentes que ayudan para que la
prueba de un buen resultado
TIPOS DE PRUEBA
PRUEBAS UNITARIAS
• Se focaliza en ejecutar cada módulo (o
unidad mínima a ser probada, ej. = una
clase).
• Busca asegurar que el código funciona de
acuerdo con las especificaciones y que el
módulo lógico es válido
PRUEBAS DE INTEGRACIÓN
• Identificar errores introducidos por la
combinación de programas probados
unitariamente.
• Verificar que las especificaciones de diseño
sean alcanzadas.
• Determina el enfoque para avanzar desde
un nivel de integración de las componentes
al siguiente.
PRUEBA DE REGRESIÓN
• Determinar si los cambios recientes en
una parte de la aplicación tienen efecto
adverso en otras partes.
• La prueba de regresión es una nueva
corrida de casos de prueba previos.
• La prueba de regresión es un buen
candidato para automatización.
PRUEBAS DE HUMO
Toma éste nombre debido a que su objetivo es
probar el sistema constantemente buscando
que saque “humo” o falle.
• Los objetivos son los siguientes:
• Detectar los errores en realeases tempranos y
de manera fácil
• Probar el sistema constantemente
• Garantizar poco esfuerzo en la integración
final del sistema
PRUEBAS DEL SISTEMA
• Asegurar la apropiada navegación dentro
del sistema, ingreso de datos,
procesamiento y recuperación.
• Las pruebas del sistema deben enfocarse
en requisitos que puedan ser tomados
directamente de casos de uso y reglas y
funciones de negocios.
PRUEBAS DE DESEMPEÑO
• Las pruebas de desempeño miden tiempos
de respuesta, índices de procesamiento de
transacciones y otros requisitos sensibles al
tiempo.
• El objetivo de las pruebas es verificar y
validar los requisitos de desempeño que se
han especificado.
PRUEBAS DE CARGA
• Las pruebas de carga miden la capacidad
del sistema para continuar funcionando
apropiadamente bajo diferentes
condiciones de carga.
• La meta de las pruebas de carga es
determinar y asegurar que el sistema
funciona apropiadamente aún más allá de
la carga de trabajo máxima esperada.
PRUEBAS DE STRESS
Use los scripts utilizados en las pruebas de
desempeño.
Verificar que el sistema funciona
apropiadamente y sin errores, bajo estas
condiciones de stress:
• Máximo número de clientes conectados o
simulados (actuales o físicamente posibles)
• Múltiples usuarios desempeñando la
misma transacción con los mismos datos.
PRUEBAS DE VOLUMEN
• Las pruebas de volumen hacen referencia a grandes
cantidades de datos para determinar los límites en que
se causa que el Sistema falle.
• También identifican la carga máxima o volumen que el
sistema puede manejar en un período dado.
• Máximo (actual o físicamente posible).
• Máximo tamaño de base de datos (actual o escalado).
PRUEBAS DE VALIDACIÓN A
SISTEMAS A LA MEDIDA
• Pruebas del Ciclo del Negocio
• Asegurar que el sistema funciona de
acuerdo con el modelo de negocios
emulando todos los eventos en el tiempo y
en función del tiempo.
PRUEBAS DE CONFIGURACIÓN
• Validar y verificar que el cliente del sistema
funciona apropiadamente en las estaciones
de trabajo recomendadas.
• Estas pruebas verifican la operación del
sistema en diferentes configuraciones de
hardware y software.
• Con frecuencia, el número de
configuraciones posibles es demasiado
grande
Versionamiento
Ciencias de la Ingeniería
Carrera de Sistemas
Sistema de Control de Versiones
Jesús M. Castagnetto M., Ph.D. - Facultad de Ciencias y Filosofía,
y Dirección Universitaria de Información, Universidad Peruana Cayetano Heredia
● Permite el manejo de múltiplesrevisiones
Actúa a niveles de archivo decódigo,
directorio, proyecto, etc.
Se encarga de identificar, comparar, revertir, etc.,
cambios en la información
Ayuda en el desarrollo paralelo de un proyecto,
por múltiples programadores.
●
●
●
¿Qué puede controlar un SCV?
Jesús M. Castagnetto M., Ph.D. - Facultad de Ciencias y Filosofía,
y Dirección Universitaria de Información, Universidad Peruana Cayetano Heredia
● Archivos
Los más simples, controlan solamente
archivos individuales.
● Árboles de archivos
Los más avanzados, pueden manejar
directorios (y sub-directorios) con sus archivos
asociados, incluyendo el concepto de proyecto.
¿Cómo puede trabajar un SCV?
Jesús M. Castagnetto M., Ph.D. - Facultad de Ciencias y Filosofía,
y Dirección Universitaria de Información, Universidad Peruana Cayetano Heredia
● Local
Información acerca de cambiosse
mantiene en un repositoriolocal.
Centralizado
Necesitan el uso de un servidory
repositorio central.
Descentralizado
Permiten el uso de múltiples repositorios,y
sincronización entre ellos.
●
●
Evolución de los SCV
1
2
3
4
5
6
SCCS (1972)
0
1970 1975 1980 1986 1991 1997 2002 2008
RCS (1980)
CVS (1986)
Subversion (2000)
GNU arch (2003)
Bazaar (2005)
Source Code Control System (SCCS)
Desarrollo de los SCV (1)
Primera Generación
●
●
● Control de archivos individuales.
Almacenamiento de local (en el mismo
directorio) de revisiones.
Ejemplos: SCCS, RCS.
Desarrollo de los SCV (2)
SegundaGeneración
●
●
●
● Control de árboles de archivos.
Almacenamiento centralizadode
revisiones.
Manejo deficiente de algunas operaciones
(ej. renombrado de archivos).
Ejemplo: CVS.
Desarrollo de los SCV (3)
Jesús M. CastagnettoM., Ph.D. - Facultad de Cienciasy Filosofía, y
Dirección Universitariade Información, Universidad Peruana Cayetano Heredia
TerceraGeneración
●
●
●
● Control de árboles de archivos.
Almacenamiento centralizadode
revisiones.
Manejo completo de operaciones
complejas con archivos.
Ejemplo: Subversion.
Desarrollo de los SCV (4)
Jesús M. CastagnettoM., Ph.D. - Facultad de Cienciasy Filosofía, y
Dirección Universitariade Información, Universidad Peruana Cayetano Heredia
CuartaGeneración
●
●
●
● Control de árboles de archivos.
Almacenamiento descentralizadode
revisiones.
Manejo deficiente de algunos flujosde
trabajo y consolidacióncompleja.
Ejemplo: GNU arch.
Desarrollo de los SCV (5)
Jesús M. CastagnettoM., Ph.D. - Facultad de Cienciasy Filosofía, y
Dirección Universitariade Información, Universidad Peruana Cayetano Heredia
QuintaGeneración
●
●
●
● Control de árboles de archivos.
Almacenamiento descentralizadode
revisiones.
Manejo de múltiples flujos de trabajo,
inlcuyendo el centralizado.
Ejemplo: Bazaar.
Bazaar: http://bazaar-vcs.org/
Repositorio
Jesús M. Castagnetto M., Ph.D. - Facultad de Ciencias y Filosofía,
y Dirección Universitaria de Información, Universidad Peruana Cayetano Heredia
● Un sitio de almacenamiento derevisiones.
Puede estar estructurado internamente
como un solo archivo, una colección de
archivos, base de datos, etc.
Puede residir localmente (en el mismo
sistema de archivos), o ser remoto
(servidor o servidores).
●
●
GITHUB
Jesús M. Castagnetto M., Ph.D. - Facultad de Ciencias y Filosofía,
y Dirección Universitaria de Información, Universidad Peruana Cayetano Heredia
GitHub es una forja (plataforma de desarrollo
colaborativo) para alojar proyectos utilizando
el sistema de control de versionesGit.
Se utiliza principalmente para la creación de
código fuente de programas de ordenador.
Bibliografía
Bibliografía

Más contenido relacionado

La actualidad más candente

16 Cast Software Solo Pruebas 2009
16 Cast Software Solo Pruebas 200916 Cast Software Solo Pruebas 2009
16 Cast Software Solo Pruebas 2009Pepe
 
Unidad vi calidad_mantenimientopruebas_isbuap2020
Unidad vi calidad_mantenimientopruebas_isbuap2020Unidad vi calidad_mantenimientopruebas_isbuap2020
Unidad vi calidad_mantenimientopruebas_isbuap2020EtelvinaArchundia
 
Ingeniería del software
Ingeniería del softwareIngeniería del software
Ingeniería del softwareJoxany Chávez
 
Ingeniería de software II - Parte 1
Ingeniería de software II - Parte 1Ingeniería de software II - Parte 1
Ingeniería de software II - Parte 1Marta Silvia Tabares
 
Ingenieria de software iso 9000 & iso spice 15504
Ingenieria de software   iso 9000 & iso spice 15504Ingenieria de software   iso 9000 & iso spice 15504
Ingenieria de software iso 9000 & iso spice 15504Sergio Olivares
 
Iso 12207 diapositivas
Iso 12207 diapositivasIso 12207 diapositivas
Iso 12207 diapositivasskrass19
 
La Labor del Analista de Calidad en el Desarrollo de Software
La Labor del Analista de Calidad en el Desarrollo de SoftwareLa Labor del Analista de Calidad en el Desarrollo de Software
La Labor del Analista de Calidad en el Desarrollo de SoftwareScio Consulting
 
Curso de Ingeniería de Software - Capítulo 1
Curso de Ingeniería de Software - Capítulo 1Curso de Ingeniería de Software - Capítulo 1
Curso de Ingeniería de Software - Capítulo 1Eddie Malca
 
Construccion y Pruebas de Software
Construccion y Pruebas de SoftwareConstruccion y Pruebas de Software
Construccion y Pruebas de SoftwareGustavo Bazan Maal
 
Gestion Calidad Software
Gestion Calidad Software Gestion Calidad Software
Gestion Calidad Software Johan Prevot R
 
PresentacióNde Los Estandares Iso,Spice Y Cmm
PresentacióNde  Los  Estandares Iso,Spice Y CmmPresentacióNde  Los  Estandares Iso,Spice Y Cmm
PresentacióNde Los Estandares Iso,Spice Y Cmmguest8e0579
 
Calidad software
Calidad softwareCalidad software
Calidad softwaremileing
 
Servicio Pruebas de Software v1.0 (CESJE)
Servicio Pruebas de Software v1.0 (CESJE)Servicio Pruebas de Software v1.0 (CESJE)
Servicio Pruebas de Software v1.0 (CESJE)Marcos Blanco Galán
 

La actualidad más candente (20)

16 Cast Software Solo Pruebas 2009
16 Cast Software Solo Pruebas 200916 Cast Software Solo Pruebas 2009
16 Cast Software Solo Pruebas 2009
 
Unidad vi calidad_mantenimientopruebas_isbuap2020
Unidad vi calidad_mantenimientopruebas_isbuap2020Unidad vi calidad_mantenimientopruebas_isbuap2020
Unidad vi calidad_mantenimientopruebas_isbuap2020
 
Software
SoftwareSoftware
Software
 
Estandares ieee
Estandares ieeeEstandares ieee
Estandares ieee
 
Ieee 1074
Ieee 1074Ieee 1074
Ieee 1074
 
Ingeniería del software
Ingeniería del softwareIngeniería del software
Ingeniería del software
 
Ingeniería de software II - Parte 1
Ingeniería de software II - Parte 1Ingeniería de software II - Parte 1
Ingeniería de software II - Parte 1
 
Estandares ieee
Estandares ieeeEstandares ieee
Estandares ieee
 
Presentacion gvLOGOS-GEDES
Presentacion gvLOGOS-GEDESPresentacion gvLOGOS-GEDES
Presentacion gvLOGOS-GEDES
 
SPICE
SPICESPICE
SPICE
 
Ingenieria de software iso 9000 & iso spice 15504
Ingenieria de software   iso 9000 & iso spice 15504Ingenieria de software   iso 9000 & iso spice 15504
Ingenieria de software iso 9000 & iso spice 15504
 
Iso 12207 diapositivas
Iso 12207 diapositivasIso 12207 diapositivas
Iso 12207 diapositivas
 
La Labor del Analista de Calidad en el Desarrollo de Software
La Labor del Analista de Calidad en el Desarrollo de SoftwareLa Labor del Analista de Calidad en el Desarrollo de Software
La Labor del Analista de Calidad en el Desarrollo de Software
 
Curso de Ingeniería de Software - Capítulo 1
Curso de Ingeniería de Software - Capítulo 1Curso de Ingeniería de Software - Capítulo 1
Curso de Ingeniería de Software - Capítulo 1
 
Construccion y Pruebas de Software
Construccion y Pruebas de SoftwareConstruccion y Pruebas de Software
Construccion y Pruebas de Software
 
Gestion Calidad Software
Gestion Calidad Software Gestion Calidad Software
Gestion Calidad Software
 
PresentacióNde Los Estandares Iso,Spice Y Cmm
PresentacióNde  Los  Estandares Iso,Spice Y CmmPresentacióNde  Los  Estandares Iso,Spice Y Cmm
PresentacióNde Los Estandares Iso,Spice Y Cmm
 
Calidad software
Calidad softwareCalidad software
Calidad software
 
Calidad software
Calidad softwareCalidad software
Calidad software
 
Servicio Pruebas de Software v1.0 (CESJE)
Servicio Pruebas de Software v1.0 (CESJE)Servicio Pruebas de Software v1.0 (CESJE)
Servicio Pruebas de Software v1.0 (CESJE)
 

Similar a Tutorías Preparación Complexivo: Ingeniería de Software I y II (Parte 2)

Estandares Iso,Spice Y Cmm Y Empresas
Estandares Iso,Spice Y Cmm Y  EmpresasEstandares Iso,Spice Y Cmm Y  Empresas
Estandares Iso,Spice Y Cmm Y Empresasguest8e0579
 
Modelos Prescriptivos del Desarrollo del Sistema de Información
Modelos Prescriptivos del Desarrollo del Sistema de InformaciónModelos Prescriptivos del Desarrollo del Sistema de Información
Modelos Prescriptivos del Desarrollo del Sistema de InformaciónIsaias Toledo
 
Metodologia xp
Metodologia xpMetodologia xp
Metodologia xp0202278446
 
Plantilla trabajo final estandares de calidad de TI.
Plantilla trabajo final estandares de calidad de TI.Plantilla trabajo final estandares de calidad de TI.
Plantilla trabajo final estandares de calidad de TI.Darthuz Kilates
 
Metodologias agiles Programacion Xtrema
Metodologias agiles Programacion Xtrema Metodologias agiles Programacion Xtrema
Metodologias agiles Programacion Xtrema Lis Pater
 
LA INGENIERÍA DE SOFTWARE Y RUP
LA INGENIERÍA DE SOFTWARE Y RUPLA INGENIERÍA DE SOFTWARE Y RUP
LA INGENIERÍA DE SOFTWARE Y RUPKudos S.A.S
 
ADS - Sesion1
ADS - Sesion1ADS - Sesion1
ADS - Sesion1willy0303
 
Ingenieria de Software
Ingenieria de SoftwareIngenieria de Software
Ingenieria de SoftwarePablo Niama
 
Desarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por PruebasDesarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por Pruebas.. ..
 
Trabajo final sergio_santoyo
Trabajo final sergio_santoyoTrabajo final sergio_santoyo
Trabajo final sergio_santoyoSergio Santoyo
 
Ads Sesion1 10393
Ads Sesion1 10393Ads Sesion1 10393
Ads Sesion1 10393guest31882d
 
Unidad 1 Ingenieria de software
Unidad 1 Ingenieria de softwareUnidad 1 Ingenieria de software
Unidad 1 Ingenieria de softwareJahiro Bojorquez
 

Similar a Tutorías Preparación Complexivo: Ingeniería de Software I y II (Parte 2) (20)

EFC-ISW-Luis Fernando Aguas.pptx
EFC-ISW-Luis Fernando Aguas.pptxEFC-ISW-Luis Fernando Aguas.pptx
EFC-ISW-Luis Fernando Aguas.pptx
 
Efc isw-luis fernando aguas - 29012022 1500
Efc isw-luis fernando aguas - 29012022 1500Efc isw-luis fernando aguas - 29012022 1500
Efc isw-luis fernando aguas - 29012022 1500
 
EFC-ISW-Luis Fernando Aguas
EFC-ISW-Luis Fernando Aguas EFC-ISW-Luis Fernando Aguas
EFC-ISW-Luis Fernando Aguas
 
Estandares Iso,Spice Y Cmm Y Empresas
Estandares Iso,Spice Y Cmm Y  EmpresasEstandares Iso,Spice Y Cmm Y  Empresas
Estandares Iso,Spice Y Cmm Y Empresas
 
Modelos Prescriptivos del Desarrollo del Sistema de Información
Modelos Prescriptivos del Desarrollo del Sistema de InformaciónModelos Prescriptivos del Desarrollo del Sistema de Información
Modelos Prescriptivos del Desarrollo del Sistema de Información
 
Estandares ieee
Estandares ieeeEstandares ieee
Estandares ieee
 
Ivan
IvanIvan
Ivan
 
Metodologia xp
Metodologia xpMetodologia xp
Metodologia xp
 
Plantilla trabajo final estandares de calidad de TI.
Plantilla trabajo final estandares de calidad de TI.Plantilla trabajo final estandares de calidad de TI.
Plantilla trabajo final estandares de calidad de TI.
 
Metodologias agiles Programacion Xtrema
Metodologias agiles Programacion Xtrema Metodologias agiles Programacion Xtrema
Metodologias agiles Programacion Xtrema
 
UNIDAD_I.ppt
UNIDAD_I.pptUNIDAD_I.ppt
UNIDAD_I.ppt
 
Clase 11
Clase 11Clase 11
Clase 11
 
LA INGENIERÍA DE SOFTWARE Y RUP
LA INGENIERÍA DE SOFTWARE Y RUPLA INGENIERÍA DE SOFTWARE Y RUP
LA INGENIERÍA DE SOFTWARE Y RUP
 
ADS - Sesion1
ADS - Sesion1ADS - Sesion1
ADS - Sesion1
 
Ingeniería de software
Ingeniería de softwareIngeniería de software
Ingeniería de software
 
Ingenieria de Software
Ingenieria de SoftwareIngenieria de Software
Ingenieria de Software
 
Desarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por PruebasDesarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por Pruebas
 
Trabajo final sergio_santoyo
Trabajo final sergio_santoyoTrabajo final sergio_santoyo
Trabajo final sergio_santoyo
 
Ads Sesion1 10393
Ads Sesion1 10393Ads Sesion1 10393
Ads Sesion1 10393
 
Unidad 1 Ingenieria de software
Unidad 1 Ingenieria de softwareUnidad 1 Ingenieria de software
Unidad 1 Ingenieria de software
 

Más de Luis Fernando Aguas Bucheli (20)

P-S2.pptx
P-S2.pptxP-S2.pptx
P-S2.pptx
 
EBTS-S1.pptx
EBTS-S1.pptxEBTS-S1.pptx
EBTS-S1.pptx
 
P-S3.pptx
P-S3.pptxP-S3.pptx
P-S3.pptx
 
EBTS-S4.pptx
EBTS-S4.pptxEBTS-S4.pptx
EBTS-S4.pptx
 
P-S4.pptx
P-S4.pptxP-S4.pptx
P-S4.pptx
 
P-S1.pptx
P-S1.pptxP-S1.pptx
P-S1.pptx
 
EBTS-S3.pptx
EBTS-S3.pptxEBTS-S3.pptx
EBTS-S3.pptx
 
EBTS-S2.pptx
EBTS-S2.pptxEBTS-S2.pptx
EBTS-S2.pptx
 
PDIDTI-S7.pptx
PDIDTI-S7.pptxPDIDTI-S7.pptx
PDIDTI-S7.pptx
 
PDIDTI-S4.pptx
PDIDTI-S4.pptxPDIDTI-S4.pptx
PDIDTI-S4.pptx
 
PDIDTI-S2.pptx
PDIDTI-S2.pptxPDIDTI-S2.pptx
PDIDTI-S2.pptx
 
PDIDTI-S1.pptx
PDIDTI-S1.pptxPDIDTI-S1.pptx
PDIDTI-S1.pptx
 
PDIDTI-S8.pptx
PDIDTI-S8.pptxPDIDTI-S8.pptx
PDIDTI-S8.pptx
 
PDIDTI-S6.pptx
PDIDTI-S6.pptxPDIDTI-S6.pptx
PDIDTI-S6.pptx
 
PDIDTI-S5.pptx
PDIDTI-S5.pptxPDIDTI-S5.pptx
PDIDTI-S5.pptx
 
PDIDTI-S3.pptx
PDIDTI-S3.pptxPDIDTI-S3.pptx
PDIDTI-S3.pptx
 
TIC-S4.pptx
TIC-S4.pptxTIC-S4.pptx
TIC-S4.pptx
 
TIC-S3.pptx
TIC-S3.pptxTIC-S3.pptx
TIC-S3.pptx
 
TIC-S2.pptx
TIC-S2.pptxTIC-S2.pptx
TIC-S2.pptx
 
TIC-S5.pptx
TIC-S5.pptxTIC-S5.pptx
TIC-S5.pptx
 

Último

Curso intensivo de soldadura electrónica en pdf
Curso intensivo de soldadura electrónica  en pdfCurso intensivo de soldadura electrónica  en pdf
Curso intensivo de soldadura electrónica en pdfFernandaGarca788912
 
Tiempos Predeterminados MOST para Estudio del Trabajo II
Tiempos Predeterminados MOST para Estudio del Trabajo IITiempos Predeterminados MOST para Estudio del Trabajo II
Tiempos Predeterminados MOST para Estudio del Trabajo IILauraFernandaValdovi
 
sistema de construcción Drywall semana 7
sistema de construcción Drywall semana 7sistema de construcción Drywall semana 7
sistema de construcción Drywall semana 7luisanthonycarrascos
 
Linealización de sistemas no lineales.pdf
Linealización de sistemas no lineales.pdfLinealización de sistemas no lineales.pdf
Linealización de sistemas no lineales.pdfrolandolazartep
 
Introducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptIntroducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptEduardoCorado
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)ssuser563c56
 
Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdfevin1703e
 
Unidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptxUnidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptxEverardoRuiz8
 
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kVEl proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kVSebastianPaez47
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfedsonzav8
 
TALLER PAEC preparatoria directamente de la secretaria de educación pública
TALLER PAEC preparatoria directamente de la secretaria de educación públicaTALLER PAEC preparatoria directamente de la secretaria de educación pública
TALLER PAEC preparatoria directamente de la secretaria de educación públicaSantiagoSanchez353883
 
Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.ALEJANDROLEONGALICIA
 
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptxguillermosantana15
 
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Francisco Javier Mora Serrano
 
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdffredyflores58
 
Flujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxFlujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxEduardoSnchezHernnde5
 
ECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfmatepura
 
Presentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdf
Presentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdfPresentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdf
Presentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdfMIGUELANGELCONDORIMA4
 
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfTAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfAntonioGonzalezIzqui
 

Último (20)

Curso intensivo de soldadura electrónica en pdf
Curso intensivo de soldadura electrónica  en pdfCurso intensivo de soldadura electrónica  en pdf
Curso intensivo de soldadura electrónica en pdf
 
Tiempos Predeterminados MOST para Estudio del Trabajo II
Tiempos Predeterminados MOST para Estudio del Trabajo IITiempos Predeterminados MOST para Estudio del Trabajo II
Tiempos Predeterminados MOST para Estudio del Trabajo II
 
sistema de construcción Drywall semana 7
sistema de construcción Drywall semana 7sistema de construcción Drywall semana 7
sistema de construcción Drywall semana 7
 
Linealización de sistemas no lineales.pdf
Linealización de sistemas no lineales.pdfLinealización de sistemas no lineales.pdf
Linealización de sistemas no lineales.pdf
 
Introducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptIntroducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.ppt
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
 
Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdf
 
Unidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptxUnidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptx
 
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kVEl proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdf
 
TALLER PAEC preparatoria directamente de la secretaria de educación pública
TALLER PAEC preparatoria directamente de la secretaria de educación públicaTALLER PAEC preparatoria directamente de la secretaria de educación pública
TALLER PAEC preparatoria directamente de la secretaria de educación pública
 
Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.
 
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
 
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
 
VALORIZACION Y LIQUIDACION MIGUEL SALINAS.pdf
VALORIZACION Y LIQUIDACION MIGUEL SALINAS.pdfVALORIZACION Y LIQUIDACION MIGUEL SALINAS.pdf
VALORIZACION Y LIQUIDACION MIGUEL SALINAS.pdf
 
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
 
Flujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxFlujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptx
 
ECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdf
 
Presentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdf
Presentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdfPresentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdf
Presentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdf
 
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfTAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
 

Tutorías Preparación Complexivo: Ingeniería de Software I y II (Parte 2)

  • 1. Ingeniería de Software I y II (Parte 2) Autor(es): Ciencias de la Ingeniería Carrera de Sistemas Mg. Luis Fernando Aguas Bucheli +593 984015184 @Aguaszoft Laguas@uisrael.edu.ec Aguaszoft@Outlook.es
  • 2. Tener éxito no es cuestión de suerte, es el resultado del esfuerzo más arduo (Anónimo) Ciencias de la Ingeniería Carrera de Sistemas
  • 3. Contenidos • Modelo XP (Extreme Programming) • Calidad de Software • Pruebas de Carga • Pruebas de Stress • Versionamiento
  • 4. Modelo XP (Extreme Programming) Ciencias de la Ingeniería Carrera de Sistemas
  • 5. Cambiando la forma de hacer las cosas. eXtremeProgramming
  • 6. Emplea un enfoque orientado a objetos. Pararealizarsusdesarrollos
  • 8. Planeación: • Fundamentadaenlasllamadas“historias de usuario”. Describenlascaracterísticasyla funcionalidadrequerida. • Losclientesasignanprioridadesaestas historias. • Elstaff asignauncostodependiendode experienciaspreviasyestimaciones. • Lamedidaestadadaen “semanas” • Tantoelclientecomoelstaff decidenenconjunto paraloslanzamientos.
  • 10. Diseño: • Siguelafilosofía de“mantenerlosimple”. • Proporcionaunaguíadediseñoparalashistorias, tal y comoestánescritas.Nocubrefuncionalidades extra. • EmplealasCRC(colaborador-responsabilidad-clase). • Dificultaddediseño=prototipo rápidopara evaluarlo. • Prototipo dediseño=Soluciónpico. • PromocionalaRefabricación.
  • 12. Codificación: • Sedebecodificarlo masprontoposible. • Peroesnecesariodesarrollarpruebasunitariasde las historiasdeusuario. • Soloseagregalo queestadiseñado. • Laprogramaciónenparejasesunelemento característicodeXp. • Sedebeefectuarintegracióndeloscódigosenel momentoquesonterminados.
  • 14. Pruebas: • Serequierenpruebasdeunidad. • Laautomatizacióndeestaspruebasesunelemento de granimportancia. • Conjuntouniversaldepruebas • Pruebasdeaceptación: • Características • Funcionalidad • Laspruebasderivandelashistoriasdeusuario.
  • 15. Pruebe con el usuario http://dilbert.com/dyn/str_strip/000000000/00000000/0000000/000000/00000/7000/200/7251/7251.strip.gif
  • 16. Prácticas XP Programación en parejas: Toda la producción de código debe realizarse con trabajo en parejas de programadores. Según Cockburn y Williams Propiedad colectiva del código: Cualquier programador puede cambiar cualquier parte del código en cualquier momento. Integración continua: Cada pieza de código es integrada en el sistema una vez que esté lista. Así, el sistema puede llegar a ser integrado y construido varias veces en un mismo día.
  • 17. Prácticas XP El juego de la planificación: Es un espacio frecuente de comunicación entre el cliente y los programadores. Pruebas: Las pruebas unitarias son establecidas antes de escribir el código y son ejecutadas constantemente ante cada modificación del sistema. Refactorización (Refactoring): Es una actividad constante de reestructuración del código con el objetivo de remover duplicación de código, mejorar su legibilidad, simplificarlo y hacerlo más flexible para facilitar los posteriores cambios.
  • 18. Prácticas XP Horas por semana: Se debe trabajar un máximo de 40 horas por semana. No se trabajan horas extras en dos semanas seguidas. Si esto ocurre, probablemente está ocurriendo un problema que debe corregirse. Estándares de programación: XP enfatiza la comunicación de los programadores a través del código, con lo cual es indispensable que se sigan ciertos estándares de programación (del equipo, de la organización u otros estándares reconocidos para los lenguajes de programación utilizados). Metáfora: En XP no se enfatiza la definición temprana de una arquitectura estable para el sistema.
  • 19. PROGRAMACIÓN EXTREMA (EXTREME PROGRAMMING, XP) VENTAJAS • la programación extrema es fácil de adaptarse tanto al desarrollo de sistemas pequeños como grandes • optimiza el tiempo en desarrollo • permite realizar el desarrollo en parejas para complementar el conocimiento • el código es sencillo y entendible DESVENTAJAS • no se tiene un costo o tiempo definido • el sistema va creciendo con cada entrega que se le realiza al cliente • se necesitaría de la presencia constante del cliente lo cual resulta difícil de lograr.
  • 20. Adicional • Consulte: • Desarrolloadaptativodesoftware(DAS). • Método dedesarrollodesistemasdinámicos (MDSD). • Melé • Cristal • Desarrolloconducidopor características(DCC) • Modeladoágil(MA)
  • 21. Calidad de Software Ciencias de la Ingeniería Carrera de Sistemas
  • 22. Concepto de Calidad Conjunto de propiedades y de características de un producto o servicio, que le confieren aptitud para satisfacer una necesidades explícitas o implícitas (ISO 8402)
  • 23. Actividades de estandarización internacional • Existen varias organizaciones de estandarización internacional, algunas son regionales mientras que otras son globales. Las últimas están relacionadas con la ONU o son independientes, como por ejemplo la International Telecomunication Union (ITU). El ISO y el IEC son de particular importancia para SPICE.
  • 24. Ambas tienen por objetivo facilitar intercambio de bienes y servicios a nivel internacional que abarcan diversas áreas de IT.
  • 25. Principales normas ISO ISO 216 Medidas de papel: p.e. ISO A4 ISO 639 Nombres de lenguas ISO 690:1987 regula las citas bibliográficas (corresponde a la norma UNE 50104:1994) ISO 690-2:1997 regula las citas bibliográficas de documentos electrónicos ISO 732 Formato de carrete de 120 ISO 838 Estandar para perforadoras de papel ISO 1007 Formato de carrete de 135 ISO/IEC 1539-1 Lenguaje de programación Fortran ISO 3029 Formato carrete de 126
  • 26. • ISO 3166 códigos de países • ISO 4217 códigos de divisas • ISO 7811 Técnica de grabación en tarjetas de identificación • ISO 8601 Representación del tiempo y la fecha. Adoptado en Internet mediante el Date and Time Formats de W3C que utiliza UTC. • ISO 8859 codificaciones de caracteres que incluye ASCII como un subconjunto (Uno de ellos es el ISO 8859-1 que permite codificar las lenguas originales de Europa occidental, como el español) • ISO/IEC 8652:1995 Lenguaje de programación Ada • ISO 9000 Sistemas de Gestión de la Calidad - Fundamentos y vocabulario • ISO 9001 Sistemas de Gestión de la Calidad - Requisitos • ISO 9004 Sistemas de Gestión de la Calidad - Directrices para la mejora del desempeño
  • 27. • ISO 9660 Sistema de archivos de CD-ROM • ISO 9899 Lenguaje de programación C • ISO 10279 Lenguaje de programación BASIC • ISO 10646 Universal Character Set • ISO/IEC 11172 MPEG-1 • ISO/IEC_12207 Tecnología de la información / Ciclo de vida del software • ISO 13450 Formato de carrete de 110 • ISO/IEC 13818 MPEG-2
  • 28.  ISO 14000 Estándares de Gestión Medioambiental en entornos de producción  ISO/IEC 14496 MPEG-4  ISO/IEC 15444 JPEG 2000  ISO 15693 Estándar para "tarjetas de vecindad"  ISO/IEC 17799 Seguridad de la información  ISO 26300 OpenDocument  ISO/IEC 17025 Requisitos generales relativos a la competencia de los laboratorios de ensayo y calibración  ISO/IEC 27001 Sistema de Gestión de Seguridad de la Información
  • 29. (SPICE) ISO/IEC -TR 15504 Software Process Improvement Capability dEtermination (Modelo para la mejora y evaluación de los procesos de desarrollo y mantenimiento de sistemas y productos de software). • Evaluación y mejora de procesos software. • Inicio del proyecto 1993 • Se halla en fase de Informe Técnico • Es aplicable a cualquier organización o empresa que quiera mejorar la capacidad de cualquiera de sus procesos de software. • Se puede utilizar como herramienta de evaluación del estado de los procesos de software de la empresa. • Es independiente de la organización, modelo del ciclo de vida, metodología y tecnología.
  • 30. SPICE • Marco para métodos de evaluación, no un método o modelo en sí • Abarca: – Evaluación de procesos – Mejora de procesos – Determinación de capacidad • Alineado con el ISO/IEC 12207 • Intenta proporcionar un marco en el que armonizar los enfoques existentes • Se encuentra en la fase de Informe Técnico (TR) Tipo 2
  • 31. Modelo de Referencia • El modelo de referencia de SPICE describe los procesos que una organización puede realizar para comprar, suministrar, desarrollar, operar, mantener y soportar el software, así como los atributos que caracterizan la capacidad de estos procesos • Proporciona una base para medir la capacidad de los procesos, en función de grado de consecución de sus atributos. • El tiene dos dimensiones: Procesos y Capacidad
  • 32. Dimensión Procesos Contiene los procesos que se han de evaluar. Se corresponden con los procesos del ciclo de vida del software, definidos al estándar ISO 12207:1995 Se agrupan en categorías, en función del tipo de actividad al cual se aplican: • CUS: Cliente-Proveedor. • ENG: Ingeniería. • SUP: Soporte. • MAN: Gestión. • ORG: Organización.
  • 33. CMM Capability Maturity Model Software Engineering Institute Carnegy Mellon University Mark C. Paulk “CMM es una aplicación de sentido común de los conceptos de gestión de procesos y mejora de la calidad al desarrollo y mantenimiento del software”
  • 34. CMM • Estudia los procesos de desarrollo de software de una organización y produce una evaluación de la madurez de la organización según una escala de cinco niveles • La madurez de un proceso es un indicador de la capacidad para construir un software de calidad. • Es un modelo para la mejora de las organizaciones • Obliga a una revisión constante.
  • 36. CMM Niveles de madurez Prácticas clave Características comunes Áreas claves de proceso Contienen Organizadas con Contienen Indican Alcanzan Se aplican Describen Capacidad del proceso Objetivos Implementación o Institucionalización Infraestructura o actividades
  • 37. CMM •Es importante tener claro • Dónde nos encontramos • A dónde queremos llegar • Cómo llegaremos • Cómo sabremos si hemos llegado •No se puede hacer todo de golpe •Procesos piloto previos a un despliegue a gran escala.
  • 38. Certificación La certificación, una exigencia? • La Unión Europea edita el libro blanco sobre crecimiento, competitividad y puestos de trabajo, y reconoce la calidad como un elemento esencial de éxito de la empresa y constituye un factor estratégico en la política europea de competitividad. • Las empresas precisan marcas y certificados que ayuden a vender sus productos en el mercado único en la era de la globalización. • Se potencia la creación de infraestructuras de calidad: entidades de acreditación, organismos de normalización, entidades de inspección, etc.
  • 39. Certificación La certificación, una exigència? • Se impulsa la implantación de programas de calidad en las distintas administraciones públicas. • Las grandes empresas exigen certificados de calidad a sus proveedores. • Desde la administración se potencia mediante subvenciones, la implantación de programas de calidad.
  • 40. Certificación Proceso habitual de certificación • Motivación. • Selección de la norma aplicable • Subcontratación a empresa externa. • Auditoría de certificación. • Informe de acciones correctoras. • Certificado. • Imposición de seguimiento • Incumplimiento!!!
  • 41. Certificación Documentación • Solicitud formal. • Sistema de calidad • Manual de calidad • Manual de procedimientos. • Manual de especificaciones • Otros documentos • Expediente y certificación.
  • 42. Certificación Otros aspectes • Plazos y costes • Consultoría • Formación • Organismo certificador • Mantenimiento de la certificación • Seguimiento anual. • Revisión de la certificación.
  • 43. Pruebas de Carga y Stress Ciencias de la Ingeniería Carrera de Sistemas
  • 44. CONCEPTO • Se trata de evaluar el sistema o parte de este durante o al final del desarrollo para determinar si satisface los requisitos iniciales. • Este proceso consta de varios componentes que ayudan para que la prueba de un buen resultado
  • 45. TIPOS DE PRUEBA PRUEBAS UNITARIAS • Se focaliza en ejecutar cada módulo (o unidad mínima a ser probada, ej. = una clase). • Busca asegurar que el código funciona de acuerdo con las especificaciones y que el módulo lógico es válido
  • 46. PRUEBAS DE INTEGRACIÓN • Identificar errores introducidos por la combinación de programas probados unitariamente. • Verificar que las especificaciones de diseño sean alcanzadas. • Determina el enfoque para avanzar desde un nivel de integración de las componentes al siguiente.
  • 47. PRUEBA DE REGRESIÓN • Determinar si los cambios recientes en una parte de la aplicación tienen efecto adverso en otras partes. • La prueba de regresión es una nueva corrida de casos de prueba previos. • La prueba de regresión es un buen candidato para automatización.
  • 48. PRUEBAS DE HUMO Toma éste nombre debido a que su objetivo es probar el sistema constantemente buscando que saque “humo” o falle. • Los objetivos son los siguientes: • Detectar los errores en realeases tempranos y de manera fácil • Probar el sistema constantemente • Garantizar poco esfuerzo en la integración final del sistema
  • 49. PRUEBAS DEL SISTEMA • Asegurar la apropiada navegación dentro del sistema, ingreso de datos, procesamiento y recuperación. • Las pruebas del sistema deben enfocarse en requisitos que puedan ser tomados directamente de casos de uso y reglas y funciones de negocios.
  • 50. PRUEBAS DE DESEMPEÑO • Las pruebas de desempeño miden tiempos de respuesta, índices de procesamiento de transacciones y otros requisitos sensibles al tiempo. • El objetivo de las pruebas es verificar y validar los requisitos de desempeño que se han especificado.
  • 51. PRUEBAS DE CARGA • Las pruebas de carga miden la capacidad del sistema para continuar funcionando apropiadamente bajo diferentes condiciones de carga. • La meta de las pruebas de carga es determinar y asegurar que el sistema funciona apropiadamente aún más allá de la carga de trabajo máxima esperada.
  • 52. PRUEBAS DE STRESS Use los scripts utilizados en las pruebas de desempeño. Verificar que el sistema funciona apropiadamente y sin errores, bajo estas condiciones de stress: • Máximo número de clientes conectados o simulados (actuales o físicamente posibles) • Múltiples usuarios desempeñando la misma transacción con los mismos datos.
  • 53. PRUEBAS DE VOLUMEN • Las pruebas de volumen hacen referencia a grandes cantidades de datos para determinar los límites en que se causa que el Sistema falle. • También identifican la carga máxima o volumen que el sistema puede manejar en un período dado. • Máximo (actual o físicamente posible). • Máximo tamaño de base de datos (actual o escalado).
  • 54. PRUEBAS DE VALIDACIÓN A SISTEMAS A LA MEDIDA • Pruebas del Ciclo del Negocio • Asegurar que el sistema funciona de acuerdo con el modelo de negocios emulando todos los eventos en el tiempo y en función del tiempo.
  • 55. PRUEBAS DE CONFIGURACIÓN • Validar y verificar que el cliente del sistema funciona apropiadamente en las estaciones de trabajo recomendadas. • Estas pruebas verifican la operación del sistema en diferentes configuraciones de hardware y software. • Con frecuencia, el número de configuraciones posibles es demasiado grande
  • 56. Versionamiento Ciencias de la Ingeniería Carrera de Sistemas
  • 57. Sistema de Control de Versiones Jesús M. Castagnetto M., Ph.D. - Facultad de Ciencias y Filosofía, y Dirección Universitaria de Información, Universidad Peruana Cayetano Heredia ● Permite el manejo de múltiplesrevisiones Actúa a niveles de archivo decódigo, directorio, proyecto, etc. Se encarga de identificar, comparar, revertir, etc., cambios en la información Ayuda en el desarrollo paralelo de un proyecto, por múltiples programadores. ● ● ●
  • 58. ¿Qué puede controlar un SCV? Jesús M. Castagnetto M., Ph.D. - Facultad de Ciencias y Filosofía, y Dirección Universitaria de Información, Universidad Peruana Cayetano Heredia ● Archivos Los más simples, controlan solamente archivos individuales. ● Árboles de archivos Los más avanzados, pueden manejar directorios (y sub-directorios) con sus archivos asociados, incluyendo el concepto de proyecto.
  • 59. ¿Cómo puede trabajar un SCV? Jesús M. Castagnetto M., Ph.D. - Facultad de Ciencias y Filosofía, y Dirección Universitaria de Información, Universidad Peruana Cayetano Heredia ● Local Información acerca de cambiosse mantiene en un repositoriolocal. Centralizado Necesitan el uso de un servidory repositorio central. Descentralizado Permiten el uso de múltiples repositorios,y sincronización entre ellos. ● ●
  • 60. Evolución de los SCV 1 2 3 4 5 6 SCCS (1972) 0 1970 1975 1980 1986 1991 1997 2002 2008 RCS (1980) CVS (1986) Subversion (2000) GNU arch (2003) Bazaar (2005) Source Code Control System (SCCS)
  • 61. Desarrollo de los SCV (1) Primera Generación ● ● ● Control de archivos individuales. Almacenamiento de local (en el mismo directorio) de revisiones. Ejemplos: SCCS, RCS.
  • 62. Desarrollo de los SCV (2) SegundaGeneración ● ● ● ● Control de árboles de archivos. Almacenamiento centralizadode revisiones. Manejo deficiente de algunas operaciones (ej. renombrado de archivos). Ejemplo: CVS.
  • 63. Desarrollo de los SCV (3) Jesús M. CastagnettoM., Ph.D. - Facultad de Cienciasy Filosofía, y Dirección Universitariade Información, Universidad Peruana Cayetano Heredia TerceraGeneración ● ● ● ● Control de árboles de archivos. Almacenamiento centralizadode revisiones. Manejo completo de operaciones complejas con archivos. Ejemplo: Subversion.
  • 64. Desarrollo de los SCV (4) Jesús M. CastagnettoM., Ph.D. - Facultad de Cienciasy Filosofía, y Dirección Universitariade Información, Universidad Peruana Cayetano Heredia CuartaGeneración ● ● ● ● Control de árboles de archivos. Almacenamiento descentralizadode revisiones. Manejo deficiente de algunos flujosde trabajo y consolidacióncompleja. Ejemplo: GNU arch.
  • 65. Desarrollo de los SCV (5) Jesús M. CastagnettoM., Ph.D. - Facultad de Cienciasy Filosofía, y Dirección Universitariade Información, Universidad Peruana Cayetano Heredia QuintaGeneración ● ● ● ● Control de árboles de archivos. Almacenamiento descentralizadode revisiones. Manejo de múltiples flujos de trabajo, inlcuyendo el centralizado. Ejemplo: Bazaar. Bazaar: http://bazaar-vcs.org/
  • 66. Repositorio Jesús M. Castagnetto M., Ph.D. - Facultad de Ciencias y Filosofía, y Dirección Universitaria de Información, Universidad Peruana Cayetano Heredia ● Un sitio de almacenamiento derevisiones. Puede estar estructurado internamente como un solo archivo, una colección de archivos, base de datos, etc. Puede residir localmente (en el mismo sistema de archivos), o ser remoto (servidor o servidores). ● ●
  • 67. GITHUB Jesús M. Castagnetto M., Ph.D. - Facultad de Ciencias y Filosofía, y Dirección Universitaria de Información, Universidad Peruana Cayetano Heredia GitHub es una forja (plataforma de desarrollo colaborativo) para alojar proyectos utilizando el sistema de control de versionesGit. Se utiliza principalmente para la creación de código fuente de programas de ordenador.