Introducción Sw
-
Upload
hanne-maria -
Category
Documents
-
view
9 -
download
0
description
Transcript of Introducción Sw
IntroducciónLa programación orientada a objetos es un método de objetos, cada uno
de los cuales representan una instancia de alguna clase, y cuyas clases
son todos miembros de una jerarquía de clases unidas mediante
relaciones de herencias en el que los programas se organizan como
colecciones.
Además utiliza un conjunto de técnicas que suelen utilizarse para el
desarrollo de programas más eficientes, a la par que mejora la fiabilidad
de los programas en el cual para el modelado de datos utilizaremos
herramienta UML el cual me permite representar nuestro problemas a
través de la diagramación, de los diferentes tipos de diagramas como
son:Diagrama de Caso de Uso, Diagrama de colaboración, Diagrama de
estado, Diagrama de clases el cual representa las clases de los sistemas
con sus relaciones estructurales y de herencia. Un diagrama de clases
está compuesto por: Nombre, Atributos, métodos. Las clases mantiene
las siguientes relaciones Generalización, composición, agregación,
asociación su relaciones indica el grado y el nivel de dependencia, se
anota en cada extremo de la relación y éstas pueden ser: 1 o muchos
1... (1...n) ó 0 o muchos 0... (0...n) o un número fijo
Las clases son los objetos como los tipos de datos son las variables
Hoy en día la tecnología orientada a objetos ya no se aplica solamente a
los lenguajes de programación, además se viene aplicando en el análisis
y diseño al igual que en las bases de datos.
La programación orientada a objetos es una de las formas más
populares de programar y viene teniendo gran acogida en el desarrollo
de proyectos de software desde los últimos años. Esta acogida se debe a
sus grandes capacidades y ventajas frente a las antiguas formas de
programar
Justificación
La programación orientada a objetos se ha hecho enormemente popular
Escritores y diseñadores de software, junto a compañías importantes en el
campo del software, se dedican de modo continuo a producir compiladores de
lenguajes, sistemas operativos, bases de datos, etc., orientados a objetos.
Hoy en día la Programación orientada a objetos juega un papel muy importante
en la ingeniería del software ya que en la actualidad se requiere hacer
sistemas más pequeños y ligeros, y transformando, de esta manera, la
funcionalidad típica de un sistema en algo del tamaño de un programa. Es aquí
donde la programación orientada a objetos ofrece el rendimiento, la flexibilidad
y funcionalidad requerida para implementaciones en el proceso de desarrollo
del software.
La PO0 (Programación Orientada a Objetos) no sólo son nuevos lenguajes de
programación, sino un nuevo modo de pensar y diseñar aplicaciones que
pueden ayudar a resolver problemas que afectan al desarrollo del software.
Por tal motivo justificamos la vital importancia de la programación orientada a
objetos en la ingeniería del software.
Objetivos
Objetivo General
Transmitir a nuestros compañeros conocimientos que permitan
desarrollar habilidades para proponer soluciones a problemas de
software utilizando el enfoque de la Programación Orientada a
Objetos y el lenguaje UML
Objetivos específicos
Conceptualizar términos de programación orientados a objetos
Dar a conocer las diferentes tipos de relaciones que existen en el
modelo de clases
Elaborar una exposición de manera dinámica que permita al
estudiante ver la importancia de la programación orientada en
objetos en la ingeniería del software
Marco conceptual
La programación orientada a objetos
Definición
“La programación orientada a objetos es una extensión natural de la
actual tecnología de programación, y representa un enfoque nuevo y
distinto al tradicional Al igual que cualquier otro programa, el diseño de
un programa orientado a objetos tiene lugar durante la fase de diseño
del ciclo de vida de desarrollo de software El diseño de un programa 00
es único en el sentido de que se organiza en función de los objetos que
manipulará De hecho, probablemente la parte más difícil de la creación
de software orientado a objetos es identificar las clases necesarias y el
modo en que interactúan entre sí” 1
Las Características base son:
Clases y objetos son creados en base al mundo real
Simplificación de los sistemas por medio de la composición,
herencia y polimorfismo
Fácil mantenimiento y evolución del sistema a través de la
encapsulación
Un componente elemental entre la ingeniería del software y la
programación orientada a objetos es el modelo de clases.
EL MODELO DE CLASES
Antes de hablar del modelo de clases tenemos que tener en cuenta que
es una clase.
Una clase es la unidad básica que encapsula toda la información de un
Objeto. La cual esta compuestas por atributos y métodos.
1 Programación orientada a objetos por Luis Joyanes Aguilar
Una clase es un contenedor de uno o más datos. Junto a las operaciones
de manipulación de dichos datos. Es normal representarla con un
rectángulo. Ejemplo:
Luego de saber que es una clase vamos a ver que es una modelo de
clases
“Un modelo de clases es una descripción de las clases en un sistema y
sus relaciones” 2
En los modelos de clases existen diferentes relaciones entre ellas
tenemos:
GENERALIZACIÓN
Es la relación entre una clase y una o más reuniones de esa misma clase
que conecta a la superclase con sus subclases.
Indica que una clase (clase derivada) hereda los métodos y atributos
especificados por una clase (clase base), por lo cual una clase
derivada además de tener sus propios métodos y atributos, podrá
acceder a las características y atributos visibles de su clase base.
2 Ingenieria del Software, Roger Pressman 6ta Edición, Mc Graw Hill 2012.
Ejemplo:
AGREGACIÓN
Es una asociación entre clases que representa una relación entre iguales
donde uno de los elementos que intervienen constituyen el todo y el
otro la parte. No hay relación entre los ciclos de vida de las instancias.
Por lo general está representada por una línea con un rombo hueco
COMPOSICIÓN
Es una forma especial de agregación, esta se usa cuando se tiene una
situación en la que un objeto contiene un número de otros objetos.
cuando un objeto contenedor se elimina todas las instancias que están
contenidas también desaparecen. Este se lo representa con un rombo
negro. Ejemplo:
ASOCIACIONES:
Es una relación que se da entre clases, permite asociar objetos que
colaboran entre sí. Cabe destacar que no es una relación fuerte, es
decir, el tiempo de vida de un objeto no depende del otro.
CASOS DE USO
“Es una estructura para describir la forma en que un sistema lucirá para
los usuarios potenciales es una colección de escenarios iniciados por una
entidad llamado actor”3
EL ACTOR.
Los actores representan un tipo de usuario del sistema, en los diagrama
de caso de uso se los representan con una silueta humana pero no por
ello se dice que debe ser humana, un actor puede ser un objeto, una
persona o en algunos casos sistemas computarizados.
3 Aprendiendo UML en 24 horas
COLABORACIONES
“Durante la ejecución de un sistema orientado a objetos, los objetos
interactúan con cada uno de los otros objetos “4 aquí es donde veremos
esa interacción mediante los diagramas de secuencia y colaboración.
Un diagrama de secuencia permite modelar las interacciones de los
objetos en el sistema.
Este diagrama nos va mostrando pasos a paso los intercambios de
mensajes, así como los estados de cada uno de los objetos que
intervienen en el sistema.
Los diagramas de colaboración permiten ver a la relación que hay entre
los objetos así como la secuencia de interacción de los mensajes que
están indicadas por números.
Definen las interacciones de la misma manera que el diagrama de
secuencia. Muestra la colaboración de varios objetos en un solo sistema.
A diferencia de los de secuencia estos pueden mostrar el contexto de la
operación
DIAGRAMA DE ESTADO.
Este es otro componente importante en UML, muestra los diferentes
estados en que un objeto se encuentra. Estos diagramas se utilizan para
describir el comportamiento de un sistema, representa los diferentes
estados que puede adquirir una clase, como representarla a diferentes
etapas de su vida el estado de un objeto se puede caracterizar por el
valor de uno o varios de los atributos de su clase, además, el estado de
un objeto también se puede caracterizar por la existencia de un enlace
con otro objeto.
CONCLUSIÓN4 Ingenieria del Software, Roger Pressman 6ta Edición, Mc Graw Hill 2012.
La programación orientada a objetos no sólo son nuevos lenguajes de
programación, sino un nuevo modo de pensar y diseñar aplicaciones que
pueden ayudar a resolver problemas que afectan al desarrollo del
software a través de la flexibilidad y funcionalidad requerida para
implementaciones del desarrollo software.
Además la programación orientada a objetos permite la optimización del
código generado mediante la herencia, atributos estáticos, pues el
código que se utiliza debe ser común o genérico para volverlo a utilizar.
Un objeto es el alma de un programa, es lo que le permite realizar
trabajos, aunque no es una rutina es el resultado de la instanciación de
una clase.
Mediante el conocimiento impartido sobre la programación orientada a
objetos podemos establecer que una solución antigua de un problema
real, tan solo con relacionarlo con objetos podremos utilizarlo para
proponer soluciones a problemas software.
Hemos dado a conocer a nuestros compañeros de una forma sencilla
los mecanismos que se usan en este nivel de programación de tal
manera que desarrollen sus habilidades y sean capaces de proponer
soluciones software.
BIBLIOGRAFÍAS
Ingenieria del SoftwareRoger Pressman 6ta EdiciónMc Graw Hill 2012.
Aprendiendo UML en 24 horas
Programación orientada a objetos
Luis Joyanes Aguilar
Ingeniería del softwareSéptima ediciónIAN SOMMERVILLETraducciónMaría Isabel Alfonso Galipienso-Antonio Botía
Programación orientada a objetos
Roberto Rodriguez Echeverria – Encarna Sosa Sánchez
LINKOGRAFIAS
http://www.usmp.edu.pe/publicaciones/boletin/fia/info67/UML.pdf
http://docs.kde.org/stable/es/kdesdk/umbrello/uml-elements.html
http://jms32.eresmas.net/tacticos/UML/Indices/
ResumenGraficos.html
http://hannetomala.blogspot.com/