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,

Slides:



Advertisements
Presentaciones similares
Ciclo de vida de desarrollo de software
Advertisements

MODELOS ORIENTADOS A OBJETOS
Lenguaje Unificado de Modelado
Ingeniería de Software
Introducción a la Orientación a Objetos
DSOO - María Eugenia Valencia
ESCUELA POLITÉCNICA DEL EJÉRCITO
UML.
INTRODUCCIÓN A UML Oscar Miguel Alonso Moreno.
Ingeniería del Software
METODOLOGIA DE LA PROGRAMACION
Ingeniería de Software Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Tomado de:
El paradigma de la orientación a objetos La programación orientada a objetos genera códigos eficientes y estandariza la metodología de programación, además.
 El termino OO, significa que el software es organizado como una colección de objetos. Un objeto es un paquete de software que contiene datos y procedimientos.
Introducción al Proceso de Desarrollo de Software Patricio Letelier Departamento de Sistemas Informáticos y Computación Universidad.
Ingeniería de Software
Viviana Poblete López Módulo: Modelo de Datos
Arquitectura de una aplicación
DISEÑO DE SOFTWARE 1ª. Parte
Fundamentos de programación
 Docentes ◦ Jonathan Erlich  ◦ Ariel Glikman   Organización de la materia ◦ Idesmaimonides.wikidot.com.
Desarrollos de Software Orientados a Objetos usando UML
Ingenieria de software
LA IMPORTANCIA DE LAS PyMEs
Líneas de Investigación
Ingeniería de Software Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de:
Ingeniería de Software: Metodologías Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de:
Diseño e Implementación de Sistemas Basados en Conocimiento
VII Congreso de Expotecnología UVM 2007 Jonás A. Montilva C.
Universidad Central de Venezuela Facultad de Ciencias Postgrado en Ciencias de la Computación Sistemas Distribuidos Albany Márquez.
Diseño: Fundamento y Documentación ISF5501 Ingeniería de Software Semana 13/2.
EL APORTE DE LA INGENIERIA DE SOFTWARE A LAS ORGANIZACIONES
Introducción al Proceso de Desarrollo de Software Patricio Letelier Centro de Formación de Postgrado – Depto. Sistemas Informáticos y Computación Universidad.
Ing. en Sistemas de Información
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
Motivación ELO329: Diseño y programación orientados a objetos Agustín J. González 1s07.
CICLO DE VIDA Y NORMAALIZACION DE UN SISTEMA DE BASE DE DATOS
Métrica v2.1 Técnicas: Modelado de datos (Parte 1)
ANÁLISIS Y DISEÑO DE SISTEMAS II
Docente: Lic. M. Alina Vargas García Horario: Lunes 20:05 – 21:25 Miércoles 20:05 – 21:25 Gestión: 2011.
Introducción a UML Departamento de Informática Universidad de Rancagua
Conceptos Fundamentales
Motivación ELO329: Diseño y programación orientados a objetos Agustín J. González 1s09.
Jairo Pinto Ing. sistemas
UML.
Unidad 3 MODELO DE ANALISIS.
Actividades en el Proceso de desarrollo de Software
TEMA: DISEÑO DE LA SOLUCION INTREGRANTES DE EQUIPO: ERIKA CRUZ MARTINEZ RODOLFO LOPEZ ANOTA LUIS ARMANDO LIÑA QUECHA JOSE FRANCISCO MEZO VARELA LUIS ENRIQUE.
Unified Modeling Language (Lenguaje de Modelamiento unificado)
Ing. Johanna Macias Algoritmo, Estructura y Programación III.
INGENIERIA DE SOFTWARE
Motivación ELO329: Diseño y programación orientados a objetos Agustín J. González 1s08.
Arquitectura de una aplicación Arquitectur a: desarrolla un plan general del sistema, asegurando que las necesidades de los usuarios sean atendidas. Ingeniería.
¿Qué es la Ingeniería De Software? Ingeniería de Software.
Capas de ingeniería del Software. Rosendo Antonio Manuel Ingeniería en Sistemas Computacionales.
Introducción AOO. Contenido - Introducción - Repaso de Orientación a Objetos - UML - Casos de Uso.
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.
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.
Fundamentos de Ingeniería de Software
Modelado Orientado a Objetos Programación Orientada a Objetos Departamento de Sistemas Universidad del Cauca 2006.
VERIFICACIÓN Y VALIDACIÓN DE SISTEMAS 3.10 Fase de manejo de requerimientos 4.1 Modelado de pruebas en UML Ponente: ing. Alejandro tapia vazquez.
Definición: Es un estilo de programación, su objetivo primordial es la separación de la capa de presentación, capa de negocio y la capa de datos. ARQUITECTURA.
Ingeniería de Software
Ingeniería de Software
Ingeniería de Software
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.

ELO-329: Diseño y Programación Orientados a Objetos2 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 Objetos3 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 aun más cuidadosamente.

ELO-329: Diseño y Programación Orientados a Objetos4 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 Objetos5 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 Objetos6 Construcción de un rascacielos

ELO-329: Diseño y Programación Orientados a Objetos7 Moraleja: No es lo mismo hacer una tarea en programación 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 Objetos8 Claves en Desarrollo de IS Herramientas (Ej: Rational Rose, Umbrello, IDEs)‏ Proceso (Metodologías Ej: ITIL, Extreme Programming, RUP: Rational Unified Process, Personal Software Process)‏ Notación (UML)‏ Calidad: Ej: CMM Capability Maturity Model

ELO-329: Diseño y Programación Orientados a Objetos9 Abstracción - Modelado Visual (MV) Sistema Computacional Proceso de Negocios Orden Item envío “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

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

ELO-329: Diseño y Programación Orientados a Objetos11 ¿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 Objetos12 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 Objetos13 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.