David lvarez 090 -06-1507 Hugo Antonio Daz 0901-06-2475 Jos Mara Gonzlez 0901-06-3053 Carlos Roberto Chicoj Boc 0901-03-3128 El cliente, calidad del software es el grado en que un cliente y/o usuario percibe que el producto software satisface sus necesidades.
Condicin industrial del producto, calidad del software es la habilidad de un producto software de satisfacer su especificacin de requerimientos.
qu es la calidad? qu es la calidad del software? ASEGURAMIENTO DE LA CALIDAD MEDIANTE INGENIERIA DE SOFTWARE (1) garantizar el aseguramiento de la calidad total diseando sistemas y software con un enfoque modular, descendente (de arriba a abajo)
(2) documentar el software con las herramientas adecuadas, y
(3) probar, mantener y auditar el software.
DOS PROPOSITOS GUIAN EL ASEGURAMIENTO DE LA CALIDAD . El primero es que el usuario del sistema de informacin es el factor individual ms importante en establecer y evaluar su calidad
. El segundo es que es mucho menos costoso corregir los problemas en sus fases iniciales que esperar hasta que un problema se manifieste a travs de las quejas o crisis del usuario ENFOQUE DE ADMINISTRACIN DE LA CALIDAD TOTAL La administracin de la calidad total [TQM, por sus siglas en ingls) es esencial a lo largo de todos los pasos del desarrollo de sistemas. Segn Dean y Evans (1994), los principales elementos de la TQM slo son significativos cuando se presentan en un contexto organizacional que favorece un esfuerzo integral por la calidad. ELEMENTOS DE ENFOQUE en el cliente planificacin estratgica y liderazgo mejora continua facultar al empleado y trabajo en equipo SEIS SIGMA Cada analista de sistemas necesita estar consciente de Seis Sigma y aplicar algunos de los principios a sus proyectos de anlisis de sistemas; ms que una metodologa; es una cultura basada en la calidad.
La meta de Seis Sigma es la de eliminar todos los defectos
dcada de 1970 y hasta fines del siglo pasado, el control de calidad se expres en trminos de tres desviaciones estndar de la media, o tres sigma, lo cual es equivalente a aproximadamente 67,000 defectos por milln de oportunidades. Seis Sigma implica una meta de slo 3.4 defectos por milln de oportunidades. Seis Sigma es un enfoque descendente de arriba a abajo.
SEIS SIGMA Clasificacin de lideres
Resalta la importancia de la disciplina en todos los mbitos. Joseph M. Juran dijo: "Toda mejora de la calidad ocurre proyecto tras proyecto y de ninguna otra forma" (Juran, 1964). )
RESPONSABILIDAD DE LA ADMINISTRACIN DE LA CALIDAD TOTAL Apoyo incondicional por partes de los directivos.
No es fcil crear los estndares de calidad, pero es posible y se ha hecho.
REPASO ESTRUCTURADO
Los repasos estructurados involucran por lo menos a cuatro personas: un programador o analista un coordinador del repaso, un programador o analista experto y un experto que toma notas acerca de las sugerencias
DISEO Y DESARROLLO DE SISTEMAS Diseo Ascendente(de abajo a arriba o bottom-up) Diseo Descendente(de arriba abajo o top-down)
Diseo Descendente Significa ver una descripcin amplia del sistema y despus dividirla en partes ms pequeas o subsistemas.
Diseo Descendente DESARROLLO MODULAR Implica dividir la programacin en partes lgicas y manejables llamadas mdulos. Cada mdulo debe ser funcionalmente cohesivo. DESARROLLO MODULAR DESARROLLO MODULAR Contiene 3 ventajas principales:
Mdulos ms sencillos de escribir y depurar debido a la independencia. Los mdulos son ms fciles de mantener. Los mdulos son ms fciles de entender, debido a que son subsistemas independientes. DESARROLLO MODULAR Lineamientos para la programacin: Mantener cada mdulo de un tamao manejable. Debida atencin a las interfaces crticas. (Datos, variables, etc., que pasan a otros mdulos). Minimizar el nmero de mdulos que el usuario debe modificar. Mantener las relaciones jerrquicas establecidas. MODULARIDAD EN EL ENTORNO DE WINDOWS Microsoft desarroll 2 sistemas para vincular los programas en su entorno de Windows. Intercambio Dinmico de Datos DDE Comparte cdigo al usar archivos de biblioteca de vnculos dinmicos. Vnculos e Incrustacin de Objetos OLE Est ligado a los datos y grficos de la aplicacin. USO DE DIAGRAMAS DE ESTRUCTURA PARA DISEAR SISTEMAS La herramienta recomendada para disear un sistema modular descendente se denomina diagrama de estructura. Este grfico consiste simplemente en cuadros rectangulares (mdulos) y flechas de conexin. DIAGRAMAS DE ESTRUCTURA Los mdulos de nivel superior se numeran por 100s 1,000s y los mdulos de nivel inferior se numeran por 10s o 100s respectivamente. DIAGRAMAS DE ESTRUCTURA A los lados de las lneas de conexin se dibujan dos tipos de flechas. Las flechas con los crculos vacos se denominan parejas de datos y las flechas con los crculos rellenados se denominan banderas de control o interruptores Estos indican que algo se pasa hacia abajo al mdulo inferior o hacia arriba al superior. DIAGRAMAS DE ESTRUCTURA
Dibujo de un diagrama de Estructuras
Se deben dibujar de arriba hacia abajo.
Se busca informacin en los diagramas de flujo de datos.
El DFD, indica la secuencia de los mdulos en un diagrama de estructuras Diagrama de flujo de datos Diagrama de estructura. Tipos de mdulos Categoras: 1. Control 2. Transformacional 3. Funcional. Mdulos de control Caractersticas No deben ser muy grandes
Contienen lgica para disear el modulo inferior
Instrucciones If, Perform y Do.
La lgica se determina desde un rbol de decisin o tabla de decisin.
Mdulos Transformacionales Caractersticas Creados a partir de un DFD.
Instrucciones IF, PERFORM, DO, MOVE, ADD.
Emplean una sola tarea, aunque varias tareas secundarias pueden asociarse con la principal. Mdulos Funcionales Caractersticas Son los mas bajos en la estructura.
Solo desempean una sola tarea.
Algunos mdulos se encuentran en un DFD, pero otros se tendran que agregar. Diagrama de Estructura para agregar: Subordinacin de mdulo Un mdulo subordinado es uno inferior en el diagrama de estructura llamado por otro mdulo superior en la estructura.
Subordinacin inadecuada: Permitir que el mdulo de nivel inferior desempee una tarea que no es requerida por el mdulo Subordinacin Inadecuada
Subordinacin Adecuada Ingeniera de Software La Ingeniera de Software es una disciplina de la ingeniera que comprende todos los aspectos de la produccin de software desde las etapas iniciales de la especificacin del sistema hasta el mantenimiento de este despus que se utiliza. Ingeniera de Software Areas de Estudio: Mtodos y Metodologas de Desarrollo de Software Procesos de Desarrollo de Software Gestin de Proyectos de Software Medicin y Estimacin de Software Ingeniera de Requisitos Ingeniera de Software Emprica Gestin de Riesgos Usabilidad de Software Evaluacin de Software Mtricas de Software Calidad de Software Mtodos Formales Ingeniera Web
Documentacin La documentacin permite a usuarios, programadores y analistas "ver" el sistema, su software y procedimientos sin tener que interactuar con l.
Tipos de Documentacin
Documentacin Global
Documentacin de Procedimiento
Documentacin del Programa
Problemas de Documentacin Sistemas Heredados
Actualizacin de sistemas
Compra de sistemas
Tiempo y Costo
PSEUDOCODIGO Secuencia de pasos de forma detallada Ayuda a entender fcilmente un proceso (programadores, no otras personas) DFD se puede usar para escribir el pseudocdigo No es un tipo de programar cdigo, pero sirve de gua No es muy utilizado por falta de estandarizacin Simbologa: IF THEN ELSE * y
PSEUDOCODIGO PSEUDOCODIGO
PSEUDOCODIGO Pseudocdigo y Diagrama de Flujo Pseudocdigo Inicio Entero a,b,c declara las variables a utilizar Leer a,b solicita el valor de a y b c= a+b suma a y b y lo almacena en c Imprimir c muestra el resultado almacenado en la variable c Fin MANUALES DE PROCEDIMIENTO Documentos de apoyo al usuario. Lo normal es que contenga cualquier tipo de asistencia al usuario. Pero puede contener cdigos de programa, DFD, etc. Lo antiguo es FAQ Soporte tcnico Servicios de fax Lo mas moderno es Manuales en Lnea (debe estar actualizada).
MANUALES DE PROCEDIMIENTO Secciones Importantes Introduccin ndice Como usar el Software Que hacer si las cosas salen mal Referencia Tcnica (cmo est construido el SW, etc.) Cmo contactar al fabricante
MANUALES DE PROCEDIMIENTO Problemas al elaborarlos Mal organizados Difcil encontrar la informacin No aparecen casos especficos No escrito en espaol
METODO DEL FOLKLORE Folklore = Tradicin = Costumbre Tcnica de Documentacin que sirve para complementar otras tcnicas Sirve para recopilar las costumbres entre las personas. Requiere de entrevistas, revisin de carteles, etc. Tiene 4 categoras (Proverbios, Costumbres, Formas Artsticas y Ancdotas)
METODO DEL FOLKLORE Qu se documenta?, Qu contiene?
METODO DEL FOLKLORE COSTUMBRES Cmo hacen funcionar el sistema? Nos toma 2 dias ingresar las facturas al sistema, el primer dia para ordenarlas por fechas, el siguiente para ingresarlas al sistema
ANCDOTAS Cmo pudieron hacer que el sistema funcionara? El problema ocurri en Diciembre del ao pasado. No actualizaba los saldos de deudores, tuve que cerrar el programa para que los actualizara
PROVERBIOS Consejos Guarde el archivo, Omita esta seccin de cdigo y el programa fallar
FORMAS ARTSTICAS Otros DF, tablas, etc. que hacen que el usuario lo entienda mejor.
1. Es compatible con la documentacin. 2. Se entiende por otros en la organizacin. 3. Le permite regresar a trabajar en el sistema. 4. Sea conveniente para el tamao del sistema. 5. Permite un diseo estructurado. 6. Permite fcil modificacin.
PROCESO DE PROBAR
Pruebas de programa con datos de prueba Prueba de vnculos con datos de prueba Prueba completa de sistemas con datos de prueba Prueba completa de sistema con datos reales
Los sistemas completos se prueban con datos de prueba Los programas se prueban con datos de prueba Los sistemas completos se prueban con datos reales Prueba de vinculacion con datos de prueba PROGRAMADORES ANALISTAS USUSARIOS OPERADORES MODELO V PRACTICAS DE MANTENIMIENTO El mantenimiento se realiza para mejorar el software existente en lugar de responder a una crisis o falla del sistema. Re codificar para mejorar la eficacia del programa. Proporcionar a los usuarios acceso a un correo electrnico para el soporte tcnico.
CMO AUDITAR
Es una forma de asegurar la calidad de la informacin contenida en el sistema. Se refiere a pedirle a un experto, que no este involucrado en crear o usar el sistema, examinar la informacin para determinar su fiabilidad. Auditores internos y externos.