Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Objetivo de la Materia
Introducir al estudiante a las metodologas existentes en la Industria del Software para asegurar la calidad de los proyectos. Desarrollar las habilidades del estudiante para medir sus procesos personales de Software
Podemos iniciar?
Autodiagnstico
Retroalimentacin
Contenido Temtico
1.
Contenido Temtico
2. Mtricas y Procesos (PSP)
2.1 Introduccin al Personal Software Process (PSP) 2.2 Estructura del PSP 2.3 Mtricas del PSP
Contenido Temtico
3. CMM-I Capability Maturity Model Integration
3.1 Inmadurez y madurez en los procesos de Creacin de Software 3.2 Los cinco niveles de madurez en los Procesos de Creacin de Software 3.3 Definicin operacional del modelo CMM 3.4 Porqu usar el modelo CMM I?
Unidad I
Ingeniera de Software y Calidad
Objetivo de la Unidad
Introducir al alumno en el anlisis de los diferentes modelos de desarrollo de Software, as como su relacin con los conceptos bsicos de calidad en el desarrollo de sistemas.
1. Ingeniera de SW y Calidad
1.1 Conceptos Bsicos de Calidad
Calidad
Conjunto de propiedades y de
caractersticas de un producto o servicio, que le confieren aptitud para satisfacer unas necesidades explcitas o implcitas. (Norma ISO 9000:8402) Caracterstica o atributo de algo( American Heritage Dictionary).
Calidad
Caractersticas mensurables: cosas que se pueden comparar con estndares conocidos como: longitud , color, maleabilidad.
Control de Calidad
Conjunto de tcnicas y actividades de carcter operativo, utilizadas para verificar los requerimientos relativos a la calidad del producto o servicio
Qu control de calidad aplicaras, por ejemplo, para comprar un par de zapatos deportivos (tennis)?
Garanta de calidad
Conjunto de acciones planificadas y sistemticas necesarias para proporcionar la confianza adecuada de que un producto o servicio satisface los requerimientos dados sobre calidad.
Garanta de calidad
En software es un diseo de acciones planificado y sistemtico, que se requiere para asegurar la calidad del software.
Calidad del Software Es el grado con el que un sistema, componente o proceso cumple con los requerimientos y las necesidades o expectativas del cliente o usuario (IEEE 610/1990)
Calidad del Software Concordancia del software producido con los requerimientos explcitamente establecidos, con los estndares de desarrollo prefijados y con los requerimientos implcitos no establecidos formalmente que desea el usuario.( Pressman, 2006).
1. Ingeniera de SW y Calidad
1.2 Factores que determinan la calidad del SW
Caractersticas Operativas
Correccin
Caractersticas Operativas
Fiabilidad
Caractersticas Operativas
Eficiencia
Caractersticas Operativas
Seguridad Hasta donde se puede controlar el acceso al software o a los datos por personas no autorizadas.
Es seguro?
Caractersticas Operativas
Usabilidad El esfuerzo necesario para aprender, operar , preparar datos de entrada e interpretar salidas (resultados) de un programa.
Es fcil de manejar?
Puedo corregirlo?
Puedo cambiarlo?
Facilidad de prueba El esfuerzo necesario para probar un programa y asegurarse de que realiza la funcin pretendida.
Puedo probarlo?
Portabilidad
Reusabilidad
Hasta donde se puede volver a emplear un programa (o partes de un programa) en otras aplicaciones, en relacin con el empaquetamiento y alcance de las funciones que realiza el programa.
Interoperabilidad
Sntomas
2. 3. 4.
Baja Calidad del Software. Tiempo y Presupuesto Excedido. Confiabilidad Cuestionable. Altos Requerimientos de Personal para desarrollo y mantenimiento.
1. 2. 3.
Aumento del poder computacional. Reduccin del costo del hardware. Rpida obsolescencia de hardware y software.
4. 5. 6.
Aceptacin de la computarizacin en las empresas. Incremento en el nmero de usuarios de los sistemas de software. Tipo de usuario no homogneo aun en sistemas hechos a la medida.
7. 8.
9.
Personal de desarrollado y mantenimiento diferente. La magnitud del proyecto impacta en: a. Tiempo costo y nmero de desarrolladores, b. Control administrativo y detalles tcnicos Aumento en el conocimiento del problema.
c.
d. e.
Tecnolgicos (Internet,redes,ERP,CRM,SCM..) Econmicos (crisis econmicas, globalizacin,..) Sociales (nuevas necesidades, costumbres nuevas,..) Ambientales (...) ...
Preguntas
1. 2.
3.
4. 5. 6. 7.
Cmo desarrollar software? Cmo dar mantenimiento al creciente volumen de software? Cmo poder mantenerse al corriente a la creciente demanda de software? Porqu lleva tanto tiempo terminar los programas? Porqu tan caro? Porqu no podemos encontrar todos los errores? Porqu es tan difcil evaluar el avance?
2.
Cmo desarrollan el software en las organizaciones? Los desarrolladores de hoy en da estn consientes del problema del ciclo de software?
1.3.1 Software
Programas Estructura de datos + algoritmos
Producto de software Conjunto de elementos de software (programas, tablas, reportes, documentacin, etc.) que tienen un propsito especfico y completo desde el punto de vista del usuario, de tal manera que la sustraccin de cualquiera de los elementos del conjunto dara como resultado que el propsito no se cumpliera.
1.3.1 Software
a) b)
c)
Instrucciones (programas de computadora) que cuando se ejecutan proporcionan la funcin y el rendimiento deseados Estructuras de datos que permiten a los programas manipular adecuadamente la informacin Documentos que describen la operacin y uso de los programas.
Productos de Software
Productos genricos (sw de mostrador) Desarrollados por una organizacin para ser vendidos al mercado.
Productos de Software
Productos hechos a medida Desarrollados bajo pedido a una empresa desarrolladora de software.
Productos de Software
La mayor parte del gasto del software es en productos genricos, pero hay ms esfuerzo en el desarrollo de los sistemas hechos a medida.
PRODUCTO
Tiene definidas una fecha de inicio de desarrollo y una fecha esperada o estimada de terminacin. Apoya alguna funcin del usuario hacia el cual est dirigido.
Facilidad de mantenimiento Debe ser posible que el software evolucione y que siga cumpliendo con sus especificaciones. Confiabilidad El software no debe causar daos fsicos o econmicos en el caso de fallas. Eficiencia El software no debe desperdiciar los recursos del sistema. Utilizacin adecuada El software debe contar tanto con una interfaz de usuario adecuada como con una documentacin clara y precisa.
La importancia relativa de las caractersticas depende del tipo de producto y en el ambiente en el que ser utilizado. En algunos casos, algunos atributos pueden dominar.
En sistemas de seguridad crticos de tiempo real, los atributos clave pueden ser la confiabilidad y la eficiencia.
Los costos tienden a crecer exponencialmente si se requieren altos niveles de alguna caracterstica.
Costos de eficiencia
Costos
Eficiencia
Metas de un producto
Productividad Calidad
Costos
Tiempo
Correctividad, Confiabilidad, Robustez. Desempeo (performance) Amigabilidad (Uso amigable) Verificabilidad (Facilidad de verificar) Mantenibilidad. Facilidad de mantenimiento: Para su reparacin REPARABILIDAD Para su evolucin VIGENCIA Reusabilidad Portabilidad Comprensibilidad (Comprehensibility): Facilidad de entenderse Interoperabilidad
Aplicacin o disciplina
Para sistemas Sistemas tiempo real Negocios Ingeniera/cientfico Empotrado (Embebido) PCs Inteligencia artificial Aplicaciones Web.
Tipo de arquitectura
Stand Alone Main Frame Red: LAN, WAN Internet Intranet Extranet
Conocimiento
Operacional
Contabilidad Finanzas Ventas Mercadotecnia Recursos Humanos Manufactura
Administracin
Sistema Soporte de Decisiones (SSD) Sistema Informacin Admo. (SIA) Sistema de Automatizacin de Oficinas. (SAO) / Apoyo Trabajadores del Conocimiento (SATC) Sistema de Transaccin de Operaciones (STO)
Conocimiento
Operacional
Nivel Jerrquico
Sistema de Transaccin de Operaciones Sistema de Apoyo a Trabajadores del Conocimiento Sistema para la Automatizacin de Oficinas Sistema de Informacin Administrativo Sistema para Soporte de Decisiones Sistema de Soporte Ejecutivo Sistema de Soporte de Grupo Sistema de Soporte Inteligente
Actividad Soportada
Sistemas Operacionales
Sistemas Tcticos
Sistemas estratgicos
Orientados a apoyar actividades de mandos intermedios: Estadsticas/ Reportes de excepcin/Reportes Peridicos/Anlisis Comparativos/Proyecciones/Deteccin Temprana de Problemas/Decisiones Rutinarias.
Estructura organizacional
Tiempo de Respuesta
Tiempo Real
En lnea
Batch
PROCESO
Caractersticas importantes:
Productividad Calendarizacin Visibilidad