Ing. Francisco Rodríguez Novoa

Slides:



Advertisements
Presentaciones similares
Logística y Distribución
Advertisements

Tipos de software y su desarrollo
Introducción a la Ingeniería del Software
EL PROYECTO INFORMÁTICO
GUÍA PARA EL DESARROLLO DEL PRODUCTO Y PLAN DE MANUFACTURA
UNIVERSIDAD "ALONSO DE OJEDA"
También conocido como Diseño Lógico Rodrigo Salvatierra Alberú.
Ingeniería de Software
EVALUACION DEL PERSONAL
PROCESO Y MODELOS EN LA INGENIERIA DE SOFTWARE

METODOLOGÍAS ÁGILES “PROCESO UNIFICADO ÁGIL (AUP)
Guia Diseño Robert Echeverria
Análisis y Diseño de Aplicaciones Ingeniería de Software
Ingeniería del Software
CALIDAD EN EL DESARROLLO DE SOFTWARE
Objetivo: Conocer los componentes hardware y software que constituyen un computador.
Software La buena programación no se aprende de generalidades, sino viendo cómo los programas significativos pueden hacerse claros, “fáciles” de leer,
M.S.C. Ivette Hernández Dávila
AUDITORIA DE LA SEGURIDAD en Telecomunicaciones y redes de computadoras Unidad VI.
HERRAMIENTAS CASE.
Mg(c) Ing. Miguel Huamán Yanarico
Requerimientos /Metas:
 Docentes ◦ Jonathan Erlich  ◦ Ariel Glikman   Organización de la materia ◦ Idesmaimonides.wikidot.com.
Las etapas de un proyecto
Ciclo de Vida del Software Paradigmas de Desarrollo
CONCEPTOS BÁSICOS Diseño de Sistemas.
Administración de proyectos
Ingeniería de Software
Conceptos de Gestión y Planificación de Proyectos Software
Ingeniería de Requerimiento
Universidad Central de Venezuela Facultad de Ciencias Postgrado en Ciencias de la Computación Sistemas Distribuidos Albany Márquez.
I NTRODUCCIÓN A LA I NGENIERÍA DEL S OFTWARE Ing. Sonia Godoy H Informática empresarial Ing-Sonia Godoy H.
Introducción a la investigación de mercados
EL APORTE DE LA INGENIERIA DE SOFTWARE A LAS ORGANIZACIONES
Diseño del servicio ITIL..
Tema 1: Introducción a la Ingeniería de Software
EVOLUCIÓN DEL SOFTWARE
PROYECTO INFORMÁTICO.
INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE
VISIÓN GENERAL DE LA IS Con independencia del modelo de proceso hay tres fases genéricas: Fase de definición Fase de desarrollo Fase de mantenimiento Cada.
INTRODUCCIÓN INGENIERIA DE SISTEMAS
Metodología de Desarrollo Unidad Educativa Bolívar Sebastián Torres 6° 18°
Docente: Lic. M. Alina Vargas García Horario: Lunes 20:05 – 21:25 Miércoles 20:05 – 21:25 Gestión: 2011.
Ciclo de vida de un sistema
Procesos de Desarrollo de Software
UNIDAD 2 ASEGURAMIENTO DE LA CALIDAD (SQA)
TIPOS DE AUDITORÍAS EN SISTEMAS DE INFORMACIÓN
I NTRODUCCIÓN A LA I NGENIERÍA DEL S OFTWARE Ing. Sonia Godoy H Informática empresarial Ing-Sonia Godoy H.
Elaborado por: Mayoral Cruz Matilde Morales Espinoza Anllhins
Ingeniería del Software I
Auditoria Computacional
Estructurar tus ideas para hacerlas realidad
El producto de software y su ciclo de vida
Ingeniería en Informática F UNDAMENTOS DE C OMPUTACIÓN B ACHILLERATO EN I NGENIERÍA I NFORMÁTICA L IC. C ARLOS H. G UTIÉRREZ L EÓN.
INGENIERIA DE SOFTWARE
Proceso de desarrollo de Software
Ing del Software Libre1 Ingeniería del Software Libre y Modelos de Calidad Instructora: Ing. Erika Veliz Correo Electrónico:
¿Qué es la tecnología? Introducción 3º ESO.
TAREAS DEL CONTROL DE CALIDAD
CONCEPTO DE CICLO DE VIDA 1 En los departamentos de Sistemas se debe definir un marco de referencia común que debe ser:  Pueda ser empleado por todos.
República Bolivariana de Venezuela Universidad Nacional Experimental Politécnica de la Fuerza Armada (UNEFA) Carrera: Ingeniería de Sistemas Cátedra: Análisis.
Las fases del ciclo de la vida de desarrollo de sistemas
Planificación de Sistemas de Información
ELO-329: Diseño y Programación Orientados a Objetos1 Proceso de Desarrollo de SW Agustín J. González ElO329: Diseño y Programación Orientados a Objeto.
INDUSTRIAS DEL PETROLEO, PETROQUÍMICAS Y DEL GAS NATURAL ASEGURAMIENTO DE LA PRODUCCIÓN Y ADMINISTRACIÓN DE LA CONFIABILIDAD ISO/CD Date: 2005 –
Contenido ¿Qué es la Normalización? Objetivos de la Normalización Que Productos se Normalizan Que son Normas Certificación de Productos Sistemas de Calidad.
Fue desarrollado durante el 2002, como consecuencia de los acuerdos de la mesa de la Estrategia 6 del Programa para el Desarrollo de la Industria de.
Verificación y Validación del Software
Transcripción de la presentación:

