Ingeniería de Software

Slides:



Advertisements
Presentaciones similares
Ingeniería de Software
Advertisements

Ingeniería de Software Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Tomado de:
Introducción al Proceso de Desarrollo de Software Patricio Letelier Departamento de Sistemas Informáticos y Computación Universidad.
Ingeniería de Software
Fundamentos de programación
Ingeniería de Software Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de:
Introducción al Proceso de Desarrollo de Software Patricio Letelier Centro de Formación de Postgrado – Depto. Sistemas Informáticos y Computación Universidad.
Ingeniería de Software
Ingeniería de Software Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de:
Ingeniería de Software
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,
Introducción a UML Departamento de Informática Universidad de Rancagua
Motivación ELO329: Diseño y programación orientados a objetos Agustín J. González 1s09.
Motivación ELO329: Diseño y programación orientados a objetos Agustín J. González 1s08.
Introducción AOO. Contenido - Introducción - Repaso de Orientación a Objetos - UML - Casos de Uso.
Ingeniería de Software Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de:
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.
Sistemas de Información Enfoques para la Construcción de los Sistemas de Información MBA Luis Elissondo.
CONCEPTO INGENIERÍA DE SOFTWARE  Analiza, diseña y desarrolla productos de sistemas software, proponiendo la plataforma tecnológica más apropiada. Domina.
2012-BM5A. Introducción Todos los lenguajes de programación son distintos entre si. Sin embargo, pueden ser agrupados según la forma de pensar y estructurar.
Ingeniería del Software Diseñó de Software Universidad de los Andes Demián Gutierrez Abril 2009.
Marlon Martínez Sernaque CIP Importancia del Uso de Metodologías en el Desarrollo de Software.
INGENIERÍA DE SOFTWARE RODRÍGUEZ CADENA CYNTHIA VIRIDIANA GRANADOS HERNÁNDEZ ERICK METODOLOGÍA OMT.
Organizaciones involucradas: El centro de cálculo noruego. Crea lenguaje llamado Simula 67, desarrollado por Krinsten Nygaard y Ole-Johan Dahl, en 1967.
La Ingeniería de Sistemas
Análisis de Proyecto de Software.
Herencia Multiple en Java
El Lenguaje de Modelación Unificado
Ingeniería de Software
CC4401 – Ingeniería de Software I
SWEBOK.
Programación Orientada a Objetos
Arquitectura de una Base de Datos
U.T. 11: Introducción A Las Bases De Datos
Ingeniero en Computación José Alfredo Cobián Campos
Proceso de Desarrollo de SW
INTREGRANTES DE EQUIPO:
CARRERA DE INGENIERÍA EN SISTEMAS E INFORMÁTICA
UNIVERSIDAD ICEP INTELIGENCIA ARTIFICIAL INGENIERÍA EN SISTEMAS COMPUTACIONALES Martes, 24 de Octubre de 2017 REPRESENTACIÓN DEL CONOCIMIENTO Y RAZONAMIENTO.
Ingeniería de Software Somerville
INTRODUCCIÓN A UML Oscar Miguel Alonso Moreno. INTRODUCCIÓN A UML  QUE ES UML?  PARA QUE SE UTILIZA  COMPONENTES  DIAGRAMAS.
Tema 3. Lenguaje unificado de modelado UML
UNIVERSIDAD NACIONAL DE LOJA Área de la Educación, el Arte y la Comunicación Informática Educativa IV INGENIERIA DE SOFTWARE Taller de Análisis y Diseño.
Ingeniería de Software
Metodología OOHDM Jairo Pinto Ing. sistemas.
Ingeniería del Software
Modelo de interacción de usuario.  El Desarrollo basado en modelos de la interfaz de usuario, en inglés Model-based User Interface Development (MB-UID),
Proceso de Desarrollo de SW
CC-3003 Computación II Juan Alvarez Rubio DCC, FCFM, U. de Chile
FUNDAMENTOS DE PROGRAMACION EN ENTORNO WEB. Rodrigo Cabello Ing. Informático Director de proyectos Think – Ideas in Motion FUNDAMENTOS.
Metodologías de Desarrollo de Software RUP – Proceso Racional Unificado Gilber BASILIO ROBLES I.E.S.T.P. “DANIEL ALCIDES CARRIÓN” Taller de Modelamiento.
Análisis y diseño de aplicaciones. Introducción Crisis del software - conferencia organizada en 1968 por la Comisión de Ciencias de la OTAN en Garmisch.
Planeamiento: un plan incremental para que la ingeniería web produzca resultados. La ingeniería web es un área que abarca procesos, técnicas y modelos.
Introducción al Proceso de Desarrollo de Software Patricio Letelier Departamento de Sistemas Informáticos y Computación Universidad.
METODOLOGIA AGIL XP LIC. ROXANA LAUREL R.. INTRODUCCION  Proceso : conjunto de actividades ordenadas para lograr una serie de objetivos  Proceso Pesado.
Metodología de Desarrollo de Sistemas II Ingeniería de Software  DEFINICIÓN La ingeniería del software es el establecimiento y uso de principios de.
UTFSM - Departamento de Electrónica1 Noviembre de 2003 “Beneficios del Uso de Metodologías en el Desarrollo de Proyectos” Trabajo de título presentado.
SOFTWARE PRESENTADO POR: THE APPLE. ¿QUÉ ES LA INGENIERÍA DE SOFTWARE ? La Ingeniería de Software es una disciplina de la Ingeniería que concierne a todos.
PRESENTACION DE INGENIERIA ORIENTADA A OBJETOS. INTRODUCCION. ¿ Qué es UML ?. UML, por sus siglas en Ingles, Unified Modeling Languaje.(Lenguaje Unificado.
INTRODUCCIÓN A UML Oscar Miguel Alonso Moreno. INTRODUCCIÓN A UML  QUE ES UML?  PARA QUE SE UTILIZA  COMPONENTES  DIAGRAMAS.
1 PROGRAMACION ORIENTADA A OBJETOS MARIA LAURA ESPIN B. INSTITUTO TECNOLÓGICO SUPERIOR ÁNGEL POLIBIO CHÁVEZ TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE.
ANÁLISIS Y DISEÑO DESDE UNA PERSPECTIVA ORIENTADA A OBJETOS Alan Vargas.
UTFSM - Departamento de Electrónica1 Noviembre de 2003 “Beneficios del Uso de Metodologías en el Desarrollo de Proyectos” Trabajo de título presentado.
Docente: Mg.Henry Infante Takey Unidad 1 Investigación Operativa 1.
INTRODUCCIÓN A UML.  QUE ES UML?  PARA QUE SE UTILIZA  COMPONENTES  DIAGRAMAS.
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS
ICI 502 Procesos de Software
Luis Fernando Muñoz Pantoja Ingeniero de Sistemas Copyright 2019 Luis Fernando Muñoz Pantoja Ingeniero de Sistemas Derechos reservados UML.
SIMULACIONES 2019 German Vega Quintero John Farley Paez Santamaria.
INGENIERIA DE SOFTWARE I Ing. Verónica Defaz. MSc.
Transcripción de la presentación:

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, UC Berkeley, entre otras fuentes.

Definiciones de Ingeniería de Software (1993) La aplicación de mecanismos sistemáticos, disciplinados, y cuantificables para el desarrollo, operación y mantención de software; esto es la aplicación de la ingeniería al software. Establecimiento y uso de principios con caracteres de ingeniería apropiados para obtener, eficientemente, software confiable, que opere eficaz y eficientemente en máquinas reales La aplicación del arte del desarrollo software junto con las ciencias matemáticas y computadores para diseñar, construir, y mantener programas computacionales eficientes y económicos que logran sus objetivos. Wikipedia: “Software engineering is a profession and field of study dedicated to designing, implementing, and modifying software so that it is of higher quality, more affordable, maintainable, and faster to build.” Se busca: Resolver el problema a costo y en tiempo controlados. ELO-329: Diseño y Programación Orientados a Objetos

Estado del arte en Ing. de Software ¿Es una ciencia rigurosa con fuertes fundamentos matemáticos? ¿Es una campo técnico bien desarrollado con mucho de disciplina de ingeniería? O está realmente en un estado primitivo... A lo más una serie de “mejores prácticas”, desarrolladores de software construyen software y si éstos funcionan, entonces nosotros estudiamos cómo ellos lo hicieron. Si éstos funcionan por un largo tiempo, entonces estudiamos sus procesos de software aún más cuidadosamente. ELO-329: Diseño y Programación Orientados a Objetos

Construcción de una casa para “fido” La puede hacer una sola persona Requiere: Modelado mínimo Proceso simple Herramientas simples ELO-329: Diseño y Programación Orientados a Objetos

Construcción de una casa Construida eficientemente y en un tiempo razonable por un equipo Requiere: Modelado Proceso bien definido Herramientas más sofisticadas ELO-329: Diseño y Programación Orientados a Objetos

Construcción de un rascacielos ELO-329: Diseño y Programación Orientados a Objetos

ELO-329: Diseño y Programación Orientados a Objetos Moraleja: No es lo mismo hacer una tarea en programación de 1er. año que desarrollar un software tipo Eclipse, Jgrasp, Matlab, Matemática, u otro. ¿Cómo debe cambiar el proceso de desarrollo? ELO-329: Diseño y Programación Orientados a Objetos

Claves en Desarrollo de IS Notación (UML)‏ Calidad: Ej: CMM Capability Maturity Model Proceso (Metodologías Ej: ITIL, SCRUM, Extreme Programming, RUP: Rational Unified Process, Personal Software Process)‏ Herramientas (Ej: Rational Rose, Umbrello, IDEs)‏ ELO-329: Diseño y Programación Orientados a Objetos

Abstracción - Modelado Visual (MV) “El modelado captura las partes esenciales del sistema” En otras disciplinas se conoce el beneficio de tener representaciones visuales del modelo. Ej. Plano circuito, plano arquitectura, diagrama cuerpo libre Orden Item envío Proceso de Negocios Sistema Computacional ELO-329: Diseño y Programación Orientados a Objetos

Notación (Visual) - Beneficios Manejar la complejidad Interfaz de Usuario (Visual Basic, Java, ..)‏ Lógica del Negocio (C++, Java, ..)‏ Sistemas Múltiples Componentes Reutilizados Servidor de BDs (C++ & SQL, ..)‏ “Modelar el sistema independientemente del lenguaje de implementación” Promover la Reutilización ELO-329: Diseño y Programación Orientados a Objetos

¿Por qué la Orientación a Objetos? Por su proximidad a las entidades del mundo real que surgen del modelado. Mejora la captura y validación de requisitos Acerca el “espacio del problema” al “espacio de la solución” Modelado integrado de propiedades estáticas (estado de cada ente) y dinámicas (interacción entre entes) del ámbito del problema Facilita construcción, mantenimiento y reutilización Su diseño facilita: la creación de Abstracciones (Ignorar detalles) la Modularización (separación en módulos) Ocultar información (separar la implementación del uso) Podríamos dar muchas razones pero hay problemas. ELO-329: Diseño y Programación Orientados a Objetos

ELO-329: Diseño y Programación Orientados a Objetos Problemas en OO Un objeto contiene datos y operaciones que manipulan los datos, pero ... Podemos distinguir dos tipos de objetos degenerados: Un objeto sin datos (que sería lo mismo que una biblioteca de funciones). Si los métodos son estáticos, “peor” aún. Un objeto sin “operaciones”, con sólo atributos públicos (que equivaldría a las estructuras de datos tradicionales)‏ Un sistema construido con objetos degenerados no es un sistema verdaderamente orientado a objetos. ELO-329: Diseño y Programación Orientados a Objetos

ELO-329: Diseño y Programación Orientados a Objetos Moraleja Las técnicas deben ser utilizadas para obtener de ellas su real beneficio. Estudiaremos algunas metodologías Qué viene ahora: Pongamos el desarrollo de software en perspectiva: Conozcamos cuál es el proceso de desarrollo de software. ELO-329: Diseño y Programación Orientados a Objetos