Professional Documents
Culture Documents
EXAMEN UNIDAD 2
FUNDAMENTOS DE PROGRAMACION
M.C. JOSÉ ÁNGEL TOLEDO ÁLVAREZ
INSTITUTO TECNOLOGICO DE
MINATITLAN
Clases.
En el contexto del análisis y el diseño, una clase es una categoría o grupo de cosas que
tienen atributos y comportamientos comunes.
Alumno
Profesor
Mesa
Silla
Pizarrón
También podemos observar que hay objetos compuestos de otros objetos. Por ejemplo, la
silla está compuesta de:
4 patas
1 respaldo
1 asiento
A esta relación, donde un objeto está formado por otros objetos, se le llama agregación.
Otra relación consiste en que, a partir de un objeto existente, se pueda crear otro nuevo
objeto, agregándole nuevos atributos o comportamientos. Por ejemplo, agregándole una
paleta a una silla obtenemos un mesabanco. Esta relación se llama derivación.
En este caso, a partir de la clase Silla se ha formado una nueva clase llamada Mesabanco.
Objetos.
La identidad nos dice que un objeto tiene una existencia continuada. Por ejemplo los
valores de los atributos de este objeto podrían cambiar, quizás como respuesta a un
mensaje, pero seguiría siendo el mismo objeto.
Atributos.
Un atributo es una característica de un objeto. Por ejemplo, todos los objetos de la clase
Lavadora tienen atributos como: la marca, el modelo, el número de serie y la capacidad.
Por ejemplo:
UnaLavadora
Laudatorium
Washmeister
GL57774
7Kg.
Métodos.
Es una operación o algoritmo que realiza acceso a los datos y esta asociado aun objeto o a una
clase de objetos. Puede estar escrito en cualquier lenguaje, cuya ejecución sólo puede
desencadenarse a través de un mensaje recibido por éste o por sus descendientes.
Desde el punto de vista del comportamiento, es lo que el objeto puede hacer. Un método puede
producir un cambio en lar propiedades del objeto, o la generación de un “evento” con un nuevo
mensaje para otro objeto del sistema.
Es conveniente utilizar el término 'método' para que se distingan claramente las propiedades
especiales que adquiere un programa en el entorno de la poo, que afectan fundamentalmente a la
forma de invocarlo (únicamente a través de un mensaje) y a su campo de acción, limitado a un
objeto y a sus descendientes, aunque posiblemente no a todos.
Si los métodos son programas, se deduce que podrían tener argumentos, o parámetros. Puesto
que los métodos pueden heredarse de unos objetos a otros, un objeto puede disponer de un
método de dos maneras diferentes:
2.- DEFINA EL CONCEPTO DE “ABSTRACCION” Y EXPLIQUE AMPLIAMENTE PARA QUE NOS SIRVE.
Cada objeto en el sistema sirve como modelo de un "agente" abstracto que puede realizar trabajo,
informar y cambiar su estado, y "comunicarse" con otros objetos en el sistema sin revelar cómo se
implementan estas características. Los procesos, las funciones o los métodos pueden también ser
abstraídos y cuando lo están, una variedad de técnicas son requeridas para ampliar una
abstracción.
La abstracción nos sirve en demasía para poder saber que puede ofrecernos cada objeto y darle la
utilidad que nos permita aprovecharlo al máximo, y lograr un sistema eficiente, sin tener que
revisar cada objeto para entender como hace lo que le pedimos, es decir nos facilita su uso.
Un ejemplo de abstracción es el hecho de que uno pueda conducir un automóvil sin ser un
mecánico (lo cual probablemente no era cierto con los primeros vehículos). Al conducir, uno se
abstrae de cómo funciona la combustión en el motor. Sólo se requiere saber cómo se maneja el
volante y los pedales, y cuales son las reglas del tránsito.
3.- DEFINA “UML” Y ENLISTE LOS 9 DIAGRAMAS QUE EMPLEA.
1 Casos de uso
2 Clases y objetos
3 Interacción
4 Despliegue
5 Componentes
6 Actividades
7 Estado
8 Colaboración
9 Comunicación
Planteamiento del problema: Comenzar a descubrir cual es el problema que necesitamos resolver
o que necesidad deseamos suplir, obtener comentarios del cliente para saber exactamente hacia
donde enfocaremos el proyecto y que quiere obtener por medio de un software.
Análisis: En esta parte del proceso se mira el problema desde diferentes puntos, ver que posibles
soluciones existen y de que manera vamos a resolver el problema; investigar todo lo que nos
pueda ayudar a elaborar un programa que cumpla con las expectativas nuestras y del cliente.
Incluso se puede convivir con el cliente en su entorno de trabajo para poder absorber experiencias
y utilizarlas para obtener un extra en cuanto a eficacia en el programa.
Así mismo se comienza a ver que elementos ocuparemos, que lógica se va a utilizar, que interfaz
será la adecuada para el desempeño del programa.
Diseño: En este paso es donde comenzamos a echar mano del análisis obtenido, y comenzamos a
diseñar nuestro programa, a través de los 9 diagramas de UML para obtener una visión de cómo
se mirara nuestro programa, como funcionara y como interactuara con el usuario. Plasmando
todos los componentes del sistema, los objetos, métodos, variables, constantes, operadores,
librerías, etc.
Prueba y depuración: En esta etapa se compila nuestro programa y se ejecuta para verificar que
funciona como lo hemos planeado, revisando que no existan errores de ejecución, de operación e
incluso de sintaxis, para poder garantizar al cliente que el software cumple con sus expectativas.
Documentación: Es necesario elaborar dos manuales, uno de usuario, en donde se incluirán las
instrucciones de uso del software, como se ejecuta el programa y demás puntos que serán útiles
para quien vaya a manejar el programa. Y el otro manual será el técnico, en donde incluiremos
código fuente, y diseño; todo lo necesario para que el programador o ingeniero pueda dar
mantenimiento al programa e incluso llevarlo a una evolución.
Mantenimiento y/o evolución: Última etapa del proceso, en donde nos encargaremos de
garantizar el correcto funcionamiento del programa, en caso de existir alguna falla durante el uso
del mismo, e incluso podemos mejorarlo, actualizarlo o agregar nuevas funciones.
Esto implica recorrer toda la secuencia de llamadas, de donde se obtienen las responsabilidades
claramente. Dicho diagrama puede ser obtenido de dos partes, desde el Diagrama Estático de
Clases o el de Casos de Uso (son diferentes).
Mensaje a Otro Objeto: Se representa por una flecha entre un objeto y otro, representa la llamada
de un método (operación) de un objeto en particular.
Mensaje al Mismo Objeto: No solo llamadas a métodos de objetos externos pueden realizarse,
también es posible visualizar llamadas a métodos desde el mismo objeto en estudio.
Ejemplo
En el presente ejemplo, tenemos el diagrama de interacción proveniente del siguiente modelo
estático:
Aquí se representa una aplicación que posee una Ventana gráfica, y ésta a su vez posee
internamente un botón.
Entonces el diagrama de interacción para dicho modelo es: En donde se hacen notar las sucesivas
llamadas a Draw () (entre objetos) y la llamada a Paint () por el objeto Botón
U S UA R IO
D esp edid a
6.- ILUSTRE UN EJEMPLO COMPLETO DE UN DIAGRAMA DE ESTADO DE UNA CLASE.
Bienvenidos
Sistema CAVo
1) Calcular Área
2) Calcular Volumen
Lectura de
Datos
1) Triangulo
1)
Si es 1 2) Circulo
2)
3) Rombo
3)
4) Cubo
6) Devolver
Resultado
7) Triangulo
Escaleno 7)
Si es 3