Ing. Francisco Rodríguez Novoa UNT. INGENIERIA INDUSTRIAL Ingeniería de Software Ing. Francisco Rodríguez Novoa

INTRODUCCION A LA INGENIERIA DE SOFTWARE TEMA 1 INTRODUCCION A LA INGENIERIA DE SOFTWARE

Agenda Que es software? Evolución histórica del software Tipos de producto software Definición de Ingeniería de Software. Crisis del software Malas prácticas de desarrollo y mantenim. Principios de la ISW Atributos de Calidad del SW Ciclo de vida del software Industria del Software en el Perú

1. Qué es Software (SW) ? Conjunto de programas que proporcionan una función y un rendimiento esperados. Conjunto de estructuras de datos que permiten a los programas manipular adecuadamente la información. (Datos de configuración) Conjunto de documentos que describen el funcionamiento del SI (Documentación Genéricos: Productos de uso genérico (procesadores, bases de datos, etc.). A medida: Productos específicos para un cliente particular (manual de usuario).

1. Qué es Software (SW) ?

1. Qué es Software. Características No tiene forma física. Se desarrolla, no se fabrica. Los costes del Sw son de INGENIERÍA. No de fabricación. El Sw no se rompe, se deteriora. La complejidad del mantenimiento del Sw es mucho más grande que la del Hw. Si el Hw se rompe se cambia por otro y listo. (Hay piezas de recambio). Si el Sw se deteriora, con cada cambio que se realiza se deteriore aún más. (No hay piezas de recambio).

2. Qué es Software. Características No se estropea, pero se degrada: Curva de bañera para fallos del Hw. Curva ideal de fallos del Sw. Curva real de fallos del Sw. Se construye a medida Reusabilidad

2. Evolución Histórica del Desarrollo de Sw

2. Evolución Histórica del Desarrollo de Sw

3. Tipos de productos software (i) Un producto software es un sistema software que se acompaña de la documentación necesaria para su instalación y uso Tipos de mercados Productos genéricos Sistemas autónomos producidos por una organización para su venta en el mercado abierto a cualquier cliente que pueda adquirirlo El desarrollador controla la especificación Productos personalizados Sistemas encargados por un cliente particular Desarrollos a medida Las especificaciones las determina el cliente

3. Tipos de productos software (ii) Áreas de aplicación [Pressman, 2010] (i) Software de sistemas Software para dar servicio a otros programas: compiladores, editores... Fuerte interacción con el hardware Uso intensivo por parte de usuarios múltiples. Recursos compartidos Ejm: componentes de sistemas operativos, software de redes, procesadores de telecomunicaciones Software aplicación Programas aislados que resuelven una necesidad específica de negocios. Las aplicaciones en esta área procesan datos comerciales o técnicos en una forma que facilita las operaciones de negocios o la toma de decisiones administrativas o técnicas. Además se usa para controlar funciones de negocios en tiempo real (por ejemplo procesamiento de transacciones en punto de venta, control de procesos de manufactura en tiempo real etc)

3. Tipos de productos software (iii) Áreas de aplicación [Pressman, 2010] (ii) Software de ingeniería y científico Algoritmos de tratamiento numérico: simulación, estadística, CAD... Diseño de algoritmos y estructuras de datos Cálculo intensivo Las aplicaciones van de la astronomía a la vulcanología, del análisis de tensiones en automóviles a la dinámica orbital del transbordador espacial y de la biología molecular a la manufactura automatizada. Software incrustado Reside dentro de un producto o sistema y se usa para implementar y controlar características y funciones para el usuario final y para el sistema en si. (por ejemplo control del tablero de un horno microondas, funciones digitales en un automóvil)

3. Tipos de productos software (iv) Áreas de aplicación [Pressman, 2010] (iii) Software de línea de productos Es diseñado para proporcionar una capacidad específica para uso de muchos consumidores diferentes . El software de línea de productos se centra en algún mercado limitado y particular (por ejemplo, control de inventario de productos) o se dirige a mercados masivos de consumidores (procesamiento de textos, hojas de cálculo, entretenimiento, administración de base de datos y aplicaciones para finanzas personales o de negocios) Aplicaciones Web Llamadas “webapps”, agrupa una amplia gama de aplicaciones. En su forma mas sencilla, las webapps son poco mas que un conjunto de archivos hipertexto vinculados que presentan información con uso de texto y gráficas limitadas. Sin embargo desde que surgió las web 2.0, las webapps están evolucionando integrándose con base de datos corporativas y aplicaciones de negocio.

3. Tipos de productos software (v) Áreas de aplicación [Pressman, 2010] (iv) Software de Inteligencia Artificial Hace uso de algoritmos no numéricos para resolver problemas complejos que no son fáciles de tratar computacionalmente o con análisis directo. Las aplicaciones en esta área incluyen robótica, sistemas expertos, reconocimiento de patrones (imagen y voz), redes neuronales artificiales, demostración de teoremas y juegos.

4. Qué es Ingeniería de Software? “La Ingeniería del Software es la disciplina de ingeniería encargada de todos los aspectos relacionados con la producción de software desde sus etapas más tempranas de la especificación del sistema hasta el mantenimiento del sistema tras su puesta en marcha.” - Ingeniería del Software – Ian Sommerville

4. ¿Qué es Ingeniería del Software? Conjunto de métodos, técnicas y herramientas que controlan el proceso integral del desarrollo de software y suministra las bases para construir software de calidad de forma eficiente en los plazos adecuados.

4. ¿Qué es Ingeniería del Software? Disciplina de ingeniería Los ingenieros de software usan las herramientas, métodos y teorías para solucionar los problemas que aparecen. Incluso teniendo en cuenta restricciones económicas y de organización. Producción de software Planificación de proyectos. Administración de proyectos software. Procesos técnicos de desarrollo de software. Dirección de proyectos.

¿Por qué surgió la Ingeniería SW Para superar la crisis del software y terminar con los mitos del software hasta ahora existentes. Para acabar con las malas prácticas de desarrollo y mantenimiento de software llevadas a cabo por las empresas. Crear software de calidad

5. Crisis del Software Conjunto de problemas que afectan al desarrollo y mantenimiento del software derivado de los mitos y malas prácticas. Las consecuencias son: Baja Calidad del Software. Tiempo y Presupuesto Excedido. Confiabilidad Cuestionable. Altos requerimientos del personal para el desarrollo y el mantenimiento

6. Malas prácticas de desarrollo y mantenimiento Planificación y estimaciones imprecisas: No se recopilan datos de proyectos pasados. Se invierte más dinero en mantenimiento que en formación de los ingenieros en las nuevas tecnologías de desarrollo. No se documenta lo suficiente. Se pasa directamente a la codificación

6. Malas prácticas de desarrollo y mantenimiento Procesos software improvisados. No se siguen rigurosamente las especificaciones. No se hace planificación de riesgos. Se resuelven crisis inmediatas. Se apagan fuegos. Se sacrifica funcionalidad y calidad del producto para cumplir plazos. No se planifica debidamente. No se realizan pruebas, verificaciones o revisiones del Sw.

6. Malas prácticas de desarrollo y mantenimiento Síntomas: Baja calidad del software desarrollado. Alto grado de desconfianza e insatisfacción en el cliente. Empresas inmaduras -> En fase artesanal. Se exceden en los plazos y presupuestos previstos. 90% de los proyectos no consiguen los objetivos propuestos. 40% fracasan completamente. 29% nunca se entregan.

¿Qué propone la IS? – Ser ingenieros Artesano Ingeniero Para ello se debe: Aplicar métodos, técnicas y herramientas de desarrollo. Adoptar estándares de desarrollo. Utilizar la experiencia acumulada. Documentación.

¿Qué propone la IS? – Ser ingenieros ¿Qué conseguimos adoptando estándares de desarrollo? Mejorar el proceso. Reducción de costes. Reducción del tiempo de desarrollo. Reducción de riesgos. Mejora de la calidad del producto. Protección del cliente. Protección de la organización. Aumenta su competitividad.

7. Algunos Principios de la Ing. del SW Entregar el producto al cliente cuanto antes Determinar el problema antes de escribir especificaciones Minimizar la distancia intelectual Evaluar las alternativas de diseño La técnica es más importante que las herramientas Hazlo bien antes de hacerlo rápido Inspeccionar el código

7. Algunos Principios de la Ing. del SW El personal es la clave del éxito Un diseño sin documentación, NO es un diseño El código difícil de leer es difícil de mantener La encapsulación crea Sw fácil de probar y mantener. “Divide y vencerás”. No probar tu propio Sw. Los desarrolladores no debe probar el Sw que han generado.

8. Atributos de Calidad del software Mantenible. Construido y documentado para permitir cambios. Fiable. Debe hacer lo que se espera de él, no debe fallar más a menudo de lo que se acordó en la especificación. Eficiente. No debe hacer uso innecesario de recursos. Usable. Interfaz de usuario adecuada

9. ¿Qué es el Ciclo de Vida del SW? Es una sucesión de etapas por las que pasa el software en su desarrollo, desde que se concibe la idea hasta que el software deja de utilizarse. Cada etapa lleva asociada una serie de actividades y tareas que se deben realizar, y una serie de documentos que serán la salida de cada una de estas fases y que servirán de entrada a la fase siguiente.

9. ¿Qué es el Ciclo de Vida del SW? Según la norma ISO/IEC Standard 12207:2008: Software life-Cycle processes propuesta por la ISO (International Organization for Standardization): “Es un marco de referencia que contiene los procesos, las actividades y las tareas involucradas en el desarrollo, explotación y mantenimiento de un producto software, abarcando la vida del sistema desde la definición de requisitos hasta que se deja de utilizar”

9. ¿Qué es el Ciclo de Vida del SW? ¿Qué es un proceso? Un proceso es un conjunto de actividades que se suceden siguiendo una ordenación temporal determinada ¿Qué es una actividad? Una actividad es un conjunto de tareas ¿Qué es una tarea? Una acción que transforma unas entradas en unas salidas

9. ¿Qué es el Ciclo de Vida del SW? Fases genéricas en el ciclo de vida del SW: Fase de definición. Tareas: Ingeniería de sistemas Planificación del proyecto del SW Análisis de los requisitos Fase de desarrollo. Tareas: Diseño del SW Generación de código Prueba del SW Fase de mantenimiento. Cambios: Corrección Adaptación Mejora Prevención

10. Industria del Software en el Perú Una de las industrias que tiene inmensas oportunidades es la del software, cuyo mercado mundial asciende a los $ 1,500 billones. El Perú es un actor que tiene significativas ventajas para obtener parte del consumo internacional, ya que cuenta con un activo en capital humano (30,000 programadores) y con la presencia de aproximadamente 300 empresas (90% pequeñas y microempresas), que en su mayoría no superan una década de funcionamiento.

10. Industria del Software en el Perú Sector de las Tecnologías de Información cada vez cobra mas importancia, por ser:

10. Industria del Software en el Perú Países latinoamericanos han tomado la iniciativa de apoyar sus industrias informáticas, considerándolas “sector de interés nacional” En nuestro país, la industria del software tiene un expectante potencial de crecimiento: Da empleo directo e indirecto altamente calificado a más de 6000 peruanos. Pese a lo comentado, la industria informática dista aún de estar consolidada. “La informalidad es un cáncer para nuestra actividad porque disipa el esfuerzo de las empresas formales”, comenta Amau. Se reclama una política gubernamental para incentivar la formalización del sector, que acelere el desarrollo de los centros informáticos

10. Industria del Software en el Perú Año Ventas (millones de dólares) Incremento Exportación 2008 160 - 16 2009 171 7.0 18 2010 182 6.4 22 2011 205 12.6 28 2012 225 9.8 36 2015 313 39.11 60 35

10. Industria del Software en el Perú Productos software para: Sector salud Sector bancario Sector construcción Sector gobierno Sector educativo. Soluciones ERPs para pymes Antivirus

Las limitaciones del sector de TI Las principales limitaciones para el desarrollo del sector son: Carencia de fuentes de financiamiento para proyectos tecnológicos. Insuficiente infraestructura tecnológica (hardware y conexiones a costo internacional) Presencia real y significativa de la piratería del software. Según BSA es de 61%. ¡ Es necesario implementar políticas de fomento para el sector tecnológico!

Planes de la ind. del sw para los próx 5 años Programa BID de apoyo a la industria de software: Sostenibilidad de la Capacitación en CMMi, Ing de Software, laboratorio de testeado, estudios, eventos, etc. Fomento a las exportaciones de software. Esquema descentralizado de capacitación especializada (provincias componente importante) Centro de arbitraje tecnológico. Centro de incubación de empresas de base tecnológica. Certificación de competencias laborales IT-CARD.

Temas Exposición de Ingeniería de Sw Tecnología Orientada a Objetos. Proceso de Software. Modelos Prescriptivos del Proceso: Modelo en Cascada / Modelos Incrementales / Modelos Evolutivos Administración de Proyectos Software. (Personal, Producto, Proceso, Proyecto) Estimación para proyectos software Administración del Riesgo. Conceptos de Calidad de software Ingeniería Web.

Web del curso http://untingsw.weebly.com

FIN