Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Facultad de Ingeniera
Ingeniera de Software
Contenido
I. Introduccin
Indice de fallo
80 60 40 20 0 1 2 3 4 5 6 7 8 9 10 11 12 Tiempo
Indice de fallo
80 60 40 20 0 1 2 3 4 5 6 7 8 9 10 11 12 Tiempo
2.1 Introduccin
La administracin eficaz de un proyecto de software se centra en las cuatro Ps: 1. Personal 2. Producto 3. Proceso 4. Proyecto
2.1 Introduccin
Personal
La necesidad de contar con personal para el desarrollo del software altamente calificado y motivado se viene discutiendo desde los aos 60s, de hecho el factor humano o capital intelectual (Modernamente nombrado), es tan importante que el Instituto de Ingeniera del Software (SEI), desarroll un modelo de madurez de la capacidad de administracin de personal para aumentar la preparacin de las organizaciones para llevar a cabo las aplicaciones para atraer, aumentar, motivar, desplegar y retener el talento necesario para mejorar su capacidad de desarrollo.
2.1 Introduccin
Personal
Superiores.- Definen los aspectos de negocio que a menudo tienen una significativa influencia en el proyecto. Tcnicos del Proyecto.- Se encargan de Planificar, Motivar, Organizar y Controlar a los profesionales que realizan el trabajo de software. Profesionales.- Proporcionan las capacidades tcnicas necesarias para la ingeniera del producto o aplicacin. Clientes.- Especifican los requisitos para la ingeniera del software y otros elementos que tienen menor influencia en el resultado. Usuarios Finales.- Interaccionan con el software una vez que se ha entregado para la produccin.
2.1 Introduccin
Producto
Se considerar Producto para reconocer cualquier software que ser construido a peticin de otros. Esto incluye, no slo productos de software, sino tambin, sistemas basados en computadora, software inmerso en otra aplicacin (Embbeded) y software de resolucin de problemas. Antes de poder planificar un proyecto, se deberan establecer los objetivos y el mbito del producto, se deberan contemplar soluciones alternativas e identificar las dificultades tcnicas y de administracin. Sin esta informacin es imposible definir unas estimaciones razonables de costo, una valoracin efectiva del riesgo y una planificacin de proyecto realista.
2.1 Introduccin
Proceso
Proporciona la estructura desde la que se puede establecer un plan detallado para el desarrollo de software. Un nmero de actividades estructurales se puede aplicar a todos los proyectos de software, sin tener que tomar en cuenta su tamao o complejidad. El problema en este punto es seleccionar el modelo de proceso apropiado para la ingeniera de software que debe aplicar el equipo de proyecto, siendo los ms comunes:
Secuencial Lineal (Estructurado) Prototipos RAD Espiral Mtodos Formales Tcnicas de Cuarta Generacin
2.1 Introduccin
Proyecto
Dirigimos los proyectos de software planificados y controlados por una razn principal, es la nica manera conocida para Administrar la Complejidad. En 1998, los datos de la industria del software indicaron que el 26% de los proyectos de software fallaron completamente y que el 46% experimentaron un desbordamiento en la planificacin (Tiempo) y en el costo. Para evitar el fracaso del proyecto, se deben eludir un conjunto de seales de peligro comunes; comprender los factores de xito crticos que conducen a una administracin correcta del proyecto y desarrollar un enfoque de sentido comn para planificar, supervisar y controlar un proyecto.
2.1 Introduccin
Proyecto Positivo
Relacin de equipo Comunicacin c/usuario
Negativo
Rotacin de personal Mala planeacin
Interno
Externo
Porqu medir?
1. 2. 3. 4. Caracterizar Evaluar Predecir Mejorar
Medida
Medicin
Mtrica
Indicador
Homeostasis
Tamao en Kilobytes
Algoritmos usados Nmero de mdulos, pantallas, reportes, etc. Mantenimiento Tiempo para Respaldos Tiempo de Recuperacin Tiempo para ejecucin de procesos especiales
Cuantitativas
Tiempo de respuesta Reportes y consultas disponibles Cualitativas Confiabilidad Operacin
Qu se puede hacer?
1. 2. 3. 4. 5. 6. Agenda compartida Documentacin integral Estimacin detallada de recursos Estrategia de desarrollo para resultados rpidos Revisiones peridicas con especialistas Reuniones frecuentes con el cliente
+ Comercialmente al 100% + Parcialmente experimentado con alguna empresa + Construir el software en su totalidad (Insourcing/Outsourcing)
RESULTADOS
APORTACIONES CUALITATIVAS DEL PROYECTO
casi 100% fiables tras haber terminado el proyecto). Basar estimaciones en proyecto similares ya terminados Utilizar tcnicas de descomposicin relativamente sencillas para generar las estimaciones de costo y esfuerzo. Utilizar uno o ms modelos empricos para estimacin del costo y esfuerzo.
Falla de Luz
Presupuesto de Contingencia
Presupuesto de Operacin
Prdida de Datos
4.1 Elementos de la Calidad 4.2 Requisitos de un Software de Calidad 4.3 Factores de la productividad en el desarrollo de Software 4.4 Tcnicas formales de revisin y seguimiento del proyecto
Diseo
Construccin Pruebas Implantacin Soporte y Mantenimiento
Armado de Diagramas
Programacin completa Piloto y Paralelo Integracin del usuario Apoyo 7x24
Quality Control
MIS
Software
Verificable: Un software es verificable si las propiedades del mismo pueden ser revisadas fcilmente. El diseo modular, la disciplina en el cdigo y el uso de un apropiado lenguaje de programacin son elementos que determinan la verificabilidad.
Reparable: Un software es reparable siempre y cuando se puedan corregir los errores del mismo con un mnimo de trabajo. El software debe ser maleable, para poder hacerle modificaciones que resulten fciles en la aplicacin o la implementacin.
5.1 Introduccin
La Ingeniera de Software apoyada por computadora (CASE), es la automatizacin de metodologas paso a paso para el desarrollo de software; tratan de....
1. Respetar la metodologa de desarrollo 2. Mejorar la comunicacin 3. Organizar y correlacionar los componentes 4. Automatizar porciones tediosas y proclives 5. Automatizar agendas de pruebas y controles
Las herramientas CASE han buscado su perfeccionamiento desde la pasada dcada, y se han visto influenciadas por el desarrollo tecnolgico del Hardware y Software
Las herramientas CASE ayudan a los gestores y practicantes de la ingeniera del software en todas las actividades asociadas a los procesos de software. Automatizan las actividades de gestin de proyectos, gestionan todos los productos de los trabajos elaborados a travs del proceso, y ayudan a los ingenieros en el trabajo de anlisis, diseo y codificacin. La ingeniera del software asistida por computadora puede ser tan sencilla como una nica herramienta que preste su apoyo para una nica actividad de ingeniera del software, o tan compleja como todo un entorno que abarque herramientas, una base de datos, personas, hardware, una red, sistemas operativos, estndares, y otros componentes.
Tener fcilmente interfaces con las bases de datos y con los lenguajes de cuarta generacin.
Forzar automticamente a los analistas para que usen una metodologa prescrita o crear una metodologa cuando esta no exista. Transformar radicalmente el anlisis de sistemas y el proceso de diseo.
Metodologa de Desarrollo
Herramientas de Administracin
c) McClure
d) Sommerville e) Fuggetta
c) De Anlisis y Diseo
d) De Programacin e) De Integracin y Pruebas
f) De Creacin de Prototipo
Objetivo Principal
Ao de Fundacin
Campo
Sede
Estndares que indican lmites elctricos y electromagnticos para la seguridad del paciente.
Desarrollar la normalizacin y certificacin del sector elctrico. Desarrollo y publicacin de estndares internacionales en diferentes tecnologas elctricas y electrnicas. Laboratorios para probar la seguridad de un equipo elctrico.
1967
Equipo Mdico
Elctrico
Electrotecnologa
Virginia (USA)
Mxico Suiza
1992 1906
1894
Elctrico
1934
Comunicaciones
Objetivo Principal
Ao de Fundacin
Campo
Sede
Promueve la utilizacin de estndares para mejor la competencia y calidad global. Estndares para productos que desean ser vendidos en la Comunidad Europea. Avanzar en la teora y la prctica de la ingeniera elctrica, electrnica y computacional. Promover el desarrollo de la estandarizacin para facilitar el intercambio internacional de bienes y servicios. Normas mexicanas que establecen reglas, caractersticas y especificaciones aplicables a un producto, servicio o actividad.
1918
Todos
1985
Todos
1884
1947
NOM
1992
Todos
Mxico
6.2 COBIT
La misin y Objetivos de COBIT es Investigar, Desarrollar, Publicitar y promocionar Objetivos de Control de TI internacionales, actualizados a la realidad actual para ser usado por los Gerentes de Negocios y Auditores. Bsicamente consta de 4 libros, a saber:
1. Resumen Ejecutivo 2. Antecedentes y Marco de Referencia 3. Guas de Auditora 4. Herramienta de Implementacin
6.2 COBIT
(Control Objectives for Information and Related Technology) Este estndar aparentemente sencillo, intenta responder a las necesidades organizacionales, tratando de ser independiente de las plataformas tcnicas de TI adoptadas por las empresas. Basados en esto, los cuatro objetivos de control buscan:
1. 2. 3. 4. El desarrollo de un marco de referencia para el control de la TI, basados en el principio de cada objetivo y como un facilitador de la investigacin y la auditoria. Conciliar aquellos objetivos de forman el marco de referencia y los individuales de cada organizacin, tanto de facto como de jure. La revisin a detalle de las diferentes actividades necesarias para el cumplimiento de los objetivos, y su especificacin en tablas, normas, reglas. La evaluacin a detalle y actualizacin de las directrices para la ejecucin de los procesos de auditora de sistemas de TI.
6.3 ISO9000
Para el caso de desarrollo y mantenimiento de software, el estndar ISO 9000-3 (1991) es el encargado de fijar los requerimientos a cumplir para asegurar la calidad del sistema. Este estndar est planeado para describir controles y mtodos sugeridos para producir software que cumpla los requerimientos del cliente. Esto puede ser llevado a cabo previniendo las fallas en todas las etapas del ciclo de vida del software, desde el desarrollo hasta el mantenimiento. La obtencin de la certificacin de ISO 9000 es importante para demostrar que se tiene calidad en el producto. Es tambin importante porque con ella se puede obtener la marca "CE". Existen dos normas que se basan en la norma ISO9000:
6.3 ISO9000
1. La norma ISO 1799, permite identificar, manejar y minimizar aquellos errores que normalmente se presentan en la administracin de la seguridad de los Sistemas de Informacin. Se usa ampliamente en Reino Unido y sus reas de influencia, y se ha convertido en un estndar de facto en la regin Asia/Pacfico. El resultado obtenido se denomina Information Security Management System (ISMS), el cual apoya al tradicional MIS en el rea de seguridad y control. 2. La versin 2000 de las normas ISO-9000, redescubre el concepto tan elemental para las organizaciones como es la administracin basada en procesos, es aqu donde surgen las preguntas: por qu est tomando tanta importancia en las organizaciones el enfoque y administracin basada en procesos? Qu sucedi con la manera tradicional de administrar las organizaciones? Por qu ahora los expertos en normatividad incluyen de manera explcita la importancia de tener un enfoque basado en procesos?.