 Docentes ◦ Jonathan Erlich  ◦ Ariel Glikman   Organización de la materia ◦ Idesmaimonides.wikidot.com.

Slides:



Advertisements
Presentaciones similares
( Administración Total de la Calidad)
Advertisements

PROCESO Y MODELOS EN LA INGENIERIA DE SOFTWARE
ANÁLISIS DE REQUERIMIENTOS
Ingeniería de Software
METODOLOGÍAS ÁGILES “PROCESO UNIFICADO ÁGIL (AUP)
GENERACIONES DE LENGUAJES DE PROGRAMACIÓN
Análisis y Diseño de Aplicaciones Ingeniería de Software
Versión 2004 Enrique Bañuelos Gómez
M.S.C. Ivette Hernández Dávila
DEPARTAMENTO DE CIENCIAS E INGENIERÍA DE LA COMPUTACIÓN UNIVERSIDAD NACIONAL DEL SUR Año 1º 2º 3º 4º 5º Programación Matemática Software Sistemas de Hardware.
SEMANA Introducción.
“Especificación de Requerimientos”
INGENIERÍA DE SOFTWARE II RECOMENDACIONES PRÁCTICAS PARA LA ESPECIFICACIÓN DE REQUERIMIENTOS DE SOFTWARE Gabriel Tamura Norha M.
Ingeniería de Software
Fundamentos de programación
Las etapas de un proyecto
Ingenieria de software
Ciclo de Vida del Software Paradigmas de Desarrollo
Tema I Arquitectura de Software. Arquitectura de software es un conjunto de reglas que definen la estructura de un sistema y las relaciones entre sus.
REQUERIMIENTOS DE SOFTWARE
Contexto Proyecto consolidado dentro de la línea de investigación de Sistemas de Información en el Dpto. de Ingeniería en Sistemas de Información de la.
Comunicación y Multimedia
CONCEPTOS BÁSICOS Diseño de Sistemas.
Facultade de Informática
I NTRODUCCIÓN A LA I NGENIERÍA DEL S OFTWARE Ing. Sonia Godoy H Informática empresarial Ing-Sonia Godoy H.
EL APORTE DE LA INGENIERIA DE SOFTWARE A LAS ORGANIZACIONES
Tema 1: Introducción a la Ingeniería de Software
Ing. en Sistemas de Información
INSTITUTO TECNOLOGICO DE MINATITLAN ASIGNATURA: FUNDAMENTOS DE PROGRAMACION DOCENTE: JOSE ANGEL TOLEDO ALVAREZ ALUMNA: ALEJANDRA OSORIO ARVISU SEMESTRE:
Ingeniería de Software
PRESENTADO POR: MARISOL CHACON COD: LISSETH DURAN COD:
Diseño de Software y su Proceso
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.
SIMULACIÓN 2015 Universidad Nacional Abierta y a Distancia – UNAD Escuela de ciencias básicas, Tecnología e Ingeniería Curso SIMULACIÓN.
INTRODUCCIÓN INGENIERIA DE SISTEMAS
Saber que cambiar y como hacer que el cambio finalmente ocurra será fuente de ventajas competitivas para la compañía. La totalidad de presentaciones y.
Desarrollo de Software II Escuela de Ingeniería de Sistemas y Computación Desarrollo de Software II Agosto - Diciembre 2008 Ing. Oswaldo Solarte Pabón.
PRESENTACIÓN Este trabajo se desarrolla sobre el tema de competencias, y basado en el Marco de Fundamentacion Conceptual Especificaciones de la Pruebas.
Análisis y Diseño de Aplicaciones
INGENIERIA DE SOFTWARE
Diseño de Sistemas.
Ingeniería de Software Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de: material asignatura CS169,Software Engineering,
Ciclo de vida de un sistema
 Sara Isabel Osorio Alcaraz Ana Isabel Vallejo Grisales 10 Informática 1.
Ing. José Manuel Poveda.  Muchas personas asocian el término de Software con los programas de PC. Sin embargo, software no son sólo programas, sino todos.
I NTRODUCCIÓN A LA I NGENIERÍA DEL S OFTWARE Ing. Sonia Godoy H Informática empresarial Ing-Sonia Godoy H.
METODOLOGÍAS ÁGILES “PROCESO UNIFICADO ÁGIL (AUP)
PROCESOS DE DESARROLLO DE SOFTWARE
Actividades en el Proceso de desarrollo de Software
Ingeniería del Software I
El producto de software y su ciclo de vida
Por: Jaime Enrique Melendez Monreal Código: INGENIERÍA DE SOFTWARE.
Ingeniería de Software
INTRODUCCIÓN A INGENIERIA KARLA TATIANA OLAYA TORRES ID ( )
INGENIERIA DE SOFTWARE
DESARROLLO DE SOFTWARE Cuando se va desarrollar un software intervienen muchas personas como lo es el cliente quien es el que tiene el problema en su.
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 Ingeniería De Software? Ingeniería de Software.
INTRODUCCION AL DESARROLLO DE PROYECTO SOFTWARE. ¿Qué es software? Elemento lógico del sistema.
Especificación del Problema Partimos del hecho de un programador no puede resolver un problema que no entiende. Por esta razón, la primera etapa en todo.
Las fases del ciclo de la vida de desarrollo de sistemas
NZ/EA/abril Introducción Julio NZ/EA/abril ¿ Que es la IS ? Disciplina que trata los aspectos concernientes al desarrollo de sistemas.
Ingeniería de Software Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de:
Maestría en Gerencia en Tecnología de la Información Cátedra Ingeniería de Software Profesora: Mary Carmen Milano. Integrantes: Rosa Arellano Osbaldo Goitia.
Modelo de procesos de software
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.
CICLO DE VIDA DE UN SOFTWARE. Es el conjunto de los programas de cómputo, procedimientos, reglas, documentación y datos asociados, que forman parte de.
Experiencia de México Taller sobre TIC y Compras Públicas.
Transcripción de la presentación:

 Docentes ◦ Jonathan Erlich  ◦ Ariel Glikman   Organización de la materia ◦ Idesmaimonides.wikidot.com ◦ Presentismo (70%) ◦ Material teórico (lectura previa y posterior) ◦ Ejercicios de tarea y en clase (70%) ◦ Trabajo práctico grupal de exposición (2 entregas) ◦ Evaluación

 1.¿Qué es software?  2.¿Qué es ingeniería de software?  3.¿Cuál es la diferencia entre ingeniería de software y ciencias de la computación?  4.¿Cuál es la diferencia entre ingeniería de software y ingeniería en sistemas?  5.¿Qué es un proceso de software?  6.¿Qué es un modelo de proceso de software?  7.¿Cuáles son los atributos de un buen software?

 Programa  Configuración  Documentación

SEI (1990) (CMU/SEI-90-TR-003)  Ingeniería es la aplicación sistemática del conocimiento científico en la creación y construcción de soluciones (“cost-effective”) para resolver problemas prácticos al servicio del hombre. Ingeniería del SW es aquella parte de la ingeniería que aplica los principios de las ciencias de la computación y las matemática para alcanzar soluciones (“cost-effective”) a problemas de software. Fairley (1985) (SW Engineering Concepts)  Es la disciplina tecnológica y de administración que se ocupa de la producción sistemática & mantenimiento de productos de software que son desarrollados en tiempo y costo estimados. IEEE  La aplicación de un proceso sistemático, cuantificable y disciplinado a la creación, desarrollo, la operación, y el mantenimiento de software. Ghezzi  Ingeniería Software es el campo de la ciencia de la computación que trata con la construcción de sistemas de software que son tan grandes o complejos que son construidos por un equipo o equipos de ingenieros

 Cs. Comp: Teorías y métodos subyacentes (matemática, electrónica, redes, sistemas operativos, etc.) para investigación y desarrollo.  Ing. De SW: Se refiere a los problemas prácticos a la hora de producir software utilizando las herramientas provistas por las Cs. de la computación.

 La Ing. de Sist. se refiere a todos los aspectos de la comprensión, desarrollo y evolución de un sistema, sin importar si es computarizado o no. Incluye personas, organizaciones, procesos, software, hardware, papel, etc.  La Ing. de SW. se refiere a los aspectos específicos del desarrollo de software y sus relaciones con los otros aspectos.

 El proceso de software es también conocido como ciclo de vida.  Es un conjunto de actividades cuya meta es el desarrollo y evolución del Software, incluye: ◦ Especificación del software ◦ Desarrollo ◦ Validación ◦ Evolución  Distintos procesos trabajan con estas actividades en distinto orden y detalle, de acuerdo al tipo de aplicación, madurez del equipo de desarrollo, costos y tiempos.

 Modelo: una simplificación de la realidad con el fin de ser representada.  Modelo de proceso de software: Una descripción del proceso utilizado desde una perspectiva particular.  Existen distintos tipos de modelos de proceso de software: ◦ Cascada ◦ RUP ◦ eXtremme Programming

 Mantenibilidad  Confiabilidad  Eficiencia  Usabilidad

 Las economías de todas las naciones desarrolladas son dependientes del software  Cada vez mas sistemas son controlados por software  Las ventas de software cada vez representan mayor % en el PBI / exportaciones  En gral. los costos de SW son mayores que los de HW. Tanto a nivel empresarial como personal.  El costo de mantenimiento es mayor que el de desarrollo. Hasta varias veces su tamaño en sistemas de larga vida útil.  La ingeniería de software tiene mucho que ver con la rentabilidad del desarrollo de software.

 Cliente (Stakeholders)  Project Manager  Project Leader  Analista  Arquitecto  Diseñador  Desarrollador  QA  QC/Tester

 Es el proceso que se sigue para construir, entregar y hacer evolucionar el software, desde la concepción de una idea hasta la entrega y el retiro del sistema.  Es una representación de: ◦ Las etapas de un desarrollo de SW ◦ Los criterios de transición para pasar entre etapas  Su importancia, existen muchos modelos de Ciclos de Vida pero la elección del correcto nos puede ayudar a poner mas énfasis en: ◦ Mejorar la velocidad de desarrollo ◦ Mejorar la calidad ◦ Mejorar el seguimiento & control del proyecto ◦ Disminuir el riesgo ◦ Mejorar la relación con el cliente ◦ Mejorar la reacción ante el el cambio

 Etapas ◦ Inicio ◦ Desarrollo ◦ Validación ◦ Evolución  Actividades ◦ Ing. De requerimientos ◦ Diseño ◦ Desarrollo ◦ Documentación ◦ Verificación ◦ Validación ◦ Despliegue ◦ Mantenimiento ◦ Cambios

 Standalone  Web  Embebidos  Firmware  En lote o batch  Tiempo real  Entretenimiento  Modelado y simulación  Recolección de datos  Sistemas de sistemas

 La abstracción consiste en aislar un elemento de su contexto o del resto de los elementos que lo acompañan.  En sistemas, el término se refiere al énfasis en el "¿qué hace?" más que en el "¿cómo lo hace?". El común denominador en la evolución de los lenguajes de programación ha sido el nivel de abstracción del que cada uno de ellos hace uso.

 Se denomina Modularidad a la propiedad que permite subdividir una aplicación en partes más pequeñas (llamadas módulos), cada una de las cuales debe ser tan independiente como sea posible de la aplicación en sí y de las restantes partes.  Estos módulos se pueden compilar por separado (no siempre), pero tienen conexiones con otros módulos. Los lenguajes soportan la Modularidad de diversas formas.

 La incrementalidad se refiere a la capacidad de desarrollar funcionalidades en pequeños pasos, dónde cada uno implica una funcionalidad completa (en gral.), es decir, agrega valor.  Diferentes ciclos de vida utilizan esta idea para definir el proceso.

 El cambio es inevitable ◦ Cambios en los requerimientos, cambios en las tecnologías, cambios en el equipo, etc.  A mas tardío, más costoso  Algunos ciclos de vida apuntan a reducir este costo